Endpoints de status do agente

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