Skip to main content
Use /send when you only need to send a 1:1 text message to a phone number or Apple ID email handle. Use Create a chat when you need a durable chat.id, attachments by URL, or chat history. Use Create a group for group chats.

Request

Response

Fields

Message text & line breaks

Responses and message history echo the normalized text, not the raw bytes you sent. The same rules apply to body here and to text parts[].value on the chat routes.

Attachments

/send accepts three reference shapes interchangeably. Upload first via POST /api/v1/attachments, then reference the returned attachment_id:

Effects

Set "effect": "<name>" to attach an Apple send-effect (the same fullscreen / bubble effects you get from Messages on iOS). Effects are whitelist-validated upstream — an unknown value returns 4098 UNKNOWN_EFFECT with the full allowed_effects array in the error body, so callers can self-discover the current set.

Behavior

Delivery failures

/send does not use the enveloped { success, error, trace_id } shape documented in Errors. Failures return a flat object:
/send failure responses do not carry a trace_id. The enveloped { success: false, error: {...}, trace_id } shape belongs to the other /api/v1 routes.

Common errors

See the full error code reference.

See also