OpenTV ENTera & OpenTV Platform Documentation

Link a product to live channels

Request

To link a product to live channels, send a PUT request to:

http://<server>:<port>/cpm/content/v1/productLinks

The payload should contain the details of the channels to be associated with the product.

Mandatory fields

  • productRef

    • id

  • marketableRef

    • type

    • id

Example

A request with this payload links the specified channels to the specified product:

{     "productLinkSet": [         {             "productRef": {                 "_id": "PROVIDER_ID_001_PROVIDER_RESOURCE_ID_001"             },             "marketableRef": {                 "type": "technicalChannel",                 "_id": "tchp01_tchpr01"             }         } ] }

Response

A successful request returns an HTTP 200 status and the URIs of the updated product links.

A bad request returns an HTTP 400 status.

All PUT and POST calls to CPM are validated by the Validation Service. If there is a problem with the data you are submitting, you will receive one of the following:

  • Error – the data is invalid, so the request fails.
    The error message will indicate which data is invalid and why.

  • Warning – there is an issue with the data that does not prevent it from being added/updated in CPM, but that you need to be aware of.
    For example, if a mandatory field has no value for a non-primary locale (but the same field for the primary locale does have a value), you will get a warning rather than an error.
    The warning message will indicate which data is invalid and why.

Note that there are still conditions where a request can pass validation, but fail when it reaches CPM, so you must handle such responses in an appropriate way too.

In addition, all such errors and warnings:

  • Are available as a report in Data Warehouse (errors only).

  • Generate alert emails that are sent to the email addresses that were configured when the system was deployed.

Note: this data only becomes available in the report 60–90 minutes after the error occurs (and the email is sent).


Example

A successful request returns a payload that looks like this:

{     "selfSet": [         "http://api.demo.otv-se.com/rest/api/content/v1/productLinks/technicalChannel/tchp01_tchpr01/product/PROVIDER_ID_001_PROVIDER_RESOURCE_ID_001"     ],     "totalRecords": 1 }

See also

For full details of this API, see Content and Product Manager (CPM) API documentation: content v1.