Gå til indhold

n8n-integration

Med n8n kan du automatisk behandle kommende afhentningsdatoer – f.eks. til push-notifikationer, Slack- eller Matrix-beskeder, smart home-handlinger eller brugerdefinerede workflows. Integrationen fungerer via müll.io's webhook-mekanisme: müll.io sender dagligt en HTTP POST til dit n8n-workflow kl. 18:00, når en afhentning er forfalden inden for det konfigurerede antal dage.


1. Opret API-nøgle

For at oprette webhooks skal du først have en API-nøgle.

Få gratis API-nøgle


2. Opret Webhook Trigger i n8n

Tilføj en Webhook trigger-node som den første node i dit n8n-workflow:

Aktivér workflow'et (skift "Active" øverst til højre), så n8n leverer den indgående URL. Den fulde webhook-URL er:

https://<deine-n8n-instanz>/webhook/muell-abfuhr

3. Registrér webhook hos müll.io

Registrér n8n webhook-URL'en via müll.io API'en:

curl -X POST https://müll.io/api/webhook \
  -H "Authorization: API-KEY <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 indeholder en secret, du har brug for til valgfri signaturverifikation.


4. Behandl payload

Når en afhentning er forfalden, sender müll.io en POST med følgende body til din n8n-webhook:

{
  "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 felterne direkte tilgængelige via webhook-noden. Forbind eventuelle handlingsnoder bagefter – f.eks. Send Email, Slack, Telegram, ntfy eller en HTTP Request-node til brugerdefinerede systemer.


5. Valgfrit: Signaturverifikation

Hver indgående anmodning indeholder headeren X-Muell-Signature: sha256=<hmac>. For at sikre, at anmodningen faktisk kommer fra müll.io, kan du tilføje en Code-node før dine handlinger i n8n til at tjekke signaturen:

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();

Flere detaljer om den komplette webhook-API findes i webhook-integrationsdokumentationen. Webhook-Integrationsdokumentation.


← Integrationsoversigt  ·  Fuld API-dokumentation (åbner i ny fane)