Endpoints do agente

Os endpoints de agentes oferecem uma maneira de receber objetos de agentes. Cada objeto de agente representa um único agente na Contact Center AI Platform (CCAI Platform). Analise o modelo a seguir para saber quais campos podem conter informações de identificação pessoal (PII).

[
  {
    "id": 0,
    "email": "string",
    "created_at": "2018-05-30T20:46:31.333Z",
    "last_login_time": "2018-05-30T20:46:31.333Z",
    "first_name": "string",
    "middle_name": "string",
    "last_name": "string",
    "avatar_url": "string",
    "agent_number": "string",
    "status": {
      "id": 0,
      "name": "string",
      "color": "string"
    },
    "status_updated_at": "2018-05-30T20:46:31.333Z",
    "crm_authenticated": true,
    "online": true,
    "wrap_up": true,
    "call_count": 0,
    "chat_count": 0,
    "location": "string",
    "roles": [
      "agent"
    ],
    "teams": [
      {
        "id": 0,
        "name": "string",
        "parent_id": 0,
        "position": 0,
        "deleted": true,
        "agents_count": 0
      }
    ],
    "channels": [
      {
        "channel_type": "chat",
        "menu": {
          "id": 0,
          "name": "string",
          "parent_id": 0,
          "position": 0,
          "deleted": true,
          "hidden": "string",
          "menu_type": "ivr_menu",
          "output_msg": "string"
        }
      }
    ]
  }
]

Agentes

Parâmetro Obrigatório Tipo de dados Definição
página FALSO String Pares com "por" para indicar qual página de registros. Por exemplo, se "por" for definido como 200 e a página for 2, a resposta vai conter o registro 201-400, já que a página 1 vai conter 1-200.
por FALSO String Pares com a página para indicar quantos registros serão incluídos em uma página de registros. Por exemplo, se "por" for definido como 200 e a página for 2, a resposta vai conter o registro 201-400, já que a página 1 vai conter 1-200.
id[] FALSO Array[String] Array[Strings]. ID dos registros a serem pesquisados e retornados
agent_number[] FALSO Array[String] Números de agentes atribuídos pelo administrador no momento da criação de um agente
status_id[] FALSO Array[String] Filtra por status do agente
online[] FALSO Booleano Filtra se os agentes estão on-line ou não
wrap_up[] FALSO Booleano Filtra se os agentes estão no status de encerramento
location[] FALSO Array[String] Filtra por local do agente
last_login_time[from] FALSO Horário UTC Cria um limite inferior do campo de horário do último login. Todos os registros retornados serão posteriores ao valor inserido.
last_login_time[to] FALSO Horário UTC Cria um limite superior do campo de horário do último login. Todos os registros retornados serão anteriores ao valor inserido.
status_updated_at[from] FALSO Horário UTC Cria um limite inferior do campo de status atualizado em. Todos os registros retornados serão posteriores ao valor inserido.
status_updated_at[to] FALSO Horário UTC Cria um limite superior do campo de status atualizado em. Todos os registros retornados serão anteriores ao valor inserido.

Endpoint:

Method: GET
Type: 
URL: https://{{subdomain}}.{{domain}}/manager/api/v1/agents

Mais exemplos de solicitações/respostas:

Exemplo de solicitação: exemplo de agentes

Corpo: nenhum

Exemplo de resposta: exemplo de agentes

