config.yml. If tuliprox is behind a reverse proxy with a path prefix configured in api-proxy.yml, prepend that path to every URL shown in this reference.
API groups
M3U API
Download processed M3U/M3U8 playlists and stream live, VOD, and series content. Endpoints:
GET /get.php, GET /m3u, GET /apiget.Xtream Codes API
Full Xtream Codes-compatible API for media players. Endpoints:
player_api.php, panel_api.php, /xtream, stream paths, catchup/timeshift.HDHomeRun API
Emulates an HDHomeRun network tuner device for Plex, Emby, and Jellyfin. Endpoints:
device.xml, discover.json, lineup.json, lineup_status.json.XMLTV / EPG API
Serve Electronic Programme Guide data in XMLTV format. Endpoints:
GET /xmltv.php, GET /epg, GET /update/epg.php.Management API (v1)
REST API for the web UI and automation. Configuration, playlist management, library management, and user CRUD. All routes under
/api/v1/.Authentication
How username/password, token, and JWT credentials work across all API surfaces.
Port and server configuration
The default port is8901. Change it in config.yml:
path in api-proxy.yml:
path: tuliprox every endpoint becomes http://tv.example.com:443/tuliprox/<endpoint>.
Protocol notes
- All endpoints use plain HTTP. TLS termination is done by an upstream proxy.
- Playlist and stream endpoints accept both
GET(query parameters) andPOST(form body) unless noted otherwise. - The management API (
/api/v1/) uses JSON request and response bodies. - HDHomeRun endpoints run on a separate port configured under
hdhrinconfig.yml.