DOCUMENTATION

Send a text. Follow its status.

Create immediate or scheduled message actions.

Full API reference and interactive request explorer →

Request fields

Provide to and fromNumberSid, plus exactly one of body or templateUuid. Optional record context and scheduledFor carry CRM context and scheduling intent.

Avoid duplicate sends

Idempotency-Key is required. Reuse the same key and payload when retrying. A key reused with different content returns 409.

Accepted is not delivered

202 Accepted confirms acceptance. Delivery follows asynchronously. DELETE /messages/{id}/schedule cancels an eligible pending action.

Pilot access requires verified organisation configuration. Never expose a live API key in frontend code.

curl https://zemessenger.com/api/v1/messages \
  -H 'Authorization: Bearer ze_test_EXAMPLE' \
  -H 'Idempotency-Key: example-message-001' \
  -H 'Content-Type: application/json' \
  -d '{"to":"+447700900123","fromNumberSid":"PN_EXAMPLE","body":"Your consultation request has been received."}'
View the versioned OpenAPI contract