api:iptv:app:validate
Table of Contents
API : IPTV : App : Validate
Introduction
This request is used by the iOS/Android apps, web clients, and FlexCare STBs to validate that their token is still valid for accessing the platform.
Request
| URL | https://api.telecomx.dk/iptv/app/validate | ||
|---|---|---|---|
| Method | GET | ||
| Query | token | String | Session token. |
| version | String | App version number if client is an ANDROID, ANDROIDTV, IOS, APPLETV app or FlexCare STB. | |
Query example
https://api.telecomx.dk/iptv/app/validate?token=123456780123456780ABCD&version=2.19.0
Response
| JSON object | ||
|---|---|---|
| _id | Id | Unique ID of the device |
| deviceId | String | If tablet, then the deviceId is the barcode. If iOS/Android phone/AppleTV, then it's a unique ID generated by the app. |
| mac | String | MAC address of STB (this property is used instead of deviceId for STBs) |
| token | String | Session token to be used for all subsequent requests. |
| type | String | Type of device: STB, IOS, ANDROID, ANDROIDTV, APPLETV or WEB. |
| name | String | Name of device, e.g. 'Living room' or 'Johns iPhone'. |
| username | String | Username for authentication. |
| technicalRoomNumber | String | Technical room number assigned to device |
| usedRoomNumber | String | Used room number assigned to device |
| groups | Array | List of groups assigned to device |
| groups[]._id | ObjectId | Unique Id of group |
| groups[].name | String | Name of group |
| developmentMode | Boolean | True if development mode is enabled for this device. |
| nPvr | Boolean | True if nPVR is enabled for the device. |
| nPvrStorage | Number | Number of hours the customer can record. |
| nPvrStorageUsed | Number | Number of minutes recorded. |
| archive | Boolean | True if archive is enabled for the device. |
| archiveDays | Number | Number of days available in the archive. |
| epgDays | Number | Number of days (today + future) available in EPG. |
| resellerId | Id | Unique ID of the reseller |
| resellerName | String | Name of the reseller the customer belongs to. |
| resellerNumber | String | Phone number for the reseller. |
| resellerEmail | String | E-mail address for the reseller. |
| resellerWeb | String | Website for the reseller. |
| topLevelReseller | String | Unique ID of top level reseller. |
| secondaryBackgroundColor | String | Secondary background color for PlayMaker 2.0 (HEX format) |
| inactiveIconColor | String | Color used for inactive icons for PlayMaker 2.0 (HEX format) |
| accentColor | String | Accent/highlight color used on PlayMaker 2.0 (HEX format) |
| topTabBarColor | String | Background color for the top tab bar on PlayMaker 2.0 (HEX format) |
| bottomTabBarColor | String | Background color for the bottom tab bar on PlayMaker 2.0 (HEX format) |
| textColor | String | Text color used on PlayMaker 2.0 (HEX format) |
| secondaryTextColor | String | Secondary text color used for PlayMaker 2.0 (HEX format) |
| tertiaryTextColor | String | Tertiary text color used for PlayMaker 2.0 (HEX format) |
| Profiles | Array | List of DRM profiles (IPTV Private only) |
| profiles[]._id | ObjectId | Unique ID |
| profiles[].name | String | Profile name |
| profiles[].audioLanguage | String | Preferred audio language |
| profiles[].subtitleLanguage | String | Preferred subtitle language |
| profiles[].useSdhSubtitles | Boolean | Use subtitles for hearing-impaired when available |
| Streaming services | Array | List of streaming services enabled for this profile. (IPTV Private only) |
| profiles[].streamingServices[]._id | String | ID of streaming service |
| profiles[].streamingServices[].name | String | Display name of streaming services |
| profiles[].streamingServices[].logo | String | URL to logo of streaming service |
| profiles[].availableStreamingServices[].logoId | ObjectId | ID of logo for streaming service |
| Available streaming services | Array | List of the streaming services that have not been selected for this profile. (IPTV Private only) |
| profiles[].availableStreamingServices[]._id | String | ID of streaming service |
| profiles[].availableStreamingServices[].name | String | Display name of streaming services |
| profiles[].availableStreamingServices[].logo | String | URL to logo of streaming service |
| profiles[].availableStreamingServices[].logoId | ObjectId | ID of logo for streaming service |
| profiles[].channels | Array<ObjectId> | List of channels, which are visible for this profile. |
Note that properties holding no value may be omitted from the object.
Example
{ _id: '82345678901234567890ABCD', token: '12345678901234567890ABCD', deviceId: '0123ABDE4-2831-52A2-CEC1-5A1A3422AB1A', type: 'IOS', name: 'iPhone 6S', username: 'johnny-five', developmentMode: false, nPvr: true, nPvrStorage: 100, nPvrStorageUsed: 300, archive: true, archiveDays: 2, epgDays: 7, resellerId: '1234567890ABCD1234567890', resellerName: 'Storeby Magle antenneforening', resellerNumber: '88888888', resellerEmail: 'donald@duck.com', resellerWeb: 'http://www.storebymagleaf.dk', topLevelReseller: '1234567890ABCD1234567890', secondaryBackgroundColor: '#ffffff', inactiveIconColor: '#000000', accentColor: '#f42211', topTabBarColor: '#ffaabb', bottomTabBarColor: '#ffff00', textColor: '#00aabb', secondaryTextColor: '#11ff10', tertiaryTextColor: '#ffffff' profiles: [ { _id: '1234567890ABCD1234567890', name: 'Dad', streamingServices: ['NETFLIX', 'VIAPLAY'], audioLanguage: 'dan', subtitleLanguage: 'dan', useSdhSubtitles: false, channels: [ '1234567890ABCD1234567890', '8434567890ABCD1234567890', ... ], availableChannels: [ '3234567890ABCD123456789', '4234567890ABCD123456789', ... ], streamingServices: [ { _id: "AMAZON_PRIME", name: "Amazon Prime", logo: "https://example.image.com/1234567890ABCD1234567890.png", logoId: "1234567890ABCD1234567890", } ], availableStreamingServices: [ { _id: "DR_TV", name: "DR TV", logo: "https://example.image.com/1234567890ABCD1234567890.png", logoId: "1234567890ABCD1234567890", }, { _id: "TV_2_PLAY", name: "TV 2 Play", logo: "https://example.image.com/1234567890ABCD1234567890.png", logoId: "1234567890ABCD1234567890", }, ... ] ] }
Errors
| Error code | Message | Description |
|---|---|---|
| 403 | access_denied | Insufficient access level |
| 403 | blocked | The device has been blocked from using the IPTV services |
| 403 | outdated | The app is outdated. Please update to the newest version. |
| 500 | internal_error | <Unspecified> |
api/iptv/app/validate.txt · Last modified: 2025/01/14 14:14 by Gudni Sigurdsson