Agentes

Gerencie os agentes de atendimento da sua conta. Agentes podem atender conversas, ser atribuidos a equipes e ter diferentes niveis de acesso. Alem das funcoes base (agent e administrator), voce pode atribuir uma Funcao Personalizada a um agente pelo campo custom_role_id.

GET/api/v1/accounts/{account_id}/agents

Lista todos os agentes da conta.

Parametros

NomeTipoObrigatorioDescricao
account_id(path)integerSimID numerico da conta
curl -s "https://chat.seudominio.com/api/v1/accounts/1/agents" \
  -H "api_access_token: YOUR_TOKEN" | jq .
200Lista de agentes
json
[
  {
    "id": 1,
    "name": "Maria Santos",
    "email": "maria@empresa.com",
    "role": "administrator",
    "availability_status": "online",
    "auto_offline": true,
    "confirmed": true,
    "custom_role_id": null
  },
  {
    "id": 2,
    "name": "Pedro Lima",
    "email": "pedro@empresa.com",
    "role": "agent",
    "availability_status": "busy",
    "auto_offline": true,
    "confirmed": true,
    "custom_role_id": 5
  }
]
POST/api/v1/accounts/{account_id}/agents

Adiciona um novo agente a conta. Um convite sera enviado por email.

Body (envolto em objeto agent)

NomeTipoObrigatorioDescricao
namestringSimNome completo do agente
emailstringSimEmail (sera usado para login)
rolestringSimFuncao: agent ou administrator
availabilitystringNaoDisponibilidade inicial: online, offline, busy
auto_offlinebooleanNaoFicar offline automaticamente quando inativo
bash
curl -X POST "https://chat.seudominio.com/api/v1/accounts/1/agents" \
  -H "api_access_token: YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "agent": {
      "name": "Carlos Oliveira",
      "email": "carlos@empresa.com",
      "role": "agent"
    }
  }'
PATCH/api/v1/accounts/{account_id}/agents/{id}

Atualiza dados de um agente (role, disponibilidade, etc).

Body (campos do agente envoltos em objeto agent)

NomeTipoObrigatorioDescricao
namestringNaoNome
rolestringNaoFuncao base: agent ou administrator
availabilitystringNaoStatus: online, offline, busy
auto_offlinebooleanNaoFicar offline automaticamente quando inativo
custom_role_id(body)integer | nullNaoEnviado na RAIZ do corpo (fora do objeto agent). ID de uma Funcao Personalizada da conta a atribuir ao agente. Enviar null limpa a funcao (volta ao comportamento base). IDs de outra conta sao ignorados.

Atencao: diferente dos demais campos, custom_role_id e lido na raiz do corpo da requisicao, fora do objeto agent. O ID deve referenciar uma Funcao Personalizada da mesma conta. O campo tambem retorna no response de listagem dos agentes.

bash
curl -X PATCH "https://chat.seudominio.com/api/v1/accounts/1/agents/2" \
  -H "api_access_token: YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "agent": { "role": "agent", "availability": "online" },
    "custom_role_id": 5
  }'
DELETE/api/v1/accounts/{account_id}/agents/{id}

Remove um agente da conta.

bash
curl -X DELETE "https://chat.seudominio.com/api/v1/accounts/1/agents/3" \
  -H "api_access_token: YOUR_TOKEN"
200Agente removido com sucesso