Skip to main content

Como funciona?

Quando uma conversa chega a um bloco de Métodos de transferência configurado com o destino API, o Treble envia uma requisição POST ao endpoint que você configurou, com as informações do contato e da conversa. O seu serviço decide qual agente deve atendê-la e o devolve na resposta. O Treble atribui a conversa a esse agente. Se o seu serviço não responder a tempo, ou o agente que você devolver não puder receber a conversa, o Treble aplica o método de reserva da sua empresa para que a conversa nunca fique sem atribuição.
Este webhook não é configurado na central de webhooks, mas dentro do próprio bloco no editor de conversas. Assim, cada bloco pode chamar um endpoint diferente.

Configurar o bloco

Aprenda a configurar a URL e a autenticação a partir do editor de conversas.

Autenticação

No bloco você pode escolher entre duas opções:
  • Sem autenticação — o Treble chama o seu endpoint sem credenciais.
  • Token / API Key — o Treble envia o token que você configurou no header Authorization:
Use sempre https:// e configure um token. Assim o seu endpoint pode verificar que a chamada vem efetivamente do Treble.

A requisição que o Treble envia

O Treble faz um POST com um corpo JSON que contém o contexto do contato e da conversa.
cellphone e country_code podem chegar como null para contatos que só existem como usuário da Meta. Nesse caso, use business_scope_id ou username para identificar o usuário.

Identificadores do CRM

Quando a sua conta tem uma integração de CRM, a requisição inclui os identificadores do contato no seu CRM para que você possa decidir com base no registro; por exemplo, consultar o proprietário do registro e devolver esse agente.
  • crm_type — o CRM com o qual a sua conta está integrada. É null se a conta não tiver integração.
  • crm_objects — os registros do CRM associados ao contato. Cada um traz o seu entity (o tipo de objeto no CRM, por exemplo Contact, Account ou Lead) e o seu id (o identificador do registro no seu CRM). Um contato associado a vários objetos do Salesforce traz uma entrada por objeto; em outros CRMs há uma única entrada. Um array vazio significa que o contato ainda não está associado a nenhum registro.

A resposta que você deve devolver

Responda com 200 e um corpo JSON que identifique o agente. Você pode fazê-lo por email (recomendado) ou por id:
  • agent_email — o email do agente tal como está registrado no Treble. É a opção recomendada porque não depende dos identificadores internos do Treble.
  • agent_id — o identificador do agente no Treble.
O agente que você devolver deve estar ativo. Para conhecer os agentes disponíveis na sua conta —e os valores exatos de email e id que você deve devolver— use o endpoint de obter os agentes da sua empresa.
O seu endpoint deve responder em menos de 10 segundos. Se exceder, devolver um código diferente de 200, ou devolver um agente que não pode receber a conversa, o Treble aplica o método de reserva configurado na plataforma principal.

Exemplo de implementação

Um endpoint mínimo em Node.js que devolve um agente de acordo com o contato:

Próximos passos

Referência do endpoint

Explore o esquema completo da requisição e da resposta.

Obter os agentes

Consulte os agentes da sua conta para saber qual email ou id devolver.