OpenTV ENTera & OpenTV Platform Documentation

Getting content auth token from IAS

Request

To get the content authorisation token that you need to request a licence to play back a content, send a POST request to:

https://<host>:<port>/ias/v2/content_token

Headers

  • authorization – bearer token that the client received at signon

  • nv-tenant-id – the tenant ID

Mandatory arguments

  • content_id – the ID of the content (in query)

  • type – must be device (in query)

Other arguments

None

Response

A successful request returns an HTTP 200 status.

A bad request returns an HTTP 400 status.

An unauthorised request returns an HTTP 401 status.

A forbidden request returns an HTTP 403 status.

If the specified content does not exist, the request returns an HTTP 404 status.

Example

{
  "content_token": {
    "typ": "string",
    "ver": "string",
    "exp": 0,
    "jti": "string",
    "device": {
      "drm": "ssp",
      "deviceUniqueId": "deviceId7",
      "watermarking": false,
      "ipAddress": "172.16.1.50",
      "model": "android",
      "accountId": "account7"
    },
    "contentRights": [
      {
        "contentId": "content7",
        "start": "2022-10-26T15:31:40.757Z",
        "end": "2022-10-26T15:31:40.757Z",
        "duration": 86400,
        "storable": false,
        "drt": "hdr",
        "usageRulesProfileId": "HD",
        "sessionControl": {
          "groups": [
            {
              "groupId": "Group_RTL",
              "maxSessions": 5
            }
          ],
          "groupId": "null",
          "sessionControlEnabled": true,
          "maxSessions": 5
        }
      }
    ]
  },
  "token_type": "Bearer",
  "expires_in": 3887999,
  "access_token": {
    "typ": "DevAuthN",
    "ver": "1.0",
    "exp": 154826071,
    "fixed_exp": 1550679912,
    "tenantId": "nagra",
    "accountId": "account7",
    "userId": "user7",
    "deviceId": "device7",
    "playoutDeviceClass": "playoutDeviceClass01",
    "jti": "4789023423714089478",
    "geoBlockExempt": false,
    "sessionControl": {
      "groups": [
        {
          "groupId": "Group_RTL",
          "maxSessions": 5
        }
      ],
      "groupId": "null",
      "sessionControlEnabled": true,
      "maxSessions": 5
    },
    "parentalControl": {
      "ratingThreshold": {
        "FSK": "fsk12",
        "TVPG": "TV-MA"
      }
    },
    "accountProfileId": "accountProfile7",
    "deviceInformation": {
      "device": {
        "hardware": {
          "model": "Iphone"
        },
        "OS": {
          "type": "IOS"
        }
      }
    },
    "onNetwork": false,
    "filteringInformation": {
      "country": "united kingdom",
      "country-code": "GB",
      "numeric-country-code": "826",
      "region-full-name": "essex",
      "metro-name": "ITV Anglia",
      "metro-code": "826043",
      "city-name": "colchester",
      "postal-code": "co1 1aa",
      "billing-country-code": "GB",
      "filter-string": "Li150"
    },
    "blockingInformation": {
      "country": "united kingdom",
      "country-code": "GB",
      "numeric-country-code": "826",
      "region-full-name": "essex",
      "metro-name": "ITV Anglia",
      "metro-code": "826043",
      "city-name": "colchester",
      "postal-code": "co1 1aa",
      "billing-country-code": "GB",
      "filter-string": "Li150"
    },
    "watermarking": false
  },
  "refresh_token": {
    "typ": "RefreshAuthN",
    "ver": "1.0",
    "exp": 154826071,
    "fixed_exp": 1550679912,
    "tenantId": "nagra",
    "accountId": "account7",
    "accountProfileId": "accountProfile7",
    "userId": "user7",
    "deviceId": "device7",
    "playoutDeviceClass": "playoutDeviceClass01",
    "jti": "4789023423714089478",
    "sessionControl": {
      "groups": [
        {
          "groupId": "Group_RTL",
          "maxSessions": 5
        }
      ],
      "groupId": "null",
      "sessionControlEnabled": true,
      "maxSessions": 5
    }
  }
}

See also

For full details of this API, see the IAS API documentation.