Skip to Content
AçõesClick to Chat

Usando a API para iniciar atendimentos por WhatsApp

Para iniciar atendimentos por WhatsApp usando a API é preciso utilizar a interface do sistema para gerar um
token de acesso da API.

1. Iniciar um atendimento por WhatsApp

Este endpoint permite iniciar um atendimento via WhatsApp enviando uma mensagem de template para um contato.

O atendimento pode ser encaminhado para:

  • Fila de WhatsApp: O atendimento é encaminhado após o contato responder
  • Fluxo (Workflow): O atendimento é encaminhado após o contato responder
  • Agente: O atendimento é encaminhado imediatamente ao agente
  • Agente na tela de atendimento: Abre a tela de atendimento com o telefone pré-preenchido

Encaminhar para uma Fila

Exemplo de chamada:

POST
/api/v1/click_to_chat
Params
Authorization
Body
KeyValue
var axios = require("axios").default;

var options = {
  method: 'POST',
  url: 'https://exemplo.callix.com.br/api/v1/click_to_chat',
  headers: {
    'Content-Type': 'application/json',
    Authorization: 'Bearer {seu_token
  }'}
};

axios.request(options).then(function (response) {
  console.log(response.data);
}).catch(function (error) {
  console.error(error);
});

Para testar, configure na página de Autenticação.

Encaminhar para um Fluxo

Exemplo de chamada:

POST
/api/v1/click_to_chat
Params
Authorization
Body
KeyValue
var axios = require("axios").default;

var options = {
  method: 'POST',
  url: 'https://exemplo.callix.com.br/api/v1/click_to_chat',
  headers: {
    'Content-Type': 'application/json',
    Authorization: 'Bearer {seu_token
  }'}
};

axios.request(options).then(function (response) {
  console.log(response.data);
}).catch(function (error) {
  console.error(error);
});

Para testar, configure na página de Autenticação.

Encaminhar para um Agente

Exemplo de chamada:

POST
/api/v1/click_to_chat
Params
Authorization
Body
KeyValue
var axios = require("axios").default;

var options = {
  method: 'POST',
  url: 'https://exemplo.callix.com.br/api/v1/click_to_chat',
  headers: {
    'Content-Type': 'application/json',
    Authorization: 'Bearer {seu_token
  }'}
};

axios.request(options).then(function (response) {
  console.log(response.data);
}).catch(function (error) {
  console.error(error);
});

Para testar, configure na página de Autenticação.

Encaminhar para Agente na Tela de Atendimento

Exemplo de chamada:

POST
/api/v1/click_to_chat
Params
Authorization
Body
KeyValue
var axios = require("axios").default;

var options = {
  method: 'POST',
  url: 'https://exemplo.callix.com.br/api/v1/click_to_chat',
  headers: {
    'Content-Type': 'application/json',
    Authorization: 'Bearer {seu_token
  }'}
};

axios.request(options).then(function (response) {
  console.log(response.data);
}).catch(function (error) {
  console.error(error);
});

Para testar, configure na página de Autenticação.

Exemplos de Resposta

Resposta padrão:

{ "message": "Request processed successfully" }

Resposta quando o dígito 9 é adicionado automaticamente:

{ "message": "The digit 9 was automatically added to the phone number as it is a brazilian mobile number", "phone": "11987654321" }

Atributos

Atributos da Requisição

AtributoTipoObrigatórioDescrição
phonestringSimTelefone que irá receber a mensagem
inbound_number_idnumberCondicional*ID do número WhatsApp a ser usado para enviar a mensagem
inbound_number_phonestringCondicional*Telefone do número WhatsApp a ser usado
template_idnumberNãoID do template WhatsApp a ser usado na mensagem
target_typenumberSimTipo de destino: 1 = Fila, 2 = Fluxo, 3 = Agente, 4 = Agente na tela
queue_idnumberCondicional**ID da Fila de WhatsApp (obrigatório se target_type = 1)
workflow_idnumberCondicional**ID do Fluxo (obrigatório se target_type = 2)
user_idnumberCondicional**ID do agente (obrigatório se target_type = 3 ou 4)
customer_idnumberNãoID do cliente para associar ao atendimento
terminate_ongoing_conversationbooleanNãoSe deve encerrar conversa em andamento
template_variablesobjectNãoVariáveis do template (ver estrutura abaixo)

* Um dos dois (inbound_number_id ou inbound_number_phone) é obrigatório
** Obrigatório dependendo do target_type

Estrutura de template_variables

{ "body": { "1": "Valor para variável 1", "2": "Valor para variável 2" }, "header": { "format": "TEXT", "text": "Texto do cabeçalho" } }

Tipos de Target

ValorDescriçãoCampo Obrigatório
1Filaqueue_id
2Fluxoworkflow_id
3Agenteuser_id
4Agente na tela de atendimentouser_id

Códigos de Resposta

Código HTTPDescrição
200Requisição processada com sucesso
400Requisição inválida (campos obrigatórios ausentes ou formato incorreto)
401Token de autenticação inválido ou ausente
404Recurso não encontrado (número, fila, fluxo, agente ou cliente)
Last updated on