API reference
Senders API reference descriptions are provided in English to preserve the exact published contract.
List sender pools Create a sender pool Fetch a sender pool Update a sender pool Delete a sender pool List WhatsApp senders and current provider readiness Subscribe a WABA and register a Cloud API sender List provider storage regions permitted by this account's residency policy Fetch a WhatsApp sender Update sender management settings Remove a sender locally without changing Meta assets Block WhatsApp users Unblock WhatsApp users Get the current reconciled WhatsApp business profile Create an Operation-backed WhatsApp business profile update Deregister a Cloud API sender Generate, upload and verify a sender Flow encryption key Fetch sender opt-out keyword configuration Replace sender opt-out keyword configuration Rotate the sender two-step verification PIN Request or submit a sender verification code Read the phone-level webhook override of a sender Set or clear the phone-level webhook override of a sender Disconnect a WABA and fence all of its senders List sender pools GET /v1/accounts/{AC}/sender-pools
getV1AccountsByAcSenderPoolsPaginated 200
Required scope: `senders:read`.
Parameters
Parameters Name Type Required Description limitquery · integer (1–100) cursorquery · string (max 2048 chars) ACpath · string (AC… SID) yes Account SID
Errors: 400, 401, 403, 404, 409, 422, 429, 500, 503 — see errors .
Create a sender pool POST /v1/accounts/{AC}/sender-pools
postV1AccountsByAcSenderPoolsIdempotency-Key required 201
Required scope: `senders:write`.
Parameters
Parameters Name Type Required Description ACpath · string (AC… SID) yes Account SID
Request body (3 fields) Request body Name Type Required Description namestring (max 128 chars) yes senderSidsstring (WA… SID)[] yes strategy"round_robin" | "least_loaded" | "sticky_contact" yes
Errors: 400, 401, 403, 404, 409, 422, 429, 500, 503 — see errors .
Fetch a sender pool GET /v1/accounts/{AC}/sender-pools/{SP}
getV1AccountsByAcSenderPoolsBySp200
Required scope: `senders:read`.
Parameters
Parameters Name Type Required Description ACpath · string (AC… SID) yes SPpath · string (SP… SID) yes
Errors: 400, 401, 403, 404, 409, 422, 429, 500, 503 — see errors .
Update a sender pool PATCH /v1/accounts/{AC}/sender-pools/{SP}
patchV1AccountsByAcSenderPoolsBySpIdempotency-Key required 200
Required scope: `senders:write`.
Parameters
Parameters Name Type Required Description ACpath · string (AC… SID) yes SPpath · string (SP… SID) yes
Request body (3 fields) Request body Name Type Required Description namestring (max 128 chars) senderSidsstring (WA… SID)[] strategy"round_robin" | "least_loaded" | "sticky_contact"
Errors: 400, 401, 403, 404, 409, 422, 429, 500, 503 — see errors .
Delete a sender pool DELETE /v1/accounts/{AC}/sender-pools/{SP}
deleteV1AccountsByAcSenderPoolsBySp204
Required scope: `senders:write`.
Parameters
Parameters Name Type Required Description ACpath · string (AC… SID) yes SPpath · string (SP… SID) yes
Errors: 400, 401, 403, 404, 409, 422, 429, 500, 503 — see errors .
List WhatsApp senders and current provider readiness GET /v1/accounts/{AC}/senders
getV1AccountsByAcSendersPaginated 200
Required scope: `senders:read`.
Parameters
Parameters Name Type Required Description limitquery · integer (1–100) cursorquery · string (max 2048 chars) ACpath · string (AC… SID) yes Account SID
Errors: 400, 401, 403, 404, 409, 422, 429, 500, 503 — see errors .
Subscribe a WABA and register a Cloud API sender POST /v1/accounts/{AC}/senders
postV1AccountsByAcSendersIdempotency-Key required 202
Required scope: `senders:write`.
Parameters
Parameters Name Type Required Description ACpath · string (AC… SID) yes Account SID
Request body (5 fields) Request body Name Type Required Description displayNamestring (max 256 chars) yes phoneNumberstring (max 32 chars) providerPhoneNumberIdstring (max 128 chars) registrationobject yes wabaSidstring (WB… SID) yes
Errors: 400, 401, 403, 404, 409, 422, 429, 500, 503 — see errors .
Fetch a WhatsApp sender GET /v1/accounts/{AC}/senders/{WA}
getV1AccountsByAcSendersByWa200
Required scope: `senders:read`.
Parameters
Parameters Name Type Required Description ACpath · string (AC… SID) yes WApath · string (WA… SID) yes
Errors: 400, 401, 403, 404, 409, 422, 429, 500, 503 — see errors .
Update sender management settings PATCH /v1/accounts/{AC}/senders/{WA}
patchV1AccountsByAcSendersByWaIdempotency-Key required 200 202
A display-name change creates a durable Operation. statusCallbackUrl is a local verified-endpoint binding. Calling settings fail closed until Meta publishes an exact supported versioned write contract.
Required scope: `senders:write`.
Parameters
Parameters Name Type Required Description ACpath · string (AC… SID) yes WApath · string (WA… SID) yes
Request body (3 fields) Request body Name Type Required Description callingSettingsobject displayNamestring (max 256 chars) statusCallbackUrlstring (uri, max 2048 chars) | null
Errors: 400, 401, 403, 404, 409, 422, 429, 500, 503 — see errors .
Remove a sender locally without changing Meta assets DELETE /v1/accounts/{AC}/senders/{WA}
deleteV1AccountsByAcSendersByWa204
Required scope: `senders:write`.
Parameters
Parameters Name Type Required Description ACpath · string (AC… SID) yes WApath · string (WA… SID) yes
Errors: 400, 401, 403, 404, 409, 422, 429, 500, 503 — see errors .
Block WhatsApp users POST /v1/accounts/{AC}/senders/{WA}/block-users
postV1AccountsByAcSendersByWaBlockUsersIdempotency-Key required 200
Required scope: `senders:write`.
Parameters
Parameters Name Type Required Description ACpath · string (AC… SID) yes WApath · string (WA… SID) yes
Request body (1 fields) Request body Name Type Required Description usersstring (max 64 chars)[] yes
Errors: 400, 401, 403, 404, 409, 422, 429, 500, 503 — see errors .
Unblock WhatsApp users DELETE /v1/accounts/{AC}/senders/{WA}/block-users
deleteV1AccountsByAcSendersByWaBlockUsers200
Required scope: `senders:write`.
Parameters
Parameters Name Type Required Description ACpath · string (AC… SID) yes WApath · string (WA… SID) yes
Request body (1 fields) Request body Name Type Required Description usersstring (max 64 chars)[] yes
Errors: 400, 401, 403, 404, 409, 422, 429, 500, 503 — see errors .
Get the current reconciled WhatsApp business profile GET /v1/accounts/{AC}/senders/{WA}/business-profile
getV1AccountsByAcSendersByWaBusinessProfile200
Required scope: `business_profiles:read`.
Parameters
Parameters Name Type Required Description ACpath · string (AC… SID) yes Account SID WApath · string (WA… SID) yes
Errors: 400, 401, 403, 404, 409, 422, 429, 500, 503 — see errors .
Create an Operation-backed WhatsApp business profile update PATCH /v1/accounts/{AC}/senders/{WA}/business-profile
patchV1AccountsByAcSendersByWaBusinessProfileIdempotency-Key required 202
Required scope: `business_profiles:write`.
Parameters
Parameters Name Type Required Description ACpath · string (AC… SID) yes Account SID WApath · string (WA… SID) yes
Request body (8 fields) Request body Name Type Required Description aboutstring (max 139 chars) | null addressstring (max 256 chars) | null categorystring (max 128 chars) | null descriptionstring (max 512 chars) | null emailstring (email, max 320 chars) | null profileImageMediaSidstring (ME… SID) | null reasonstring (max 2000 chars) yes websitesstring (uri, max 2048 chars)[]
Errors: 400, 401, 403, 404, 409, 422, 429, 500, 503 — see errors .
Deregister a Cloud API sender POST /v1/accounts/{AC}/senders/{WA}/deregister
postV1AccountsByAcSendersByWaDeregisterIdempotency-Key required 200
Creates a monitored DEREGISTER Operation. Coexistence numbers cannot be deregistered.: the provider decides the final state, so the answer is 200 with `outcome: unknown` and `resolutionBy` naming the Operation to watch.
Required scope: `senders:write`.
Parameters
Parameters Name Type Required Description ACpath · string (AC… SID) yes WApath · string (WA… SID) yes
Request body (1 fields) Request body Name Type Required Description stepUpTokenstring (max 256 chars) yes
Errors: 400, 401, 403, 404, 409, 422, 429, 500, 503 — see errors .
Generate, upload and verify a sender Flow encryption key POST /v1/accounts/{AC}/senders/{WA}/flows/keys
postV1AccountsByAcSendersByWaFlowsKeysIdempotency-Key required 202
Required scope: `senders:write`.
Parameters
Parameters Name Type Required Description ACpath · string (AC… SID) yes WApath · string (WA… SID) yes
Errors: 400, 401, 403, 404, 409, 422, 429, 500, 503 — see errors .
Fetch sender opt-out keyword configuration GET /v1/accounts/{AC}/senders/{WA}/opt-out-config
getV1AccountsByAcSendersByWaOptOutConfig200
Required scope: `senders:read`.
Parameters
Parameters Name Type Required Description ACpath · string (AC… SID) yes WApath · string (WA… SID) yes
Errors: 400, 401, 403, 404, 409, 422, 429, 500, 503 — see errors .
Replace sender opt-out keyword configuration PUT /v1/accounts/{AC}/senders/{WA}/opt-out-config
putV1AccountsByAcSendersByWaOptOutConfigIdempotency-Key required 200
Required scope: `senders:write`.
Parameters
Parameters Name Type Required Description ACpath · string (AC… SID) yes WApath · string (WA… SID) yes
Request body (9 fields) Request body Name Type Required Description confirmationobject yes confirmationTextsobject enabledboolean yes excludedKeywordsstring (max 64 chars)[] languagesstring (max 35 chars)[] yes matchMode"tolerant" | "exact" | "starts_with" | "contains" yes optInKeywordsstring (max 64 chars)[] yes optOutKeywordsstring (max 64 chars)[] yes scopeOnOptOut"marketing" | "all" yes
Errors: 400, 401, 403, 404, 409, 422, 429, 500, 503 — see errors .
Rotate the sender two-step verification PIN POST /v1/accounts/{AC}/senders/{WA}/two-step-pin
postV1AccountsByAcSendersByWaTwoStepPinIdempotency-Key required 202
Creates a monitored REGISTER Operation running the SET_TWO_STEP command. The PIN is sealed through the credential broker and is never returned or logged.
Required scope: `senders:write`.
Parameters
Parameters Name Type Required Description ACpath · string (AC… SID) yes WApath · string (WA… SID) yes
Request body (2 fields) Request body Name Type Required Description pinstring (pattern ^[0-9]{6}$) stepUpTokenstring (max 256 chars) yes
Errors: 400, 401, 403, 404, 409, 422, 429, 500, 503 — see errors .
Request or submit a sender verification code POST /v1/accounts/{AC}/senders/{WA}/verify
postV1AccountsByAcSendersByWaVerifyIdempotency-Key required 202
Creates a REGISTER Operation; verification codes are stored only as short-lived encrypted envelopes.
Required scope: `senders:write`.
Parameters
Parameters Name Type Required Description ACpath · string (AC… SID) yes WApath · string (WA… SID) yes
Request body (3 fields) Request body Name Type Required Description codestring (pattern ^[0-9]{1,16}$) codeMethod"sms" | "voice" localestring (pattern ^[a-z]{2,3}_[A-Z]{2}$)
Errors: 400, 401, 403, 404, 409, 422, 429, 500, 503 — see errors .
Read the phone-level webhook override of a sender GET /v1/accounts/{AC}/senders/{WA}/webhook-override
getV1AccountsByAcSendersByWaWebhookOverride200
Required scope: `senders:read`.
Parameters
Parameters Name Type Required Description ACpath · string (AC… SID) yes WApath · string (WA… SID) yes
Errors: 400, 401, 403, 404, 409, 422, 429, 500, 503 — see errors .
Set or clear the phone-level webhook override of a sender PATCH /v1/accounts/{AC}/senders/{WA}/webhook-override
patchV1AccountsByAcSendersByWaWebhookOverrideIdempotency-Key required 202
Records the desired phone-level webhook_configuration and queues the SENDER_WEBHOOK_OVERRIDE management job that writes it to Meta. Phone-level takes precedence over the WABA-level override and the app default; the daily subscription reconcile keeps it converged.
Required scope: `senders:write`.
Parameters
Parameters Name Type Required Description ACpath · string (AC… SID) yes WApath · string (WA… SID) yes
Request body (2 fields) Request body Name Type Required Description overrideCallbackUristring (pattern ^https://, max 2048 chars) | null yes reasonstring (max 2000 chars)
Errors: 400, 401, 403, 404, 409, 422, 429, 500, 503 — see errors .
Disconnect a WABA and fence all of its senders POST /v1/accounts/{AC}/wabas/{WB}/disconnect
postV1AccountsByAcWabasByWbDisconnectIdempotency-Key required 202
Required scope: `wabas:write`.
Parameters
Parameters Name Type Required Description ACpath · string (AC… SID) yes WBpath · string (WB… SID) yes
Request body (2 fields) Request body Name Type Required Description confirmDisplayNamestring (max 256 chars) yes stepUpEvidencestring (max 4096 chars) yes
Errors: 400, 401, 403, 404, 409, 422, 429, 500, 503 — see errors .