Nesta página, explicamos como usar endpoints de API de chamada e chat para autenticação no meio da sessão nos canais do SDK.
Os usuários podem iniciar uma sessão de suporte, como um chat de suporte, sem
autenticação. Quando a autenticação do usuário final for necessária, você poderá iniciar
um fluxo de autenticação. Após a autenticação, atualize o identificador end_user para vincular a sessão ao usuário final verificado.
URI e autenticação
O URI base desse novo endpoint varia de acordo com o comm_type.
Para o comm_type call:
POST https://<subdomain>.<domain>/apps/api/v1/calls/:call_id/end_user
Para o comm_type chat:
POST https://<subdomain>.<domain>/apps/api/v1/chats/:chat_id/end_user
Operações de API
Nas seções a seguir, você encontra detalhes sobre as operações da API.
Parâmetros
O corpo da solicitação de API precisa ter os seguintes campos:
| ID | Nome do campo | Tipo | Obrigatório? | Descrição | Exemplos de valores |
|---|---|---|---|---|---|
| 0 | identifier
|
String | Sim | Identificador externo exclusivo fornecido. | |
| 1 | name | String | Não | O nome genérico ou identificador associado à interação. Ajuda na pesquisa de clientes. | John Doe |
| 2 | email | String | Não | O endereço de e-mail genérico associado à interação. Ajuda na pesquisa de clientes. | john@doe.com |
| 3 | phone
|
String | Não | O número de telefone genérico associado à interação. Ajuda na pesquisa de clientes. | 123-456-7890
|
Exemplos de API
Nas próximas seções, você vai encontrar exemplos de solicitações de API e respostas.
Exemplo de resposta de sucesso
202 Accepted
{
"message": "accepted"
}
Exemplos de respostas de falha
Nas próximas seções, você encontra exemplos de respostas de falha.
Respostas de erro
400 Bad Request: o campo de identificador obrigatório está ausente na solicitação.
{
"message": "param is missing or the value is empty: identifier"
}
401 Não autorizado: falha na autenticação.
{
"message": "Not Found"
}
404 Não encontrado: não há chamada ou chat para o ID fornecido.
Sessão inativa
400 {"message": "Call is already ended"}
400 {"message": "Chat is already ended"}
Solicitação de CRM não aceita
400 Solicitação inválida: a configuração de CRM da instância não é compatível com esse caminho de atualização.
{
"message": "Unsupported CRM request"
}
Pedido duplicado
400 {"message": "Duplicate request: Please wait for the interval to expire"}
Exemplo de solicitação de API
Na próxima seção, você vai encontrar exemplos de solicitações de API para os tipos de comunicação de chamada e chat.
Tipo de comunicação de chamada
POST https://<subdomain>.<domain>/apps/api/v1/calls/:call_id/end_user
Content-Type: application/json
-u apiuser:APIUSER_TOKEN
{
"identifier": "unique_external_id",
"name": "John Doe",
"email": "johndoe@example.com",
"phone": "123-456-7890"
}
Tipo de comunicação do chat
POST https://<subdomain>.<domain>/apps/api/v1/chats/:chat_id/end_user
Content-Type: application/json
-u apiuser:APIUSER_TOKEN
{
"identifier": "unique_external_id",
"name": "Jane Smith",
"email": "janesmith@example.com",
"phone": "098-765-4321"
}
Documentação da API Apps
Para mais endpoints de API de apps, consulte Publicação da API de apps.