DOM360
Telefonia

Criar um tronco SIP

POST
/trunks

Cadastra a conta de uma operadora num cliente. De entrada (direction = inbound): a operadora é autenticada pelos endereços permitidos, e o tronco não leva credencial; um tronco static precisa do agente de voz que atende. De saída (outbound): o servidor da operadora e, se ela pede, usuário e senha, só de escrita. O tronco nasce sem provisionar: ele só vale nas ligações depois de POST /trunk-provisionings.

Autorização

bearer trunks: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: trunks: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 /trunks, pela direção.

De entrada: a operadora é autenticada pelos endereços permitidos, e o tronco não leva credencial — uma credencial vira autenticação que a operadora não responde, e toda ligação cai. De saída: o servidor da operadora e, se ela pede, usuário e senha (só de escrita).

O corpo de POST /trunks, pela direção.

De entrada: a operadora é autenticada pelos endereços permitidos, e o tronco não leva credencial — uma credencial vira autenticação que a operadora não responde, e toda ligação cai. De saída: o servidor da operadora e, se ela pede, usuário e senha (só de escrita).

Corpo da resposta

application/json

application/json

curl -X POST "https://example.com/trunks" \  -H "Idempotency-Key: b3f0c1e2-4a5b-4c6d-8e9f-0a1b2c3d4e5f" \  -H "Content-Type: application/json" \  -d '{    "direction": "inbound",    "name": "string",    "provider": "string",    "routing_mode": "static"  }'
{  "agents": [    {      "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",      "name": "string"    }  ],  "allowed_addresses": [    "string"  ],  "created_at": "2019-08-24T14:15:22Z",  "dealer_id": 0,  "dealer_name": "string",  "default_agent_id": "3fbd0ae5-640f-4cf1-97c8-0ab89a60d902",  "direction": "inbound",  "enabled": true,  "has_auth": true,  "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",  "name": "string",  "provider": "string",  "provisioning": {    "livekit_trunk_id": "string",    "provisioned_at": "2019-08-24T14:15:22Z",    "state": "never"  },  "routing_mode": null,  "sip_port": 0,  "sip_server": "string",  "tenant_id": 0,  "tenant_name": "string",  "updated_at": "2019-08-24T14:15:22Z"}