Synergy Connect

Documentação

Consultar uma sessão de cadastro

GET/v1/onboarding-sessions/{session_id}

O estado da sessão. Confira state e status aqui (ou pelo webhook) antes de liberar o recurso do cliente: o redirect do navegador é só conveniência.

Requer#

Escopo da chave
onboarding onboardingComo 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#

No caminho#

No caminho
NomeTipoObrigatórioDescrição
session_idstringobrigatórioO id da sessão de cadastro.

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—Concluída
401—Chave revogada ou desconhecida
401190Chave malformada ou forjada
403—A chave não tem o escopo onboarding
403—O plano da organização não inclui a API
404—Sessão não encontrada
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
idstringobrigatório
statusstringobrigatórioValores: pending, opened, completed, expired, cancelled, blocked.
urlstring | nullobrigatórioO link para o cliente abrir: só enquanto pending. Uso único, preso ao primeiro navegador que o abre.
modestringobrigatórioValores: cloud, coexistence, choice.
returnstringobrigatórioValores: redirect, popup.
redirect_urlstringobrigatório
statestringobrigatório
external_refstring | nullobrigatório
display_namestringobrigatório
created_atstringobrigatório
expires_atstringobrigatório
blockedobject | nullobrigatório
last_errorobject | nullobrigatório
resultobject | nullobrigatório

Limites de taxa#

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

Notas#

  • 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/onboarding-sessions/obs_4Fq9Lm2Xr7Tz1Vb8Nc3Kd6Hs' \
  -H "Authorization: Bearer $SYNERGY_API_KEY"

JavaScript

const res = await fetch('https://api.synergyconnect.com.br/v1/onboarding-sessions/obs_4Fq9Lm2Xr7Tz1Vb8Nc3Kd6Hs', {
  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/onboarding-sessions/obs_4Fq9Lm2Xr7Tz1Vb8Nc3Kd6Hs",
    headers={
        "Authorization": f"Bearer {os.environ['SYNERGY_API_KEY']}",
    },
)
print(res.status_code, res.json())
Resposta

200

{
  "id": "obs_4Fq9Lm2Xr7Tz1Vb8Nc3Kd6Hs",
  "status": "completed",
  "url": null,
  "mode": "choice",
  "return": "redirect",
  "redirect_url": "https://app.minha-plataforma.com/whatsapp/ok",
  "state": "e7f2c0d4-9b1e-4c52-8d0a-3f6a1b2c4d5e",
  "external_ref": "tenant_8841",
  "display_name": "Minha Plataforma",
  "created_at": "2026-01-01T00:00:00.000Z",
  "expires_at": "2026-01-01T00:15:00.000Z",
  "blocked": null,
  "last_error": null,
  "result": {
    "instance_id": "3f9a1c0b7d2e4a6f8b1c2d3e4f5a6b7c8d9e0f1a2b3c4d5e6f7a8b9c0d1e2f3a",
    "phone_number_id": "106540352242922",
    "waba_id": "102290129340398",
    "display_phone_number": "+55 11 91234-5678",
    "mode": "cloud"
  }
}

401

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

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

403

{
  "error": "This key lacks the onboarding scope"
}

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

404

{
  "error": "Session not found"
}

429

{
  "error": "Rate limit hit"
}

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