n8n-integrasjon
Med n8n kan du behandle kommende tømmedatoer automatisk – for eksempel for push-varsler, Slack- eller Matrix-meldinger, smarthushandlinger eller egne arbeidsflyter. Integrasjonen fungerer via webhook-mekanismen til binable: binable sender hver dag kl. 18.00 en HTTP POST til n8n-arbeidsflyten din når en tømming skjer om det konfigurerte antallet dager.
1. Opprett API-nøkkel
For å opprette webhooks trenger du først en API-nøkkel.
2. Opprett Webhook Trigger i n8n
Legg til en Webhook-trigger-node som første node i n8n-arbeidsflyten din:
- HTTP Method:
POST - Path: valgfritt, f.eks.
muell-abfuhr - Authentication: kan stå tomt – signaturen verifiseres i neste trinn
- Respond:
Immediately
Aktiver arbeidsflyten (bryteren «Active» øverst til høyre) slik at n8n gjør den innkommende URL-en tilgjengelig. Den fullstendige webhook-URL-en er:
https://<deine-n8n-instanz>/webhook/muell-abfuhr
3. Registrer webhooken hos binable
Registrer webhook-URL-en fra n8n via binable-API-et:
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"
}'
Svaret inneholder en secret som du trenger for valgfri signaturverifisering.
4. Behandle payload
Når en tømming nærmer seg, sender binable en POST med følgende body til n8n-webhooken din:
{
"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" }
]
}
I n8n er feltene direkte tilgjengelige via webhook-noden. Koble deretter til hvilke som helst handlingsnoder – for eksempel Send Email, Slack, Telegram, ntfy eller en HTTP Request-node for egne systemer.
5. Valgfritt: Signaturverifisering
Hver innkommende forespørsel inneholder headeren X-Binable-Signature: sha256=<hmac>. For å sikre at forespørselen faktisk kommer fra binable, kan du legge til en Code-node før handlingene dine i n8n som sjekker signaturen:
const crypto = require('crypto');
const secret = '<dein-webhook-secret>';
const body = JSON.stringify($input.first().json);
const sig = $input.first().headers['x-binable-signature'];
const expected = 'sha256=' + crypto.createHmac('sha256', secret).update(body).digest('hex');
if (sig !== expected) throw new Error('Invalid signature');
return $input.all();
Flere detaljer om hele webhook-API-et finner du i dokumentasjonen for webhook-integrasjonen. Webhook-Integrationsdokumentation.
Kanskje også interessant
← Oversikt over integrasjoner · Fullstendig API-dokumentasjon (åpnes i ny fane)