Skip to main content
POST
Send a message
Place an outbound message on your Comms line. Scope: comms_send

Request

Headers

HeaderRequiredDescription
AuthorizationYesBearer <COMMS_API_KEY>
Content-TypeYesapplication/json
Idempotency-KeyRecommendedStable key for safe retries

Body parameters

to
string
E.164 destination phone number. Required unless conversation_id is set.
conversation_id
string
Existing conversation to continue. Required unless to is set.
body
string
required
Message text delivered to the recipient.
channel
string
Optional preference: sms or imessage. Omit to let Comms choose.
idempotency_key
string
Same as the Idempotency-Key header. Either form is accepted.

Response

202 Accepted

First time this idempotency key is seen.

200 OK (duplicate)

Same idempotency key already processed — no second send.

Errors

StatusExample bodyCause
401{ "error": "unauthorized" }Bad or missing key
403{ "error": "missing comms_send scope" }Key lacks send
429{ "error": "rate_limited", "retry_after": 60 }Send or global limit

Code samples

See also