Za slanje RSS sadržaja na webhook potrebno vam je nešto što u određenim intervalima provjerava feed, prepoznaje nove stavke i svaku šalje na vaš URL putem HTTP POST zahtjeva. Feederovo pravilo Objavi na Webhook to radi za bilo koji broj feedova, uz ugrađene filtre prema ključnim riječima i ponovne pokušaje. To mogu raditi i alati za automatizaciju kao što su Zapier, Make, IFTTT i n8n, kao i kratka skripta na vašem poslužitelju.
Koje su mogućnosti slanja RSS sadržaja na webhook?
| Mogućnost | Prikladno za | Što trebate znati |
|---|---|---|
| Feederovo pravilo Objavi na Webhook | Više feedova, filtri prema ključnim riječima i jedinstven JSON format za svaki feed | Dio je Feederova paketa Professional. Pojedinosti su u nastavku. |
| Zapier, Make, IFTTT ili n8n | Prosljeđivanje svake stavke u druge aplikacije bez pisanja koda | Polja mapirate sami. Svaki alat ima vlastite pakete i ograničenja. |
| Skripta | Razvojne inženjere koji žele potpunu kontrolu | Sami je smještate na poslužitelj, zakazujete njezino pokretanje i pratite što je već poslala. |
Kako funkcionira Feederovo pravilo Objavi na Webhook?
Objavi na Webhook jedna je od radnji u Feederovim pravilima. Izradite pravilo, odaberite Objavi na Webhook pod opcijom Što bi trebalo učiniti?, zalijepite URL svoje krajnje točke i odaberite feedove, mape ili opciju Svi feedovi koje želite pratiti. Dodajte ključne riječi ako želite slati samo neke objave. Nakon toga Feeder šalje svaku novu objavu koja odgovara uvjetima na vaš URL.
U članku Izradite vlastite integracije pomoću Webhookova pronaći ćete sve korake i snimke zaslona, a članak o predstavljanju prikazuje pravilo na djelu. Informacije na ovoj stranici temelje se na kodu koji šalje webhookove.
Što Feeder šalje na moj webhook?
Za svaku objavu šalje se jedan HTTP zahtjev POST s JSON tijelom i sljedećim zaglavljima:
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>
Ovo je tijelo zahtjeva za objavu s Feederova bloga, s kraćim sadržajem u polju content. Feeder ga šalje u jednom retku, a ovdje je razlomljeno radi lakšeg čitanja.
{
"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"
}
}
| Polje | Sadržaj |
|---|---|
version | Verzija formata: 2023-06-26. |
message_id | Novi ID za svaku poruku. Ponovljeni pokušaj slanja iste poruke zadržava isti ID, pa možete preskočiti duplikate. |
post.id | Feederov ID objave. |
post.title | Naslov objave. |
post.url | Poveznica na objavu na web-mjestu. |
post.published | Vrijeme objave u obliku vremenske oznake RFC 3339 ili vrijednost null. |
post.content | Objava u HTML-u, onako kako je navedena u feedu, kao cijeli članak ili sažetak. |
post.audio_url | MP3 datoteka priložena uz objavu, primjerice epizoda podcasta, ili vrijednost null. |
post.image_url | Slika priložena uz objavu, odnosno prva slika u njezinu sadržaju ako takva postoji, ili vrijednost null. |
feed.id | Feederov kratki ID feeda. |
feed.source_url | Adresa feeda. |
feed.public_url | Web-mjesto kojem feed pripada. |
feed.title | Naziv feeda. |
feed.favicon | Adresa ikone web-mjesta. |
U polju content znakovi <, > i & stižu kao \u003c, \u003e i \u0026. To je valjan JSON, a svaki JSON parser pretvara ih natrag u HTML.
Kada se webhook aktivira?
- Samo za nove objave. Pravilo djeluje na objave koje Feeder pronađe nakon što ga spremite. Ne šalje objave koje već imate.
- Jednom za svaku objavu. Svaka objava koja odgovara uvjetima šalje se zasebnim zahtjevom. Feeder ne grupira objave. Ako web-mjesto naknadno izmijeni objavu, a Feeder prepozna izmjenu, poslat će i ažuriranu verziju.
- Odmah nakon sljedeće provjere feeda. U paketu Professional Feeder prema zadanim postavkama provjerava feedove svakih 10 minuta, a frekvenciju pojedinog feeda možete postaviti na najviše jednom u minuti. Pogledajte članak Koliko često Feeder provjerava vaše feedove.
- Samo za objave koje odgovaraju uvjetima. Ako ste dodali ključne riječi, šalju se samo objave koje im odgovaraju. Bez ključnih riječi šalje se svaka nova objava. Objave koje skriva pravilo Filtriraj postove ili Filtriraj duplikate ne šalju se.
Što ako moja krajnja točka ne radi?
Feeder čeka odgovor najviše 60 sekundi. Status 2xx znači da je zahtjev isporučen. Ako vaša krajnja točka odgovori pogreškom, primjerice 404 ili 500, ili uopće ne odgovori, Feeder će pokušati ponovno, najviše još 8 puta:
| Pokušaj | Vrijeme nakon prethodnog pokušaja |
|---|---|
| 2 | 5 sekundi |
| 3 | 30 sekundi |
| 4 | 1 minuta |
| 5 | 5 minuta |
| 6 | 10 minuta |
| 7 | 30 minuta |
| 8 | 30 minuta |
| 9 | 30 minuta |
Nakon devetog pokušaja, otprilike 1 sat i 47 minuta nakon prvog, Feeder odustaje od slanja te objave. Svaki neuspjeli pokušaj prikazuje se u zapisniku pogrešaka pravila: otvorite pravilo i odaberite Otvori zapisnik pogrešaka. Ako promijenite URL pravila dok čekaju ponovni pokušaji, sljedeći pokušaji šalju se na novi URL. Opcija Pošalji testnu poruku šalje samo jednu testnu poruku, bez ponovnih pokušaja.
Što bi moja krajnja točka trebala raditi?
- Brzo odgovoriti. Najprije odgovorite statusom 2xx, a zahtjevnije zadatke obavite poslije kako biste odgovorili znatno prije isteka 60 sekundi.
- Preskočiti duplikate. Ako je vaš poslužitelj obradio poruku, ali prekasno poslao odgovor, ponovni pokušaj donijet će je opet. Zabilježite vrijednosti
message_idilipost.idkoje ste već vidjeli. - Upotrijebiti konačnu adresu. URL mora sadržavati putanju, primjerice
https://example.com/hooks/rss, i upućivati na poslužitelj dostupan na javnom internetu. Feeder ne šalje zahtjeve na adrese lokalnih ili privatnih mreža. Izbjegavajte i preusmjeravanja: nakon preusmjeravanja 301, 302 ili 303 zahtjev stiže kao GET bez JSON tijela. - Provjeriti potpis. Svatko tko zna vaš URL može slati zahtjeve na njega, zato vjerujte samo zahtjevima s valjanim zaglavljem
X-Feeder-Signature. U sljedećem odjeljku objašnjeno je kako ga provjeriti.
Kako mogu provjeriti je li zahtjev poslao Feeder?
Feeder potpisuje svaki zahtjev tajnom vrijednošću webhooka za vaše pravilo. Da biste je pronašli, otvorite pravilo, uključite opciju Napredno, kopirajte vrijednost Tajna vrijednost webhooka i spremite pravilo. Zaglavlje X-Feeder-Signature sadrži sha256=, iza kojeg slijedi HMAC-SHA256 tijela zahtjeva u heksadekadskom obliku, izrađen pomoću te tajne vrijednosti.
Da biste provjerili potpis, izračunajte isti HMAC nad neizmijenjenim tijelom, prije nego što obradite JSON, pa ih usporedite u konstantnom vremenu. Primjer u Pythonu:
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 "")
Varijabla body ovdje predstavlja tijelo zahtjeva u obliku bajtova. Odbijte zahtjev ako funkcija from_feeder vrati vrijednost False. Ponovni pokušaji potpisuju se trenutačnom tajnom vrijednošću pravila, pa će se promijenjena tajna vrijednost primijeniti i na njih.
Može li Feeder slati sažetak na webhook?
Ne. Pravilo Objavi na Webhook šalje jedan zahtjev za svaku objavu, čim je Feeder pronađe. Sažetak možete dobiti na tri načina:
- Grupirajte objave na svojoj strani. Pohranite svaku objavu koju primi vaša krajnja točka i prema rasporedu šaljite vlastiti sažetak.
- Koristite sažetke e-poštom. U paketima Plus i Professional Feeder vam može slati dnevni, tjedni ili mjesečni sažetak odabranih feedova. Pogledajte članak Primajte obavijesti o novim objavama.
- Objavite feed. U paketu Professional objavite mapu ili zbirku kao RSS ili JSON feed, pa neka ga vaš alat čita prema svojem rasporedu. Pogledajte članak Kako izvesti objave kao RSS i JSON feedove.
Kako slati RSS sadržaj na webhook pomoću alata Zapier, Make, IFTTT ili n8n?
Svaki od ovih alata povezuje okidač za RSS s HTTP radnjom. Nazive smo provjerili na službenim web-mjestima alata 28. rujna 2026.:
| Alat | Okidač | Radnja | Korisno je znati |
|---|---|---|---|
| Zapier | RSS by Zapier: Nova stavka u feedu ili Nove stavke u više feedova | Webhooks by Zapier: POST | Webhooks by Zapier premium je aplikacija koju Zapier uključuje samo u plaćene pakete. |
| Make | RSS: Prati stavke RSS feeda | HTTP: Pošalji zahtjev | RSS modul čita RSS i Atom feedove. |
| IFTTT | RSS Feed: Nova stavka feeda | Webhooks: Pošalji web-zahtjev | IFTTT na besplatnom paketu provjerava feedove svakih sat vremena, a u paketima Pro i Pro+ svakih 5 minuta. |
| n8n | Čvor RSS Feed Trigger | Čvor HTTP Request s metodom POST | U odjeljku Intervali provjere možete odabrati učestalost provjere feeda. |
Ovi su alati najbrže rješenje ako se već njima koristite. Možete ih povezati i s Feederom: usmjerite pravilo Objavi na Webhook na okidač Zapiera Catch Hook ili čvor n8n Webhook. Feeder će pratiti feedove i filtrirati objave, a vaš će tijek rada preuzeti ostatak.
Kako slati RSS sadržaj na webhook pomoću skripte?
Ova Python skripta šalje svaku novu stavku iz jednog feeda na vaš webhook. Pamti što je poslala u datoteci seen.txt, pa se svaka stavka šalje samo jednom. Prvim pokretanjem šalju se sve stavke koje se tada nalaze u feedu.
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))
Potrebni su Python 3 i paket feedparser (pip install feedparser). Pokrećite je prema rasporedu, primjerice svakih 15 minuta pomoću crona: */15 * * * * cd /path/to/folder && python3 rss_to_webhook.py. Ako vaša krajnja točka odgovori pogreškom, skripta će se zaustaviti, a pri sljedećem će pokretanju ponovno pokušati poslati istu stavku.
Česta pitanja
Mogu li pravilom Objavi na Webhook slati RSS sadržaj na webhook za Slack, Teams ili Discord?
Ne izravno. Feeder šalje vlastiti JSON format, a ne format poruke koji te aplikacije očekuju. Umjesto toga koristite Feederova pravila Objavi na Slack, Objavi na Microsoft Teams ili Objavi na Discord, odnosno između njih postavite Zapier, Make ili n8n.
Koji Feederov paket uključuje webhookove?
Pravilo Objavi na Webhook dio je paketa Professional. Pravila za filtriranje, označavanje zvjezdicom ili prikupljanje objava dostupna su i u paketu Plus.
Sadrži li webhook cijeli članak?
Sadrži ono što je objavljeno u feedu. Polje content sadrži cijeli članak ako ga feed prenosi, a sažetak ako feed sadrži samo sažetak.
Mogu li testirati krajnju točku prije spremanja pravila?
Da. Opcija Pošalji testnu poruku šalje jednu stvarnu objavu iz vaših feedova na vaš URL. Na računu morate imati barem jedan feed s objavama.
Isprobajte Feeder
Feeder je RSS čitač za web, iOS i Android, a dostupan je i kao proširenje za Chrome, Firefox i Edge. Besplatni paket prati do 200 feedova bez oglasa, a feedovi se ažuriraju najviše svakih 30 minuta. Paket Plus prati 2500 feedova, ažurira ih najviše svakih 5 minuta i uključuje sažetke e-poštom.
Započnite besplatno koristiti Feeder