API de Bot é construída em torno de REST. Você pode chamar nossas APIs através de uma solicitação HTTP padrão com a chave da API colocada no parâmetro da consulta. Em seguida, o WOZTELL retornará uma resposta codificada em JSON, com os dados correspondentes que podem determinar se as operações relacionadas foram concluídas.
Antes de começar, você pode primeiro baixar a Coleção do Postman da API do Bot e Ambiente no formato JSON
.
O token de acesso deve ser colocado como um parâmetro de consulta como accessToken
na solicitação. O token de acesso pode ser gerado seguindo este guia.
Cada API pode ter um escopo diferente, escolher qualquer escopo é suficiente para chamar a API.
Tipo de Esquema de Segurança | Nome do parâmetro da consulta |
---|---|
Chave da API | accessToken |
Alternativamente, o Token de Acesso pode também ser colocado no cabeçalho de autorização como Bearer Token.
Para enviar respostas em nome do seu chatbot para um membro específico no WOZTELL.
JSON
O WOZTELL permite criar e gerenciar modelos de mensagens na plataforma. Ao enviar respostas com Bot API, há uma maneira conveniente de obter o conteúdo de um modelo em JSON
.
JSON
.Autorização: accessToken(bot:sendResponses
, bot:admin
)
Parâmetros de consulta:
Parâmetro de consulta | Obrigatório | Tipo | Descrição |
---|---|---|---|
accessToken | Sim | apiKey | O token de acesso deve ser colocado como um parâmetro de consulta como accessToken na solicitação. O token de acesso pode ser gerado seguindo este guia. Cada API pode ter um escopo diferente, escolher qualquer um escopo é suficiente para chamar a API |
Esquema do corpo da solicitação: application/json
Campo | Obrigatório | Tipo | Descrição |
---|---|---|---|
channelId | Sim | String | ID do canal no WOZTELL |
memberId | Não | String | Either memberId, recipientId ID do membro no WOZTELL |
recipientId | Não | String | Either memberId, recipientId ID do destinatário na integração. Exemplo: PSID no Facebook, número de telefone no WhatsApp, etc (Não garantido, consulte o criador da integração, se necessário) |
response | Sim | array | Os dados que você deseja enviar como resposta. Você pode construir o objeto de resposta consultando as documentações de integração ou copiando do Bot builder. |
Exemplo de Solicitação:
https://bot.api.woztell.com/sendResponses
application/json
Código de Status | Descrição |
---|---|
200 | Esta solicitação retorna o código HTTPS 200 se o bot iniciar a execução. No corpo da resposta, uma String JSON contendo uma flag "ok" com valor 1 indicando sucesso na execução. |
Esquema do Corpo da Resposta: application/json
Objeto | Tipo | Descrição |
---|---|---|
ok | Int | Valor: 1 , status que indica se esta solicitação foi bem-sucedida ou não |
membro | String | ID do Membro WOZTELL |
sendResult | Objeto | Objeto do resultado do envio |
sendResult.ok | Int | Indica se o servidor de integração conseguiu receber a resposta |
sendResult.member | String | ID do Membro WOZTELL |
sendResult.result | Objeto | Array de resultados de envio do servidor de integração, deve conter ok , messageEvent , error (Opcional) campos para exibir o resultado de cada resposta |
Código de Status | Descrição |
---|---|
500 | Esta solicitação retornará o código HTTPS 500 se encontrar um erro antes da execução do bot. |
Esquema do Corpo da Resposta: application/json
Objeto | Tipo | Descrição |
---|---|---|
ok | Int | Sempre 0, indica que o Bot encontrou um erro antes de enviar a resposta para o servidor de integração |
err_code | String | Código de erro no WOZTELL |
erro | String | Mensagem de erro |
Resposta de Exemplo
application/json
{
"ok": 1,
"member": "5ece50f3bf385b25c4e08db5",
"sendResult": {
"ok": 1,
"member": "5ece50f3bf385b25c4e08db5",
"result": [
{
"result": {
"messages": [
{
"id": "gBGGhSZphigfAglySd38a9T4jAE"
}
],
"meta": {
"api_status": "stable",
"version": "2.31.5"
}
},
"messageEvent": {
"from": 85291239123,
"to": 85232193219,
"data": {
"text": "Hello World"
},
"type": "TEXT",
"timestamp": 1611900841740,
"messageId": "gBGGhSZphigfAglySd38a9T4jAE"
},
"chatId": "5ece50f3bfa915g5c4e08db5"
},
{
"result": {
"messages": [
{
"id": "gBGGhSZafi5th8lySd38a9T4jAE"
}
],
"meta": {
"api_status": "stable",
"version": "2.31.5"
}
},
"messageEvent": {
"from": 85291239123,
"to": 85232193219,
"data": {
"url": "https://miro.medium.com/max/1200/1*mk1-6aYaf_Bes1E3Imhc0A.jpeg"
},
"type": "IMAGE",
"timestamp": 1611900841740,
"messageId": "gBGGhSZafi5th8lySd38a9T4jAE"
},
"chatId": "5ece50f3bfa915g5c4e08db6"
}
]
}
}
application/json
Redirecionando um membro para um nó específico na árvore e executando todos ou alguns componentes do nó. Isso é útil para realizar operações complexas em um membro e manter toda a lógica do bot na árvore, em vez de codificar diretamente em uma API.
Se o memberId não for fornecido, o sistema buscará um membro com o recipientId fornecido.
Para usar o objeto meta passado pela API na transformação da resposta ou nas ações do nó direcionado, use o seguinte código para acessar seu meta.
Exemplo:
POST https://bot.api.woztell.com/redirectMemberToNode
Autorizações: accessToken(bot:redirectMemberToNode
, bot:admin
, api:admin
)
Parâmetros da Consulta:
Parâmetro da Consulta | Obrigatório | Tipo | Descrição |
---|---|---|---|
accessToken | Sim | apiKey | O token de acesso deve ser colocado como um parâmetro de consulta chamado accessToken na solicitação. O token de acesso pode ser gerado seguindo este guia. Cada API pode ter um escopo diferente, mas basta escolher qualquer escopo para chamar a API |
Esquema do Corpo da Solicitação: application/json
Campo | Obrigatório | Tipo | Descrição |
---|---|---|---|
channelId | Sim | String | ID do Canal no WOZTELL |
memberId | Não | String | Ou memberId, recipientId ID do Membro no WOZTELL |
recipientId | Não | String | Ou memberId, recipientId ID do destinatário na integração. Exemplo: PSID no Facebook, número de telefone no WhatsApp, etc (Não garantido, consulte o criador da integração, se necessário) |
redirect | Sim | Objeto | O nó de destino para o qual você deseja redirecionar. |
redirect.tree | Sim | String | Árvore de destino para a qual você deseja redirecionar. |
redirect.nodeCompositeId | Sim | String | Nó de destino para o qual você deseja redirecionar. |
redirect.runPreAction | Não | Booleano | Executa a ação anterior ao redirecionamento; pode ser configurado como true ou false |
redirect.sendResponse | Não | Booleano | Redireciona e envia a resposta; pode ser configurado como true ou false |
redirect.runPostAction | Não | Booleano | Executa a ação pós-redirecionamento; pode ser configurado como true ou false |
meta | Não | Objeto | Opcional Objeto meta fornecido para o nó. O objeto meta pode ser acessado no nó de destino via this.agendaMeta . |
Solicitação de Exemplo
Tipo de conteúdo: application/json
Código de Status | Descrição |
---|---|
200 | Esta solicitação retornará o código HTTPS 200 se o bot iniciar a execução. |
Esquema do Corpo da Resposta: application/json
Objeto | Tipo | Descrição |
---|---|---|
ok | Int | Sempre 1, indica que o Bot executou o comando de envio de resposta |
membro | String | ID do Membro WOZTELL |
sendResult | Objeto | Resultado do envio |
sendResult.ok | Int | Indica se o servidor de integração recebeu a resposta com sucesso |
sendResult.member | String | ID do Membro WOZTELL |
sendResult.result | [Objeto] | Array de resultados de envio do servidor de integração, deve conter ok , messageEvent , error (Opcional) campos para exibir o resultado de cada resposta |
Código de Status | Descrição |
---|---|
500 | Esta solicitação retornará o código HTTPS 500 se encontrar um erro antes da execução do bot. |
Objeto | Tipo | Descrição |
---|---|---|
ok | Int | Sempre 0, indica que o Bot encontrou um erro antes de enviar a resposta ao servidor de integração |
err_code | Int | Código de erro no WOZTELL |
erro | String | Mensagem de erro |
Resposta de Exemplo
application/json
application/json
WOZTELL retornará os códigos de erro correspondentes para o lado da solicitação quando ocorrer um erro.
Código | Descrição |
---|---|
100 | O número de telefone fornecido é inválido. Ou o número não existe ou não possui uma conta do WhatsApp vinculada |
104 | PSID do Facebook inválido ou o token de acesso no canal designado é inválido |
108 | Parâmetro(s) está(ão) faltando |
112 | Canal com o channelId correspondente não pode ser encontrado |
113 | Erro no servidor do WhatsApp |