URL base:
https://message1w.7180.eu/api/
Tutte le API richiedono autenticazione tramite token Bearer.
Authorization: Bearer TOKEN_API Content-Type: application/json
Il sistema invia globalmente al massimo un messaggio ogni 60 secondi.
Le richieste API inseriscono i messaggi nella coda. Non comportano necessariamente un invio immediato.
GET
/api/whatsapp-status.php
curl -X GET "https://message1w.7180.eu/api/whatsapp-status.php" \ -H "Authorization: Bearer TOKEN_API"
{
"status": "ready",
"last_qr": null,
"last_seen_at": "2026-07-31 18:00:00",
"updated_at": "2026-07-31 18:00:00"
}
POST
/api/contact-create.php
| Campo | Obbligatorio | Descrizione |
|---|---|---|
phone |
Sì | Numero con prefisso internazionale, ad esempio +393331234567. |
name |
No | Nome e cognome. |
company |
No | Azienda del contatto. |
source |
No | Origine del contatto. |
consent_whatsapp |
Consigliato | Valore booleano relativo all'autorizzazione al ricontatto. |
consent_note |
No | Nota sul consenso o sul contesto del contatto. |
curl -X POST "https://message1w.7180.eu/api/contact-create.php" \
-H "Authorization: Bearer TOKEN_API" \
-H "Content-Type: application/json" \
-d '{
"name": "Mario Rossi",
"company": "Rossi SRL",
"phone": "+393331234567",
"source": "Biglietto da visita",
"consent_whatsapp": true,
"consent_note": "Numero lasciato per essere ricontattato via WhatsApp."
}'
{
"success": true,
"normalized_phone": "+393331234567"
}
POST
/api/message-enqueue.php
| Campo | Obbligatorio | Descrizione |
|---|---|---|
phone |
Sì | Numero WhatsApp con prefisso internazionale. |
message |
Sì | Testo del messaggio. |
scheduled_at |
No | Data e ora programmata. Se assente, il messaggio viene accodato subito. |
create_contact_if_missing |
No | Se true, crea automaticamente il contatto se non esiste. |
source_system |
No | Nome del software che genera la richiesta. |
external_reference |
No | Identificativo esterno di lead, pratica, ordine o attività. |
curl -X POST "https://message1w.7180.eu/api/message-enqueue.php" \
-H "Authorization: Bearer TOKEN_API" \
-H "Content-Type: application/json" \
-d '{
"phone": "+393331234567",
"message": "Buongiorno Mario, grazie per il contatto.",
"source_system": "crm-interno",
"external_reference": "lead-123"
}'
curl -X POST "https://message1w.7180.eu/api/message-enqueue.php" \
-H "Authorization: Bearer TOKEN_API" \
-H "Content-Type: application/json" \
-d '{
"phone": "+393331234567",
"name": "Mario Rossi",
"company": "Rossi SRL",
"message": "Buongiorno Mario, grazie per il contatto.",
"source": "Biglietto da visita",
"consent_whatsapp": true,
"consent_note": "Numero lasciato per concordare un appuntamento.",
"create_contact_if_missing": true,
"source_system": "crm-interno",
"external_reference": "lead-123"
}'
{
"success": true,
"queue_id": "10",
"contact_id": 2,
"contact_created": false
}
GET
/api/message-status.php?id=10
curl -X GET "https://message1w.7180.eu/api/message-status.php?id=10" \ -H "Authorization: Bearer TOKEN_API"
{
"id": 10,
"phone": "+393331234567",
"status": "sent",
"scheduled_at": "2026-07-31 18:00:00",
"sent_at": "2026-07-31 18:01:00",
"attempts": 1,
"last_error": null,
"created_at": "2026-07-31 18:00:00"
}
| Stato | Descrizione |
|---|---|
pending |
Messaggio in attesa. |
processing |
Messaggio preso in carico dal worker. |
sent |
Messaggio inviato. |
failed |
Invio non riuscito. |
blocked |
Contatto bloccato. |
cancelled |
Messaggio annullato manualmente. |
| Codice | Descrizione |
|---|---|
| 400 | JSON non valido o richiesta errata. |
| 401 | Token API mancante. |
| 403 | Token API non valido o disattivato. |
| 409 | Contatto bloccato o consenso mancante. |
| 422 | Dati obbligatori mancanti o non validi. |
| 500 | Errore interno della piattaforma. |
external_reference per collegare il messaggio al software sorgente.message-status.php.