Os endpoints da API de status do agente fornecem acesso aos objetos de status do agente. Um objeto de agente é criado para cada usuário configurado na Contact Center AI Platform (CCAI Platform) que tem uma função com uma permissão de agente.
Confira abaixo os endpoints da API de status do agente:
Os endpoints de status do agente permitem modificar o status dos agentes. Elas permitem mudanças de Disponível para qualquer status personalizado. Transições para e de status definidos pelo sistema, como Em chamada, acionam um erro. Além disso, esses endpoints oferecem suporte a atualizações em massa, permitindo simultaneamente modificações de status para equipes inteiras ou grupos selecionados de agentes.
Atualizar status do agente
Esse endpoint permite atualizar o status dos agentes. A tabela a seguir mostra as propriedades no corpo JSON:
| Propriedade | Obrigatório | Tipo de dados | Definição |
|---|---|---|---|
| status | TRUE | String | O status para definir os agentes, por exemplo, "disponível". |
| agent_ids | TRUE | Arry Integer | ARRAY de IDs de agentes. |
| team_ids | TRUE | Número inteiro da matriz | ARRAY de IDs de equipes. |
Endpoint:
Method: POST
Type: RAW
URL: https://{subdomain}.{domain}/apps/api/v1/agent_statuses
Cabeçalhos:
| Chave | Valor | Descrição |
|---|---|---|
| Content-Type | application/json |
Corpo:
{
"status": "Available",
"agent_ids": [
11,
12
],
"team_ids": []
}
Exemplo de solicitação e respostas
As seções a seguir fornecem exemplos de solicitações ao endpoint.
Mudar os status dos agentes
O exemplo a seguir demonstra a solicitação e a resposta associada de mudança do status de alguns agentes em que a ação foi bem-sucedida.
Solicitação
Cabeçalhos:
| Chave | Valor | Descrição |
|---|---|---|
| Content-Type | application/json |
Corpo:
{
"status": "Available",
"agent_ids": [
11,
12
],
"team_ids": [
1
]
}
Resposta:
[
{
"agent_id": 11,
"name": "Darth Vader",
"email": "notanakinskywalker@empire.com",
"agent_number": "Agent No.111",
"previous_status": "lunch",
"current_status": "Available"
},
{
"agent_id": 12,
"name": "Craig T",
"email": "craigT@nelson.com",
"agent_number": "Agent No.112",
"previous_status": "In-call",
"current_status": "In-call",
"message": "Agent can't be changed from system status 'In-call'"
},
{
"agent_id": 13,
"name": "Raymond D",
"email": "rayd@nelson.com",
"agent_number": "Agent No.113",
"previous_status": "Offline",
"current_status": "Offline",
"message": "Agent's status can't be changed if they are offline or logged out"
}
]
Código de status:200
O status não existe
Este exemplo mostra a solicitação e a resposta associada em que o status fornecido não existe e, portanto, é considerado inválido.
Solicitação
Cabeçalhos:
| Chave | Valor | Descrição |
|---|---|---|
| Content-Type | application/json |
Corpo:
Body
{
"status": "Napping",
"agent_ids": [
11,
12
],
"team_ids": []
}
Resposta: erro: o status "Napping" não existe
{
"message": "status 'Napping' does not exist"
}
Código de status:400
Status definido como status do sistema
Este exemplo mostra a solicitação e a resposta em que o status é definido como um status do sistema, neste caso "in-call". Não é possível definir o status de um agente para um status gerenciado pelo sistema.
Solicitação
Cabeçalhos:
| Chave | Valor | Descrição |
|---|---|---|
| Content-Type | application/json |
Corpo:
Body
{
"status": "In-call",
"agent_ids": [
11,
12
]
}
Resposta: Erro: não é possível mudar o agente para o status do sistema "Em ligação"
{
"message": "Agent can't be changed to system status 'In-call'"
}
Código de status:400
Acessar status dos agentes
Esse endpoint permite recuperar o status dos agentes. A tabela a seguir mostra as propriedades no corpo JSON:
| Propriedade | Obrigatório | Tipo de dados | Definição |
|---|---|---|---|
| status | TRUE | String | O status para definir os agentes, por exemplo, "disponível". |
| agent_ids | FALSO | Arry Integer | ARRAY de IDs de agentes. |
| team_ids | FALSO | Número inteiro da matriz | ARRAY de IDs de equipes. |
Endpoint:
Method: GET
Type: RAW
URL: https://{subdomain}.{domain}/apps/api/v1/agent_statuses
Cabeçalhos:
| Chave | Valor | Descrição |
|---|---|---|
| Content-Type | application/json |
Corpo:
{
"agent_ids": [
11,
12
],
"team_ids": [
1
]
}
Exemplo de solicitação e respostas
As seções a seguir fornecem exemplos de solicitações ao endpoint.
Receber o status de agentes e equipes específicos
Este exemplo mostra como receber o status dos agentes com IDs 11 e 12 e de qualquer agente na equipe com ID 1.
Solicitação
Cabeçalhos:
| Chave | Valor | Descrição |
|---|---|---|
| Content-Type | application/json |
Corpo:
{
"agent_ids": [
11,
12
],
"team_ids": [
1
]
}
Resposta: status dos agentes solicitados
[
{
"agent_id": 11,
"name": "Darth Vader",
"email": "notanakinskywalker@empire.com",
"agent_number": "Agent No.111",
"status": "lunch",
"ip_addrs": [
"34.211.11.101"
]
},
{
"agent_id": 12,
"name": "Craig T",
"email": "craigT@nelson.com",
"agent_number": "Agent No.112",
"status": "In-call",
"ip_addrs": [
"34.211.11.102"
]
},
{
"agent_id": 13,
"name": "Raymond D",
"email": "rayd@nelson.com",
"agent_number": "Agent No.113",
"status": "Offline",
"ip_addrs": [
"34.211.11.103"
]
}
]
Código de status:200