Mandala
Tools

Sendblue

Send and receive iMessage and SMS

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.

Tools

sendblue_send_message

Send an iMessage or SMS to a single recipient via Sendblue.

Input

ParameterTypeRequiredDescription
apiKeyIdstringYesSendblue API Key ID (sb-api-key-id)
apiSecretKeystringYesSendblue API Secret Key (sb-api-secret-key)
numberstringYesRecipient phone number in E.164 format (e.g., +19998887777)
from_numberstringYesOne of your registered Sendblue phone numbers to send from, in E.164 format (e.g., +18887776666)
contentstringNoMessage text content. Either content or media_url must be provided.
media_urlstringNoURL of a media file to send. Either content or media_url must be provided.
send_stylestringNoiMessage expressive style (e.g., celebration, fireworks, lasers, confetti, balloons, invisible, slam).
seat_idstringNoSeat (user) the message is attributed to. Accepts the seat UUID or Firebase Auth subject.
status_callbackstringNoWebhook URL that Sendblue will POST message status updates to.

Output

ParameterTypeDescription
statusstringMessage status: QUEUED, SENT, DELIVERED, or ERROR
message_handlestringUnique identifier for tracking the message
account_emailstringEmail of the account that sent the message
contentstringMessage content
is_outboundbooleanWhether this is an outbound message
from_numberstringSending phone number
numberstringRecipient phone number
media_urlstringURL of attached media
send_stylestringiMessage expressive style applied
seat_idstringUUID of the seat that sent the message
sender_emailstringEmail of the seat (user) that sent the message
error_codenumberNumeric error code if the message failed
error_messagestringError message if the message failed
date_createdstringWhen the message was created
date_updatedstringWhen the message was last updated

sendblue_send_group_message

Send an iMessage or SMS to a group of recipients via Sendblue.

Input

ParameterTypeRequiredDescription
apiKeyIdstringYesSendblue API Key ID (sb-api-key-id)
apiSecretKeystringYesSendblue API Secret Key (sb-api-secret-key)
numbersarrayNoRecipient phone numbers in E.164 format (e.g., ["+19998887777", "+13334445555"]). Optional when sending to an existing group via group_id.
from_numberstringYesOne of your registered Sendblue phone numbers to send from, in E.164 format (e.g., +18887776666)
contentstringNoMessage text content. Either content or media_url must be provided.
media_urlstringNoURL of a media file to send. Either content or media_url must be provided.
send_stylestringNoiMessage expressive style (e.g., celebration, fireworks, lasers, confetti, balloons, invisible, slam).
seat_idstringNoSeat (user) the message is attributed to. Accepts the seat UUID or Firebase Auth subject.
group_idstringNoUnique identifier of an existing group to send to. Omit to start a new group.
status_callbackstringNoWebhook URL that Sendblue will POST message status updates to.

Output

ParameterTypeDescription
statusstringMessage status: QUEUED, SENT, DELIVERED, or ERROR
message_handlestringUnique identifier for tracking the message
group_idstringIdentifier of the group the message was sent to
participantsarrayPhone numbers participating in the group
account_emailstringEmail of the account that sent the message
contentstringMessage content
is_outboundbooleanWhether this is an outbound message
from_numberstringSending phone number
numberstringRecipient phone number
media_urlstringURL of attached media
send_stylestringiMessage expressive style applied
seat_idstringUUID of the seat that sent the message
sender_emailstringEmail of the seat (user) that sent the message
error_codenumberNumeric error code if the message failed
error_messagestringError message if the message failed
date_createdstringWhen the message was created
date_updatedstringWhen the message was last updated

sendblue_evaluate_service

Check whether a phone number can receive iMessage or only SMS.

Input

ParameterTypeRequiredDescription
apiKeyIdstringYesSendblue API Key ID (sb-api-key-id)
apiSecretKeystringYesSendblue API Secret Key (sb-api-secret-key)
numberstringYesPhone number to evaluate, in E.164 format (e.g., +19998887777)

Output

ParameterTypeDescription
numberstringThe evaluated phone number in E.164 format
servicestringThe service the number supports: iMessage or SMS

sendblue_send_typing_indicator

Display a typing indicator to a recipient (not supported in group chats).

Input

ParameterTypeRequiredDescription
apiKeyIdstringYesSendblue API Key ID (sb-api-key-id)
apiSecretKeystringYesSendblue API Secret Key (sb-api-secret-key)
numberstringYesRecipient's phone number in E.164 format (e.g., +19998887777)
from_numberstringNoYour Sendblue line number to send from, in E.164 format.
statestringNo"start" (default) shows the indicator; "stop" ends an active indicator before max_duration_ms expires.
max_duration_msnumberNoHow long (ms) the indicator stays visible before auto-stopping. Defaults to 60000. Must be between 1 and 300000.

