This is one of several requests that demonstrates how Rovi can generate personalized entertainment recommendations for your customers. To understand this feature, we suggest working with these calls in this order:
|This Request . . .||Demonstrates . . .|
How an item taste profile gets added to a user taste profile.
What an item taste profile looks like.
What a user taste profile looks like.
How personalized recommendations are generated from a user taste profile.
ForYou returns personalized entertainment recommendations based on a user taste profile and, optionally, on the following filters specified in the request:
Note: Events must be submitted for a user before recommendations can be returned for that user.
endpoint/foryou?apikey=apikey&sig=sig&userid=userid&entitytype=entitytype [&boost=boost] [&filter=filter] [&available‑clu=available‑clu] [&available‑start=available‑start] [&available‑end=available‑end] [&include=include] [&format=format] [&language=language] [&size=size]
♫ Music-related requests 日 Movie-related requests ⊑⊒ TV-related requests
|apikey||Yes||Access code that authorizes your request for data from Rovi.|
|endpoint||Yes|| Database of the item.
|entitytype||Yes|| Type of content.
To return data from multiple entity types within an endpoint, specify multiple entitytype parameters like this: entitytype=tvseries&entitytype=movie. Note: The top results may come from just one of the entity types. Order of results is determined by relevance and is not deliberately balanced across the searched entity types.
|sig||Yes|| A calculated, 32-hex-digit authorization code. To perform the calculation, execute the MD5 function on the concatenation of the following three ASCII strings:
Express the alpha hex digits as lower case.
Perform the calculation at the time of each request to be sure it's within a five-minute window of the server time. If you're testing the call in a browser, use our online signature generator to perform the calculation.
|userid||Yes||ID of a user for whom events have been previously submitted for the requested endpoint.|
|available-clu||No|| Service ID of a television service that has upcoming movies or TV series you want to match against. Service IDs for television services are available with calls to Services.
Broadcast times of programs are returned in availabilities objects. To return multiple broadcast times, specify the maximum number of broadcasts as serviceID,number like this: available‑clu=360861,5.
|available-end||No|| If you specify the available‑clu parameter, available‑end specifies the end of the broadcast time window in one of the following formats:
If not specified, the end time is two weeks after the time of the request.
|available‑start||No|| If you specify the available‑clu parameter, available‑start specifies the start of the broadcast time window in one of the following formats:
If not specified, the start time is the time of the request.
|boost||No|| Sort-order priorities you can increase or decrease by a decimal value between -1 and 1. To boost the priority of new content by 50%, for example, specify boost=new:0.5. The priorities you can increase and decrease are:
To boost multiple factors, specify multiple parameters: boost=new:0.5&boost=alltime:‑0.4. Note: The sum of the absolute values of all factors must be less than or equal to 1. That is, add all of the absolute values together and make sure the total is less than or equal to 1.
If you are using the available-clu parameter, you can also use the boost parameter to filter out results that are not available on the television service. Specified without a value, like this: boost=availability.
|filter||No|| Field content that determines which results are returned. Like a WHERE clause in an SQL statement, this parameter selects only results with fields that meet your criteria. This parameter only filters content with a video endpoint.
The selection operators include:
For the And operation, specify another filter parameter like this: filter=releaseyear>:2004&
The following shows which fields you can select for each video entity type. If you specify a filter that does not apply to an entity type, no data will be returned for that entity type.
|format||No|| Format of the returned data: json or xml. The default is JSON.
Alternatively you can specify the response format in an HTTP Accept header with either of these Accept field content types:
If you specify both, the format parameter overrides the Accept header.
|include||No|| Additional data to include in each result returned. To include cast members in movie results, for example, specify include=cast. For multiple includes, separate the values with commas like this: include=moods,crew. To include all data, specify include=all.
|language||No||Language of the response data. This request supports only en (English).|
|size||No||The number of items you want to be returned. The default is 20.|
|controlSet||ControlSet||The HTTP response status.|
|id||string||Server transaction ID for the response.|
|results||result [ ]||Information about the items that are similar to the item specified in the request, listed in order of similarity and the priorities specified in the request.|
|400||Incorrect or invalid request. The reason is shown in the Message object in ControlSet.|