Synergy Connect

Documentação

Cancelar uma sessão de cadastro

POST/v1/onboarding-sessions/{session_id}/cancel

Cancela a sessão: o link deixa de valer. Idempotente (cancelar de novo responde a mesma sessão). Uma sessão já concluída não se cancela (409): o número já foi conectado.

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—Cancelada
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
409—Já concluída
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 -X POST 'https://api.synergyconnect.com.br/v1/onboarding-sessions/obs_4Fq9Lm2Xr7Tz1Vb8Nc3Kd6Hs/cancel' \
  -H "Authorization: Bearer $SYNERGY_API_KEY"

JavaScript

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

Python

import os

import requests

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

200

{
  "id": "obs_4Fq9Lm2Xr7Tz1Vb8Nc3Kd6Hs",
  "status": "cancelled",
  "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": null
}

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"
}

409

{
  "error": "The session is already completed"
}

429

{
  "error": "Rate limit hit"
}

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