curl --request POST \
--url https://seudominio.com/webhooks/on-optout \
--header 'Content-Type: application/json' \
--data '
{
"country_code": "+57",
"cellphone": "3176477608",
"session_id": "85b398ef5bcb20c355f3710c4509349784c907673c9118fb7a89c7a8",
"conversation_id": 54263,
"question": {
"type": "closed",
"text": "Oi! Obrigado por participar do nosso webinar hoje. Gostaríamos de ter um feedback sobre nossa sessão e ficaríamos muito gratos se você pudesse nos ajudar com isso. ",
"answers": [
{
"text": "Claro"
},
{
"text": "Não, obrigado"
},
{
"text": "PADRÃO"
}
]
},
"sent_at": "2021-10-22 00:15:39.044704",
"sent_text": "Oi! Obrigado por participar do nosso webinar hoje. Gostaríamos de ter um feedback sobre nossa sessão e ficaríamos muito gratos se você pudesse nos ajudar com isso. \n1) Claro\n2) Não, obrigado\n3) PADRÃO",
"user_session_keys": [],
"classified_answer": {
"text": "Não, obrigado"
},
"reason": "OPTOUT"
}
'import requests
url = "https://seudominio.com/webhooks/on-optout"
payload = {
"country_code": "+57",
"cellphone": "3176477608",
"session_id": "85b398ef5bcb20c355f3710c4509349784c907673c9118fb7a89c7a8",
"conversation_id": 54263,
"question": {
"type": "closed",
"text": "Oi! Obrigado por participar do nosso webinar hoje. Gostaríamos de ter um feedback sobre nossa sessão e ficaríamos muito gratos se você pudesse nos ajudar com isso. ",
"answers": [{ "text": "Claro" }, { "text": "Não, obrigado" }, { "text": "PADRÃO" }]
},
"sent_at": "2021-10-22 00:15:39.044704",
"sent_text": "Oi! Obrigado por participar do nosso webinar hoje. Gostaríamos de ter um feedback sobre nossa sessão e ficaríamos muito gratos se você pudesse nos ajudar com isso.
1) Claro
2) Não, obrigado
3) PADRÃO",
"user_session_keys": [],
"classified_answer": { "text": "Não, obrigado" },
"reason": "OPTOUT"
}
headers = {"Content-Type": "application/json"}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({
country_code: '+57',
cellphone: '3176477608',
session_id: '85b398ef5bcb20c355f3710c4509349784c907673c9118fb7a89c7a8',
conversation_id: 54263,
question: {
type: 'closed',
text: 'Oi! Obrigado por participar do nosso webinar hoje. Gostaríamos de ter um feedback sobre nossa sessão e ficaríamos muito gratos se você pudesse nos ajudar com isso. ',
answers: [{text: 'Claro'}, {text: 'Não, obrigado'}, {text: 'PADRÃO'}]
},
sent_at: '2021-10-22 00:15:39.044704',
sent_text: 'Oi! Obrigado por participar do nosso webinar hoje. Gostaríamos de ter um feedback sobre nossa sessão e ficaríamos muito gratos se você pudesse nos ajudar com isso. \n1) Claro\n2) Não, obrigado\n3) PADRÃO',
user_session_keys: [],
classified_answer: {text: 'Não, obrigado'},
reason: 'OPTOUT'
})
};
fetch('https://seudominio.com/webhooks/on-optout', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://seudominio.com/webhooks/on-optout",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'country_code' => '+57',
'cellphone' => '3176477608',
'session_id' => '85b398ef5bcb20c355f3710c4509349784c907673c9118fb7a89c7a8',
'conversation_id' => 54263,
'question' => [
'type' => 'closed',
'text' => 'Oi! Obrigado por participar do nosso webinar hoje. Gostaríamos de ter um feedback sobre nossa sessão e ficaríamos muito gratos se você pudesse nos ajudar com isso. ',
'answers' => [
[
'text' => 'Claro'
],
[
'text' => 'Não, obrigado'
],
[
'text' => 'PADRÃO'
]
]
],
'sent_at' => '2021-10-22 00:15:39.044704',
'sent_text' => 'Oi! Obrigado por participar do nosso webinar hoje. Gostaríamos de ter um feedback sobre nossa sessão e ficaríamos muito gratos se você pudesse nos ajudar com isso.
1) Claro
2) Não, obrigado
3) PADRÃO',
'user_session_keys' => [
],
'classified_answer' => [
'text' => 'Não, obrigado'
],
'reason' => 'OPTOUT'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://seudominio.com/webhooks/on-optout"
payload := strings.NewReader("{\n \"country_code\": \"+57\",\n \"cellphone\": \"3176477608\",\n \"session_id\": \"85b398ef5bcb20c355f3710c4509349784c907673c9118fb7a89c7a8\",\n \"conversation_id\": 54263,\n \"question\": {\n \"type\": \"closed\",\n \"text\": \"Oi! Obrigado por participar do nosso webinar hoje. Gostaríamos de ter um feedback sobre nossa sessão e ficaríamos muito gratos se você pudesse nos ajudar com isso. \",\n \"answers\": [\n {\n \"text\": \"Claro\"\n },\n {\n \"text\": \"Não, obrigado\"\n },\n {\n \"text\": \"PADRÃO\"\n }\n ]\n },\n \"sent_at\": \"2021-10-22 00:15:39.044704\",\n \"sent_text\": \"Oi! Obrigado por participar do nosso webinar hoje. Gostaríamos de ter um feedback sobre nossa sessão e ficaríamos muito gratos se você pudesse nos ajudar com isso. \\n1) Claro\\n2) Não, obrigado\\n3) PADRÃO\",\n \"user_session_keys\": [],\n \"classified_answer\": {\n \"text\": \"Não, obrigado\"\n },\n \"reason\": \"OPTOUT\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://seudominio.com/webhooks/on-optout")
.header("Content-Type", "application/json")
.body("{\n \"country_code\": \"+57\",\n \"cellphone\": \"3176477608\",\n \"session_id\": \"85b398ef5bcb20c355f3710c4509349784c907673c9118fb7a89c7a8\",\n \"conversation_id\": 54263,\n \"question\": {\n \"type\": \"closed\",\n \"text\": \"Oi! Obrigado por participar do nosso webinar hoje. Gostaríamos de ter um feedback sobre nossa sessão e ficaríamos muito gratos se você pudesse nos ajudar com isso. \",\n \"answers\": [\n {\n \"text\": \"Claro\"\n },\n {\n \"text\": \"Não, obrigado\"\n },\n {\n \"text\": \"PADRÃO\"\n }\n ]\n },\n \"sent_at\": \"2021-10-22 00:15:39.044704\",\n \"sent_text\": \"Oi! Obrigado por participar do nosso webinar hoje. Gostaríamos de ter um feedback sobre nossa sessão e ficaríamos muito gratos se você pudesse nos ajudar com isso. \\n1) Claro\\n2) Não, obrigado\\n3) PADRÃO\",\n \"user_session_keys\": [],\n \"classified_answer\": {\n \"text\": \"Não, obrigado\"\n },\n \"reason\": \"OPTOUT\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://seudominio.com/webhooks/on-optout")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "{\n \"country_code\": \"+57\",\n \"cellphone\": \"3176477608\",\n \"session_id\": \"85b398ef5bcb20c355f3710c4509349784c907673c9118fb7a89c7a8\",\n \"conversation_id\": 54263,\n \"question\": {\n \"type\": \"closed\",\n \"text\": \"Oi! Obrigado por participar do nosso webinar hoje. Gostaríamos de ter um feedback sobre nossa sessão e ficaríamos muito gratos se você pudesse nos ajudar com isso. \",\n \"answers\": [\n {\n \"text\": \"Claro\"\n },\n {\n \"text\": \"Não, obrigado\"\n },\n {\n \"text\": \"PADRÃO\"\n }\n ]\n },\n \"sent_at\": \"2021-10-22 00:15:39.044704\",\n \"sent_text\": \"Oi! Obrigado por participar do nosso webinar hoje. Gostaríamos de ter um feedback sobre nossa sessão e ficaríamos muito gratos se você pudesse nos ajudar com isso. \\n1) Claro\\n2) Não, obrigado\\n3) PADRÃO\",\n \"user_session_keys\": [],\n \"classified_answer\": {\n \"text\": \"Não, obrigado\"\n },\n \"reason\": \"OPTOUT\"\n}"
response = http.request(request)
puts response.read_body{}Corpo da Solicitação Webhook de Opt-out
Este endpoint deve ser implementado no SEU servidor (por exemplo: https://seudominio.com/webhooks/on-optout). O Treble chamará este webhook quando um usuário decidir cancelar a inscrição ou sair da conversa. Você deve configurar a URL deste webhook no painel de administração do Treble.
curl --request POST \
--url https://seudominio.com/webhooks/on-optout \
--header 'Content-Type: application/json' \
--data '
{
"country_code": "+57",
"cellphone": "3176477608",
"session_id": "85b398ef5bcb20c355f3710c4509349784c907673c9118fb7a89c7a8",
"conversation_id": 54263,
"question": {
"type": "closed",
"text": "Oi! Obrigado por participar do nosso webinar hoje. Gostaríamos de ter um feedback sobre nossa sessão e ficaríamos muito gratos se você pudesse nos ajudar com isso. ",
"answers": [
{
"text": "Claro"
},
{
"text": "Não, obrigado"
},
{
"text": "PADRÃO"
}
]
},
"sent_at": "2021-10-22 00:15:39.044704",
"sent_text": "Oi! Obrigado por participar do nosso webinar hoje. Gostaríamos de ter um feedback sobre nossa sessão e ficaríamos muito gratos se você pudesse nos ajudar com isso. \n1) Claro\n2) Não, obrigado\n3) PADRÃO",
"user_session_keys": [],
"classified_answer": {
"text": "Não, obrigado"
},
"reason": "OPTOUT"
}
'import requests
url = "https://seudominio.com/webhooks/on-optout"
payload = {
"country_code": "+57",
"cellphone": "3176477608",
"session_id": "85b398ef5bcb20c355f3710c4509349784c907673c9118fb7a89c7a8",
"conversation_id": 54263,
"question": {
"type": "closed",
"text": "Oi! Obrigado por participar do nosso webinar hoje. Gostaríamos de ter um feedback sobre nossa sessão e ficaríamos muito gratos se você pudesse nos ajudar com isso. ",
"answers": [{ "text": "Claro" }, { "text": "Não, obrigado" }, { "text": "PADRÃO" }]
},
"sent_at": "2021-10-22 00:15:39.044704",
"sent_text": "Oi! Obrigado por participar do nosso webinar hoje. Gostaríamos de ter um feedback sobre nossa sessão e ficaríamos muito gratos se você pudesse nos ajudar com isso.
1) Claro
2) Não, obrigado
3) PADRÃO",
"user_session_keys": [],
"classified_answer": { "text": "Não, obrigado" },
"reason": "OPTOUT"
}
headers = {"Content-Type": "application/json"}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({
country_code: '+57',
cellphone: '3176477608',
session_id: '85b398ef5bcb20c355f3710c4509349784c907673c9118fb7a89c7a8',
conversation_id: 54263,
question: {
type: 'closed',
text: 'Oi! Obrigado por participar do nosso webinar hoje. Gostaríamos de ter um feedback sobre nossa sessão e ficaríamos muito gratos se você pudesse nos ajudar com isso. ',
answers: [{text: 'Claro'}, {text: 'Não, obrigado'}, {text: 'PADRÃO'}]
},
sent_at: '2021-10-22 00:15:39.044704',
sent_text: 'Oi! Obrigado por participar do nosso webinar hoje. Gostaríamos de ter um feedback sobre nossa sessão e ficaríamos muito gratos se você pudesse nos ajudar com isso. \n1) Claro\n2) Não, obrigado\n3) PADRÃO',
user_session_keys: [],
classified_answer: {text: 'Não, obrigado'},
reason: 'OPTOUT'
})
};
fetch('https://seudominio.com/webhooks/on-optout', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://seudominio.com/webhooks/on-optout",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'country_code' => '+57',
'cellphone' => '3176477608',
'session_id' => '85b398ef5bcb20c355f3710c4509349784c907673c9118fb7a89c7a8',
'conversation_id' => 54263,
'question' => [
'type' => 'closed',
'text' => 'Oi! Obrigado por participar do nosso webinar hoje. Gostaríamos de ter um feedback sobre nossa sessão e ficaríamos muito gratos se você pudesse nos ajudar com isso. ',
'answers' => [
[
'text' => 'Claro'
],
[
'text' => 'Não, obrigado'
],
[
'text' => 'PADRÃO'
]
]
],
'sent_at' => '2021-10-22 00:15:39.044704',
'sent_text' => 'Oi! Obrigado por participar do nosso webinar hoje. Gostaríamos de ter um feedback sobre nossa sessão e ficaríamos muito gratos se você pudesse nos ajudar com isso.
1) Claro
2) Não, obrigado
3) PADRÃO',
'user_session_keys' => [
],
'classified_answer' => [
'text' => 'Não, obrigado'
],
'reason' => 'OPTOUT'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://seudominio.com/webhooks/on-optout"
payload := strings.NewReader("{\n \"country_code\": \"+57\",\n \"cellphone\": \"3176477608\",\n \"session_id\": \"85b398ef5bcb20c355f3710c4509349784c907673c9118fb7a89c7a8\",\n \"conversation_id\": 54263,\n \"question\": {\n \"type\": \"closed\",\n \"text\": \"Oi! Obrigado por participar do nosso webinar hoje. Gostaríamos de ter um feedback sobre nossa sessão e ficaríamos muito gratos se você pudesse nos ajudar com isso. \",\n \"answers\": [\n {\n \"text\": \"Claro\"\n },\n {\n \"text\": \"Não, obrigado\"\n },\n {\n \"text\": \"PADRÃO\"\n }\n ]\n },\n \"sent_at\": \"2021-10-22 00:15:39.044704\",\n \"sent_text\": \"Oi! Obrigado por participar do nosso webinar hoje. Gostaríamos de ter um feedback sobre nossa sessão e ficaríamos muito gratos se você pudesse nos ajudar com isso. \\n1) Claro\\n2) Não, obrigado\\n3) PADRÃO\",\n \"user_session_keys\": [],\n \"classified_answer\": {\n \"text\": \"Não, obrigado\"\n },\n \"reason\": \"OPTOUT\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://seudominio.com/webhooks/on-optout")
.header("Content-Type", "application/json")
.body("{\n \"country_code\": \"+57\",\n \"cellphone\": \"3176477608\",\n \"session_id\": \"85b398ef5bcb20c355f3710c4509349784c907673c9118fb7a89c7a8\",\n \"conversation_id\": 54263,\n \"question\": {\n \"type\": \"closed\",\n \"text\": \"Oi! Obrigado por participar do nosso webinar hoje. Gostaríamos de ter um feedback sobre nossa sessão e ficaríamos muito gratos se você pudesse nos ajudar com isso. \",\n \"answers\": [\n {\n \"text\": \"Claro\"\n },\n {\n \"text\": \"Não, obrigado\"\n },\n {\n \"text\": \"PADRÃO\"\n }\n ]\n },\n \"sent_at\": \"2021-10-22 00:15:39.044704\",\n \"sent_text\": \"Oi! Obrigado por participar do nosso webinar hoje. Gostaríamos de ter um feedback sobre nossa sessão e ficaríamos muito gratos se você pudesse nos ajudar com isso. \\n1) Claro\\n2) Não, obrigado\\n3) PADRÃO\",\n \"user_session_keys\": [],\n \"classified_answer\": {\n \"text\": \"Não, obrigado\"\n },\n \"reason\": \"OPTOUT\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://seudominio.com/webhooks/on-optout")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "{\n \"country_code\": \"+57\",\n \"cellphone\": \"3176477608\",\n \"session_id\": \"85b398ef5bcb20c355f3710c4509349784c907673c9118fb7a89c7a8\",\n \"conversation_id\": 54263,\n \"question\": {\n \"type\": \"closed\",\n \"text\": \"Oi! Obrigado por participar do nosso webinar hoje. Gostaríamos de ter um feedback sobre nossa sessão e ficaríamos muito gratos se você pudesse nos ajudar com isso. \",\n \"answers\": [\n {\n \"text\": \"Claro\"\n },\n {\n \"text\": \"Não, obrigado\"\n },\n {\n \"text\": \"PADRÃO\"\n }\n ]\n },\n \"sent_at\": \"2021-10-22 00:15:39.044704\",\n \"sent_text\": \"Oi! Obrigado por participar do nosso webinar hoje. Gostaríamos de ter um feedback sobre nossa sessão e ficaríamos muito gratos se você pudesse nos ajudar com isso. \\n1) Claro\\n2) Não, obrigado\\n3) PADRÃO\",\n \"user_session_keys\": [],\n \"classified_answer\": {\n \"text\": \"Não, obrigado\"\n },\n \"reason\": \"OPTOUT\"\n}"
response = http.request(request)
puts response.read_body{}Corpo
Informações do evento de cancelamento de inscrição
Evento que é disparado quando um usuário decide cancelar a inscrição ou sair da conversa
Código de país del usuario
Número de teléfono del usuario sin el código de país
ID de la sesión del usuario
ID de la conversación
Show child attributes
Show child attributes
Fecha y hora en que se envió la pregunta
Texto enviado ao usuário
Resposta classificada baseada na resposta do usuário
Show child attributes
Show child attributes
Razão da saída do usuário, neste caso 'OPTOUT' para indicar que o usuário decidiu cancelar a inscrição
OPTOUT Claves de sesión del usuario recopiladas durante la conversación o proporcionadas durante el despliegue
Show child attributes
Show child attributes
Resposta
Resposta para atualizar ou adicionar informações à sessão
Objeto JSON com as novas informações que serão substituídas ou adicionadas à sessão para uso futuro. O serviço deve responder em menos de 10 segundos.
Esta página foi útil?