openapi: 3.0.3 info: title: Trakt Calendars Recommendations API description: 'The Trakt API is a RESTful API for integrating TV show and movie tracking features into applications. It exposes Trakt''s media database, user watch history, lists, watchlists, ratings, comments, scrobbling, and recommendations. Authentication is OAuth 2.0 (Authorization Code and Device flows). This OpenAPI is a representative sampling of the full Trakt API v2 surface, covering authentication, movies, shows, episodes, seasons, people, search, users, sync, scrobble, checkin, lists, calendars, recommendations, comments, notes, and reference data. The canonical contract is the ts-rest router published at github.com/trakt/trakt-api. ' version: '2.0' contact: name: Trakt API Support url: https://forums.trakt.tv license: name: MIT url: https://opensource.org/licenses/MIT servers: - url: https://api.trakt.tv description: Production - url: https://api-staging.trakt.tv description: Staging security: - bearerAuth: [] tags: - name: Recommendations description: Personalized recommendations for movies and shows. paths: /recommendations/movies: get: tags: - Recommendations operationId: getMovieRecommendations summary: Get Movie Recommendations description: Personalized movie recommendations for a user. responses: '200': description: Recommended movies. content: application/json: schema: type: array items: $ref: '#/components/schemas/Movie' delete: tags: - Recommendations operationId: hideMovieRecommendation summary: Hide A Movie Recommendation responses: '204': description: Hidden. /recommendations/shows: get: tags: - Recommendations operationId: getShowRecommendations summary: Get Show Recommendations responses: '200': description: Recommended shows. content: application/json: schema: type: array items: $ref: '#/components/schemas/Show' components: schemas: Ids: type: object properties: trakt: type: integer slug: type: string imdb: type: string tmdb: type: integer tvdb: type: integer Movie: type: object properties: title: type: string year: type: integer ids: $ref: '#/components/schemas/Ids' tagline: type: string overview: type: string released: type: string format: date runtime: type: integer country: type: string trailer: type: string format: uri nullable: true homepage: type: string format: uri nullable: true rating: type: number votes: type: integer comment_count: type: integer updated_at: type: string format: date-time language: type: string languages: type: array items: type: string available_translations: type: array items: type: string genres: type: array items: type: string certification: type: string status: type: string enum: - released - in production - post production - planned - rumored - canceled Show: type: object properties: title: type: string year: type: integer ids: $ref: '#/components/schemas/Ids' overview: type: string first_aired: type: string format: date-time runtime: type: integer certification: type: string network: type: string country: type: string trailer: type: string format: uri nullable: true homepage: type: string format: uri nullable: true status: type: string enum: - returning series - continuing - in production - planned - upcoming - pilot - canceled - ended rating: type: number votes: type: integer comment_count: type: integer updated_at: type: string format: date-time language: type: string genres: type: array items: type: string aired_episodes: type: integer securitySchemes: bearerAuth: type: http scheme: bearer bearerFormat: JWT description: OAuth 2.0 access token from /oauth/token or /oauth/device/token. Send via Authorization header and required headers trakt-api-version (2) and trakt-api-key (client_id).