We use optional, privacy-safe analytics to understand which pages help visitors. Nothing optional runs until you choose. Privacy policy

Skip to content
Guide AvailableAutomation Platform

Send messages from n8n workflows

n8n is the self-hostable workflow engine developers reach for when flows need version control, credentials management, and code steps alongside no-code nodes.

Use the HTTP Request node with header credentials holding your X-API-Key / X-API-Secret pair — the key stays in n8n's encrypted credential store, out of the workflow JSON. The Webhook node gives you an endpoint URL to register with SendiMessage, so outbound and receive events trigger workflows directly. A Function node in between can apply consent checks or formatting before anything sends.

Request This SetupBook an Integration Review

What this integration enables

CRM triggers without code
Bridge CRM record changes to messaging with a n8n scenario instead of middleware.
Form and lead follow-up
New form submissions get a confirmation or next-step message.
E-commerce notifications
Order events from your store platform become customer updates.
Reply routing
SendiMessage webhooks trigger n8n flows that write replies into your CRM or helpdesk.

Implementation options

the HTTP Request node (Header Auth credential)
Configure the request: POST https://api.sendimessage.com/v1/send-message, X-API-Key and X-API-Secret headers from the platform's credential store, and a JSON body mapped from trigger data.
Webhook trigger for events
Give SendiMessage a n8n webhook URL as your event endpoint, and delivery/reply events start flows that update your other systems.

Architecture

How it fits together: n8n event, then Workflow or backend, then SendiMessage API, then Managed messaging line, then SMS or supported iMessage, then Customer, then Delivery or reply event, then Signed webhook, then n8n timeline update.
  1. n8n eventA record changes, a stage moves, or a workflow fires
  2. Workflow or backendn8n automation or your middleware prepares the request
  3. SendiMessage APIPOST /send-message — the message is validated and queued
  4. Managed messaging lineYour dedicated line sends the message
  5. SMS or supported iMessageChannel routing picks iMessage where supported, SMS otherwise
  6. CustomerThe message arrives; the customer can reply
  7. Delivery or reply eventSendiMessage records what actually happened
  8. Signed webhookYour endpoint receives outbound or receive
  9. n8n timeline updateYour handler writes the event back as activity

Example request

HTTP action body
{
"number": "{{trigger.phone}}",
"content": "Hi {{trigger.first_name}}, your appointment is tomorrow at 10:00 AM.",
"status_callback": "https://your-endpoint.example.com/status?record_id={{trigger.id}}"
}

Map the {{…}} placeholders from your n8n trigger data — the syntax shown is illustrative. status_callback is optional: it receives this message's delivery events, and because you compose the URL you can embed your own record id for correlation. Store the returned message_handle for the same purpose.

Delivery events and incoming replies

Use a n8n webhook trigger as your SendiMessage event endpoint: delivery confirmations and incoming replies then start flows that update the CRM, notify a channel, or open a ticket.

webhook event
// "outbound" event → your n8n endpoint
// Verify the SendiMessage-Signature header (t={timestamp},v1=HMAC-SHA256 of
// "{timestamp}.{raw body}", keyed with your webhook secret), then use
// GET /v2/messages/{message_handle} for authoritative state and match it to
// your record_id in n8n.

Limitations and honest notes

  • iMessage delivery is available on supported messaging lines and destinations. Recipients without iMessage receive SMS when fallback is configured — never assume universal iMessage availability.
  • Messages are accepted asynchronously — the API returns status QUEUED and final status arrives via webhook or the message endpoints.
  • No official SDK for this ecosystem yet — the example uses plain HTTP against the REST API. Official SDKs are published for JavaScript/TypeScript (npm: sendimessage), Python (PyPI: sendimessage), PHP (Composer: sendimessage/sdk), and Go (github.com/sendimessage/sendimessage-go). Every SDK is dependency-free and covers the full public API surface.
  • A published SendiMessage app in the n8n directory is not available today — the integration uses the HTTP Request node (Header Auth credential), which is fully supported.

Security considerations

  • Store the API key in n8n's credential/connection store, not in plain text fields inside scenarios.
  • Restrict who can edit flows that send customer messages.
  • Keep phone numbers and message content out of run logs where the platform allows it.

Frequently asked questions

Is there a SendiMessage app in the n8n directory?
Not yet — statuses on this site only claim a published app when one has actually shipped. the HTTP Request node (Header Auth credential) works today with the configuration on this page, and it exposes the full API.
What does a successful send look like?
The API responds with status "QUEUED" plus a message_handle you can store for correlation. Treat non-2xx responses as failures in your flow's error path.
Can flows react to delivery and replies?
Yes — register a n8n webhook URL as your SendiMessage event endpoint, and outbound / receive events become flow triggers.
Does self-hosting change anything?
Only for the webhook URL: your n8n instance must be reachable from the internet (or through a tunnel) for SendiMessage events to arrive. The HTTP Request node works identically on n8n Cloud and self-hosted.

Ready to connect n8n?

Request a messaging line and a SendiMessage integration specialist will review your n8n workflow and guide the setup.