Referência da API

.md

Canais

Os números de WhatsApp conectados a esta conta — e o channelId que quase toda escrita pede.

Quem sou eu

GET/api/v1/me

Confere a chave e diz de qual organização e de qual escopo ela é. É a primeira chamada a fazer com uma chave nova.

Pedidocurl
curl https://linkzap.orion.moe/api/v1/me \
  -H "Authorization: Bearer lz_SUA_CHAVE"
RespostaJSON
{
  "data": {
    "org": { "id": "org_...", "name": "Clínica VidaVet" },
    "scope": "account",
    "channel": null,
    "token": {
      "id": "tok_...",
      "name": "CRM",
      "prefix": "lz_ab12cd34",
      "createdAt": "2026-09-20T12:00:00.000Z",
      "lastUsedAt": "2026-09-21T14:02:59.000Z"
    }
  }
}

Com uma chave de canal, scope vem "channel" e channel traz o número ao qual ela está presa.

Os números conectados

GET/api/v1/channels

Lista os números da conta, em ordem alfabética pelo rótulo, com o estado de cada um. Devolve todos de uma vez — esta lista não é paginada. Uma chave de canal vê só o próprio.

Pedidocurl
curl https://linkzap.orion.moe/api/v1/channels \
  -H "Authorization: Bearer lz_SUA_CHAVE"
RespostaJSON
{
  "data": [
    {
      "id": "chn_9f2a...",
      "label": "Recepção",
      "provider": "web",
      "phone": "5592999990000",
      "enabled": true,
      "ready": true,
      "reason": null,
      "createdAt": "2026-09-02T18:11:04.000Z"
    },
    {
      "id": "chn_71bd...",
      "label": "Comercial",
      "provider": "cloud",
      "phone": "5592988880000",
      "enabled": true,
      "ready": false,
      "reason": "O número está desconectado.",
      "createdAt": "2026-09-14T09:02:41.000Z"
    }
  ]
}
  • provider: "web" — número conectado pelo QR do celular. Sem janela de 24 horas; o número é seu e o risco de bloqueio também.
  • provider: "cloud" — conta oficial da Meta. Tem janela de 24 horas para texto livre, e fora dela só template aprovado.
  • ready e reason vêm da mesma verificação que o envio faz. Se ready é false, um POST /messages por esse canal responderia 409 com exatamente esse reason — dá para checar antes em vez de tentar e tratar o erro.

Guarde o id, não o rótulo

O label é o nome que a equipe deu ao número e pode mudar a qualquer momento na tela de Canais. O id não muda enquanto o canal existir.