BitelioBitelio

Send an SMS

Send a single transactional SMS. Mirrors POST /v1/send: a secret key with the sms:send scope, and an Idempotency-Key header if you want a retry to be safe.

You do not choose the sender. It is resolved from the destination's country and the senders your project has registered, because what counts as a valid sender differs per country — an alphanumeric sender ID works in Spain and is rejected in the United States.

Segments, not messages, are what you pay for. A GSM-7 message splits every 160 characters, a Unicode one every 70. The response tells you how many this became before you are billed for them.

Returns 202: accepted for delivery, not delivered. Delivery status arrives by webhook.

POST
/v1/sms/send

Authorization

ApiKeyAuth

AuthorizationBearer <token>

API Key authentication. Secret keys (sk_*) are required for all endpoints except /v1/track. Public keys (pk_*) only work with the /v1/track endpoint for client-side event tracking. The project is automatically derived from the key.

In: header

Header Parameters

Idempotency-Key?string

Request Body

application/json

to*string

Destination in E.164 form, e.g. +34600000000.

body*string

Message text. Up to 1600 characters; longer bodies are refused rather than truncated.

Length1 <= length <= 1600
contactId?string

Attach the message to a contact you already have, instead of matching by number.

Formatuuid

Response Body

application/json

curl -X POST "https://api.bitelio.com/v1/sms/send" \  -H "Content-Type: application/json" \  -d '{    "to": "+34600000000",    "body": "string"  }'
{
  "id": "string",
  "to": "string",
  "from": "string",
  "country": "string",
  "encoding": "GSM7",
  "segments": 0,
  "status": "string"
}
Empty
Empty
Empty