Add a WhatsApp account
Changed onConnects a WhatsApp Business Account shared with us through a Multi-Partner Solution to the calling sender profile. Send x-profile-id for the profile the account belongs to.
Two fields, because everything else is derived. waba_id says which of your organization's shared accounts this is — you hold one per client, and nothing else can say which. phone_number_id names the account's number, which is what assigns it to the profile as the number it sends from.
The solution the account arrived through, the client business portfolio that owns it, the access token and its expiry are all resolved from your organization. They are not accepted here: the first two are Meta's answer about provenance, and the token is minted per client business and rotates roughly every sixty days, so a value you sent would be stale before it was useful.
phone_number_id is optional. Omit it to connect the account now and settle the number later — the channel reads as ACTION_NEEDED with reason_code CHANNEL_007, and the profile's WhatsApp messages fail until a number is named. They do not fall back to your organization's account. Call this endpoint again with phone_number_id to name one.
The same resolution runs behind channels.whatsapp on POST /v3/sender-profiles, so connecting at create and connecting afterwards fill the same fields.
Returns the account, not every channel you have — adding one cannot change a market or an RCS agent, and GET /v3/channels is the whole picture. Giving an account up is not self-service: ask support, because deregistering a number lands in your own Meta business.
Request
- Base URLhttps://api.sent.dm
- URLhttps://api.sent.dm/v3/channels/whatsapp
- Auth
- API key in header x-api-key
- or HTTP bearer
Headers
Unique key to ensure idempotent request processing. Must be 1-255 alphanumeric characters, hyphens, or underscores. Responses are cached for 24 hours per key per customer.
Profile UUID to scope the request to a child profile. Only organization API keys can use this header. The profile must belong to the calling organization.
Request body
Example request
{
"waba_id": "102290129340398",
"phone_number_id": "106540352242922",
"sandbox": false
}Response
The account is connected to the profile
Example response
{
"data": {
"status": "PROVISIONING"
}
}Changes
- info
endpoint added
- info