DOM360
Canais

Criar um canal

POST
/channels

Cria um canal do tipo pedido. A configuração é validada pelo tipo, e uma chave que a plataforma não lê é recusada com o nome dela. A credencial é só de escrita e vale para o Chatwoot e o WhatsApp oficial; a conexão não oficial nasce pareando e recebe a sessão pelo QR. O agente precisa ser um agente de texto do mesmo cliente que atende conversas. A mesma identidade no mesmo cliente, ou um phone_number_id já usado na plataforma, responde 409.

Autorização

bearer channels:write
AutorizaçãoBearer <token>

Credencial da v3: o JWT da sessão (o mesmo da v2) ou um token pessoal dom_pat_…. A lista de escopos de cada operação diz o que ela exige: uma capacidade (agents:read), authenticated ou session-only. Segredo de máquina (X-Agent-Secret, X-API-Token, sdk_…) não é aceito.

Em: header

Escopo: channels:write

Parâmetros de cabeçalho

Idempotency-Key?|

Chave opcional de 1 a 255 caracteres ASCII visíveis; quando enviada, vale o mesmo contrato da §8.

Corpo da requisição

application/json

Definições TypeScript

Use o tipo request body no TypeScript.

O corpo de POST /channels, discriminado por type (09 §4.3, resposta 11): a configuração é a do tipo, estrita — uma chave que a plataforma não lê é recusada com o nome dela.

Uma caixa de entrada do Chatwoot.

Corpo da resposta

application/json

application/json

curl -X POST "https://example.com/channels" \  -H "Idempotency-Key: b3f0c1e2-4a5b-4c6d-8e9f-0a1b2c3d4e5f" \  -H "Content-Type: application/json" \  -d '{    "config": {      "account_id": 0,      "base_url": "string"    },    "name": "string",    "type": "chatwoot"  }'
{  "agent_id": "2b1e3b65-2c04-4fa2-a2d7-467901e98978",  "campaign_eligibility": {    "eligible": true,    "reason": "string"  },  "capabilities": {    "delivery": "none",    "initiation": "never",    "owner": "external",    "requires_pairing": true,    "session_window_seconds": 0  },  "created_at": "2019-08-24T14:15:22Z",  "enabled": true,  "external_identity": "string",  "has_credential": true,  "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",  "is_serving": true,  "last_status_at": "2019-08-24T14:15:22Z",  "name": "string",  "status": "disconnected",  "status_detail": "string",  "status_label": "string",  "tenant_id": 0,  "type_label": "string",  "updated_at": "2019-08-24T14:15:22Z",  "config": {    "account_id": 0,    "auto_respond": true,    "base_url": "string",    "transcribe_audio": true  },  "type": "chatwoot"}