EPG Management

Import XMLTV files and manage your TV schedule

← Back to Guide

Import XMLTV

Upload an XMLTV file to import channels and programs into the database. This will replace all existing data.

Export EPG

Export the current TV schedule as an XMLTV file for cable headends and external systems.

Download EPG XML

API Documentation

Import Playlist (Direct POST)

POST /api/playlist/import

Accepts XMLTV playlist data directly from EASY ON AIR or other systems. Replace all existing programs.

Usage Examples

Raw XML (Content-Type: application/xml):

curl -X POST http://localhost:3000/api/playlist/import \
  -H "Content-Type: application/xml" \
  --data-binary @playlist.xml

JSON with XML (Content-Type: application/json):

curl -X POST http://localhost:3000/api/playlist/import \
  -H "Content-Type: application/json" \
  -d '{"xml": "<tv>...</tv>"}'

Get Programs

GET /api/programs?start=ISO_DATE&end=ISO_DATE

Returns programs between start and end dates

Export EPG

GET /api/epg/export

Downloads EPG data as XMLTV XML file

EPG Email Distribution

Manage cable headend operator email addresses and configure automated daily EPG distribution. You can send EPG XML files immediately or schedule them for daily delivery.

Add Cable Headend Email

Send EPG Now

Immediately send the latest EPG XML file to all active recipients

Email Recipients (0)

No email recipients configured yet. Add one above to start.

Recent Send History

No send history yet

Automated Daily Distribution

Setup Instructions

To enable automated daily EPG email delivery at a specific time, configure a scheduled task on your server:

Cron Endpoint:

GET /api/cron/send-epg

Required Header:

Authorization: Bearer YOUR_CRON_SECRET

Example Cron Job (Daily at 9 AM):

0 9 * * * curl -H "Authorization: Bearer YOUR_CRON_SECRET" \ https://yourdomain.com/api/cron/send-epg

Important: Set CRON_SECRET and RESEND_API_KEY environment variables in your project settings.