Skip to main content
POST
Check WhatsApp availability
Check one phone number in strict E.164 format: a leading + followed by 7–15 digits, without spaces. The body must contain exactly one phone field and fit within 16 KiB.

Usage and credits

The limit is 60 requests per minute per workspace, including POST retries. A definitive yes or no costs 1 credit. HTTP 202 means pending or unknown; it does not confirm availability or a final credit amount.

Retrying and reconciliation

Idempotency-Key is optional. Use a UUID (versions 1–5) and reuse the same key and phone for retries of one logical check. Changing the phone with the same key returns 409. Without a key, the server generates an operation ID; save the returned operation_id. After a 202 response, use WhatsApp check status to reconcile the operation before submitting another check. Repeating a headerless POST creates a new operation and can incur another charge. A recorded insufficient-credit rejection returns 403; a known unavailable check returns 503. Both can include an operation_id. Reuse the original key when reconciling a lost response. Use bounded backoff for temporary errors and rate limits.

Next step

Look up the operation status using the same workspace API key.

Authorizations

Authorization
string
header
required

Use an Airschool workspace API key. Never expose the key in client-side code.

Headers

Idempotency-Key
string

Optional UUID (versions 1–5). Reuse the same key and phone for retries of one logical check. The server trims whitespace and normalizes UUID case.

Pattern: ^\s*[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-5][0-9a-fA-F]{3}-[89aAbB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}\s*$

Body

application/json
phone
string
required

Strict E.164 number, with no spaces or punctuation other than the leading +.

Pattern: ^\+[1-9]\d{6,14}$

Response

Definitive WhatsApp result.

operation_id
string<uuid>
required

Operation UUID.

phone
string
required

Strict E.164 number, with no spaces or punctuation other than the leading +.

Pattern: ^\+[1-9]\d{6,14}$
whatsapp
enum<string>
required
Available options:
yes,
no
credits_consumed
integer
required