# Recommendations API schemas

> Current Froomle documentation · [View canonical page](https://docs.froomle.com/froomle-doc-main/v2/api_reference/recommendations/schemas.html)

<a id="_item"></a>

## Item

One content-item.

| Name | Description | Schema |
| --- | --- | --- |
| **information\_field**<br>_optional_ | The Froomle API can be configured to return additional information fields (if present in the item information). Please contact the Froomle support team to set this up. | string |
| **item\_id**<br>_required_ | The identifier of the recommended item | string |
| **rank**<br>_required_ | The item’s position in the complete ranked list. The first item has rank 1. | integer |

<a id="_recommendationrequest"></a>

## RecommendationRequest

Specification of a Recommendation request.

| Name | Description | Schema |
| --- | --- | --- |
| **channel**<br>_required_ | The channel used to request the recommendations. Accepted channels are: www, www-desktop, www-mobile, app, app-ios, app-android, app-audio, app-audio-ios and app-audio-android. If none of these fit your use case, please get in touch with your account manager. | string |
| **context\_item**<br>_optional_ | Unique identifier for the currently displayed item. Required only on article pages. | string |
| **context\_item\_type**<br>_optional_ | Type of the currently displayed item, if applicable. | string |
| **device\_id**<br>_required_ | Unique identifier for a unregistered user (e.g. cookie). Use the value `"no-consent"` for users that wish to remain anonymous. | string |
| **histories**<br>_optional_ |  | [Histories](https://docs.froomle.com/froomle-doc-main/v2/api_reference/recommendations/schemas.html#_histories) |
| **lists**<br>_required_ | One or more lists of recommendations to receive. When showing multiple recommendation blocks (e.g. “recommended for you”, “continue reading”, “recent items”) on the same page, include all of them in a single lists array. This ensures that recommendations are generated together, enabling the engine to avoid duplicate items across blocks. | < [RequestList](https://docs.froomle.com/froomle-doc-main/v2/api_reference/recommendations/schemas.html#_requestlist) > array |
| **page\_type**<br>_required_ | The page type to request recommendations for. Standard page\_types are: home, category, article\_detail, product\_detail, video\_detail, and checkout. If none of these fit your use case, please get in touch with your account manager. | string |
| **user\_id**<br>_optional_ | Unique identifier for a logged-in user | string |

<a id="_recommendations"></a>

## Recommendations

| Name | Description | Schema |
| --- | --- | --- |
| **device\_id**<br>_optional_ | Unique identifier for an unregistered user (e.g. cookie). Use the value `"no-consent"` for users that wish to remain anonymous. | string |
| **lists**<br>_optional_ | List of lists of items | < [ResponseList](https://docs.froomle.com/froomle-doc-main/v2/api_reference/recommendations/schemas.html#_responselist) > array |
| **request\_id**<br>_optional_ | The request identifier as supplied by Froomle. This request\_id needs to be supplied with each logged event. | string |
| **user\_group**<br>_optional_ | The group the user is assigned to. If users get the Froomle experience, this will always be "froomle". | string |
| **user\_id**<br>_optional_ | the user id of the logged-in user | string |
