Hvis du vil sende RSS til en webhook, skal du bruge noget, der tjekker feedet med faste mellemrum, finder nye opslag og sender hvert opslag til din URL som en HTTP POST. Feeders regel Slå op via Webhook gør det for et vilkårligt antal feeds og har indbyggede søgeordsfiltre og genforsøg. Automatiseringsværktøjer som Zapier, Make, IFTTT og n8n kan også gøre det, ligesom et kort script på din egen server.
Hvilke muligheder har jeg for at sende RSS til en webhook?
| Mulighed | Velegnet til | Værd at vide |
|---|---|---|
| Feeders regel Slå op via Webhook | Mange feeds, søgeordsfiltre og ét JSON-format til alle feeds | En del af Feeder Professional. Se detaljerne nedenfor. |
| Zapier, Make, IFTTT eller n8n | At sende hvert opslag videre til andre apps uden kode | Du skal selv tilknytte felterne. Hvert værktøj har sine egne abonnementer og begrænsninger. |
| Et script | Udviklere, der vil have fuld kontrol | Du hoster det, planlægger kørslerne og holder styr på, hvad det allerede har sendt. |
Hvordan fungerer Feeders regel Slå op via Webhook?
Slå op via Webhook er en af handlingerne i Feeders regler. Opret en regel, vælg Slå op via Webhook under Hvad skal der ske?, indsæt URL'en til dit endpoint, og vælg de feeds, mapper eller Alle feeds, du vil overvåge. Tilføj søgeord, hvis du kun vil have bestemte opslag. Herefter sender Feeder hvert nyt opslag, der matcher, til din URL.
Byg dine egne integrationer med webhooks indeholder alle trinnene med skærmbilleder, og lanceringsindlægget viser reglen i brug. Oplysningerne på denne side stammer fra koden, der sender webhook-anmodningerne.
Hvad sender Feeder til min webhook?
Én HTTP POST for hvert opslag, med en JSON-body og disse headers:
POST /hooks/rss HTTP/1.1
Content-Type: application/json
User-Agent: Feeder-Webhooks/1.0
X-Feeder-Signature: sha256=<HMAC-SHA256 of the body, in hex>
Her er body'en for et opslag fra Feeders blog, hvor content er forkortet. Feeder sender den på én linje. Her er den sat op over flere linjer, så den er nemmere at læse.
{
"version": "2023-06-26",
"message_id": "3f1c9a52-7e4b-4d0a-9b6e-2c8d51f0a7e4",
"post": {
"id": "aff2424a-abc9-11f1-afb3-1a21cf3a468a",
"title": "Feed your AI",
"url": "https://feeder.co/blog/1208-feed-your-ai",
"published": "2026-09-08T20:19:59Z",
"content": "\u003cp\u003eWith Feeder's MCP server, you can connect Feeder to your AI client of choice.\u003c/p\u003e",
"audio_url": null,
"image_url": "https://uploads.feedercdn.com/8XSXZN92WHeb2d17f3440d-feedyourai-1024x538.png"
},
"feed": {
"id": "21f058e947",
"source_url": "https://feeder.co/blog.rss",
"public_url": "https://feeder.co/blog",
"title": "Feeder.co",
"favicon": "https://icons.feedercdn.com/feeder.co"
}
}
| Felt | Indeholder |
|---|---|
version | Formatversionen: 2023-06-26. |
message_id | Et nyt ID for hver meddelelse. Ved genforsøg af den samme meddelelse bevares ID'et, så du kan springe dubletter over. |
post.id | Feeders ID for opslaget. |
post.title | Opslagets titel. |
post.url | Linket til opslaget på websitet. |
post.published | Hvornår opslaget blev udgivet, som et RFC 3339-tidsstempel eller null. |
post.content | Opslaget som HTML, sådan som feedet leverer det, enten hele artiklen eller et resumé. |
post.audio_url | MP3-filen, der er knyttet til opslaget, f.eks. et podcastafsnit, eller null. |
post.image_url | Billedet, der er knyttet til opslaget, eller det første billede i indholdet, eller null. |
feed.id | Feeders korte ID for feedet. |
feed.source_url | Feedets adresse. |
feed.public_url | Websitet, som feedet tilhører. |
feed.title | Feedets titel. |
feed.favicon | En adresse til websitets ikon. |
I content sendes tegnene <, > og & som \u003c, \u003e og \u0026. Det er gyldig JSON, og enhver JSON-parser konverterer dem tilbage til HTML.
Hvornår udløses webhooken?
- Kun for nye opslag. Reglen behandler opslag, som Feeder finder, efter du har gemt den. Den sender ikke de opslag, du allerede har.
- Én gang for hvert opslag. Hvert opslag, der matcher, får sin egen anmodning. Feeder samler ikke opslagene. Hvis websitet senere redigerer et opslag, og Feeder registrerer ændringen, sendes den redigerede version også.
- Lige efter feedets næste tjek. På Professional tjekker Feeder som standard feeds hvert 10. minut, og du kan indstille et feed til at blive opdateret helt ned til hvert minut. Se Hvor ofte tjekker Feeder dine feeds?.
- Kun for opslag, der matcher. Med søgeord sendes kun opslag, der matcher. Uden søgeord sendes alle nye opslag. Et opslag, som skjules af en regel med Filtrer opslag eller Filtrer duplikater, sendes ikke.
Hvad sker der, hvis mit endpoint er nede?
Feeder venter i op til 60 sekunder på et svar. En 2xx-status tæller som leveret. Hvis dit endpoint svarer med en fejl, f.eks. 404 eller 500, eller slet ikke svarer, prøver Feeder igen op til 8 gange:
| Forsøg | Sendes så lang tid efter det foregående forsøg |
|---|---|
| 2 | 5 sekunder |
| 3 | 30 sekunder |
| 4 | 1 minut |
| 5 | 5 minutter |
| 6 | 10 minutter |
| 7 | 30 minutter |
| 8 | 30 minutter |
| 9 | 30 minutter |
Efter det niende forsøg, cirka 1 time og 47 minutter efter det første, giver Feeder op med det pågældende opslag. Hvert mislykket forsøg vises i reglens fejllog. Åbn reglen, og vælg Åbn fejllog. Hvis du ændrer reglens URL, mens der afventes genforsøg, sendes de næste genforsøg til den nye URL. Send testbesked sender én test uden genforsøg.
Hvad skal mit endpoint gøre?
- Svar hurtigt. Svar først med en 2xx-status, og udfør derefter langsommere arbejde, så du holder dig godt inden for de 60 sekunder.
- Spring dubletter over. Hvis serveren har behandlet en meddelelse, men svaret kom for sent, sender genforsøget den igen. Gem værdierne for
message_idellerpost.id, som du allerede har set. - Brug den endelige adresse. URL'en skal have en sti, f.eks.
https://example.com/hooks/rss, og pege på en server på det offentlige internet. Feeder sender ikke til adresser på lokale eller private netværk. Undgå også viderestillinger. Efter en 301-, 302- eller 303-viderestilling ankommer anmodningen som en GET uden JSON-body'en. - Kontrollér signaturen. Alle, der kender din URL, kan sende anmodninger til den, så stol kun på anmodninger med en gyldig
X-Feeder-Signature. I næste afsnit kan du se hvordan.
Hvordan kontrollerer jeg, at en anmodning kommer fra Feeder?
Feeder signerer hver anmodning med webhook-hemmeligheden for din regel. Find den ved at åbne reglen, slå Avanceret til, kopiere Webhook-hemmelighed og gemme reglen. Headeren X-Feeder-Signature indeholder sha256= efterfulgt af HMAC-SHA256 af anmodningens body i hexadecimal form, beregnet med denne hemmelighed.
Beregn den samme HMAC over den rå body, før du fortolker JSON'en, og sammenlign de to værdier på en måde, der tager konstant tid. I Python:
import hashlib, hmac
def from_feeder(body, header, secret):
expected = "sha256=" + hmac.new(secret.encode(), body, hashlib.sha256).hexdigest()
return hmac.compare_digest(expected, header or "")
Her er body anmodningens body som bytes. Afvis en anmodning, hvis from_feeder returnerer False. Genforsøg signeres med reglens aktuelle hemmelighed, så ændringer af hemmeligheden gælder også for dem.
Kan Feeder sende en opsummering til en webhook?
Nej. Slå op via Webhook sender én anmodning for hvert opslag, så snart Feeder finder det. Hvis du vil have en opsummering, har du tre muligheder:
- Saml dem på din side. Gem hvert opslag, som dit endpoint modtager, og send din egen opsummering efter en tidsplan.
- Brug opsummeringer via e-mail. Feeder kan sende dig en daglig, ugentlig eller månedlig opsummering af de feeds, du vælger, på Plus og Professional. Se Få besked om nye opslag.
- Udgiv et feed. På Professional kan du udgive en mappe eller samling som et RSS- eller JSON-feed, som dit eget værktøj kan læse efter sin egen tidsplan. Se Sådan eksporterer du dine opslag som RSS- og JSON-feeds.
Hvordan sender jeg RSS til en webhook med Zapier, Make, IFTTT eller n8n?
Hvert værktøj kombinerer en RSS-udløser med en HTTP-handling. Vi kontrollerede navnene på de enkelte værktøjers egne websites den 28. september 2026:
| Værktøj | Udløser | Handling | Værd at vide |
|---|---|---|---|
| Zapier | RSS by Zapier: Nyt element i feed eller Nye elementer i flere feeds | Webhooks by Zapier: POST | Webhooks by Zapier er en premium-app, som Zapier kun tilbyder i sine betalingsabonnementer. |
| Make | RSS: Overvåg RSS-feedets elementer | HTTP: Send en anmodning | RSS-modulet læser RSS- og Atom-feeds. |
| IFTTT | RSS Feed: Nyt feedelement | Webhooks: Send en webanmodning | IFTTT tjekker feeds hver time på gratisabonnementet og hvert 5. minut på Pro og Pro+. |
| n8n | Noden RSS Feed Trigger | Noden HTTP Request med POST-metoden | Under Afstemningsintervaller vælger du, hvor ofte feedet tjekkes. |
Disse værktøjer er den hurtigste løsning, hvis du allerede bruger et af dem. Du kan også kombinere dem med Feeder: Send en regel for Slå op via Webhook til en Catch Hook-udløser i Zapier eller en Webhook-node i n8n. Feeder overvåger så feedsene og filtrerer opslagene, hvorefter dit workflow tager over.
Hvordan sender jeg RSS til en webhook med et script?
Dette Python-script sender hvert nyt element i ét feed til din webhook. Det husker, hvad det har sendt, i seen.txt, så hvert element kun sendes én gang. Første gang scriptet køres, sender det alle elementer, der på det tidspunkt findes i feedet.
import json, pathlib, urllib.request
import feedparser # pip install feedparser
FEED_URL = "https://example.com/feed.xml"
WEBHOOK_URL = "https://example.com/hooks/rss"
seen_file = pathlib.Path("seen.txt")
seen = set(seen_file.read_text().split()) if seen_file.exists() else set()
for entry in reversed(feedparser.parse(FEED_URL).entries):
key = entry.get("id") or entry.get("link")
if not key or key in seen:
continue
payload = {"title": entry.get("title"), "url": entry.get("link"), "published": entry.get("published")}
request = urllib.request.Request(WEBHOOK_URL, data=json.dumps(payload).encode(),
headers={"Content-Type": "application/json"})
urllib.request.urlopen(request, timeout=30)
seen.add(key)
seen_file.write_text("\n".join(seen))
Scriptet kræver Python 3 og pakken feedparser (pip install feedparser). Kør det efter en tidsplan, f.eks. hvert 15. minut med cron: */15 * * * * cd /path/to/folder && python3 rss_to_webhook.py. Hvis dit endpoint svarer med en fejl, stopper scriptet, og næste kørsel prøver at sende det samme element igen.
Ofte stillede spørgsmål
Kan jeg sende RSS til en Slack-, Teams- eller Discord-webhook med Slå op via Webhook?
Ikke direkte. Feeder sender sit eget JSON-format, ikke det meddelelsesformat, som disse apps forventer. Brug i stedet Feeders regler Slå op på Slack, Slå op på Microsoft Teams eller Slå op på Discord, eller brug Zapier, Make eller n8n som mellemled.
Hvilket Feeder-abonnement omfatter webhooks?
Slå op via Webhook er en del af Professional. Regler, der filtrerer, markerer med en stjerne eller samler opslag, fungerer også på Plus.
Indeholder webhooken hele artiklen?
Den indeholder det, feedet udgiver. content rummer hele artiklen, hvis feedet indeholder den, og et resumé, hvis feedet kun indeholder et resumé.
Kan jeg teste mit endpoint, før jeg gemmer reglen?
Ja. Send testbesked sender et rigtigt opslag fra dine feeds til din URL. Du skal have mindst ét feed med opslag på din konto.
Prøv Feeder
Feeder er en RSS-læser til web, iOS og Android med udvidelser til Chrome, Firefox og Edge. Gratisabonnementet følger op til 200 feeds uden annoncer, og feeds opdateres helt ned til hvert 30. minut. Plus følger 2.500 feeds, opdaterer dem helt ned til hvert 5. minut og omfatter opsummeringer via e-mail.
Kom godt i gang med Feeder gratis