Xtream Codes is an API used by many IPTV providers. Instead of one large M3U file, you enter a server address, username and password, and the player requests channels, categories and guide data on demand. It handles very large channel lists far better than an M3U on low-memory devices.
What you enter, and where to find it
Three fields, all in the email we send you: the server address including its port, your username, and your password.
Server: http://provider.example.com:8080
Username: yourname
Password: yourpassword
If you only have an M3U URL, those three values are usually inside it already. In http://host:8080/get.php?username=NAME&password=PASS&type=m3u_plus, the server is everything before /get.php, and the username and password are the query parameters.
How it differs from an M3U file
An M3U is a document; Xtream Codes is a conversation. The practical consequences are all about scale and freshness.
| M3U file | Xtream Codes API | |
|---|---|---|
| What the player fetches | The entire list, every refresh | One category at a time, on demand |
| Memory use | Grows with the whole playlist | Roughly flat |
| Guide data | A separate XMLTV URL | Included in the same API |
| Catch-up | Only if the file happens to list it | Exposed directly, per programme |
| Films and series | Mixed in with live channels | Separate sections with metadata |
| New channels appear | After the next full refresh | Immediately |
When Xtream Codes is the better choice
Use it whenever your device is memory-constrained — a 1 GB Firestick, a Samsung or LG television, or an older Roku. It is also the better option if you use catch-up or on-demand content, because an M3U exposes those inconsistently at best.
When an M3U is fine
Small playlists and hand-edited lists. On a desktop with a few thousand channels there is no practical difference, and a local M3U file is easier to trim to just the channels you actually watch.
When a login fails
- Check the port. The address is not valid without it.
:8080is common but by no means universal. - Check http against https. Many providers run plain HTTP, and entering
httpsagainst a server that does not offer it fails silently. - Remove any trailing slash or path. The server field wants the host and port only, not
/get.phpor/player_api.php. - Rule out a connection limit. If it works after you close the app on another device, you are at your provider’s simultaneous-stream limit.
Frequently asked questions
Is Xtream Codes a company or a protocol?
In everyday use it means the API that a great many provider panels expose. Players support the API; that support says nothing about any particular provider.
Can I use Xtream Codes and an M3U at the same time?
Yes. IPTV Pro keeps unlimited playlists of either kind side by side, each with its own favourites and guide mapping.
Does Xtream Codes need its own EPG URL?
No. Guide data comes through the same API, which is one of its main advantages over a plain M3U.
My provider gave me an M3U but not Xtream details. Can I still use the API?
Usually. The server, username and password are normally embedded in the M3U URL, as shown above. If the API still refuses the login, use the M3U instead and tell us.
Are my credentials sent securely?
Ask us — it depends on the endpoint your line is issued on. Where a line is served over plain HTTP the credentials travel unencrypted, which is worth knowing before you use it on a shared network.
