# Models

## The Explanation object

```json
{"openapi":"3.1.1","info":{"title":"Rabbit Recommendations API","version":"1.0"},"components":{"schemas":{"Explanation":{"title":"Explanation","properties":{"originator":{"description":"Origination of the explanation.","type":"string"},"type":{"description":"The granularity of recommendation match.","type":"string"},"message":{"type":"string"}},"description":"Explanation","type":"object"}}}}
```

## The Program object

```json
{"openapi":"3.1.1","info":{"title":"Rabbit Recommendations API","version":"1.0"},"components":{"schemas":{"Program":{"title":"Program","properties":{"Id":{"description":"The ID of the program (show or movie)","type":"integer","format":"int64"},"Type":{"description":"The type of IVA program (show or movie).","type":"string"}},"description":"Program","type":"object"}}}}
```

## The XRoadMediaRecommendationResponse object

```json
{"openapi":"3.1.1","info":{"title":"Rabbit Recommendations API","version":"1.0"},"components":{"schemas":{"XRoadMediaRecommendationResponse":{"title":"XRoadMediaRecommendationResponse","properties":{"recommendations":{"type":"array","items":{"$ref":"#/components/schemas/Recommendation"}}},"description":"XRoadMediaRecommendationResponse","type":"object"},"Recommendation":{"title":"Recommendation","properties":{"explanations":{"description":"List of reasons for recommendation.","type":"array","items":{"$ref":"#/components/schemas/Explanation"}},"score":{"description":"Quality of the recommendation relative to other recommendations.","type":"number","format":"float"},"program":{"$ref":"#/components/schemas/Program","description":"The ID and Type of IVA Program."}},"description":"Recommendation","type":"object"},"Explanation":{"title":"Explanation","properties":{"originator":{"description":"Origination of the explanation.","type":"string"},"type":{"description":"The granularity of recommendation match.","type":"string"},"message":{"type":"string"}},"description":"Explanation","type":"object"},"Program":{"title":"Program","properties":{"Id":{"description":"The ID of the program (show or movie)","type":"integer","format":"int64"},"Type":{"description":"The type of IVA program (show or movie).","type":"string"}},"description":"Program","type":"object"}}}}
```

## The Recommendation object

```json
{"openapi":"3.1.1","info":{"title":"Rabbit Recommendations API","version":"1.0"},"components":{"schemas":{"Recommendation":{"title":"Recommendation","properties":{"explanations":{"description":"List of reasons for recommendation.","type":"array","items":{"$ref":"#/components/schemas/Explanation"}},"score":{"description":"Quality of the recommendation relative to other recommendations.","type":"number","format":"float"},"program":{"$ref":"#/components/schemas/Program","description":"The ID and Type of IVA Program."}},"description":"Recommendation","type":"object"},"Explanation":{"title":"Explanation","properties":{"originator":{"description":"Origination of the explanation.","type":"string"},"type":{"description":"The granularity of recommendation match.","type":"string"},"message":{"type":"string"}},"description":"Explanation","type":"object"},"Program":{"title":"Program","properties":{"Id":{"description":"The ID of the program (show or movie)","type":"integer","format":"int64"},"Type":{"description":"The type of IVA program (show or movie).","type":"string"}},"description":"Program","type":"object"}}}}
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://knowledgebase.fabricdata.com/origin/apis-all/rabbit-recommendations-api-docs/models.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
