textbee Logotextbee.dev
Plans from $9.99/mo.View Plans
Documentation

n8n

Send and receive SMS from n8n workflows with textbee: HTTP Request node configuration for sending, webhook trigger for incoming messages, and workflow patterns.

n8n connects to textbee with two built-in nodes: the HTTP Request node for sending SMS and the Webhook node for receiving them. No community node install needed, and the whole stack can run self-hosted.

Prerequisites

  • An n8n instance (cloud or self-hosted)
  • A textbee.dev account with a registered Android device
  • An API key from the dashboard

Send SMS from a workflow

Add an HTTP Request node and configure it:

  • Method: POST
  • URL: https://api.textbee.dev/api/v1/gateway/send-sms
  • Authentication: None (the key goes in a header)
  • Headers: x-api-key = your API key, Content-Type = application/json
  • Body (JSON):
{
  "recipients": ["+15550100123"],
  "message": "Hello from n8n"
}

Use n8n expressions to fill the number and message from earlier nodes, for example {{ $json.phone }} and {{ $json.message }}.

Store the API key in an n8n credential (Header Auth) rather than pasting it into the node, so it does not end up in exported workflow JSON.

Receive SMS into a workflow

Incoming messages become workflow triggers through textbee webhooks:

  1. Add a Webhook node in n8n and copy its production URL.
  2. In the textbee dashboard, add that URL as a webhook and subscribe to the MESSAGE_RECEIVED event.
  3. Each incoming SMS now POSTs to your workflow with the sender and message text in the payload.

Verify the X-Signature header if your workflow does anything sensitive; the payload is HMAC-signed with your webhook signing secret. Details on Webhooks.

Workflow patterns that work well

  • Form to SMS: form submission trigger, then send a confirmation text to the submitter.
  • Cron reminders: schedule trigger, read rows from a sheet or database, send each person their reminder.
  • Alerting: on error in any workflow, text the on-call phone. SMS cuts through when email and Slack do not.
  • Two-way flows: webhook trigger on incoming SMS, branch on the message text (for example a keyword), reply with the HTTP Request node.
  • AI autoresponder: webhook trigger, pass the message to an LLM node, send the model's reply back by SMS.

Delivery status

The send response includes an smsBatchId when your account uses the SMS queue. To check delivery in a later node, call:

GET https://api.textbee.dev/api/v1/gateway/messages?smsBatchId=YOUR_BATCH_ID

with the same x-api-key header. Each message row carries a status; delivered, failed, and unknown are final.

Going deeper

The blog has a full tutorial with screenshots and more patterns: n8n SMS integration with textbee, and a comparison of doing the same in Make and Zapier.

Next Steps

Need help? Check our FAQ or contact support.