Référence API
Connexions WhatsApp
Enregistrer l'entreprise de votre client, puis connecter son compte WhatsApp Business et ses numéros.
Enregistrer une entreprise cliente (propriétaire futur d’un compte WhatsApp Business)#
POST/connected-businesses
- Authentification
- Clé API (Bearer pk_…), ou session de la console (Bearer ses_… avec l'en-tête X-Environment-Id)
- Portée requise
connections:manage
Corps de la requête (JSON)
| Champ | Type | Description | |
|---|---|---|---|
name | string | requis | Nom de l'entreprise de votre client (2 à 120 caractères). |
externalRef | string | optionnel | Votre propre identifiant de ce client |
Exemple
curl -X POST "$INBOX_API/connected-businesses" \
-H "Authorization: Bearer $INBOX_KEY" \
-H "Content-Type: application/json" \
-d '{
"name": "Cabinet Dentaire Zokem",
"externalRef": "client-42"
}'const res = await fetch(`${process.env.INBOX_API}/connected-businesses`, {
method: "POST",
headers: {
Authorization: `Bearer ${process.env.INBOX_KEY}`,
"Content-Type": "application/json",
},
body: JSON.stringify({
"name": "Cabinet Dentaire Zokem",
"externalRef": "client-42"
}),
});
const data = await res.json();import os
import requests
res = requests.post(
f"{os.environ['INBOX_API']}/connected-businesses",
headers={
"Authorization": f"Bearer {os.environ['INBOX_KEY']}",
},
json={
"name": "Cabinet Dentaire Zokem",
"externalRef": "client-42",
},
)
print(res.json())<?php
$ch = curl_init(getenv('INBOX_API') . '/connected-businesses');
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_HTTPHEADER => [
'Authorization: Bearer ' . getenv('INBOX_KEY'),
'Content-Type: application/json',
],
CURLOPT_POSTFIELDS => json_encode([
'name' => 'Cabinet Dentaire Zokem',
'externalRef' => 'client-42',
]),
]);
$data = json_decode(curl_exec($ch), true);{
"id": "39e2803f-79e7-4e99-8da0-1c15991f5985",
"name": "Cabinet Dentaire Zokem",
"externalRef": "client-42",
"createdAt": "2026-11-12T08:33:45.469Z"
}Lister les entreprises de l'environnement de la clé#
GET/connected-businesses
- Authentification
- Clé API (Bearer pk_…), ou session de la console (Bearer ses_… avec l'en-tête X-Environment-Id)
- Portée requise
connections:read
Exemple
curl "$INBOX_API/connected-businesses" \
-H "Authorization: Bearer $INBOX_KEY"const res = await fetch(`${process.env.INBOX_API}/connected-businesses`, {
headers: {
Authorization: `Bearer ${process.env.INBOX_KEY}`,
},
});
const data = await res.json();import os
import requests
res = requests.get(
f"{os.environ['INBOX_API']}/connected-businesses",
headers={
"Authorization": f"Bearer {os.environ['INBOX_KEY']}",
},
)
print(res.json())<?php
$ch = curl_init(getenv('INBOX_API') . '/connected-businesses');
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => [
'Authorization: Bearer ' . getenv('INBOX_KEY'),
],
]);
$data = json_decode(curl_exec($ch), true);[
{
"id": "39e2803f-79e7-4e99-8da0-1c15991f5985",
"name": "Cabinet Dentaire Zokem",
"externalRef": "client-42",
"createdAt": "2026-11-12T08:33:45.469Z"
}
]Terminer l'Embedded Signup : connecter le compte et le numéro WhatsApp Business#
POST/connected-businesses/{businessId}/waba-connections
- Authentification
- Clé API (Bearer pk_…), ou session de la console (Bearer ses_… avec l'en-tête X-Environment-Id)
- Portée requise
connections:manage
Paramètres
| Nom | Emplacement | Type | Description |
|---|---|---|---|
businessIdrequis | chemin | string | Identifiant de l'entreprise connectée. |
Corps de la requête (JSON)
| Champ | Type | Description | |
|---|---|---|---|
code | string | requis | Code renvoyé par l'Embedded Signup (usage unique, bref) |
wabaId | string | requis | Identifiant du compte WhatsApp Business (WABA) renvoyé par l'inscription intégrée. Chiffres uniquement. |
phoneNumberId | string | requis | Identifiant du numéro WhatsApp renvoyé par l'inscription intégrée. Chiffres uniquement. |
mode | string | optionnel | cloud_api (défaut), ou coexistence si le client garde l'application WhatsApp Business sur son téléphone.Valeurs : cloud_api, coexistence |
Exemple
curl -X POST "$INBOX_API/connected-businesses/BUSINESS_ID/waba-connections" \
-H "Authorization: Bearer $INBOX_KEY" \
-H "Content-Type: application/json" \
-d '{
"code": "AQBx7…",
"wabaId": "102290129340398",
"phoneNumberId": "106540352242922",
"mode": "cloud_api"
}'const res = await fetch(`${process.env.INBOX_API}/connected-businesses/BUSINESS_ID/waba-connections`, {
method: "POST",
headers: {
Authorization: `Bearer ${process.env.INBOX_KEY}`,
"Content-Type": "application/json",
},
body: JSON.stringify({
"code": "AQBx7…",
"wabaId": "102290129340398",
"phoneNumberId": "106540352242922",
"mode": "cloud_api"
}),
});
const data = await res.json();import os
import requests
res = requests.post(
f"{os.environ['INBOX_API']}/connected-businesses/BUSINESS_ID/waba-connections",
headers={
"Authorization": f"Bearer {os.environ['INBOX_KEY']}",
},
json={
"code": "AQBx7…",
"wabaId": "102290129340398",
"phoneNumberId": "106540352242922",
"mode": "cloud_api",
},
)
print(res.json())<?php
$ch = curl_init(getenv('INBOX_API') . '/connected-businesses/BUSINESS_ID/waba-connections');
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_HTTPHEADER => [
'Authorization: Bearer ' . getenv('INBOX_KEY'),
'Content-Type: application/json',
],
CURLOPT_POSTFIELDS => json_encode([
'code' => 'AQBx7…',
'wabaId' => '102290129340398',
'phoneNumberId' => '106540352242922',
'mode' => 'cloud_api',
]),
]);
$data = json_decode(curl_exec($ch), true);{
"id": "b76a1f98-53d6-4078-8d28-6406482daabb",
"wabaId": "102290129340398",
"status": "active",
"mode": "cloud_api",
"phoneNumber": {
"id": "4d8e654e-d744-4bf3-8211-9ceffcccfe87",
"phoneNumberId": "106540352242922",
"displayNumber": "+237 6 52242922",
"verifiedName": "Cabinet Test",
"qualityRating": "GREEN"
}
}Comptes et numéros connectés d'une entreprise#
GET/connected-businesses/{businessId}/phone-numbers
- Authentification
- Clé API (Bearer pk_…), ou session de la console (Bearer ses_… avec l'en-tête X-Environment-Id)
- Portée requise
connections:read
Paramètres
| Nom | Emplacement | Type | Description |
|---|---|---|---|
businessIdrequis | chemin | string | Identifiant de l'entreprise connectée. |
Exemple
curl "$INBOX_API/connected-businesses/BUSINESS_ID/phone-numbers" \
-H "Authorization: Bearer $INBOX_KEY"const res = await fetch(`${process.env.INBOX_API}/connected-businesses/BUSINESS_ID/phone-numbers`, {
headers: {
Authorization: `Bearer ${process.env.INBOX_KEY}`,
},
});
const data = await res.json();import os
import requests
res = requests.get(
f"{os.environ['INBOX_API']}/connected-businesses/BUSINESS_ID/phone-numbers",
headers={
"Authorization": f"Bearer {os.environ['INBOX_KEY']}",
},
)
print(res.json())<?php
$ch = curl_init(getenv('INBOX_API') . '/connected-businesses/BUSINESS_ID/phone-numbers');
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => [
'Authorization: Bearer ' . getenv('INBOX_KEY'),
],
]);
$data = json_decode(curl_exec($ch), true);[
{
"id": "b76a1f98-53d6-4078-8d28-6406482daabb",
"wabaId": "102290129340398",
"status": "active",
"mode": "cloud_api",
"phoneNumbers": [
{
"id": "4d8e654e-d744-4bf3-8211-9ceffcccfe87",
"phoneNumberId": "106540352242922",
"displayNumber": "+237 6 52242922",
"verifiedName": "Cabinet Test",
"qualityRating": "GREEN"
}
]
}
]