IPTV-org Catalog¶
tunlx integrates with the public iptv-org
catalog so you can build groups full of real channels without curating
URLs by hand. The catalog feeds into Xtream Services
as iptvOrgImports, refreshable from the dashboard or on a schedule.
What you get¶
- Thousands of public streams — news, sports, entertainment, kids, regional, language-specific.
- Filter by country and category. Use ISO 3166 codes for countries
(e.g.
US,GB,DE) and the catalog's own tags for categories (e.g.news,sports,kids). Common aliases are equivalent —UKandGBmatch the same channels even though the catalog itself stores the United Kingdom asUK. - Filter by name. An optional
querymatches channel names, alternate names, and catalog IDs case-insensitively (e.g."bbc"). - Optional NSFW exclusion. Defaults to
false. Flip it deliberately. - Per-import limit so a single rule doesn't accidentally pull tens of thousands of channels.
Configuration shape¶
Inside an Xtream service:
"iptvOrgImports": [
{
"name": "US News",
"countries": ["US"],
"categories": ["news"],
"limit": 60,
"includeNsfw": false,
"description": "Pulled from iptv-org public catalog"
},
{
"name": "World Sports",
"countries": ["GB", "DE", "FR"],
"categories": ["sports"],
"limit": 80
},
{
"name": "BBC Channels",
"query": "bbc",
"countries": ["GB"],
"limit": 40
}
]
Each entry becomes one dynamic group in the service. The channel list is rebuilt from the catalog when:
- The service starts.
- You click Refresh in the dashboard's iptv-org panel.
- You call the refresh endpoint directly.
Use it from the wizard¶
If you ran ./tunlx --xtremeWizard, the wizard guides you through picking
countries and categories interactively, then writes a service with the
right imports already in place. See Setup Wizards.

Use it from the dashboard¶
In Advanced mode, every Xtream service exposes an Import from iptv-org action.

The modal lets you:
- Pick countries and categories from searchable lists.
- Set a per-import limit (default
200if omitted or0). - Toggle NSFW inclusion.
- Preview the matching channel count before saving.
The import is added to your service's iptvOrgImports. Channels are
fetched on demand and cached in-memory with a fetchedAt timestamp.
Sanity-checking the result¶
Before publishing the service:
- Open Manage Channels to confirm the imported channels look right.
- Run Stream Health Tests — public catalogs are churn-prone, and you'll want to auto-disable broken entries.
- Use the built-in player on a sample channel.
Limits and gotchas¶
- Catalog freshness: iptv-org updates on its own schedule. tunlx caches what it pulled until the next explicit refresh.
- Stream reliability varies. Public streams come and go. Pair imports with stream-health auto-disable to keep your client experience clean.
- No private auth. iptv-org streams don't carry your tunlx credentials; they're public URLs. If you need authenticated upstreams, use a Standard proxy or manual channels.
Related¶
- Xtream Services — the host that consumes imports
- Stream Health Tests — QA after each refresh
- Setup Wizards — guided import creation