Integración con n8n
Con n8n puede procesar automáticamente las próximas fechas de recogida, por ejemplo para notificaciones push, mensajes de Slack o Matrix, acciones de smart home o flujos de trabajo propios. La integración funciona mediante el mecanismo de webhook de binable: binable envía diariamente un HTTP POST a su flujo de trabajo de n8n a las 18:00 cuando una recogida está prevista dentro del número de días configurado.
1. Crear clave de API
Para crear webhooks, primero necesita una clave de API.
2. Crear Webhook Trigger en n8n
Añada un nodo de activación Webhook como primer nodo en su flujo de trabajo de n8n:
- HTTP Method:
POST - Path: de libre elección, p. ej.
muell-abfuhr - Authentication: puede dejarse vacío; la verificación de firma se realiza en el siguiente paso
- Respond:
Immediately
Active el flujo de trabajo (interruptor "Active" en la parte superior derecha) para que n8n proporcione la URL entrante. La URL completa del webhook es:
https://<deine-n8n-instanz>/webhook/muell-abfuhr
3. Registrar el webhook en binable
Registre la URL del webhook de n8n mediante la API de binable:
curl -X POST https://binable.app/api/webhook \
-H "Authorization: ApiKey <dein-api-key>" \
-H "Content-Type: application/json" \
-d '{
"url": "https://<deine-n8n-instanz>/webhook/muell-abfuhr",
"daysBeforeCollection": 1,
"street": "Musterstraße",
"houseNumber": "1a",
"zip": "12345",
"city": "Musterstadt",
"country": "DE"
}'
La respuesta contiene un secret que necesita para la verificación de firma opcional.
4. Procesar el payload
Cuando una recogida está prevista, binable envía un POST con el siguiente cuerpo a su webhook de n8n:
{
"event": "upcoming_collection",
"sent_at": "2024-01-14T18:00:00+00:00",
"days_until": 1,
"address": {
"street": "Musterstraße",
"houseNumber": "1a",
"zip": "12345",
"city": "Musterstadt",
"country": "DE"
},
"collections": [
{ "type": "Restmüll", "date": "2024-01-15" },
{ "type": "Papier", "date": "2024-01-15" }
]
}
En n8n, los campos están directamente disponibles a través del nodo webhook. Conecte a continuación cualquier nodo de acción, como Send Email, Slack, Telegram, ntfy o un nodo HTTP Request para sistemas propios.
5. Opcional: verificación de firma
Cada solicitud entrante contiene la cabecera X-Muell-Signature: sha256=<hmac>. Para asegurarse de que la solicitud procede realmente de binable, puede añadir un nodo Code antes de sus acciones en n8n para comprobar la firma:
const crypto = require('crypto');
const secret = '<dein-webhook-secret>';
const body = JSON.stringify($input.first().json);
const sig = $input.first().headers['x-muell-signature'];
const expected = 'sha256=' + crypto.createHmac('sha256', secret).update(body).digest('hex');
if (sig !== expected) throw new Error('Invalid signature');
return $input.all();
Encontrará más detalles sobre la API completa de webhook en la documentación de la integración de webhook. Webhook-Integrationsdokumentation.
← Vista general de integraciones · Documentación completa de la API (se abre en una nueva pestaña)