Skip to main content
POST
/
whatsapp
cURL
curl --request POST \
  --url https://api.contiguity.com/send/whatsapp \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '{
  "to": "+1234567890",
  "message": "Hello, world!"
}'
{
  "id": "req_xxxxxxxxxxxxxxxx",
  "timestamp": 1757916599341,
  "api_version": "v2025.9.15",
  "object": "response",
  "data": {
    "message_id": "wapp_1234567890"
  }
}
Only customers who lease numbers that support WhatsApp can use this endpoint.
Phone numbers must be in E.164 format with country codes.

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Body

application/json
to
string
required

Recipient's WhatsApp number. Must be in E.164 format.

Example:

"+1234567890"

message
string
required

The WhatsApp message to send

Example:

"Hello, world!"

from
string

Your leased WhatsApp number. If none is provided, we will use a random WhatsApp number of yours.

Example:

"+15555555555"

fallback
object

Should Contiguity fallback to SMS/RCS if the recipient does not have WhatsApp, or if WhatsApp fails to send?

Example:
{
"when": ["whatsapp_unsupported", "whatsapp_fails"],
"from": "+15555555555"
}
attachments
string[]

Attachments to send. Can be a URL to your attachment (e.g. example.com/image.png) or a base64 string. Max 10 attachments, with a cumulative size of 50MB.

Example:
[
"https://example.com/image.png",
"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAACXBIWXMAAAsTAAALEwEAmpwYAAAAPUlEQVR4nGNgYGBgAAABAAABATDeu7sAAAAASUVORK5CYII="
]

Response

Send a WhatsApp message

id
string
required
Example:

"req_xxxxxxxxxxxxxxxx"

timestamp
number
required
Example:

1757916599341

api_version
string
required
Example:

"v2025.9.15"

object
string
required
Example:

"response"

data
object
required
I