Conexão e contas
Mostra se o WhatsApp da loja está conectado, lista e desconecta contas e checa se a loja atende ligações.
Consultar a situação da conexão
Devolve um retrato da conexão: se a plataforma tem as credenciais da Meta, se existe um número ativo, os dados do número principal e a lista de contas. É a chamada que um painel faz ao abrir a tela de WhatsApp para decidir se mostra o assistente de cadastro ou a caixa de entrada.
/api/v1/admin/whatsapp-confluence/onboarding/statusAdminSituação da conexão do WhatsApp
Exemplo de requisição
curl "$BASE_URL/api/v1/admin/whatsapp-confluence/onboarding/status" \
-H "Authorization: Bearer $TOKEN"Resposta
{
"platform_configured": true,
"connected": true,
"status": "connected",
"phone_number": "5511987654321",
"phone_number_id": "109876543210987",
"waba_id": "208765432109876",
"verified_name": "Loja Exemplo",
"platform_type": "CLOUD_API",
"app_active": true,
"webhooks_subscribed": true,
"accounts": [
{
"id": "11111111-1111-4111-8111-111111111111",
"phone_number_id": "109876543210987",
"business_phone": "5511987654321",
"display_name": "Loja Exemplo",
"waba_id": "208765432109876",
"status": "A",
"onboarding_state": "C",
"step": "complete",
"is_on_biz_app": true,
"platform_type": "CLOUD_API",
"webhook_subscribed": true,
"sync_window_open": false,
"history_sync_requested": false,
"history_sync_status": "P",
"contacts_sync_requested": false,
"contacts_sync_status": "P"
}
],
"capabilities": {
"enable_inbox": true,
"enable_bot": true,
"enable_campaigns": true,
"enable_web_preview": true,
"enable_meta_flows": false
}
}Campos da resposta
platform_configuredbooleanmeta_app_id, segredo do aplicativo e token de verificação. Se for false, o cadastro do número não funciona e o suporte da plataforma precisa configurar.connectedbooleanstatusstringconnectednot_connectedconnected ou not_connected.phone_numberstringphone_number_idstringwaba_idstringverified_namestringplatform_typestringapp_activebooleanwebhooks_subscribedbooleanvia_storebooleanaccountsarraycapabilitiesobjectenable_*, allow_*, show_* e outros) com o valor efetivo para esta loja. Veja Configurações do canal.Erros
| Status | Quando | Corpo de exemplo |
|---|---|---|
| 401 | Sem token, token inválido ou expirado. | {"error":"missing authorization header"} |
| 403 | O usuário não tem papel de administrador. | {"error":"insufficient permissions"} |
Listar as contas
Lista todas as contas (números) da loja, inclusive as desconectadas (status D). Use para montar a tela de gestão de números ou para achar o id que as rotas de cadastro pedem.
/api/v1/admin/whatsapp-confluence/accountsAdminLista as contas de WhatsApp
Exemplo de requisição
curl "$BASE_URL/api/v1/admin/whatsapp-confluence/accounts" \
-H "Authorization: Bearer $TOKEN"Resposta
{
"accounts": [
{
"id": "11111111-1111-4111-8111-111111111111",
"phone_number_id": "109876543210987",
"business_phone": "5511987654321",
"display_name": "Loja Exemplo",
"waba_id": "208765432109876",
"status": "A",
"onboarding_state": "C",
"step": "complete",
"is_on_biz_app": true,
"platform_type": "CLOUD_API",
"webhook_subscribed": true,
"sync_window_open": false,
"history_sync_requested": false,
"history_sync_status": "P",
"contacts_sync_requested": false,
"contacts_sync_status": "P"
}
]
}Campos da resposta
accountsarrayaccounts[].iduuidaccount_id.accounts[].phone_number_idstringaccounts[].business_phonestring5511987654321).accounts[].display_namestringaccounts[].waba_idstringaccounts[].statusstringPAEDaccounts[].onboarding_statestringQXSHCEaccounts[].stepstringqueuedconnectedsubscribedsync_requestedcompleteerrorunknownonboarding_state, em texto.accounts[].is_on_biz_appbooleanaccounts[].platform_typestringCLOUD_API).accounts[].webhook_subscribedbooleanaccounts[].sync_deadline_atstringaccounts[].sync_window_openbooleanaccounts[].history_sync_requestedbooleanaccounts[].history_sync_statusstringPRDEaccounts[].contacts_sync_requestedbooleanaccounts[].contacts_sync_statusstringPRDEaccounts[].via_storebooleantrue) para um seller: o número é o da loja, mostrado sem os ids da Meta.Erros
| Status | Quando | Corpo de exemplo |
|---|---|---|
| 401 | Sem token, token inválido ou expirado. | {"error":"missing authorization header"} |
| 403 | O usuário não tem papel de administrador. | {"error":"insufficient permissions"} |
Desconectar uma conta
Cancela a assinatura de eventos da Meta (sem garantia: se a Meta recusar, a plataforma segue em frente) e marca a conta como desconectada (status D). A conta não é apagada: histórico e trilha de auditoria continuam. Reconectar o mesmo número é refazer o cadastro com Trocar o código.
/api/v1/admin/whatsapp-confluence/accounts/{id}AdminDesconecta uma conta de WhatsApp
Parâmetros de caminho
iduuidobrigatórioid de Listar contas).Exemplo de requisição
curl -X DELETE "$BASE_URL/api/v1/admin/whatsapp-confluence/accounts/11111111-1111-4111-8111-111111111111" \
-H "Authorization: Bearer $TOKEN"Resposta
{
"success": true
}Campos da resposta
successbooleantrue quando a conta foi marcada como desconectada.Erros
| Status | Quando | Corpo de exemplo |
|---|---|---|
| 404 | Não existe conta com esse id. | {"error":"conta não encontrada","kind":"not_found"} |
| 401 | Sem token, token inválido ou expirado. | {"error":"missing authorization header"} |
| 403 | O usuário não tem papel de administrador. | {"error":"insufficient permissions"} |
Ler os dados do Embedded Signup
Devolve o que o navegador precisa para abrir a janela de cadastro da Meta. Só traz dados públicos; o segredo do aplicativo e o token de verificação nunca saem por aqui.
/api/v1/admin/whatsapp-confluence/onboarding/es-configAdminDados para abrir o Embedded Signup
Exemplo de requisição
curl "$BASE_URL/api/v1/admin/whatsapp-confluence/onboarding/es-config" \
-H "Authorization: Bearer $TOKEN"Resposta
{
"meta_app_id": "1234567890123456",
"embedded_signup_config_id": "9876543210987654",
"configured": true
}Campos da resposta
meta_app_idstringembedded_signup_config_idstringconfiguredbooleantrue só quando os dois ids existem.Erros
| Status | Quando | Corpo de exemplo |
|---|---|---|
| 401 | Sem token, token inválido ou expirado. | {"error":"missing authorization header"} |
| 403 | O usuário não tem papel de administrador. | {"error":"insufficient permissions"} |
Diagnosticar ligações
Responde à pergunta do lojista: "por que o telefone toca e ninguém atende?". Roda duas verificações (atendente virtual de voz ligado no servidor e número de WhatsApp conectado com credencial válida) e diz se a loja consegue atender ligações nativas do WhatsApp, com a correção sugerida quando algo falha.
/api/v1/admin/whatsapp-confluence/diagnosticoAdminDiagnóstico de ligações do WhatsApp
Exemplo de requisição
curl "$BASE_URL/api/v1/admin/whatsapp-confluence/diagnostico" \
-H "Authorization: Bearer $TOKEN"Resposta
{
"can_answer": true,
"summary": "A loja consegue atender ligação no WhatsApp.",
"checks": [
{
"id": "vi",
"label": "Atendente virtual",
"status": "ok",
"detail": "A VI de voz está configurada neste servidor."
},
{
"id": "conta",
"label": "Número do WhatsApp",
"status": "ok",
"detail": "Número conectado e com credencial válida."
}
],
"phone_number_id": "109876543210987"
}Campos da resposta
can_answerbooleantrue quando as duas verificações passam.summarystringchecksarraychecks[].idstringvicontachecks[].labelstringchecks[].statusstringokerroavisochecks[].detailstringchecks[].fixstringphone_number_idstringErros
| Status | Quando | Corpo de exemplo |
|---|---|---|
| 401 | Sem token, token inválido ou expirado. | {"error":"missing authorization header"} |
| 403 | O usuário não tem papel de administrador. | {"error":"insufficient permissions"} |