Server RSS BOT

Internal endpoints for the RSS Bot service: channel configuration, scheduled jobs, parsing diagnostics, publish retry queue management, and Telegram webhook delivery.

Note: opening an endpoint in a browser typically issues a GET request. Use curl/Postman for POST and DELETE.

API Endpoints

Method Endpoint Description
GET /api/channel Retrieve channel configurations stored in Redis.
Single channel: pass ?id=<chatId> or ?chatId=<chatId> (interchangeable).
List: supports pagination via limit (default: 10) and offset (default: 0).
GET /api/cron Scheduled job runner. Typically invoked by a scheduler/worker to scan registered channels, fetch feeds, and enqueue downstream actions according to each channel’s mode.
GET /api/debug-parser Parser diagnostics for a specific RSS feed.
Requires url (URL-encoded RSS feed URL).
Returns the normalized, internal representation used by the system.
GET /api/publish-queue Inspect the publish retry queue (payloads that previously failed and are pending retry).
Optional: limit (default: 10).
DELETE /api/publish-queue Clear the publish retry queue by removing all queued payloads.
GET /api/publish-retry Trigger a retry run: forwards queued payloads to the configured upstream endpoint.
Optional: limit (default: 10).
POST /api/telegram-webhook Telegram webhook receiver. Telegram delivers updates via POST, with the update JSON provided in the request body.
Authentication: administrative/internal endpoints are typically protected using Authorization: Bearer <PUBLISH_SECRET> (controlled by REQUIRE_AUTH).
Telegram webhook: Telegram does not attach a custom Bearer header automatically. For webhook verification, prefer Telegram’s secret header X-Telegram-Bot-Api-Secret-Token or a secret webhook path.