API Mensagem via Flowbuilder
🧩 Inicia um fluxo do flowbuilder, de forma passiva, ou seja, sem interação do usuário.
Nessa fase inicial, o envio é somente para mensagens de texto.
API: Todas
Verifique aqui os Pré-Requisitos para utilizar APIs
Endpoint
https://{BACKEND_URL}/api/messages/flowbuilderStart
Método
POST
Autenticação
Bearer {seutokenaqui}
Payload
{
"number": "554498108792",
"queueId": "3"
}
➡️ “number”: telefone do destinatário no formato ddi ddd numero (somente números). ➡️ “queueId”: ID da fila que está vinculada ao fluxo desejado. ##### 📌 Atenção: ao chamar essa API, o ticket será transferido para o status Aguardando.
Modelos
API Utilize o código em requisições HTTPS com ferramentas como cURL ou bibliotecas de integração.
<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => 'https://{BACKEND_URL}/api/messages/flowbuilderStart',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_POSTFIELDS =>'{
"number": "554498108792",
"queueId": "3"
}',
CURLOPT_HTTPHEADER => array(
'Content-Type: application/json',
'Authorization: Bearer {seutokenaqui}' //Token cadastrado na conexão
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
FLOWBUILDER Insira o código em um bloco de “Http Request / Code” do tipo REQUISIÇÃO.
Os trechos delimitados por {{...}} são placeholders no formato Mustaches e não precisam ser alterados. Eles serão automaticamente substituídos pelos valores correspondentes no momento da execução.
// definir
let endpoint = "https://{{backendURL}}/api/messages/flowbuilderStart";
let method = "POST";
let payload = {
"number": "{{number}}",
"queueId": "3"
};
let authorization = "{{connection_token}}";
// estrutura
try {
const response = await axios({
url: endpoint,
method: method,
headers: {
'Content-Type': 'application/json',
'Authorization': 'Bearer ' + authorization
},
data: payload,
maxBodyLength: Infinity
});
return response.data;
} catch (error) {
return "Algo deu errado: " + error.message;
}
N8N Copie o código e cole em qualquer ponto do seu fluxo no N8N para adicionar o nó.
{
"meta": {
"instanceId": "9fa9daca05c0090113cca7c701b0ce40a3a913034a045b3177740db7d5f7726e"
},
"nodes": [
{
"parameters": {
"method": "POST",
"url": "=https://{{ $item("0").$node["Credenciais"].json["backend_url"] }}/api/messages/flowbuilderStart",
"sendHeaders": true,
"headerParameters": {
"parameters": [
{
"name": "Authorization",
"value": "={{ $item("0").$node["Credenciais"].json["token"] }}"
}
]
},
"sendBody": true,
"specifyBody": "json",
"jsonBody": "={n "number": "{{ $item("0").$node["Credenciais"].json["celular"] }}",n "queueId": "3"n}",
"options": {}
},
"id": "e0b70b7a-8945-4204-a404-26c6f1f582fe",
"name": "Mensagem via Flowbuilder",
"type": "n8n-nodes-base.httpRequest",
"typeVersion": 4.2,
"position": [
1580,
-160
]
}
],
"connections": {},
"pinData": {}
}
API Utilize o código em requisições HTTPS com ferramentas como cURL ou bibliotecas de integração.
<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => 'https://{BACKEND_URL}/api/messages/flowbuilderStart',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_POSTFIELDS =>'{
"number": "554498108792",
"queueId": "3"
}',
CURLOPT_HTTPHEADER => array(
'Content-Type: application/json',
'Authorization: Bearer {seutokenaqui}' //Token cadastrado na conexão
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
FLOWBUILDER Insira o código em um bloco de "Http Request / Code" do tipo REQUISIÇÃO.
Os trechos delimitados por {{...}} são placeholders no formato Mustaches e não precisam ser alterados. Eles serão automaticamente substituídos pelos valores correspondentes no momento da execução.
// definir
let endpoint = "https://{{backendURL}}/api/messages/flowbuilderStart";
let method = "POST";
let payload = {
"number": "{{number}}",
"queueId": "3"
};
let authorization = "{{connection_token}}";
// estrutura
try {
const response = await axios({
url: endpoint,
method: method,
headers: {
'Content-Type': 'application/json',
'Authorization': 'Bearer ' + authorization
},
data: payload,
maxBodyLength: Infinity
});
return response.data;
} catch (error) {
return "Algo deu errado: " + error.message;
}
N8N Copie o código e cole em qualquer ponto do seu fluxo no N8N para adicionar o nó.
{
"meta": {
"instanceId": "9fa9daca05c0090113cca7c701b0ce40a3a913034a045b3177740db7d5f7726e"
},
"nodes": [
{
"parameters": {
"method": "POST",
"url": "=https://{{ $item("0").$node["Credenciais"].json["backend_url"] }}/api/messages/flowbuilderStart",
"sendHeaders": true,
"headerParameters": {
"parameters": [
{
"name": "Authorization",
"value": "={{ $item("0").$node["Credenciais"].json["token"] }}"
}
]
},
"sendBody": true,
"specifyBody": "json",
"jsonBody": "={n "number": "{{ $item("0").$node["Credenciais"].json["celular"] }}",n "queueId": "3"n}",
"options": {}
},
"id": "e0b70b7a-8945-4204-a404-26c6f1f582fe",
"name": "Mensagem via Flowbuilder",
"type": "n8n-nodes-base.httpRequest",
"typeVersion": 4.2,
"position": [
1580,
-160
]
}
],
"connections": {},
"pinData": {}
}