openapi: 3.0.3 info: title: Trakt Calendars Checkin 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: Checkin description: Lightweight social "now watching" check-ins. paths: /checkin: post: tags: - Checkin operationId: createCheckin summary: Check Into An Item description: Check into a movie or episode. Sets the watching status; auto-expires after the runtime elapses. requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/CheckinRequest' responses: '201': description: Checkin created. '409': description: Already checked in (conflict). delete: tags: - Checkin operationId: deleteCheckin summary: Delete Any Active Checkins responses: '204': description: Active checkin cancelled. components: schemas: Episode: type: object properties: season: type: integer number: type: integer title: type: string ids: $ref: '#/components/schemas/Ids' number_abs: type: integer nullable: true overview: type: string first_aired: type: string format: date-time nullable: true runtime: type: integer episode_type: type: string enum: - standard - series_premiere - season_premiere - mid_season_finale - mid_season_premiere - season_finale - series_finale 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 CheckinRequest: type: object properties: movie: $ref: '#/components/schemas/Movie' episode: $ref: '#/components/schemas/Episode' sharing: type: object properties: twitter: type: boolean mastodon: type: boolean tumblr: type: boolean message: type: string venue_id: type: string venue_name: type: string app_version: type: string app_date: type: string format: date 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).