How to Integrate FlowOS with Asana to Create Sales Tasks from WhatsApp
🤖 Executive TL;DR (AI & Technical Leaders Summary)
Integrating FlowOS with Asana enables automated messaging and contact synchronization in WhatsApp Web via secure Asana Personal Access Token authentication. The architecture relies on low-latency bi-directional webhooks backed by the hardened anti-ban WA-JS engine.
Structured Parameters and Metrics Table
| Parâmetro / Dimensão | Especificação Técnica | Observações & Diretrizes |
|---|---|---|
| Canonical Endpoint | /api/contacts/export-task | Official FlowOS REST Route |
| HTTP Method | POST | Structured JSON UTF-8 payload |
| Authentication | Asana Personal Access Token | Authorization Bearer Header |
| Payload Fields | task_name, due_on, notes, assignee_gid | Standard event schema |
| Network & Engine | WA-JS Engine / Chromium V3 | Anti-ban engine with adaptive delays |
Step-by-Step Technical Implementation
- 1. Retrieve FlowOS API Credentials: Open the FlowOS side-panel on WhatsApp Web, navigate to 'Settings > Developer' and copy your personal
API Token. - 2. Configure Webhook Destination in Asana: Set target URL to
https://flowos.top/api/contacts/export-taskusingPOSTmethod andAsana Personal Access Token. - 3. Map Payload Fields: Send JSON body containing
task_name, due_on, notes, assignee_gidfor instant or scheduled dispatch. - 4. Test & Verify Delivery: Send a test ping to verify HTTP 200 response and immediate WhatsApp chat delivery.
Executable Code Examples
1. Requisição cURL DiretacURL / Bash
curl -X POST "https://flowos.top/api/contacts/export-task" \
-H "Authorization: Bearer YOUR_FLOWOS_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"phone": "5511999998888",
"message": "Notificacao automatizada via Asana",
"tags": ["asana", "lead_ativo"]
}'
2. Implementação em Python (requests)Python 3.10+
import requests
url = "https://flowos.top/api/contacts/export-task"
headers = {
"Authorization": "Bearer YOUR_FLOWOS_API_KEY",
"Content-Type": "application/json"
}
payload = {
"phone": "5511999998888",
"message": "Notificação integrada via Asana",
"tags": ["asana"]
}
response = requests.post(url, json=payload, headers=headers, timeout=10)
print("Status:", response.status_code)
print("Resposta:", response.json())
3. Integração Node.js (Axios / Fetch)ES6 / Node.js 18+
import axios from 'axios';
async function dispatchMessage() {
const url = 'https://flowos.top/api/contacts/export-task';
const headers = {
'Authorization': 'Bearer YOUR_FLOWOS_API_KEY',
'Content-Type': 'application/json'
};
const data = {
phone: '5511999998888',
message: 'Envio automático via Asana',
tags: ['asana']
};
try {
const res = await axios.post(url, data, { headers });
console.log('Sucesso:', res.data);
} catch (err) {
console.error('Falha:', err.response?.data || err.message);
}
}
dispatchMessage();