Output

ParameterTypeDescription
statusstringDelivery status of the typing indicator (e.g., QUEUED)
status_codenumberNumeric status code returned by Sendblue
numberstringThe recipient phone number
error_messagestringError details, null on success

sendblue_get_message

Retrieve a single message and its current status by message handle/ID.

Input

ParameterTypeRequiredDescription
apiKeyIdstringYesSendblue API Key ID (sb-api-key-id)
apiSecretKeystringYesSendblue API Secret Key (sb-api-secret-key)
message_idstringYesThe message handle/ID returned when the message was sent.

Output

ParameterTypeDescription
statusstringCurrent message status
message_handlestringUnique message identifier
account_emailstringEmail of the account
contentstringMessage content
is_outboundbooleanWhether the message is outbound
from_numberstringSending phone number
numberstringRecipient phone number
to_numberstringDestination phone number
media_urlstringURL of attached media
message_typestringMessage category: message or group
servicestringMessaging service: iMessage, SMS, or RCS
group_idstringGroup identifier (empty for non-group)
group_display_namestringGroup chat name
participantsarrayParticipant phone numbers
send_stylestringExpressive style applied
was_downgradedbooleanTrue if the recipient lacks iMessage support
opted_outbooleanTrue if the recipient has opted out
planstringAccount plan type
sendblue_numberstringSendblue phone number used
seat_idstringSeat UUID
sender_emailstringEmail of the sending seat
error_codenumberNumeric error code if failed
error_messagestringError message if failed
error_reasonstringAdditional error context
error_detailstringDetailed error information
date_sentstringISO 8601 creation timestamp
date_updatedstringISO 8601 last-update timestamp

Triggers

sendblue_message_received

Trigger when an inbound iMessage or SMS is received in Sendblue

Output

ParameterTypeDescription
account_emailstringEmail of the Sendblue account
contentstringMessage text content
media_urlstringCDN link to attached media, if any
is_outboundbooleanTrue for outbound messages, false for inbound
statusstringMessage status (e.g., RECEIVED, QUEUED, SENT, DELIVERED, ERROR)
error_codenumberError identifier, null if none
error_messagestringDescriptive error text, null if none
error_reasonstringAdditional error context, null if none
error_detailstringDetailed error information, null if none
message_handlestringSendblue message identifier (use to deduplicate)
date_sentstringISO 8601 creation timestamp
date_updatedstringISO 8601 last-update timestamp
from_numberstringE.164 sender phone number
numberstringE.164 recipient/counterparty phone number
to_numberstringE.164 destination phone number
was_downgradedbooleanTrue if the recipient lacks iMessage support
planstringAccount plan type
message_typestringMessage category (e.g., message, group)
group_idstringGroup identifier, null for non-group messages
participantsarrayParticipant phone numbers for group messages
send_stylestringExpressive style if applied
opted_outbooleanTrue if the recipient has opted out
sendblue_numberstringSendblue phone number used
servicestringMessaging service (iMessage or SMS)
group_display_namestringGroup chat name, null for non-group messages
sender_emailstringEmail of the user who sent the message
seat_idstringSeat UUID, null if absent
rawstringComplete 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

ParameterTypeDescription
account_emailstringEmail of the Sendblue account
contentstringMessage text content
media_urlstringCDN link to attached media, if any
is_outboundbooleanTrue for outbound messages, false for inbound
statusstringMessage status (e.g., RECEIVED, QUEUED, SENT, DELIVERED, ERROR)
error_codenumberError identifier, null if none
error_messagestringDescriptive error text, null if none
error_reasonstringAdditional error context, null if none
error_detailstringDetailed error information, null if none
message_handlestringSendblue message identifier (use to deduplicate)
date_sentstringISO 8601 creation timestamp
date_updatedstringISO 8601 last-update timestamp
from_numberstringE.164 sender phone number
numberstringE.164 recipient/counterparty phone number
to_numberstringE.164 destination phone number
was_downgradedbooleanTrue if the recipient lacks iMessage support
planstringAccount plan type
message_typestringMessage category (e.g., message, group)
group_idstringGroup identifier, null for non-group messages
participantsarrayParticipant phone numbers for group messages
send_stylestringExpressive style if applied
opted_outbooleanTrue if the recipient has opted out
sendblue_numberstringSendblue phone number used
servicestringMessaging service (iMessage or SMS)
group_display_namestringGroup chat name, null for non-group messages
sender_emailstringEmail of the user who sent the message
seat_idstringSeat UUID, null if absent
rawstringComplete raw webhook payload from Sendblue as a JSON string

Notes

  • Category: tools
  • Type: sendblue
Sendblue