Skip to content

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 — UK and GB match the same channels even though the catalog itself stores the United Kingdom as UK.
  • Filter by name. An optional query matches 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.

Wizard step — TV helper select

Use it from the dashboard

In Advanced mode, every Xtream service exposes an Import from iptv-org action.

Import from iptv-org

The modal lets you:

  1. Pick countries and categories from searchable lists.
  2. Set a per-import limit (default 200 if omitted or 0).
  3. Toggle NSFW inclusion.
  4. 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:

  1. Open Manage Channels to confirm the imported channels look right.
  2. Run Stream Health Tests — public catalogs are churn-prone, and you'll want to auto-disable broken entries.
  3. 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.