Synergy Connect

Documentação

Listar os números

GET/v1/numbers

Os números de WhatsApp da organização que a chave alcança (os da chave, ou todos), sem os que estão sendo apagados. Contas do Instagram não aparecem. Use phone_number_id nos caminhos desta API e id em instanceIds.

Requer#

Escopo da chave
NenhumComo os escopos funcionam
Recurso do plano
API e webhooks apiVer os planos que incluem
Formato
Rota do Synergy. Erros no formato da Meta.

Parâmetros#

Cabeçalhos#

Cabeçalhos
NomeTipoObrigatórioDescrição
AuthorizationstringobrigatórioSua chave de API, no formato Bearer <chave>. Veja Autenticação.

Respostas#

Respostas
StatusCódigoQuando acontece
200—Um número
401—Chave revogada ou desconhecida
401190Chave malformada ou forjada
403—O plano da organização não inclui a API
429—Limite de taxa

Os erros no formato da Meta trazem o código em error.code. Ver todos os erros.

Corpo da resposta 200#

Campos da resposta 200
NomeTipoObrigatórioDescrição
dataobject[]obrigatório
data[].idstringobrigatórioO id do número na Synergy: o que webhooks e chaves usam em instanceIds.
data[].phone_number_idstringobrigatórioO phone_number_id da Meta: o dos caminhos desta API.
data[].display_phone_numberstring | nullobrigatório
data[].verified_namestring | nullobrigatório
data[].aliasstring | nullobrigatórioO apelido dado na plataforma.
data[].waba_idstringobrigatório
data[].modestringobrigatóriocoexistence = o número também é usado no app WhatsApp Business. Valores: cloud, coexistence.
data[].statusstringobrigatórioValores: active, onboarding, disconnected, frozen.

Limites de taxa#

  • Organização: 120 requisições a cada 60 s por chave (API_ORG_LIMIT).

Notas#

  • x-scopes vazio = qualquer escopo serve.
  • As rotas da organização respondem no formato da gestão ({ "error": … }, com reason ou feature quando há), não no da Graph API — exceto a chave malformada (401, código 190).
  • Uma chave recusada (revogada, ou sem o escopo) recebe este 401 pelos 60 s seguintes, por instância do Worker (cache de recusa, como na gestão).
Requisição

curl

curl 'https://api.synergyconnect.com.br/v1/numbers' \
  -H "Authorization: Bearer $SYNERGY_API_KEY"

JavaScript

const res = await fetch('https://api.synergyconnect.com.br/v1/numbers', {
  method: 'GET',
  headers: {
    Authorization: `Bearer ${process.env.SYNERGY_API_KEY}`,
  },
});
console.log(res.status, await res.json());

Python

import os

import requests

res = requests.get(
    "https://api.synergyconnect.com.br/v1/numbers",
    headers={
        "Authorization": f"Bearer {os.environ['SYNERGY_API_KEY']}",
    },
)
print(res.status_code, res.json())
Resposta

200

{
  "data": [
    {
      "id": "3f9a1c0b7d2e4a6f8b1c2d3e4f5a6b7c8d9e0f1a2b3c4d5e6f7a8b9c0d1e2f3a",
      "phone_number_id": "106540352242922",
      "display_phone_number": "+55 11 91234-5678",
      "verified_name": "Loja Exemplo",
      "alias": "Vendas",
      "waba_id": "102290129340398",
      "mode": "cloud",
      "status": "active"
    }
  ]
}

401

{
  "error": "Invalid or revoked key"
}

Há 2 casos com este status; veja a tabela de respostas.

403

{
  "error": "This plan does not include the API",
  "feature": "api"
}

429

{
  "error": "Rate limit hit"
}

Ficou com dúvida? Escreva para suporte@synergyconnect.com.br.