Descrição Manual
O Sendblue conecta seus agentes ao iMessage e SMS por meio do seu próprio número de telefone dedicado. Use-o para enviar mensagem a uma pessoa ou a um grupo, anexar imagens e outras mídias, verificar se um número pode receber iMessage antes de enviar, mostrar um indicador de digitação e consultar o status de entrega de qualquer mensagem.
A autenticação usa um API Key ID e uma API Secret Key do Sendblue, enviados como os headers sb-api-key-id e sb-api-secret-key. Você encontra ambos no seu dashboard do Sendblue. Cada mensagem é enviada de uma das suas linhas registradas no Sendblue, informada como From Number no formato E.164 (por exemplo +15551234567).
Operações
- Send Message — envie um iMessage ou SMS para um único destinatário. Forneça texto da mensagem, uma URL de mídia, ou ambos, e opcionalmente aplique um estilo expressivo do iMessage (celebration, fireworks, lasers, confetti e mais).
- Send Group Message — envie para vários destinatários de uma vez. Passe um destinatário por linha; reutilize o
group_idretornado para continuar respondendo na mesma thread. - Evaluate Service — verifique se um número é alcançável no iMessage ou apenas por SMS, para ramificar antes de enviar.
- Send Typing Indicator — mostre ao destinatário que uma resposta está sendo composta (apenas chats um-para-um).
- Get Message — recupere uma única mensagem e seu status atual pelo message handle.
Triggers
- Message Received — dispara a cada mensagem de entrada. Configure-o como o webhook Receive no seu dashboard do Sendblue.
- Message Status Updated — dispara quando uma mensagem de saída muda de estado (
SENT,DELIVERED,ERROR). Configure-o como o webhook Outbound, ou passe a URL por mensagem comostatus_callback.
Cada trigger gera sua própria URL de webhook — cole a URL correspondente no campo adequado do seu dashboard do Sendblue.
Usage Instructions
Send iMessages and SMS to individuals or groups, check whether a number supports iMessage, show typing indicators, and look up message status with Sendblue. Trigger workflows on inbound messages and delivery status updates.
Actions
sendblue_send_message
Send an iMessage or SMS to a single recipient via Sendblue.
Input
| Parameter | Type | Required | Description |
|---|---|---|---|
number | string | Yes | Recipient phone number in E.164 format (e.g., +19998887777) |
from_number | string | Yes | One of your registered Sendblue phone numbers to send from, in E.164 format (e.g., +18887776666) |
content | string | No | Message text content. Either content or media_url must be provided. |
media_url | string | No | URL of a media file to send. Either content or media_url must be provided. |
send_style | string | No | iMessage expressive style (e.g., celebration, fireworks, lasers, confetti, balloons, invisible, slam). |
seat_id | string | No | Seat (user) the message is attributed to. Accepts the seat UUID or Firebase Auth subject. |
status_callback | string | No | Webhook URL that Sendblue will POST message status updates to. |
Output
| Parameter | Type | Description |
|---|---|---|
status | string | Message status: QUEUED, SENT, DELIVERED, or ERROR |
message_handle | string | Unique identifier for tracking the message |
account_email | string | Email of the account that sent the message |
content | string | Message content |
is_outbound | boolean | Whether this is an outbound message |
from_number | string | Sending phone number |
number | string | Recipient phone number |
media_url | string | URL of attached media |
send_style | string | iMessage expressive style applied |
seat_id | string | UUID of the seat that sent the message |
sender_email | string | Email of the seat (user) that sent the message |
error_code | number | Numeric error code if the message failed |
error_message | string | Error message if the message failed |
date_created | string | When the message was created |
date_updated | string | When the message was last updated |
sendblue_send_group_message
Send an iMessage or SMS to a group of recipients via Sendblue.
Input
| Parameter | Type | Required | Description |
|---|---|---|---|
numbers | array | No | Recipient phone numbers in E.164 format (e.g., ["+19998887777", "+13334445555"]). Optional when sending to an existing group via group_id. |
from_number | string | Yes | One of your registered Sendblue phone numbers to send from, in E.164 format (e.g., +18887776666) |
content | string | No | Message text content. Either content or media_url must be provided. |
media_url | string | No | URL of a media file to send. Either content or media_url must be provided. |
send_style | string | No | iMessage expressive style (e.g., celebration, fireworks, lasers, confetti, balloons, invisible, slam). |
seat_id | string | No | Seat (user) the message is attributed to. Accepts the seat UUID or Firebase Auth subject. |
group_id | string | No | Unique identifier of an existing group to send to. Omit to start a new group. |
status_callback | string | No | Webhook URL that Sendblue will POST message status updates to. |
Output
| Parameter | Type | Description |
|---|---|---|
status | string | Message status: QUEUED, SENT, DELIVERED, or ERROR |
message_handle | string | Unique identifier for tracking the message |
group_id | string | Identifier of the group the message was sent to |
participants | array | Phone numbers participating in the group |
account_email | string | Email of the account that sent the message |
content | string | Message content |
is_outbound | boolean | Whether this is an outbound message |
from_number | string | Sending phone number |
number | string | Recipient phone number |
media_url | string | URL of attached media |
send_style | string | iMessage expressive style applied |
seat_id | string | UUID of the seat that sent the message |
sender_email | string | Email of the seat (user) that sent the message |
error_code | number | Numeric error code if the message failed |
error_message | string | Error message if the message failed |
date_created | string | When the message was created |
date_updated | string | When the message was last updated |
sendblue_evaluate_service
Check whether a phone number can receive iMessage or only SMS.
Input
| Parameter | Type | Required | Description |
|---|---|---|---|
number | string | Yes | Phone number to evaluate, in E.164 format (e.g., +19998887777) |
Output
| Parameter | Type | Description |
|---|---|---|
number | string | The evaluated phone number in E.164 format |
service | string | The service the number supports: iMessage or SMS |
sendblue_send_typing_indicator
Display a typing indicator to a recipient (not supported in group chats).
Input
| Parameter | Type | Required | Description |
|---|---|---|---|
number | string | Yes | Recipient's phone number in E.164 format (e.g., +19998887777) |
from_number | string | No | Your Sendblue line number to send from, in E.164 format. |
state | string | No | "start" (default) shows the indicator; "stop" ends an active indicator before max_duration_ms expires. |
max_duration_ms | number | No | How long (ms) the indicator stays visible before auto-stopping. Defaults to 60000. Must be between 1 and 300000. |
Output
| Parameter | Type | Description |
|---|---|---|
status | string | Delivery status of the typing indicator (e.g., QUEUED) |
status_code | number | Numeric status code returned by Sendblue |
number | string | The recipient phone number |
error_message | string | Error details, null on success |
sendblue_get_message
Retrieve a single message and its current status by message handle/ID.
Input
| Parameter | Type | Required | Description |
|---|---|---|---|
message_id | string | Yes | The message handle/ID returned when the message was sent. |
Output
| Parameter | Type | Description |
|---|---|---|
status | string | Current message status |
message_handle | string | Unique message identifier |
account_email | string | Email of the account |
content | string | Message content |
is_outbound | boolean | Whether the message is outbound |
from_number | string | Sending phone number |
number | string | Recipient phone number |
to_number | string | Destination phone number |
media_url | string | URL of attached media |
message_type | string | Message category: message or group |
service | string | Messaging service: iMessage, SMS, or RCS |
group_id | string | Group identifier (empty for non-group) |
group_display_name | string | Group chat name |
participants | array | Participant phone numbers |
send_style | string | Expressive style applied |
was_downgraded | boolean | True if the recipient lacks iMessage support |
opted_out | boolean | True if the recipient has opted out |
plan | string | Account plan type |
sendblue_number | string | Sendblue phone number used |
seat_id | string | Seat UUID |
sender_email | string | Email of the sending seat |
error_code | number | Numeric error code if failed |
error_message | string | Error message if failed |
error_reason | string | Additional error context |
error_detail | string | Detailed error information |
date_sent | string | ISO 8601 creation timestamp |
date_updated | string | ISO 8601 last-update timestamp |
Triggers
A Trigger is a block that starts a workflow when an event happens in this service.
Sendblue Message Received
Trigger when an inbound iMessage or SMS is received in Sendblue
Output
| Parameter | Type | Description |
|---|---|---|
account_email | string | Email of the Sendblue account |
content | string | Message text content |
media_url | string | CDN link to attached media, if any |
is_outbound | boolean | True for outbound messages, false for inbound |
status | string | Message status (e.g., RECEIVED, QUEUED, SENT, DELIVERED, ERROR) |
error_code | number | Error identifier, null if none |
error_message | string | Descriptive error text, null if none |
error_reason | string | Additional error context, null if none |
error_detail | string | Detailed error information, null if none |
message_handle | string | Sendblue message identifier (use to deduplicate) |
date_sent | string | ISO 8601 creation timestamp |
date_updated | string | ISO 8601 last-update timestamp |
from_number | string | E.164 sender phone number |
number | string | E.164 recipient/counterparty phone number |
to_number | string | E.164 destination phone number |
was_downgraded | boolean | True if the recipient lacks iMessage support |
plan | string | Account plan type |
message_type | string | Message category (e.g., message, group) |
group_id | string | Group identifier, null for non-group messages |
participants | array | Participant phone numbers for group messages |
send_style | string | Expressive style if applied |
opted_out | boolean | True if the recipient has opted out |
sendblue_number | string | Sendblue phone number used |
service | string | Messaging service (iMessage or SMS) |
group_display_name | string | Group chat name, null for non-group messages |
sender_email | string | Email of the user who sent the message |
seat_id | string | Seat UUID, null if absent |
raw | string | Complete raw webhook payload from Sendblue as a JSON string |
Sendblue Message Status Updated
Trigger when an outbound message status changes (SENT, DELIVERED, ERROR) in Sendblue
Output
| Parameter | Type | Description |
|---|---|---|
account_email | string | Email of the Sendblue account |
content | string | Message text content |
media_url | string | CDN link to attached media, if any |
is_outbound | boolean | True for outbound messages, false for inbound |
status | string | Message status (e.g., RECEIVED, QUEUED, SENT, DELIVERED, ERROR) |
error_code | number | Error identifier, null if none |
error_message | string | Descriptive error text, null if none |
error_reason | string | Additional error context, null if none |
error_detail | string | Detailed error information, null if none |
message_handle | string | Sendblue message identifier (use to deduplicate) |
date_sent | string | ISO 8601 creation timestamp |
date_updated | string | ISO 8601 last-update timestamp |
from_number | string | E.164 sender phone number |
number | string | E.164 recipient/counterparty phone number |
to_number | string | E.164 destination phone number |
was_downgraded | boolean | True if the recipient lacks iMessage support |
plan | string | Account plan type |
message_type | string | Message category (e.g., message, group) |
group_id | string | Group identifier, null for non-group messages |
participants | array | Participant phone numbers for group messages |
send_style | string | Expressive style if applied |
opted_out | boolean | True if the recipient has opted out |
sendblue_number | string | Sendblue phone number used |
service | string | Messaging service (iMessage or SMS) |
group_display_name | string | Group chat name, null for non-group messages |
sender_email | string | Email of the user who sent the message |
seat_id | string | Seat UUID, null if absent |
raw | string | Complete raw webhook payload from Sendblue as a JSON string |