[
  {
    "id": 45,
    "email": "craigT@nelson.com",
    "roles": [
      "agent"
    ],
    "first_name": "Craig T",
    "middle_name": null,
    "last_name": "Nelson",
    "avatar_url": "https://subdomain.somedomain.com/default-profile.png",
    "agent_number": null,
    "crm_authenticated": false,
    "status": {
      "id": -6,
      "name": "Wrap-up",
      "color": "purple",
    },
    "online": false,
    "wrap_up": false,
    "call_count": 0,
    "chat_count": 0,
    "location": null,
    "created_at": "2016-11-10T00:15:04.000Z",
    "last_login_time": "2016-11-10T00:17:57.000Z",
    "status_updated_at": null,
    "teams": [
      {
        "id": 163,
        "name": "team CTN",
        "parent_id": null,
        "position": 11,
        "agents_count": 12,
        "deleted": false
      }
    ],
    "channels": [
      {
        "channel_type": "voice_call",
        "menu": {
          "id": 2029,
          "name": "Mobile Queue",
          "parent_id": null,
          "position": 0,
          "deleted": false,
          "menu_type": "mobile_menu",
          "output_msg": null,
          "hidden": false
        }
      }
    ]
  },
  {
    "id": 60,
    "email": "notanakinskywalker@empire.com",
    "roles": [
      "agent"
    ],
    "first_name": "Darth",
    "middle_name": null,
    "last_name": "Vader",
    "avatar_url": "https://subdomain.somedomain.com/default-profile.png",
    "agent_number": null,
    "crm_authenticated": false,
    "status": {
      "id": -7,
      "name": "In-call",
      "color": "light_blue",
    },
    "online": false,
    "wrap_up": false,
    "call_count": 0,
    "chat_count": 0,
    "location": null,
    "created_at": "2017-02-03T19:44:14.000Z",
    "last_login_time": "2017-02-03T20:05:31.000Z",
    "status_updated_at": "2017-02-04T12:36:11.000Z",
    "teams": [],
    "channels": [
      {
        "channel_type": "voice_call",
        "menu": {
          "id": 1693,
          "name": "Premium Support",
          "parent_id": null,
          "position": 0,
          "deleted": false,
          "menu_type": "ivr_menu",
          "output_msg": "You selected premium support",
          "hidden": false
        }
      }
    ]
  },
  {
    "id": 81,
    "email": "email@email.com",
    "roles": [
      "agent"
    ],
    "first_name": "Barry",
    "middle_name": null,
    "last_name": "Allen",
    "avatar_url": "https://subdomain.somedomain.com/default-profile.png",
    "agent_number": null,
    "crm_authenticated": false,
    "status": {
      "id": -10,
      "name": "Offline",
      "color": "grey",
    },
    "online": false,
    "wrap_up": false,
    "call_count": 0,
    "chat_count": 0,
    "location": null,
    "created_at": "2017-03-13T23:47:39.000Z",
    "last_login_time": "2017-03-13T23:48:17.000Z",
    "status_updated_at": "2017-03-13T23:56:04.000Z",
    "teams": [],
    "channels": [
      {
        "channel_type": "voice_call",
        "menu": {
          "id": 2028,
          "name": "Speed Issues",
          "parent_id": 2027,
          "position": 0,
          "deleted": false,
          "menu_type": "mobile_menu",
          "output_msg": null,
          "hidden": false
        }
      }
    ]
  }
]

Código de status: 200

Status atual dos agentes

O status atual dos agentes retorna todos os agentes conectados e o status atual deles, há quanto tempo eles estão nesse status e outras informações para indicar se o agente está em espera e por quanto tempo.

Endpoint:

Method: GET
Type: 
URL: https://{{subdomain}}.{{domain}}/manager/api/v1/agents/current_status

Mais exemplos de solicitações/respostas:

Exemplo de solicitação: status atual dos agentes

Corpo: nenhum

Exemplo de resposta: status atual dos agentes

[
  {
    "id": 1,
    "status": "Available",
    "status_id": 0,
    "status_updated_at": "2021-05-10T17:45:01.000Z",
    "on_hold": false,
    "on_hold_duration": 0
  }
]

Código de status: 0

Esperar chaves JSON não reconhecidas em respostas da API

Todas as atualizações da API são compatíveis com versões anteriores. Reservamos o direito de introduzir novas chaves JSON em respostas de API atuais a qualquer momento. Recomendamos o tratamento de respostas de forma defensiva, ignorando as chaves não reconhecidas para manter a funcionalidade contínua.