Todos os produtos
Search
Central de documentação

Qoder CN Series:Criar um canal

Última atualização: Jul 15, 2026

Crie um canal de IM externo vinculado a uma Identity e a um Template.

Cabeçalhos da requisição

Cabeçalho

Obrigatório

Descrição

Authorization

Sim

Bearer <PAT>

Content-Type

Sim

application/json

Idempotency-Key

Não

Chave de idempotência opcional para requisições não seguras.

Corpo da requisição

Parâmetro

Tipo

Obrigatório

Descrição

identity_id

string

Sim

ID da Forward Identity. Deve pertencer ao chamador e estar ativado.

template_id

string

Sim

ID do Forward Template usado na criação de sessões pelo canal.

channel_type

string

Sim

Tipo de canal. Valores suportados: wechat, wecom, feishu e dingtalk.

name

string

Não

Nome de exibição do canal.

channel_config.credentials

object

Condicional

Obrigatório para canais com token ou credenciais de aplicativo. Canais com autorização por QR code podem omitir este campo e ativá-lo posteriormente.

channel_config.response_options

object

Não

Configurações de visibilidade das respostas.

Exemplo de requisição

curl -s -X POST 'https://api.qoder.com.cn/api/v1/forward/channels' \
  -H "Authorization: Bearer $QODER_PAT" \
  -H "Content-Type: application/json" \
  -d '{
    "identity_id": "idn_019eabc123",
    "template_id": "tmpl_support",
    "channel_type": "feishu",
    "name": "Support Feishu channel",
    "channel_config": {
      "credentials": {
        "app_key": "...",
        "app_secret": "..."
      },
      "response_options": {
        "include_tool_calls": false,
        "include_thinking": false
      }
    }
  }'

Exemplo de resposta

HTTP 201 Created

{
  "id": "ci_019eabc123",
  "type": "channel",
  "identity_id": "idn_019eabc123",
  "template_id": "tmpl_support",
  "channel_type": "feishu",
  "name": "Support Feishu channel",
  "enabled": true,
  "binding_status": "bound",
  "channel_config": {
    "response_options": {
      "include_tool_calls": false,
      "include_thinking": false
    }
  },
  "created_at": "2026-06-18T10:00:00Z",
  "updated_at": "2026-06-18T10:00:00Z"
}

Campos da resposta

Campo

Tipo

Descrição

id

string

ID do canal. Prefixo de exemplo: ci_.

type

string

Sempre channel.

identity_id

string

ID da Forward Identity vinculada.

template_id

string

ID do Forward Template vinculado.

channel_type

string

Tipo de canal externo.

enabled

boolean

Opção manual para ativar ou desativar.

binding_status

string

unbound, bound ou expired.

channel_config.response_options

object

Configurações de visibilidade das respostas.

Erros

HTTP

Tipo

Código

Gatilho

400

invalid_request_error

channel_type_unsupported

Tipo de canal não suportado.

401

authentication_error

TOKEN_INVALID

PAT inválido ou expirado.

404

not_found_error

channel_template_not_found

O template não existe ou não está visível.

404

not_found_error

channel_identity_not_found

A identity não existe ou não está visível.

409

conflict_error

channel_identity_disabled

Identity desativada.

409

conflict_error

channel_auth_required

Credenciais obrigatórias ou autorização por QR code ausentes.

502

api_error

channel_auth_failed

Falha na autorização do canal subjacente.

Observações

  • O sistema deriva internamente o user_id da autenticação e nunca o expõe.

  • Novos canais assumem por padrão o valor enabled=true.

  • O canal processa mensagens recebidas apenas quando enabled=true e binding_status="bound".

  • Não há suporte para exclusão ou arquivamento de canais. Para isso, desative o canal pela API Atualize channel.