Pentru a trimite articole RSS către un webhook, ai nevoie de un serviciu care verifică periodic fluxul, detectează articolele noi și le trimite la URL-ul tău printr-o cerere HTTP POST. Regula Postează la Webhook din Feeder face acest lucru pentru oricâte fluxuri, cu filtre după cuvinte-cheie și reîncercări incluse. Poți folosi și instrumente de automatizare precum Zapier, Make, IFTTT și n8n sau un script scurt pe propriul server.
Ce opțiuni am pentru a trimite RSS către un webhook?
| Opțiune | Potrivită pentru | De reținut |
|---|---|---|
| Regula Postează la Webhook din Feeder | Mai multe fluxuri, filtre după cuvinte-cheie și același format JSON pentru toate fluxurile | Inclusă în Feeder Professional. Găsești detaliile mai jos. |
| Zapier, Make, IFTTT sau n8n | Trimiterea fiecărui articol către alte aplicații, fără cod | Trebuie să asociezi manual câmpurile. Fiecare instrument are propriile planuri și limite. |
| Un script | Dezvoltatori care vor control deplin | Tu îl găzduiești, îl programezi să ruleze și urmărești ce a trimis deja. |
Cum funcționează regula Postează la Webhook din Feeder?
Postează la Webhook este una dintre acțiunile disponibile în Regulile Feeder. Creează o regulă, alege Postează la Webhook la Ce ar trebui să se întâmple?, introdu URL-ul endpointului și alege fluxurile, dosarele sau Toate fluxurile pe care vrei să le urmărești. Adaugă cuvinte-cheie dacă vrei să trimiți doar anumite articole. De atunci, Feeder trimite la URL fiecare articol nou care corespunde criteriilor.
În articolul Creează-ți propriile integrări cu Webhook-uri găsești toți pașii și capturi de ecran, iar articolul de lansare arată regula în acțiune. Informațiile de pe această pagină provin din codul care trimite webhook-urile.
Ce trimite Feeder către webhook-ul meu?
Câte o cerere HTTP POST pentru fiecare articol, cu un corp JSON și următoarele antete:
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>
Acesta este corpul unui articol de pe blogul Feeder, cu câmpul content prescurtat. Feeder îl trimite pe un singur rând. Aici este aranjat pe mai multe rânduri pentru a fi mai ușor de citit.
{
"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"
}
}
| Câmp | Ce conține |
|---|---|
version | Versiunea formatului: 2023-06-26. |
message_id | Un ID nou pentru fiecare mesaj. La o reîncercare a aceluiași mesaj, ID-ul rămâne neschimbat, astfel încât să poți ignora duplicatele. |
post.id | ID-ul articolului în Feeder. |
post.title | Titlul articolului. |
post.url | Linkul către articol de pe site. |
post.published | Data și ora publicării articolului, ca marcaj temporal RFC 3339, sau null. |
post.content | Articolul în format HTML, așa cum îl furnizează fluxul: articolul complet sau un rezumat. |
post.audio_url | Fișierul MP3 atașat articolului, de exemplu un episod de podcast, sau null. |
post.image_url | Imaginea atașată articolului, dacă există, altfel prima imagine din conținut sau null. |
feed.id | ID-ul scurt al fluxului în Feeder. |
feed.source_url | Adresa fluxului. |
feed.public_url | Site-ul căruia îi aparține fluxul. |
feed.title | Titlul fluxului. |
feed.favicon | Adresa pictogramei site-ului. |
În câmpul content, caracterele <, > și & sunt transmise ca \u003c, \u003e și \u0026. Acesta este un JSON valid, iar orice analizator JSON le transformă din nou în HTML.
Când se declanșează webhook-ul?
- Doar pentru articolele noi. Regula se aplică articolelor pe care Feeder le găsește după ce o salvezi. Nu trimite articolele pe care le ai deja.
- O singură dată pentru fiecare articol. Fiecare articol care corespunde criteriilor generează o cerere separată. Feeder nu grupează articolele. Dacă site-ul modifică ulterior un articol și Feeder detectează schimbarea, trimite și versiunea modificată.
- Imediat după următoarea verificare a fluxului. În Professional, Feeder verifică fluxurile implicit la fiecare 10 minute. Poți seta un flux să se actualizeze chiar și o dată pe minut. Consultă Cât de des verifică Feeder fluxurile.
- Doar pentru articolele care corespund criteriilor. Dacă folosești cuvinte-cheie, se trimit numai articolele care se potrivesc. Fără cuvinte-cheie, se trimite fiecare articol nou. Un articol ascuns de o regulă Filtrează postările sau Filtru duplicat nu este trimis.
Ce se întâmplă dacă endpointul meu nu funcționează?
Feeder așteaptă un răspuns cel mult 60 de secunde. Un cod de stare 2xx înseamnă că mesajul a fost livrat. Dacă endpointul răspunde cu o eroare, de exemplu 404 sau 500, ori nu răspunde deloc, Feeder încearcă din nou, de cel mult 8 ori:
| Încercarea | Intervalul de la încercarea anterioară |
|---|---|
| 2 | 5 secunde |
| 3 | 30 de secunde |
| 4 | 1 minut |
| 5 | 5 minute |
| 6 | 10 minute |
| 7 | 30 de minute |
| 8 | 30 de minute |
| 9 | 30 de minute |
După a noua încercare, la aproximativ 1 oră și 47 de minute de la prima, Feeder renunță la trimiterea articolului respectiv. Fiecare încercare nereușită apare în jurnalul de erori al regulii: deschide regula și selectează Deschide jurnalul de erori. Dacă schimbi URL-ul regulii în timp ce sunt programate reîncercări, acestea vor fi trimise la noul URL. Opțiunea Trimite mesaj de test trimite un singur mesaj de test, fără reîncercări.
Ce ar trebui să facă endpointul meu?
- Răspunde rapid. Trimite mai întâi un răspuns cu cod de stare 2xx și procesează datele mai lent după aceea, ca să nu depășești limita de 60 de secunde.
- Ignoră duplicatele. Dacă serverul tău a procesat un mesaj, dar a răspuns prea târziu, acesta va fi retrimis. Păstrează valorile
message_idsaupost.idpe care le-ai văzut deja. - Folosește adresa finală. URL-ul trebuie să includă o cale, de exemplu
https://example.com/hooks/rss, și să indice către un server de pe internetul public. Feeder nu trimite cereri către adrese din rețele locale sau private. Evită și redirecționările: după o redirecționare 301, 302 sau 303, cererea ajunge ca GET, fără corpul JSON. - Verifică semnătura. Oricine cunoaște URL-ul tău poate trimite cereri către acesta, așa că ai încredere doar în cererile cu un
X-Feeder-Signaturevalid. Secțiunea următoare explică cum îl verifici.
Cum verific dacă o cerere vine de la Feeder?
Feeder semnează fiecare cerere cu secretul webhook-ului asociat regulii. Pentru a-l găsi, deschide regula, activează Avansat, copiază Secretul webhook-ului și salvează regula. Antetul X-Feeder-Signature conține sha256=, urmat de valoarea HMAC-SHA256 a corpului cererii, în format hexazecimal, calculată cu acel secret.
Pentru a verifica semnătura, calculează același HMAC peste corpul brut, înainte de a analiza JSON-ul, apoi compară valorile în timp constant. În 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 "")
Aici, body reprezintă corpul cererii sub formă de octeți. Respinge cererea dacă from_feeder returnează False. Reîncercările sunt semnate cu secretul curent al regulii, așa că orice modificare a secretului se aplică și acestora.
Poate Feeder să trimită un rezumat periodic la un webhook?
Nu. Postează la Webhook trimite câte o cerere pentru fiecare articol, imediat ce Feeder îl detectează. Pentru a crea un rezumat periodic, ai trei opțiuni:
- Grupează articolele pe serverul tău. Stochează fiecare articol primit de endpoint și trimite propriul rezumat după un program stabilit.
- Folosește rezumate prin e-mail. Feeder îți poate trimite zilnic, săptămânal sau lunar un rezumat al fluxurilor alese, cu Plus și Professional. Consultă Primește notificări despre articolele noi.
- Publică un flux. Cu Professional, publică un dosar sau o colecție ca flux RSS sau JSON și configurează propriul instrument să îl citească după un program stabilit. Consultă Cum să exporți articolele ca fluxuri RSS și JSON.
Cum trimit RSS către un webhook cu Zapier, Make, IFTTT sau n8n?
Fiecare instrument asociază un declanșator RSS cu o acțiune HTTP. Am verificat denumirile pe site-ul fiecărui instrument pe 28 septembrie 2026:
| Instrument | Declanșator | Acțiune | De reținut |
|---|---|---|---|
| Zapier | RSS by Zapier: Articol nou în flux sau Articole noi în mai multe fluxuri | Webhooks by Zapier: POST | Webhooks by Zapier este o aplicație premium, disponibilă doar în anumite planuri Zapier. |
| Make | RSS: Urmărește articolele din fluxul RSS | HTTP: Trimite o cerere | Modulul RSS citește fluxuri RSS și Atom. |
| IFTTT | RSS Feed: Articol nou în flux | Webhooks: Trimite o cerere web | IFTTT verifică fluxurile o dată pe oră în planul gratuit și la fiecare 5 minute în Pro și Pro+. |
| n8n | Nodul Declanșator RSS Feed | Nodul HTTP Request, cu metoda POST | Alegi frecvența verificărilor fluxului în Intervale de verificare. |
Aceste instrumente sunt cea mai rapidă soluție dacă folosești deja unul dintre ele. Le poți combina și cu Feeder: setează regula Postează la Webhook să trimită către un declanșator Catch Hook din Zapier sau către un nod Webhook din n8n. Feeder urmărește fluxurile și filtrează articolele, apoi fluxul tău de lucru preia procesarea.
Cum trimit RSS către un webhook cu un script?
Acest script Python trimite fiecare articol nou dintr-un flux către webhook-ul tău. Ține evidența articolelor trimise în seen.txt, astfel încât fiecare articol să fie trimis o singură dată. La prima rulare, trimite toate articolele existente atunci în flux.
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))
Ai nevoie de Python 3 și de pachetul feedparser (pip install feedparser). Programează scriptul să ruleze periodic, de exemplu o dată la 15 minute cu cron: */15 * * * * cd /path/to/folder && python3 rss_to_webhook.py. Dacă endpointul răspunde cu o eroare, scriptul se oprește, iar la următoarea rulare încearcă din nou să trimită același articol.
Întrebări frecvente
Pot trimite RSS către un webhook Slack, Teams sau Discord cu Postează la Webhook?
Nu direct. Feeder trimite propriul format JSON, nu formatul de mesaj cerut de aceste aplicații. Folosește în schimb regulile Feeder Postează pe Slack, Postează pe Microsoft Teams sau Publică pe Discord ori intercalează Zapier, Make sau n8n.
Ce plan Feeder include webhook-uri?
Postează la Webhook este inclusă în Professional. Regulile de filtrare, marcare cu stea sau colectare a articolelor sunt disponibile și în Plus.
Webhook-ul include articolul complet?
Include conținutul publicat în flux. Câmpul content conține articolul complet dacă fluxul îl include și un rezumat dacă fluxul oferă doar un rezumat.
Pot testa endpointul înainte să salvez regula?
Da. Trimite mesaj de test trimite către URL-ul tău un articol real din fluxurile tale. Trebuie să ai în cont cel puțin un flux cu articole.
Încearcă Feeder
Feeder este un cititor RSS pentru web, iOS și Android, cu extensii pentru Chrome, Firefox și Edge. Planul gratuit urmărește până la 200 de fluxuri, fără reclame, iar fluxurile se actualizează chiar și o dată la 30 de minute. Plus urmărește 2.500 de fluxuri, le actualizează chiar și la fiecare 5 minute și include rezumate prin e-mail.
Începe să folosești Feeder gratuit