openapi: 3.0.1
info:
  title: STAPI
  version: 1.0.0
servers:
  - url: http://stapi.co/api/v1/rest
paths:
  '/animal':
    get:
      tags:
        - Animal
      description: Retrival of a single animal
      parameters:
        - name: uid
          in: query
          description: Animal unique ID
          required: true
          schema:
            type: string
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/AnimalFullResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/Error'
  '/animal/search':
    get:
      tags:
        - Animal
      description: Pagination over animals
      parameters:
        - name: pageNumber
          in: query
          description: Zero-based page number
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          description: Page size
          schema:
            type: integer
            format: int32
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/AnimalBaseResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/Error'
    post:
      tags:
        - Animal
      description: Searching animals
      parameters:
        - name: pageNumber
          in: query
          description: Zero-based page number
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          description: Page size
          schema:
            type: integer
            format: int32
        - name: sort
          in: query
          description: 'Sorting, serialized like this: fieldName,ASC;anotherFieldName,DESC'
          schema:
            type: string
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      requestBody:
        content:
          application/x-www-form-urlencoded:
            schema:
              properties:
                name:
                  type: string
                  description: Animal name
                earthAnimal:
                  type: boolean
                  description: Whether it should be an earth animal
                earthInsect:
                  type: boolean
                  description: Whether it should be an earth insect
                avian:
                  type: boolean
                  description: Whether it should be an avian
                canine:
                  type: boolean
                  description: Whether it should be a canine
                feline:
                  type: boolean
                  description: Whether it should be a feline
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/AnimalBaseResponse'
  '/astronomicalObject':
    get:
      tags:
        - AstronomicalObject
      description: Retrival of a single astronomical object
      parameters:
        - name: uid
          in: query
          description: Astronomical object's unique ID
          required: true
          schema:
            type: string
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/AstronomicalObjectFullResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/Error'
  '/astronomicalObject/search':
    get:
      tags:
        - AstronomicalObject
      description: Pagination over astronomical objects
      parameters:
        - name: pageNumber
          in: query
          description: Zero-based page number
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          description: Page size
          schema:
            type: integer
            format: int32
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/AstronomicalObjectBaseResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/Error'
    post:
      tags:
        - AstronomicalObject
      description: Searching astronomical objects
      parameters:
        - name: pageNumber
          in: query
          description: Zero-based page number
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          description: Page size
          schema:
            type: integer
            format: int32
        - name: sort
          in: query
          description: 'Sorting, serialized like this: fieldName,ASC;anotherFieldName,DESC'
          schema:
            type: string
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      requestBody:
        content:
          application/x-www-form-urlencoded:
            schema:
              properties:
                name:
                  type: string
                  description: Astronomical object name
                astronomicalObjectType:
                  type: string
                  description: Type of astronomical object
                locationUid:
                  type: string
                  description: Unique ID of astronomical object containing objects
                    being searched
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/AstronomicalObjectBaseResponse'
  '/book':
    get:
      tags:
        - Book
      description: Retrival of a single book
      parameters:
        - name: uid
          in: query
          description: Book unique ID
          required: true
          schema:
            type: string
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/BookFullResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/Error'
  '/book/search':
    get:
      tags:
        - Book
      description: Pagination over books
      parameters:
        - name: pageNumber
          in: query
          description: Zero-based page number
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          description: Page size
          schema:
            type: integer
            format: int32
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/BookBaseResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/Error'
    post:
      tags:
        - Book
      description: Searching books
      parameters:
        - name: pageNumber
          in: query
          description: Zero-based page number
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          description: Page size
          schema:
            type: integer
            format: int32
        - name: sort
          in: query
          description: 'Sorting, serialized like this: fieldName,ASC;anotherFieldName,DESC'
          schema:
            type: string
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      requestBody:
        content:
          application/x-www-form-urlencoded:
            schema:
              properties:
                title:
                  type: string
                  description: Book title
                publishedYearFrom:
                  type: integer
                  description: Starting year the book was published
                  format: int32
                publishedYearTo:
                  type: integer
                  description: Ending year the book was published
                  format: int32
                numberOfPagesFrom:
                  type: integer
                  description: Minimal number of pages
                  format: int32
                numberOfPagesTo:
                  type: integer
                  description: Maximal number of pages
                  format: int32
                stardateFrom:
                  type: number
                  description: Starting stardate of book story
                  format: float
                stardateTo:
                  type: number
                  description: Ending stardate of book story
                  format: float
                yearFrom:
                  type: integer
                  description: Starting year of book story
                  format: int32
                yearTo:
                  type: integer
                  description: Ending year of book story
                  format: int32
                novel:
                  type: boolean
                  description: Whether it should be a novel
                referenceBook:
                  type: boolean
                  description: Whether it should be a reference book
                biographyBook:
                  type: boolean
                  description: Whether it should be a biography book
                rolePlayingBook:
                  type: boolean
                  description: Whether it should be a role playing book
                eBook:
                  type: boolean
                  description: Whether it should be an e-book
                anthology:
                  type: boolean
                  description: Whether it should be an anthology
                novelization:
                  type: boolean
                  description: Whether it should be novelization
                audiobook:
                  type: boolean
                  description: Whether it should be an audiobook
                audiobookAbridged:
                  type: boolean
                  description: Whether it should be an audiobook, abridged
                audiobookPublishedYearFrom:
                  type: integer
                  description: Starting year the audiobook was published
                  format: int32
                audiobookPublishedYearTo:
                  type: integer
                  description: Ending year the audiobook was published
                  format: int32
                audiobookRunTimeFrom:
                  type: integer
                  description: Minimal audiobook run time, in minutes
                  format: int32
                audiobookRunTimeTo:
                  type: integer
                  description: Maximal audiobook run time, in minutes
                  format: int32
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/BookBaseResponse'
  '/bookCollection':
    get:
      tags:
        - BookCollection
      description: Retrival of a single book collection
      parameters:
        - name: uid
          in: query
          description: Book collection unique ID
          required: true
          schema:
            type: string
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/BookCollectionFullResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/Error'
  '/bookCollection/search':
    get:
      tags:
        - BookCollection
      description: Pagination over book collections
      parameters:
        - name: pageNumber
          in: query
          description: Zero-based page number
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          description: Page size
          schema:
            type: integer
            format: int32
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/BookCollectionBaseResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/Error'
    post:
      tags:
        - BookCollection
      description: Searching book collections
      parameters:
        - name: pageNumber
          in: query
          description: Zero-based page number
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          description: Page size
          schema:
            type: integer
            format: int32
        - name: sort
          in: query
          description: 'Sorting, serialized like this: fieldName,ASC;anotherFieldName,DESC'
          schema:
            type: string
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      requestBody:
        content:
          application/x-www-form-urlencoded:
            schema:
              properties:
                title:
                  type: string
                  description: Book collection title
                publishedYearFrom:
                  type: integer
                  description: Starting year the book collection was published
                  format: int32
                publishedYearTo:
                  type: integer
                  description: Ending year the book collection was published
                  format: int32
                numberOfPagesFrom:
                  type: integer
                  description: Minimal number of pages
                  format: int32
                numberOfPagesTo:
                  type: integer
                  description: Maximal number of pages
                  format: int32
                stardateFrom:
                  type: number
                  description: Starting stardate of book collection stories
                  format: float
                stardateTo:
                  type: number
                  description: Ending stardate of book collections stories
                  format: float
                yearFrom:
                  type: integer
                  description: Starting year of book collection stories
                  format: int32
                yearTo:
                  type: integer
                  description: Ending year of book collections stories
                  format: int32
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/BookCollectionBaseResponse'
  '/bookSeries':
    get:
      tags:
        - BookSeries
      description: Retrival of a single book series
      parameters:
        - name: uid
          in: query
          description: Book series unique ID
          required: true
          schema:
            type: string
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/BookSeriesFullResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/Error'
  '/bookSeries/search':
    get:
      tags:
        - BookSeries
      description: Pagination over book series
      parameters:
        - name: pageNumber
          in: query
          description: Zero-based page number
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          description: Page size
          schema:
            type: integer
            format: int32
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/BookSeriesBaseResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/Error'
    post:
      tags:
        - BookSeries
      description: Searching book series
      parameters:
        - name: pageNumber
          in: query
          description: Zero-based page number
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          description: Page size
          schema:
            type: integer
            format: int32
        - name: sort
          in: query
          description: 'Sorting, serialized like this: fieldName,ASC;anotherFieldName,DESC'
          schema:
            type: string
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      requestBody:
        content:
          application/x-www-form-urlencoded:
            schema:
              properties:
                title:
                  type: string
                  description: Book series title
                publishedYearFrom:
                  type: integer
                  description: Starting year the book series was published
                  format: int32
                publishedYearTo:
                  type: integer
                  description: Ending year the book series was published
                  format: int32
                numberOfBooksFrom:
                  type: integer
                  description: Minimal number of books
                  format: int32
                numberOfBooksTo:
                  type: integer
                  description: Maximal number of books
                  format: int32
                yearFrom:
                  type: integer
                  description: Starting year of book series stories
                  format: int32
                yearTo:
                  type: integer
                  description: Ending year of book series stories
                  format: int32
                miniseries:
                  type: boolean
                  description: Whether it should be a miniseries
                eBookSeries:
                  type: boolean
                  description: Whether it should be an e-book series
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/BookSeriesBaseResponse'
  '/character':
    get:
      tags:
        - Character
      description: Retrival of a single character
      parameters:
        - name: uid
          in: query
          description: Character unique ID
          required: true
          schema:
            type: string
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/CharacterFullResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/Error'
  '/character/search':
    get:
      tags:
        - Character
      description: Pagination over characters
      parameters:
        - name: pageNumber
          in: query
          description: Zero-based page number
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          description: Page size
          schema:
            type: integer
            format: int32
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/CharacterBaseResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/Error'
    post:
      tags:
        - Character
      description: Searching characters
      parameters:
        - name: pageNumber
          in: query
          description: Zero-based page number
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          description: Page size
          schema:
            type: integer
            format: int32
        - name: sort
          in: query
          description: 'Sorting, serialized like this: fieldName,ASC;anotherFieldName,DESC'
          schema:
            type: string
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      requestBody:
        content:
          application/x-www-form-urlencoded:
            schema:
              properties:
                name:
                  type: string
                  description: Character name
                gender:
                  type: string
                  description: Character gender
                deceased:
                  type: boolean
                  description: Whether it should be a deceased character
                hologram:
                  type: boolean
                  description: Whether it should be a hologram
                fictionalCharacter:
                  type: boolean
                  description: Whether it should be a fictional character (from universe
                    point of view)
                mirror:
                  type: boolean
                  description: Whether it should be a mirror universe character
                alternateReality:
                  type: boolean
                  description: Whether it should be a alternate reality character
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/CharacterBaseResponse'
  '/comics':
    get:
      tags:
        - Comics
      description: Retrival of a single comics
      parameters:
        - name: uid
          in: query
          description: Comics unique ID
          required: true
          schema:
            type: string
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/ComicsFullResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/Error'
  '/comics/search':
    get:
      tags:
        - Comics
      description: Pagination over comics
      parameters:
        - name: pageNumber
          in: query
          description: Zero-based page number
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          description: Page size
          schema:
            type: integer
            format: int32
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/ComicsBaseResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/Error'
    post:
      tags:
        - Comics
      description: Searching comics
      parameters:
        - name: pageNumber
          in: query
          description: Zero-based page number
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          description: Page size
          schema:
            type: integer
            format: int32
        - name: sort
          in: query
          description: 'Sorting, serialized like this: fieldName,ASC;anotherFieldName,DESC'
          schema:
            type: string
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      requestBody:
        content:
          application/x-www-form-urlencoded:
            schema:
              properties:
                title:
                  type: string
                  description: Comics title
                publishedYearFrom:
                  type: integer
                  description: Starting year the comics was published
                  format: int32
                publishedYearTo:
                  type: integer
                  description: Ending year the comics was published
                  format: int32
                numberOfPagesFrom:
                  type: integer
                  description: Minimal number of pages
                  format: int32
                numberOfPagesTo:
                  type: integer
                  description: Maximal number of pages
                  format: int32
                stardateFrom:
                  type: number
                  description: Starting stardate of comics story
                  format: float
                stardateTo:
                  type: number
                  description: Ending stardate of comics story
                  format: float
                yearFrom:
                  type: integer
                  description: Starting year of comics story
                  format: int32
                yearTo:
                  type: integer
                  description: Ending year of comics story
                  format: int32
                photonovel:
                  type: boolean
                  description: Whether it should be a photonovel
                adaptation:
                  type: boolean
                  description: Whether it should be an adaptation of an episode or
                    a movie
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/ComicsBaseResponse'
  '/comicCollection':
    get:
      tags:
        - ComicCollection
      description: Retrival of a single comic collection
      parameters:
        - name: uid
          in: query
          description: Comic collection unique ID
          required: true
          schema:
            type: string
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/ComicCollectionFullResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/Error'
  '/comicCollection/search':
    get:
      tags:
        - ComicCollection
      description: Pagination over comic collections
      parameters:
        - name: pageNumber
          in: query
          description: Zero-based page number
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          description: Page size
          schema:
            type: integer
            format: int32
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/ComicCollectionBaseResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/Error'
    post:
      tags:
        - ComicCollection
      description: Searching comic collections
      parameters:
        - name: pageNumber
          in: query
          description: Zero-based page number
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          description: Page size
          schema:
            type: integer
            format: int32
        - name: sort
          in: query
          description: 'Sorting, serialized like this: fieldName,ASC;anotherFieldName,DESC'
          schema:
            type: string
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      requestBody:
        content:
          application/x-www-form-urlencoded:
            schema:
              properties:
                title:
                  type: string
                  description: Comic collection title
                publishedYearFrom:
                  type: integer
                  description: Starting year the comic collection was published
                  format: int32
                publishedYearTo:
                  type: integer
                  description: Ending year the comic collection was published
                  format: int32
                numberOfPagesFrom:
                  type: integer
                  description: Minimal number of pages
                  format: int32
                numberOfPagesTo:
                  type: integer
                  description: Maximal number of pages
                  format: int32
                stardateFrom:
                  type: number
                  description: Starting stardate of comic collection stories
                  format: float
                stardateTo:
                  type: number
                  description: Ending stardate of comic collections stories
                  format: float
                yearFrom:
                  type: integer
                  description: Starting year of comic collection stories
                  format: int32
                yearTo:
                  type: integer
                  description: Ending year of comic collections stories
                  format: int32
                photonovel:
                  type: boolean
                  description: Whether it should be an photonovel collection
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/ComicCollectionBaseResponse'
  '/comicSeries':
    get:
      tags:
        - ComicSeries
      description: Retrival of a single comic series
      parameters:
        - name: uid
          in: query
          description: Comic series unique ID
          required: true
          schema:
            type: string
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/ComicSeriesFullResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/Error'
  '/comicSeries/search':
    get:
      tags:
        - ComicSeries
      description: Pagination over comic series
      parameters:
        - name: pageNumber
          in: query
          description: Zero-based page number
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          description: Page size
          schema:
            type: integer
            format: int32
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/ComicSeriesBaseResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/Error'
    post:
      tags:
        - ComicSeries
      description: Searching comic series
      parameters:
        - name: pageNumber
          in: query
          description: Zero-based page number
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          description: Page size
          schema:
            type: integer
            format: int32
        - name: sort
          in: query
          description: 'Sorting, serialized like this: fieldName,ASC;anotherFieldName,DESC'
          schema:
            type: string
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      requestBody:
        content:
          application/x-www-form-urlencoded:
            schema:
              properties:
                title:
                  type: string
                  description: Comic series title
                publishedYearFrom:
                  type: integer
                  description: Starting year the comic series was published
                  format: int32
                publishedYearTo:
                  type: integer
                  description: Ending year the comic series was published
                  format: int32
                numberOfIssuesFrom:
                  type: integer
                  description: Minimal number of issues
                  format: int32
                numberOfIssuesTo:
                  type: integer
                  description: Maximal number of issues
                  format: int32
                stardateFrom:
                  type: number
                  description: Starting stardate of comic series stories
                  format: float
                stardateTo:
                  type: number
                  description: Starting stardate of comic series stories
                  format: float
                yearFrom:
                  type: integer
                  description: Starting year of comic series stories
                  format: int32
                yearTo:
                  type: integer
                  description: Ending year of comic series stories
                  format: int32
                miniseries:
                  type: boolean
                  description: Whether it should be a miniseries
                photonovelSeries:
                  type: boolean
                  description: Whether it should be photonovel series
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/ComicSeriesBaseResponse'
  '/comicStrip':
    get:
      tags:
        - ComicStrip
      description: Retrival of a single comic strip
      parameters:
        - name: uid
          in: query
          description: Comic strip unique ID
          required: true
          schema:
            type: string
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/ComicStripFullResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/Error'
  '/comicStrip/search':
    get:
      tags:
        - ComicStrip
      description: Pagination over comic strips
      parameters:
        - name: pageNumber
          in: query
          description: Zero-based page number
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          description: Page size
          schema:
            type: integer
            format: int32
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/ComicStripBaseResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/Error'
    post:
      tags:
        - ComicStrip
      description: Searching comic strips
      parameters:
        - name: pageNumber
          in: query
          description: Zero-based page number
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          description: Page size
          schema:
            type: integer
            format: int32
        - name: sort
          in: query
          description: 'Sorting, serialized like this: fieldName,ASC;anotherFieldName,DESC'
          schema:
            type: string
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      requestBody:
        content:
          application/x-www-form-urlencoded:
            schema:
              properties:
                title:
                  type: string
                  description: Comic strip title
                publishedYearFrom:
                  type: integer
                  description: Starting year the comic strip was published
                  format: int32
                publishedYearTo:
                  type: integer
                  description: Ending year the comic strip was published
                  format: int32
                numberOfPagesFrom:
                  type: integer
                  description: Minimal number of pages
                  format: int32
                numberOfPagesTo:
                  type: integer
                  description: Maximal number of pages
                  format: int32
                yearFrom:
                  type: integer
                  description: Starting year of comic strip story
                  format: int32
                yearTo:
                  type: integer
                  description: Ending year of comic strip story
                  format: int32
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/ComicStripBaseResponse'
  '/company':
    get:
      tags:
        - Company
      description: Retrival of a single company
      parameters:
        - name: uid
          in: query
          description: Company unique ID
          required: true
          schema:
            type: string
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/CompanyFullResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/Error'
  '/company/search':
    get:
      tags:
        - Company
      description: Pagination over companies
      parameters:
        - name: pageNumber
          in: query
          description: Zero-based page number
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          description: Page size
          schema:
            type: integer
            format: int32
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/CompanyBaseResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/Error'
    post:
      tags:
        - Company
      description: Searching companies
      parameters:
        - name: pageNumber
          in: query
          description: Zero-based page number
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          description: Page size
          schema:
            type: integer
            format: int32
        - name: sort
          in: query
          description: 'Sorting, serialized like this: fieldName,ASC;anotherFieldName,DESC'
          schema:
            type: string
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      requestBody:
        content:
          application/x-www-form-urlencoded:
            schema:
              properties:
                name:
                  type: string
                  description: Company name
                broadcaster:
                  type: boolean
                  description: Whether it should be a broadcaster
                collectibleCompany:
                  type: boolean
                  description: Whether it should be a collectible company
                conglomerate:
                  type: boolean
                  description: Whether it should be a conglomerate
                digitalVisualEffectsCompany:
                  type: boolean
                  description: Whether it should be a digital visual effects company
                distributor:
                  type: boolean
                  description: Whether it should be a distributor
                gameCompany:
                  type: boolean
                  description: Whether it should be a game company
                filmEquipmentCompany:
                  type: boolean
                  description: Whether it should be a film equipment company
                makeUpEffectsStudio:
                  type: boolean
                  description: Whether it should be a make-up effects studio
                mattePaintingCompany:
                  type: boolean
                  description: Whether it should be a matte painting company
                modelAndMiniatureEffectsCompany:
                  type: boolean
                  description: Whether it should be a model and miniature effects
                    company
                postProductionCompany:
                  type: boolean
                  description: Whether it should be a post-production company
                productionCompany:
                  type: boolean
                  description: Whether it should be a production company
                propCompany:
                  type: boolean
                  description: Whether it should be a prop company
                recordLabel:
                  type: boolean
                  description: Whether it should be a record label
                specialEffectsCompany:
                  type: boolean
                  description: Whether it should be a special effects company
                tvAndFilmProductionCompany:
                  type: boolean
                  description: Whether it should be a TV and film production company
                videoGameCompany:
                  type: boolean
                  description: Whether it should be a video game company
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/CompanyBaseResponse'
  '/conflict':
    get:
      tags:
        - Conflict
      description: Retrival of a single conflict
      parameters:
        - name: uid
          in: query
          description: Conflict unique ID
          required: true
          schema:
            type: string
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/ConflictFullResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/Error'
  '/conflict/search':
    get:
      tags:
        - Conflict
      description: Pagination over conflicts
      parameters:
        - name: pageNumber
          in: query
          description: Zero-based page number
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          description: Page size
          schema:
            type: integer
            format: int32
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/ConflictBaseResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/Error'
    post:
      tags:
        - Conflict
      description: Searching conflicts
      parameters:
        - name: pageNumber
          in: query
          description: Zero-based page number
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          description: Page size
          schema:
            type: integer
            format: int32
        - name: sort
          in: query
          description: 'Sorting, serialized like this: fieldName,ASC;anotherFieldName,DESC'
          schema:
            type: string
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      requestBody:
        content:
          application/x-www-form-urlencoded:
            schema:
              properties:
                name:
                  type: string
                  description: Conflict name
                yearFrom:
                  type: integer
                  description: Starting year of the conflict
                  format: int32
                yearTo:
                  type: integer
                  description: Ending year of the conflict
                  format: int32
                earthConflict:
                  type: boolean
                  description: Whether it should be an Earth conflict
                federationWar:
                  type: boolean
                  description: Whether this conflict should be a part of war involving
                    Federation
                klingonWar:
                  type: boolean
                  description: Whether this conflict should be a part of war involving
                    the Klingons
                dominionWarBattle:
                  type: boolean
                  description: Whether this conflict should be a Dominion war battle
                alternateReality:
                  type: boolean
                  description: Whether this conflict should be from alternate reality
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/ConflictBaseResponse'
  '/element':
    get:
      tags:
        - Element
      description: Retrival of a single element
      parameters:
        - name: uid
          in: query
          description: Element unique ID
          required: true
          schema:
            type: string
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/ElementFullResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/Error'
  '/element/search':
    get:
      tags:
        - Element
      description: Pagination over elements
      parameters:
        - name: pageNumber
          in: query
          description: Zero-based page number
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          description: Page size
          schema:
            type: integer
            format: int32
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/ElementBaseResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/Error'
    post:
      tags:
        - Element
      description: Searching elements
      parameters:
        - name: pageNumber
          in: query
          description: Zero-based page number
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          description: Page size
          schema:
            type: integer
            format: int32
        - name: sort
          in: query
          description: 'Sorting, serialized like this: fieldName,ASC;anotherFieldName,DESC'
          schema:
            type: string
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      requestBody:
        content:
          application/x-www-form-urlencoded:
            schema:
              properties:
                name:
                  type: string
                  description: Element name
                symbol:
                  type: string
                  description: Element symbol
                transuranium:
                  type: boolean
                  description: Whether it should be a transuranium
                gammaSeries:
                  type: boolean
                  description: Whether it should belong to Gamma series
                hypersonicSeries:
                  type: boolean
                  description: Whether it should belong to Hypersonic series
                megaSeries:
                  type: boolean
                  description: Whether it should belong to Mega series
                omegaSeries:
                  type: boolean
                  description: Whether it should belong to Omega series
                transonicSeries:
                  type: boolean
                  description: Whether it should belong to Transonic series
                worldSeries:
                  type: boolean
                  description: Whether it should belong to World series
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/ElementBaseResponse'
  '/episode':
    get:
      tags:
        - Episode
      description: Retrival of a single episode
      parameters:
        - name: uid
          in: query
          description: Episode unique ID
          required: true
          schema:
            type: string
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/EpisodeFullResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/Error'
  '/episode/search':
    get:
      tags:
        - Episode
      description: Pagination over episodes
      parameters:
        - name: pageNumber
          in: query
          description: Zero-based page number
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          description: Page size
          schema:
            type: integer
            format: int32
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/EpisodeBaseResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/Error'
    post:
      tags:
        - Episode
      description: Searching episodes
      parameters:
        - name: pageNumber
          in: query
          description: Zero-based page number
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          description: Page size
          schema:
            type: integer
            format: int32
        - name: sort
          in: query
          description: 'Sorting, serialized like this: fieldName,ASC;anotherFieldName,DESC'
          schema:
            type: string
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      requestBody:
        content:
          application/x-www-form-urlencoded:
            schema:
              properties:
                title:
                  type: string
                  description: Episode title
                seasonNumberFrom:
                  type: integer
                  description: Minimal season number
                  format: int32
                seasonNumberTo:
                  type: integer
                  description: Maximal season number
                  format: int32
                episodeNumberFrom:
                  type: integer
                  description: Minimal episode number in season
                  format: int32
                episodeNumberTo:
                  type: integer
                  description: Maximal episode number in season
                  format: int32
                productionSerialNumber:
                  type: string
                  description: Production serial number
                featureLength:
                  type: boolean
                  description: Whether it should be a feature length episode
                stardateFrom:
                  type: number
                  description: Starting stardate of episode story
                  format: float
                stardateTo:
                  type: number
                  description: Ending stardate of episode story
                  format: float
                yearFrom:
                  type: integer
                  description: Starting year of episode story
                  format: int32
                yearTo:
                  type: integer
                  description: Ending year of episode story
                  format: int32
                usAirDateFrom:
                  type: string
                  description: Minimal date the episode was first aired in the United
                    States
                  format: date
                usAirDateTo:
                  type: string
                  description: Maximal date the episode was first aired in the United
                    States
                  format: date
                finalScriptDateFrom:
                  type: string
                  description: Minimal date the episode script was completed
                  format: date
                finalScriptDateTo:
                  type: string
                  description: Maximal date the episode script was completed
                  format: date
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/EpisodeBaseResponse'
  '/food':
    get:
      tags:
        - Food
      description: Retrival of a single food
      parameters:
        - name: uid
          in: query
          description: Food unique ID
          required: true
          schema:
            type: string
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/FoodFullResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/Error'
  '/food/search':
    get:
      tags:
        - Food
      description: Pagination over foods
      parameters:
        - name: pageNumber
          in: query
          description: Zero-based page number
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          description: Page size
          schema:
            type: integer
            format: int32
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/FoodBaseResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/Error'
    post:
      tags:
        - Food
      description: Searching foods
      parameters:
        - name: pageNumber
          in: query
          description: Zero-based page number
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          description: Page size
          schema:
            type: integer
            format: int32
        - name: sort
          in: query
          description: 'Sorting, serialized like this: fieldName,ASC;anotherFieldName,DESC'
          schema:
            type: string
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      requestBody:
        content:
          application/x-www-form-urlencoded:
            schema:
              properties:
                name:
                  type: string
                  description: Food name
                earthlyOrigin:
                  type: boolean
                  description: Whether it should be of earthly origin
                dessert:
                  type: boolean
                  description: Whether it should be a dessert
                fruit:
                  type: boolean
                  description: Whether it should be a fruit
                herbOrSpice:
                  type: boolean
                  description: Whether it should be an herb or a spice
                sauce:
                  type: boolean
                  description: Whether it should be a sauce
                soup:
                  type: boolean
                  description: Whether it should be a soup
                beverage:
                  type: boolean
                  description: Whether it should be a beverage
                alcoholicBeverage:
                  type: boolean
                  description: Whether it should be an alcoholic beverage
                juice:
                  type: boolean
                  description: Whether it should be a juice
                tea:
                  type: boolean
                  description: Whether it should be a tea
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/FoodBaseResponse'
  '/literature':
    get:
      tags:
        - Literature
      description: Retrival of a single literature
      parameters:
        - name: uid
          in: query
          description: Literature unique ID
          required: true
          schema:
            type: string
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/LiteratureFullResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/Error'
  '/literature/search':
    get:
      tags:
        - Literature
      description: Pagination over literature
      parameters:
        - name: pageNumber
          in: query
          description: Zero-based page number
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          description: Page size
          schema:
            type: integer
            format: int32
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/LiteratureBaseResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/Error'
    post:
      tags:
        - Literature
      description: Searching literature
      parameters:
        - name: pageNumber
          in: query
          description: Zero-based page number
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          description: Page size
          schema:
            type: integer
            format: int32
        - name: sort
          in: query
          description: 'Sorting, serialized like this: fieldName,ASC;anotherFieldName,DESC'
          schema:
            type: string
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      requestBody:
        content:
          application/x-www-form-urlencoded:
            schema:
              properties:
                title:
                  type: string
                  description: Literature title
                earthlyOrigin:
                  type: boolean
                  description: Whether it should be of earthly origin
                shakespeareanWork:
                  type: boolean
                  description: Whether it should be a Shakespearean work
                report:
                  type: boolean
                  description: Whether it should be a report
                scientificLiterature:
                  type: boolean
                  description: Whether it should be a scientific literature
                technicalManual:
                  type: boolean
                  description: Whether it should be a technical manual
                religiousLiterature:
                  type: boolean
                  description: Whether it should be a religious literature
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/LiteratureBaseResponse'
  '/location':
    get:
      tags:
        - Location
      description: Retrival of a single location
      parameters:
        - name: uid
          in: query
          description: Location unique ID
          required: true
          schema:
            type: string
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/LocationFullResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/Error'
  '/location/search':
    get:
      tags:
        - Location
      description: Pagination over locations
      parameters:
        - name: pageNumber
          in: query
          description: Zero-based page number
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          description: Page size
          schema:
            type: integer
            format: int32
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/LocationBaseResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/Error'
    post:
      tags:
        - Location
      description: Searching locations
      parameters:
        - name: pageNumber
          in: query
          description: Zero-based page number
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          description: Page size
          schema:
            type: integer
            format: int32
        - name: sort
          in: query
          description: 'Sorting, serialized like this: fieldName,ASC;anotherFieldName,DESC'
          schema:
            type: string
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      requestBody:
        content:
          application/x-www-form-urlencoded:
            schema:
              properties:
                name:
                  type: string
                  description: Location name
                earthlyLocation:
                  type: boolean
                  description: Whether it should be an earthly location
                fictionalLocation:
                  type: boolean
                  description: Whether it should be a fictional location
                religiousLocation:
                  type: boolean
                  description: Whether it should be a religious location
                geographicalLocation:
                  type: boolean
                  description: Whether it should be a geographical location
                bodyOfWater:
                  type: boolean
                  description: Whether it should be a body of water
                country:
                  type: boolean
                  description: Whether it should be a country
                subnationalEntity:
                  type: boolean
                  description: Whether it should be a subnational entity
                settlement:
                  type: boolean
                  description: Whether it should be a settlement
                usSettlement:
                  type: boolean
                  description: Whether it should be a US settlement
                bajoranSettlement:
                  type: boolean
                  description: Whether it should be a Bajoran settlement
                colony:
                  type: boolean
                  description: Whether it should be a colony
                landform:
                  type: boolean
                  description: Whether it should be a landform
                landmark:
                  type: boolean
                  description: Whether it should be a landmark
                road:
                  type: boolean
                  description: Whether it should be a road
                structure:
                  type: boolean
                  description: Whether it should be a structure
                shipyard:
                  type: boolean
                  description: Whether it should be a shipyard
                buildingInterior:
                  type: boolean
                  description: Whether it should be a building interior
                establishment:
                  type: boolean
                  description: Whether it should be a establishment
                medicalEstablishment:
                  type: boolean
                  description: Whether it should be a medical establishment
                ds9Establishment:
                  type: boolean
                  description: Whether it should be a DS9 establishment
                school:
                  type: boolean
                  description: Whether it should be a school
                mirror:
                  type: boolean
                  description: Whether this location should be from mirror universe
                alternateReality:
                  type: boolean
                  description: Whether this location should be from alternate reality
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/LocationBaseResponse'
  '/magazine':
    get:
      tags:
        - Magazine
      description: Retrival of a single magazine
      parameters:
        - name: uid
          in: query
          description: Magazine unique ID
          required: true
          schema:
            type: string
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/MagazineFullResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/Error'
  '/magazine/search':
    get:
      tags:
        - Magazine
      description: Pagination over magazines
      parameters:
        - name: pageNumber
          in: query
          description: Zero-based page number
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          description: Page size
          schema:
            type: integer
            format: int32
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/MagazineBaseResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/Error'
    post:
      tags:
        - Magazine
      description: Searching magazines
      parameters:
        - name: pageNumber
          in: query
          description: Zero-based page number
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          description: Page size
          schema:
            type: integer
            format: int32
        - name: sort
          in: query
          description: 'Sorting, serialized like this: fieldName,ASC;anotherFieldName,DESC'
          schema:
            type: string
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      requestBody:
        content:
          application/x-www-form-urlencoded:
            schema:
              properties:
                title:
                  type: string
                  description: Magazine title
                publishedYearFrom:
                  type: integer
                  description: Starting year the magazine was published
                  format: int32
                publishedYearTo:
                  type: integer
                  description: Ending year the magazine was published
                  format: int32
                numberOfPagesFrom:
                  type: integer
                  description: Minimal number of pages
                  format: int32
                numberOfPagesTo:
                  type: integer
                  description: Maximal number of pages
                  format: int32
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/MagazineBaseResponse'
  '/magazineSeries':
    get:
      tags:
        - MagazineSeries
      description: Retrival of a single magazine series
      parameters:
        - name: uid
          in: query
          description: Magazine series unique ID
          required: true
          schema:
            type: string
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/MagazineSeriesFullResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/Error'
  '/magazineSeries/search':
    get:
      tags:
        - MagazineSeries
      description: Pagination over magazine series
      parameters:
        - name: pageNumber
          in: query
          description: Zero-based page number
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          description: Page size
          schema:
            type: integer
            format: int32
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/MagazineSeriesBaseResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/Error'
    post:
      tags:
        - MagazineSeries
      description: Searching magazine series
      parameters:
        - name: pageNumber
          in: query
          description: Zero-based page number
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          description: Page size
          schema:
            type: integer
            format: int32
        - name: sort
          in: query
          description: 'Sorting, serialized like this: fieldName,ASC;anotherFieldName,DESC'
          schema:
            type: string
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      requestBody:
        content:
          application/x-www-form-urlencoded:
            schema:
              properties:
                title:
                  type: string
                  description: Magazine series title
                publishedYearFrom:
                  type: integer
                  description: Starting year the magazine series was published
                  format: int32
                publishedYearTo:
                  type: integer
                  description: Ending year the magazine series was published
                  format: int32
                numberOfIssuesFrom:
                  type: integer
                  description: Minimal number of issues
                  format: int32
                numberOfIssuesTo:
                  type: integer
                  description: Maximal number of issues
                  format: int32
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/MagazineSeriesBaseResponse'
  '/material':
    get:
      tags:
        - Material
      description: Retrival of a single material
      parameters:
        - name: uid
          in: query
          description: Material unique ID
          required: true
          schema:
            type: string
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/MaterialFullResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/Error'
  '/material/search':
    get:
      tags:
        - Material
      description: Pagination over materials
      parameters:
        - name: pageNumber
          in: query
          description: Zero-based page number
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          description: Page size
          schema:
            type: integer
            format: int32
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/MaterialBaseResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/Error'
    post:
      tags:
        - Material
      description: Searching materials
      parameters:
        - name: pageNumber
          in: query
          description: Zero-based page number
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          description: Page size
          schema:
            type: integer
            format: int32
        - name: sort
          in: query
          description: 'Sorting, serialized like this: fieldName,ASC;anotherFieldName,DESC'
          schema:
            type: string
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      requestBody:
        content:
          application/x-www-form-urlencoded:
            schema:
              properties:
                name:
                  type: string
                  description: Material name
                chemicalCompound:
                  type: boolean
                  description: Whether it should be a chemical compound
                biochemicalCompound:
                  type: boolean
                  description: Whether it should be a biochemical compound
                drug:
                  type: boolean
                  description: Whether it should be a drug
                poisonousSubstance:
                  type: boolean
                  description: Whether it should be a poisonous substance
                explosive:
                  type: boolean
                  description: Whether it should be an explosive
                gemstone:
                  type: boolean
                  description: Whether it should be a gemstone
                alloyOrComposite:
                  type: boolean
                  description: Whether it should be an alloy or a composite
                fuel:
                  type: boolean
                  description: Whether it should be a fuel
                mineral:
                  type: boolean
                  description: Whether it should be a mineral
                preciousMaterial:
                  type: boolean
                  description: Whether it should be a precious material
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/MaterialBaseResponse'
  '/medicalCondition':
    get:
      tags:
        - MedicalCondition
      description: Retrival of a single medical condition
      parameters:
        - name: uid
          in: query
          description: Medical condition unique ID
          required: true
          schema:
            type: string
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/MedicalConditionFullResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/Error'
  '/medicalCondition/search':
    get:
      tags:
        - MedicalCondition
      description: Pagination over medical conditions
      parameters:
        - name: pageNumber
          in: query
          description: Zero-based page number
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          description: Page size
          schema:
            type: integer
            format: int32
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/MedicalConditionBaseResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/Error'
    post:
      tags:
        - MedicalCondition
      description: Searching medical conditions
      parameters:
        - name: pageNumber
          in: query
          description: Zero-based page number
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          description: Page size
          schema:
            type: integer
            format: int32
        - name: sort
          in: query
          description: 'Sorting, serialized like this: fieldName,ASC;anotherFieldName,DESC'
          schema:
            type: string
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      requestBody:
        content:
          application/x-www-form-urlencoded:
            schema:
              properties:
                name:
                  type: string
                  description: Medical condition name
                psychologicalCondition:
                  type: boolean
                  description: Whether it should be a psychological condition
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/MedicalConditionBaseResponse'
  '/movie':
    get:
      tags:
        - Movie
      description: Retrival of a single movie
      parameters:
        - name: uid
          in: query
          description: Movie unique ID
          required: true
          schema:
            type: string
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/MovieFullResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/Error'
  '/movie/search':
    get:
      tags:
        - Movie
      description: Pagination over movies
      parameters:
        - name: pageNumber
          in: query
          description: Zero-based page number
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          description: Page size
          schema:
            type: integer
            format: int32
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/MovieBaseResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/Error'
    post:
      tags:
        - Movie
      description: Searching movies
      parameters:
        - name: pageNumber
          in: query
          description: Zero-based page number
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          description: Page size
          schema:
            type: integer
            format: int32
        - name: sort
          in: query
          description: 'Sorting, serialized like this: fieldName,ASC;anotherFieldName,DESC'
          schema:
            type: string
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      requestBody:
        content:
          application/x-www-form-urlencoded:
            schema:
              properties:
                title:
                  type: string
                  description: Movie title
                stardateFrom:
                  type: number
                  description: Starting stardate of movie story
                  format: float
                stardateTo:
                  type: number
                  description: Ending stardate of movie story
                  format: float
                yearFrom:
                  type: integer
                  description: Starting year of movie story
                  format: int32
                yearTo:
                  type: integer
                  description: Ending year of movie story
                  format: int32
                usReleaseDateFrom:
                  type: string
                  description: Minimal date the movie was first released in the United
                    States
                  format: date
                usReleaseDateTo:
                  type: string
                  description: Maximal date the movie was first released in the United
                    States
                  format: date
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/MovieBaseResponse'
  '/occupation':
    get:
      tags:
        - Occupation
      description: Retrival of a single occupation
      parameters:
        - name: uid
          in: query
          description: Occupation unique ID
          required: true
          schema:
            type: string
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/OccupationFullResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/Error'
  '/occupation/search':
    get:
      tags:
        - Occupation
      description: Pagination over occupations
      parameters:
        - name: pageNumber
          in: query
          description: Zero-based page number
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          description: Page size
          schema:
            type: integer
            format: int32
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/OccupationBaseResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/Error'
    post:
      tags:
        - Occupation
      description: Searching occupations
      parameters:
        - name: pageNumber
          in: query
          description: Zero-based page number
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          description: Page size
          schema:
            type: integer
            format: int32
        - name: sort
          in: query
          description: 'Sorting, serialized like this: fieldName,ASC;anotherFieldName,DESC'
          schema:
            type: string
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      requestBody:
        content:
          application/x-www-form-urlencoded:
            schema:
              properties:
                name:
                  type: string
                  description: Occupation name
                legalOccupation:
                  type: boolean
                  description: Whether it should be a legal occupation
                medicalOccupation:
                  type: boolean
                  description: Whether it should be a medical occupation
                scientificOccupation:
                  type: boolean
                  description: Whether it should be a scientific occupation
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/OccupationBaseResponse'
  '/organization':
    get:
      tags:
        - Organization
      description: Retrival of a single organization
      parameters:
        - name: uid
          in: query
          description: Organization unique ID
          required: true
          schema:
            type: string
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/OrganizationFullResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/Error'
  '/organization/search':
    get:
      tags:
        - Organization
      description: Pagination over organizations
      parameters:
        - name: pageNumber
          in: query
          description: Zero-based page number
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          description: Page size
          schema:
            type: integer
            format: int32
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/OrganizationBaseResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/Error'
    post:
      tags:
        - Organization
      description: Searching organizations
      parameters:
        - name: pageNumber
          in: query
          description: Zero-based page number
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          description: Page size
          schema:
            type: integer
            format: int32
        - name: sort
          in: query
          description: 'Sorting, serialized like this: fieldName,ASC;anotherFieldName,DESC'
          schema:
            type: string
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      requestBody:
        content:
          application/x-www-form-urlencoded:
            schema:
              properties:
                name:
                  type: string
                  description: Organization name
                government:
                  type: boolean
                  description: Whether it should be a government
                intergovernmentalOrganization:
                  type: boolean
                  description: Whether it should be an intergovernmental organization
                researchOrganization:
                  type: boolean
                  description: Whether it should be a research organization
                sportOrganization:
                  type: boolean
                  description: Whether it should be a sport organization
                medicalOrganization:
                  type: boolean
                  description: Whether it should be a medical organization
                militaryOrganization:
                  type: boolean
                  description: Whether it should be a military organization
                militaryUnit:
                  type: boolean
                  description: Whether it should be a military unit
                governmentAgency:
                  type: boolean
                  description: Whether it should be a government agency
                lawEnforcementAgency:
                  type: boolean
                  description: Whether it should be a law enforcement agency
                prisonOrPenalColony:
                  type: boolean
                  description: Whether it should be a prison or penal colony
                mirror:
                  type: boolean
                  description: Whether this organization should be from mirror universe
                alternateReality:
                  type: boolean
                  description: Whether this organization should be from alternate
                    reality
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/OrganizationBaseResponse'
  '/performer':
    get:
      tags:
        - Performer
      description: Retrival of a single performer
      parameters:
        - name: uid
          in: query
          description: Performer unique ID
          required: true
          schema:
            type: string
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/PerformerFullResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/Error'
  '/performer/search':
    get:
      tags:
        - Performer
      description: Pagination over performers
      parameters:
        - name: pageNumber
          in: query
          description: Zero-based page number
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          description: Page size
          schema:
            type: integer
            format: int32
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/PerformerBaseResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/Error'
    post:
      tags:
        - Performer
      description: Searching performers
      parameters:
        - name: pageNumber
          in: query
          description: Zero-based page number
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          description: Page size
          schema:
            type: integer
            format: int32
        - name: sort
          in: query
          description: 'Sorting, serialized like this: fieldName,ASC;anotherFieldName,DESC'
          schema:
            type: string
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      requestBody:
        content:
          application/x-www-form-urlencoded:
            schema:
              properties:
                name:
                  type: string
                  description: Performer name
                birthName:
                  type: string
                  description: Performer birth name
                gender:
                  type: string
                  description: Performer gender
                dateOfBirthFrom:
                  type: string
                  description: Minimal date the performer was born
                  format: date
                dateOfBirthTo:
                  type: string
                  description: Maximal date the performer was born
                  format: date
                placeOfBirth:
                  type: string
                  description: Place the performer was born
                dateOfDeathFrom:
                  type: string
                  description: Minimal date the performer died
                  format: date
                dateOfDeathTo:
                  type: string
                  description: Maximal date the performer died
                  format: date
                placeOfDeath:
                  type: string
                  description: Place the performer died
                animalPerformer:
                  type: boolean
                  description: Whether it should be an animal performer
                disPerformer:
                  type: boolean
                  description: 'Whether it should be a performer that appeared in
                    Star Trek: Discovery'
                ds9Performer:
                  type: boolean
                  description: 'Whether it should be a performer that appeared in
                    Star Trek: Deep Space Nine'
                entPerformer:
                  type: boolean
                  description: 'Whether it should be a performer that appeared in
                    Star Trek: Enterprise'
                filmPerformer:
                  type: boolean
                  description: Whether it should be a performer that appeared in a
                    Star Trek movie
                standInPerformer:
                  type: boolean
                  description: Whether it should be a stand-in performer
                stuntPerformer:
                  type: boolean
                  description: Whether it should be a stunt performer
                tasPerformer:
                  type: boolean
                  description: 'Whether it should be a performer that appeared in
                    Star Trek: The Animated Series'
                tngPerformer:
                  type: boolean
                  description: 'Whether it should be a performer that appeared in
                    Star Trek: The Next Generation'
                tosPerformer:
                  type: boolean
                  description: 'Whether it should be a performer that appeared in
                    Star Trek: The Original Series'
                videoGamePerformer:
                  type: boolean
                  description: Whether it should be a video game performer
                voicePerformer:
                  type: boolean
                  description: Whether it should be a voice performer
                voyPerformer:
                  type: boolean
                  description: 'Whether it should be a performer that appeared in
                    Star Trek: Voyager'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/PerformerBaseResponse'
  '/season':
    get:
      tags:
        - Season
      description: Retrival of a single season
      parameters:
        - name: uid
          in: query
          description: Season unique ID
          required: true
          schema:
            type: string
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/SeasonFullResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/Error'
  '/season/search':
    get:
      tags:
        - Season
      description: Pagination over seasons
      parameters:
        - name: pageNumber
          in: query
          description: Zero-based page number
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          description: Page size
          schema:
            type: integer
            format: int32
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/SeasonBaseResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/Error'
    post:
      tags:
        - Season
      description: Searching seasons
      parameters:
        - name: pageNumber
          in: query
          description: Zero-based page number
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          description: Page size
          schema:
            type: integer
            format: int32
        - name: sort
          in: query
          description: 'Sorting, serialized like this: fieldName,ASC;anotherFieldName,DESC'
          schema:
            type: string
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      requestBody:
        content:
          application/x-www-form-urlencoded:
            schema:
              properties:
                title:
                  type: string
                  description: Season title
                seasonNumberFrom:
                  type: integer
                  description: Minimal season number
                  format: int32
                seasonNumberTo:
                  type: integer
                  description: Maximal season number
                  format: int32
                numberOfEpisodesFrom:
                  type: integer
                  description: Minimal number of episodes in season
                  format: int32
                numberOfEpisodesTo:
                  type: integer
                  description: Maximal number of episodes in season
                  format: int32
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/SeasonBaseResponse'
  '/series':
    get:
      tags:
        - Series
      description: Retrival of a single series
      parameters:
        - name: uid
          in: query
          description: Series unique ID
          required: true
          schema:
            type: string
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/SeriesFullResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/Error'
  '/series/search':
    get:
      tags:
        - Series
      description: Pagination over series
      parameters:
        - name: pageNumber
          in: query
          description: Zero-based page number
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          description: Page size
          schema:
            type: integer
            format: int32
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/SeriesBaseResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/Error'
    post:
      tags:
        - Series
      description: Searching series
      parameters:
        - name: pageNumber
          in: query
          description: Zero-based page number
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          description: Page size
          schema:
            type: integer
            format: int32
        - name: sort
          in: query
          description: 'Sorting, serialized like this: fieldName,ASC;anotherFieldName,DESC'
          schema:
            type: string
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      requestBody:
        content:
          application/x-www-form-urlencoded:
            schema:
              properties:
                title:
                  type: string
                  description: Series title
                abbreviation:
                  type: string
                  description: Series abbreviation
                productionStartYearFrom:
                  type: integer
                  description: Minimal year the series production started
                  format: int32
                productionStartYearTo:
                  type: integer
                  description: Maximal year the series production started
                  format: int32
                productionEndYearFrom:
                  type: integer
                  description: Minimal year the series production ended
                  format: int32
                productionEndYearTo:
                  type: integer
                  description: Maximal year the series production ended
                  format: int32
                originalRunStartDateFrom:
                  type: string
                  description: Minimal date the series originally ran from
                  format: date
                originalRunStartDateTo:
                  type: string
                  description: Maximal date the series originally ran from
                  format: date
                originalRunEndDateFrom:
                  type: string
                  description: Minimal date the series originally ran to
                  format: date
                originalRunEndDateTo:
                  type: string
                  description: Maximal date the series originally ran to
                  format: date
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/SeriesBaseResponse'
  '/soundtrack':
    get:
      tags:
        - Soundtrack
      description: Retrival of a single soundtrack
      parameters:
        - name: uid
          in: query
          description: Soundtrack unique ID
          required: true
          schema:
            type: string
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/SoundtrackFullResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/Error'
  '/soundtrack/search':
    get:
      tags:
        - Soundtrack
      description: Pagination over soundtracks
      parameters:
        - name: pageNumber
          in: query
          description: Zero-based page number
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          description: Page size
          schema:
            type: integer
            format: int32
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/SoundtrackBaseResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/Error'
    post:
      tags:
        - Soundtrack
      description: Searching soundtracks
      parameters:
        - name: pageNumber
          in: query
          description: Zero-based page number
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          description: Page size
          schema:
            type: integer
            format: int32
        - name: sort
          in: query
          description: 'Sorting, serialized like this: fieldName,ASC;anotherFieldName,DESC'
          schema:
            type: string
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      requestBody:
        content:
          application/x-www-form-urlencoded:
            schema:
              properties:
                title:
                  type: string
                  description: Soundtrack title
                releaseDateFrom:
                  type: string
                  description: Minimal release date
                  format: date
                releaseDateTo:
                  type: string
                  description: Maximal release date
                  format: date
                lengthFrom:
                  type: integer
                  description: Minimal length, in seconds
                  format: int32
                lengthTo:
                  type: integer
                  description: Maximal length, in seconds
                  format: int32
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/SoundtrackBaseResponse'
  '/spacecraft':
    get:
      tags:
        - Spacecraft
      description: Retrival of a single spacecraft
      parameters:
        - name: uid
          in: query
          description: Spacecraft unique ID
          required: true
          schema:
            type: string
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/SpacecraftFullResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/Error'
  '/spacecraft/search':
    get:
      tags:
        - Spacecraft
      description: Pagination over spacecrafts
      parameters:
        - name: pageNumber
          in: query
          description: Zero-based page number
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          description: Page size
          schema:
            type: integer
            format: int32
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/SpacecraftBaseResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/Error'
    post:
      tags:
        - Spacecraft
      description: Searching spacecrafts
      parameters:
        - name: pageNumber
          in: query
          description: Zero-based page number
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          description: Page size
          schema:
            type: integer
            format: int32
        - name: sort
          in: query
          description: 'Sorting, serialized like this: fieldName,ASC;anotherFieldName,DESC'
          schema:
            type: string
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      requestBody:
        content:
          application/x-www-form-urlencoded:
            schema:
              properties:
                name:
                  type: string
                  description: Spacecraft name
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/SpacecraftBaseResponse'
  '/spacecraftClass':
    get:
      tags:
        - SpacecraftClass
      description: Retrival of a single spacecraft class
      parameters:
        - name: uid
          in: query
          description: SpacecraftClass unique ID
          required: true
          schema:
            type: string
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/SpacecraftClassFullResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/Error'
  '/spacecraftClass/search':
    get:
      tags:
        - SpacecraftClass
      description: Pagination over spacecraft classes
      parameters:
        - name: pageNumber
          in: query
          description: Zero-based page number
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          description: Page size
          schema:
            type: integer
            format: int32
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/SpacecraftClassBaseResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/Error'
    post:
      tags:
        - SpacecraftClass
      description: Searching spacecraft classes
      parameters:
        - name: pageNumber
          in: query
          description: Zero-based page number
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          description: Page size
          schema:
            type: integer
            format: int32
        - name: sort
          in: query
          description: 'Sorting, serialized like this: fieldName,ASC;anotherFieldName,DESC'
          schema:
            type: string
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      requestBody:
        content:
          application/x-www-form-urlencoded:
            schema:
              properties:
                name:
                  type: string
                  description: Spacecraft class name
                warpCapableSpecies:
                  type: boolean
                  description: Whether it should be a warp-capable spacecraft class
                alternateReality:
                  type: boolean
                  description: Whether this spacecraft class should be from alternate
                    reality
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/SpacecraftClassBaseResponse'
  '/species':
    get:
      tags:
        - Species
      description: Retrival of a single species
      parameters:
        - name: uid
          in: query
          description: Species unique ID
          required: true
          schema:
            type: string
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/SpeciesFullResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/Error'
  '/species/search':
    get:
      tags:
        - Species
      description: Pagination over species
      parameters:
        - name: pageNumber
          in: query
          description: Zero-based page number
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          description: Page size
          schema:
            type: integer
            format: int32
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/SpeciesBaseResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/Error'
    post:
      tags:
        - Species
      description: Searching species
      parameters:
        - name: pageNumber
          in: query
          description: Zero-based page number
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          description: Page size
          schema:
            type: integer
            format: int32
        - name: sort
          in: query
          description: 'Sorting, serialized like this: fieldName,ASC;anotherFieldName,DESC'
          schema:
            type: string
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      requestBody:
        content:
          application/x-www-form-urlencoded:
            schema:
              properties:
                name:
                  type: string
                  description: Species name
                extinctSpecies:
                  type: boolean
                  description: Whether it should be an extinct species
                warpCapableSpecies:
                  type: boolean
                  description: Whether it should be a warp-capable species
                extraGalacticSpecies:
                  type: boolean
                  description: Whether it should be an extra-galactic species
                humanoidSpecies:
                  type: boolean
                  description: Whether it should be a humanoid species
                reptilianSpecies:
                  type: boolean
                  description: Whether it should be a reptilian species
                nonCorporealSpecies:
                  type: boolean
                  description: Whether it should be a non-corporeal species
                shapeshiftingSpecies:
                  type: boolean
                  description: Whether it should be a shapeshifting species
                spaceborneSpecies:
                  type: boolean
                  description: Whether it should be a spaceborne species
                telepathicSpecies:
                  type: boolean
                  description: Whether it should be a telepathic species
                transDimensionalSpecies:
                  type: boolean
                  description: Whether it should be a trans-dimensional species
                unnamedSpecies:
                  type: boolean
                  description: Whether it should be a unnamed species
                alternateReality:
                  type: boolean
                  description: Whether this species should be from alternate reality
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/SpeciesBaseResponse'
  '/staff':
    get:
      tags:
        - Staff
      description: Retrival of a single staff
      parameters:
        - name: uid
          in: query
          description: Staff unique ID
          required: true
          schema:
            type: string
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/StaffFullResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/Error'
  '/staff/search':
    get:
      tags:
        - Staff
      description: Pagination over staff
      parameters:
        - name: pageNumber
          in: query
          description: Zero-based page number
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          description: Page size
          schema:
            type: integer
            format: int32
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/StaffBaseResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/Error'
    post:
      tags:
        - Staff
      description: Searching staff
      parameters:
        - name: pageNumber
          in: query
          description: Zero-based page number
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          description: Page size
          schema:
            type: integer
            format: int32
        - name: sort
          in: query
          description: 'Sorting, serialized like this: fieldName,ASC;anotherFieldName,DESC'
          schema:
            type: string
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      requestBody:
        content:
          application/x-www-form-urlencoded:
            schema:
              properties:
                name:
                  type: string
                  description: Staff name
                birthName:
                  type: string
                  description: Staff birth name
                gender:
                  type: string
                  description: Staff gender
                dateOfBirthFrom:
                  type: string
                  description: Minimal date the staff was born
                  format: date
                dateOfBirthTo:
                  type: string
                  description: Maximal date the staff was born
                  format: date
                placeOfBirth:
                  type: string
                  description: Place the staff was born
                dateOfDeathFrom:
                  type: string
                  description: Minimal date the staff died
                  format: date
                dateOfDeathTo:
                  type: string
                  description: Maximal date the staff died
                  format: date
                placeOfDeath:
                  type: string
                  description: Place the staff died
                artDepartment:
                  type: boolean
                  description: Whether this person should be from art department
                artDirector:
                  type: boolean
                  description: Whether this person should be an art director
                productionDesigner:
                  type: boolean
                  description: Whether this person should be a production designer
                cameraAndElectricalDepartment:
                  type: boolean
                  description: Whether this person should be from camera and electrical
                    department
                cinematographer:
                  type: boolean
                  description: Whether this person should be a cinematographer
                castingDepartment:
                  type: boolean
                  description: Whether this person should be from casting department
                costumeDepartment:
                  type: boolean
                  description: Whether this person should be from costume department
                costumeDesigner:
                  type: boolean
                  description: Whether this person should be a custume designer
                director:
                  type: boolean
                  description: Whether this person should be a director
                assistantOrSecondUnitDirector:
                  type: boolean
                  description: Whether this person should be an assistant or secound
                    unit director director
                exhibitAndAttractionStaff:
                  type: boolean
                  description: Whether this person should be an exhibit and attraction
                    staff
                filmEditor:
                  type: boolean
                  description: Whether this person should be a film editor
                linguist:
                  type: boolean
                  description: Whether this person should be a linguist
                locationStaff:
                  type: boolean
                  description: Whether this person should be a location staff
                makeupStaff:
                  type: boolean
                  description: Whether this person should be a make-up staff
                musicDepartment:
                  type: boolean
                  description: Whether this person should be from music department
                composer:
                  type: boolean
                  description: Whether this person should be a composer
                personalAssistant:
                  type: boolean
                  description: Whether this person should be a personal assistant
                producer:
                  type: boolean
                  description: Whether this person should be a producer
                productionAssociate:
                  type: boolean
                  description: Whether this person should be a production associate
                productionStaff:
                  type: boolean
                  description: Whether this person should be a production staff
                publicationStaff:
                  type: boolean
                  description: Whether this person should be a publication staff
                scienceConsultant:
                  type: boolean
                  description: Whether this person should be a science consultant
                soundDepartment:
                  type: boolean
                  description: Whether this person should be from sound department
                specialAndVisualEffectsStaff:
                  type: boolean
                  description: Whether this person should be a special and visual
                    effects staff
                author:
                  type: boolean
                  description: Whether this person should be an author
                audioAuthor:
                  type: boolean
                  description: Whether this person should be an audio author
                calendarArtist:
                  type: boolean
                  description: Whether this person should be a calendar artist
                comicArtist:
                  type: boolean
                  description: Whether this person should be a comic artist
                comicAuthor:
                  type: boolean
                  description: Whether this person should be a comic author
                comicColorArtist:
                  type: boolean
                  description: Whether this person should be a comic color artist
                comicInteriorArtist:
                  type: boolean
                  description: Whether this person should be a comic interior artist
                comicInkArtist:
                  type: boolean
                  description: Whether this person should be a comic ink artist
                comicPencilArtist:
                  type: boolean
                  description: Whether this person should be a comic pencil artist
                comicLetterArtist:
                  type: boolean
                  description: Whether this person should be a comic letter artist
                comicStripArtist:
                  type: boolean
                  description: Whether this person should be a comic strip artist
                gameArtist:
                  type: boolean
                  description: Whether this person should be a game artist
                gameAuthor:
                  type: boolean
                  description: Whether this person should be a game author
                novelArtist:
                  type: boolean
                  description: Whether this person should be a novel artist
                novelAuthor:
                  type: boolean
                  description: Whether this person should be a novel author
                referenceArtist:
                  type: boolean
                  description: Whether this person should be a reference artist
                referenceAuthor:
                  type: boolean
                  description: Whether this person should be a reference author
                publicationArtist:
                  type: boolean
                  description: Whether this person should be a publication artist
                publicationDesigner:
                  type: boolean
                  description: Whether this person should be a publication designer
                publicationEditor:
                  type: boolean
                  description: Whether this person should be a publication editor
                publicityArtist:
                  type: boolean
                  description: Whether this person should be a publicity artist
                cbsDigitalStaff:
                  type: boolean
                  description: Whether this person should be a part of CBS digital
                    staff
                ilmProductionStaff:
                  type: boolean
                  description: Whether this person should be a part of ILM production
                    staff
                specialFeaturesStaff:
                  type: boolean
                  description: Whether this person should be a special features artist
                storyEditor:
                  type: boolean
                  description: Whether this person should be a story editor
                studioExecutive:
                  type: boolean
                  description: Whether this person should be a studio executive
                stuntDepartment:
                  type: boolean
                  description: Whether this person should be from stunt department
                transportationDepartment:
                  type: boolean
                  description: Whether this person should be from transportation department
                videoGameProductionStaff:
                  type: boolean
                  description: Whether this person is video game production staff
                writer:
                  type: boolean
                  description: Whether this person should be a writer
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/StaffBaseResponse'
  '/technology':
    get:
      tags:
        - Technology
      description: Retrival of a single technology
      parameters:
        - name: uid
          in: query
          description: Technology unique ID
          required: true
          schema:
            type: string
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/TechnologyFullResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/Error'
  '/technology/search':
    get:
      tags:
        - Technology
      description: Pagination over technology
      parameters:
        - name: pageNumber
          in: query
          description: Zero-based page number
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          description: Page size
          schema:
            type: integer
            format: int32
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/TechnologyBaseResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/Error'
    post:
      tags:
        - Technology
      description: Searching technology
      parameters:
        - name: pageNumber
          in: query
          description: Zero-based page number
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          description: Page size
          schema:
            type: integer
            format: int32
        - name: sort
          in: query
          description: 'Sorting, serialized like this: fieldName,ASC;anotherFieldName,DESC'
          schema:
            type: string
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      requestBody:
        content:
          application/x-www-form-urlencoded:
            schema:
              properties:
                name:
                  type: string
                  description: Technology name
                borgTechnology:
                  type: boolean
                  description: Whether it should be a Borg technology
                borgComponent:
                  type: boolean
                  description: Whether it should be a Borg component
                communicationsTechnology:
                  type: boolean
                  description: Whether it should be a communications technology
                computerTechnology:
                  type: boolean
                  description: Whether it should be a computer technology
                computerProgramming:
                  type: boolean
                  description: Whether it should be a technology related to computer
                    programming
                subroutine:
                  type: boolean
                  description: Whether it should be a subroutine
                database:
                  type: boolean
                  description: Whether it should be a database
                energyTechnology:
                  type: boolean
                  description: Whether it should be a energy technology
                fictionalTechnology:
                  type: boolean
                  description: Whether it should be a fictional technology
                holographicTechnology:
                  type: boolean
                  description: Whether it should be a holographic technology
                identificationTechnology:
                  type: boolean
                  description: Whether it should be a identification technology
                lifeSupportTechnology:
                  type: boolean
                  description: Whether it should be a life support technology
                sensorTechnology:
                  type: boolean
                  description: Whether it should be a sensor technology
                shieldTechnology:
                  type: boolean
                  description: Whether it should be a shield technology
                tool:
                  type: boolean
                  description: Whether it should be a tool
                culinaryTool:
                  type: boolean
                  description: Whether it should be a culinary tool
                engineeringTool:
                  type: boolean
                  description: Whether it should be a engineering tool
                householdTool:
                  type: boolean
                  description: Whether it should be a household tool
                medicalEquipment:
                  type: boolean
                  description: Whether it should be a medical equipment
                transporterTechnology:
                  type: boolean
                  description: Whether it's a transporter technology
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/TechnologyBaseResponse'
  '/title':
    get:
      tags:
        - Title
      description: Retrival of a single title
      parameters:
        - name: uid
          in: query
          description: Title unique ID
          required: true
          schema:
            type: string
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/TitleFullResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/Error'
  '/title/search':
    get:
      tags:
        - Title
      description: Pagination over titles
      parameters:
        - name: pageNumber
          in: query
          description: Zero-based page number
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          description: Page size
          schema:
            type: integer
            format: int32
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/TitleBaseResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/Error'
    post:
      tags:
        - Title
      description: Searching titles
      parameters:
        - name: pageNumber
          in: query
          description: Zero-based page number
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          description: Page size
          schema:
            type: integer
            format: int32
        - name: sort
          in: query
          description: 'Sorting, serialized like this: fieldName,ASC;anotherFieldName,DESC'
          schema:
            type: string
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      requestBody:
        content:
          application/x-www-form-urlencoded:
            schema:
              properties:
                name:
                  type: string
                  description: Title name
                militaryRank:
                  type: boolean
                  description: Whether it should be a military rank
                fleetRank:
                  type: boolean
                  description: Whether it should be a fleet rank
                religiousTitle:
                  type: boolean
                  description: Whether it should be a religious title
                position:
                  type: boolean
                  description: Whether it should be a position
                mirror:
                  type: boolean
                  description: Whether this title should be from mirror universe
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/TitleBaseResponse'
  '/tradingCard':
    get:
      tags:
        - TradingCard
      description: Retrival of a single trading card
      parameters:
        - name: uid
          in: query
          description: Trading card unique ID
          required: true
          schema:
            type: string
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/TradingCardFullResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/Error'
  '/tradingCard/search':
    get:
      tags:
        - TradingCard
      description: Pagination over trading cards
      parameters:
        - name: pageNumber
          in: query
          description: Zero-based page number
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          description: Page size
          schema:
            type: integer
            format: int32
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/TradingCardBaseResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/Error'
    post:
      tags:
        - TradingCard
      description: Searching trading cards
      parameters:
        - name: pageNumber
          in: query
          description: Zero-based page number
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          description: Page size
          schema:
            type: integer
            format: int32
        - name: sort
          in: query
          description: 'Sorting, serialized like this: fieldName,ASC;anotherFieldName,DESC'
          schema:
            type: string
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      requestBody:
        content:
          application/x-www-form-urlencoded:
            schema:
              properties:
                name:
                  type: string
                  description: Trading card name
                tradingCardDeckUid:
                  type: string
                  description: UID of trading card deck
                tradingCardSetUid:
                  type: string
                  description: UID of trading card set
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/TradingCardBaseResponse'
  '/tradingCardDeck':
    get:
      tags:
        - TradingCardDeck
      description: Retrival of a single trading card deck
      parameters:
        - name: uid
          in: query
          description: trading card deck unique ID
          required: true
          schema:
            type: string
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/TradingCardDeckFullResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/Error'
  '/tradingCardDeck/search':
    get:
      tags:
        - TradingCardDeck
      description: Pagination over trading card decks
      parameters:
        - name: pageNumber
          in: query
          description: Zero-based page number
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          description: Page size
          schema:
            type: integer
            format: int32
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/TradingCardDeckBaseResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/Error'
    post:
      tags:
        - TradingCardDeck
      description: Searching trading card decks
      parameters:
        - name: pageNumber
          in: query
          description: Zero-based page number
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          description: Page size
          schema:
            type: integer
            format: int32
        - name: sort
          in: query
          description: 'Sorting, serialized like this: fieldName,ASC;anotherFieldName,DESC'
          schema:
            type: string
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      requestBody:
        content:
          application/x-www-form-urlencoded:
            schema:
              properties:
                name:
                  type: string
                  description: Trading card deck name
                tradingCardSetUid:
                  type: string
                  description: UID of trading card set
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/TradingCardDeckBaseResponse'
  '/tradingCardSet':
    get:
      tags:
        - TradingCardSet
      description: Retrival of a single trading card set
      parameters:
        - name: uid
          in: query
          description: Trading card set unique ID
          required: true
          schema:
            type: string
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/TradingCardSetFullResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/Error'
  '/tradingCardSet/search':
    get:
      tags:
        - TradingCardSet
      description: Pagination over trading card sets
      parameters:
        - name: pageNumber
          in: query
          description: Zero-based page number
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          description: Page size
          schema:
            type: integer
            format: int32
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/TradingCardSetBaseResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/Error'
    post:
      tags:
        - TradingCardSet
      description: Searching trading card sets
      parameters:
        - name: pageNumber
          in: query
          description: Zero-based page number
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          description: Page size
          schema:
            type: integer
            format: int32
        - name: sort
          in: query
          description: 'Sorting, serialized like this: fieldName,ASC;anotherFieldName,DESC'
          schema:
            type: string
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      requestBody:
        content:
          application/x-www-form-urlencoded:
            schema:
              properties:
                name:
                  type: string
                  description: Trading card set name
                releaseYearFrom:
                  type: integer
                  description: Starting year the trading card set was released
                  format: int32
                releaseYearTo:
                  type: integer
                  description: Ending year the trading card set was released
                  format: int32
                cardsPerPackFrom:
                  type: integer
                  description: Minimal number of cards per deck
                  format: int32
                cardsPerPackTo:
                  type: integer
                  description: Minimal number of cards per deck
                  format: int32
                packsPerBoxFrom:
                  type: integer
                  description: Minimal number of packs per box
                  format: int32
                packsPerBoxTo:
                  type: integer
                  description: Minimal number of packs per box
                  format: int32
                boxesPerCaseFrom:
                  type: integer
                  description: Minimal number of boxes per case
                  format: int32
                boxesPerCaseTo:
                  type: integer
                  description: Minimal number of boxes per case
                  format: int32
                productionRunFrom:
                  type: integer
                  description: Minimal production run
                  format: int32
                productionRunTo:
                  type: integer
                  description: Minimal production run
                  format: int32
                productionRunUnit:
                  type: string
                  description: Production run unit
                cardWidthFrom:
                  type: number
                  description: Minimal card width, in inches
                  format: double
                cardWidthTo:
                  type: number
                  description: Minimal card width, in inches
                  format: double
                cardHeightFrom:
                  type: number
                  description: Minimal card height, in inches
                  format: double
                cardHeightTo:
                  type: number
                  description: Minimal card height, in inches
                  format: double
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/TradingCardSetBaseResponse'
  '/videoGame':
    get:
      tags:
        - VideoGame
      description: Retrival of a single video game
      parameters:
        - name: uid
          in: query
          description: VideoGame unique ID
          required: true
          schema:
            type: string
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/VideoGameFullResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/Error'
  '/videoGame/search':
    get:
      tags:
        - VideoGame
      description: Pagination over video games
      parameters:
        - name: pageNumber
          in: query
          description: Zero-based page number
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          description: Page size
          schema:
            type: integer
            format: int32
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/VideoGameBaseResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/Error'
    post:
      tags:
        - VideoGame
      description: Searching video games
      parameters:
        - name: pageNumber
          in: query
          description: Zero-based page number
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          description: Page size
          schema:
            type: integer
            format: int32
        - name: sort
          in: query
          description: 'Sorting, serialized like this: fieldName,ASC;anotherFieldName,DESC'
          schema:
            type: string
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      requestBody:
        content:
          application/x-www-form-urlencoded:
            schema:
              properties:
                title:
                  type: string
                  description: Video game title
                releaseDateFrom:
                  type: string
                  description: Minimal date the video game was first released
                  format: date
                releaseDateTo:
                  type: string
                  description: Minimal date the video game was first released
                  format: date
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/VideoGameBaseResponse'
  '/videoRelease':
    get:
      tags:
        - VideoRelease
      description: Retrival of a single video release
      parameters:
        - name: uid
          in: query
          description: Video release unique ID
          required: true
          schema:
            type: string
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/VideoReleaseFullResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/Error'
  '/videoRelease/search':
    get:
      tags:
        - VideoRelease
      description: Pagination over video releases
      parameters:
        - name: pageNumber
          in: query
          description: Zero-based page number
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          description: Page size
          schema:
            type: integer
            format: int32
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/VideoReleaseBaseResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/Error'
    post:
      tags:
        - VideoRelease
      description: Searching video releases
      parameters:
        - name: pageNumber
          in: query
          description: Zero-based page number
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          description: Page size
          schema:
            type: integer
            format: int32
        - name: sort
          in: query
          description: 'Sorting, serialized like this: fieldName,ASC;anotherFieldName,DESC'
          schema:
            type: string
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      requestBody:
        content:
          application/x-www-form-urlencoded:
            schema:
              properties:
                title:
                  type: string
                  description: Video release title
                yearFrom:
                  type: integer
                  description: Starting year of video release story
                  format: int32
                yearTo:
                  type: integer
                  description: Ending year of video release story
                  format: int32
                runTimeFrom:
                  type: integer
                  description: Minimal run time, in minutes
                  format: int32
                runTimeTo:
                  type: integer
                  description: Minimal run time, in minutes
                  format: int32
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/VideoReleaseBaseResponse'
  '/weapon':
    get:
      tags:
        - Weapon
      description: Retrival of a single weapon
      parameters:
        - name: uid
          in: query
          description: Weapon unique ID
          required: true
          schema:
            type: string
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/WeaponFullResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/Error'
  '/weapon/search':
    get:
      tags:
        - Weapon
      description: Pagination over weapons
      parameters:
        - name: pageNumber
          in: query
          description: Zero-based page number
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          description: Page size
          schema:
            type: integer
            format: int32
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/WeaponBaseResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/Error'
    post:
      tags:
        - Weapon
      description: Searching weapons
      parameters:
        - name: pageNumber
          in: query
          description: Zero-based page number
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          description: Page size
          schema:
            type: integer
            format: int32
        - name: sort
          in: query
          description: 'Sorting, serialized like this: fieldName,ASC;anotherFieldName,DESC'
          schema:
            type: string
        - name: apiKey
          in: query
          description: API key
          schema:
            type: string
      requestBody:
        content:
          application/x-www-form-urlencoded:
            schema:
              properties:
                name:
                  type: string
                  description: Weapon name
                handHeldWeapon:
                  type: boolean
                  description: Whether it should be a hand-help weapon
                laserTechnology:
                  type: boolean
                  description: Whether it should be a laser technology
                plasmaTechnology:
                  type: boolean
                  description: Whether it should be a plasma technology
                photonicTechnology:
                  type: boolean
                  description: Whether it should be a photonic technology
                phaserTechnology:
                  type: boolean
                  description: Whether it should be a phaser technology
                mirror:
                  type: boolean
                  description: Whether this weapon should be from mirror universe
                alternateReality:
                  type: boolean
                  description: Whether this weapon should be from alternate reality
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                '$ref': '#/components/schemas/WeaponBaseResponse'
components:
  schemas:
    AnimalHeader:
      type: object
      description: Header animal, embedded in other objects
      properties:
        uid:
          type: string
          description: Animal unique ID
        name:
          type: string
          description: Animal name
      required:
        - uid
        - name
    AnimalBase:
      type: object
      description: Base animal, returned in search results
      properties:
        uid:
          type: string
          description: Animal unique ID
        name:
          type: string
          description: Animal name
        earthAnimal:
          type: boolean
          description: Whether it's an earth animal
        earthInsect:
          type: boolean
          description: Whether it's an earth insect
        avian:
          type: boolean
          description: Whether it's an avian
        canine:
          type: boolean
          description: Whether it's a canine
        feline:
          type: boolean
          description: Whether it's a feline
      required:
        - uid
        - name
    AnimalFull:
      type: object
      description: Full animal, returned when queried using UID
      properties:
        uid:
          type: string
          description: Animal unique ID
        name:
          type: string
          description: Animal name
        earthAnimal:
          type: boolean
          description: Whether it's an earth animal
        earthInsect:
          type: boolean
          description: Whether it's an earth insect
        avian:
          type: boolean
          description: Whether it's an avian
        canine:
          type: boolean
          description: Whether it's a canine
        feline:
          type: boolean
          description: Whether it's a feline
      required:
        - uid
        - name
    AnimalBaseResponse:
      type: object
      description: Response object for animals search
      properties:
        page:
          '$ref': '#/components/schemas/ResponsePage'
        sort:
          '$ref': '#/components/schemas/ResponseSort'
        animals:
          type: array
          description: List of animals matching given criteria
          items:
            '$ref': '#/components/schemas/AnimalBase'
    AnimalFullResponse:
      type: object
      description: Response object for single animal query
      properties:
        animal:
          '$ref': '#/components/schemas/AnimalFull'
    AstronomicalObjectHeader:
      type: object
      description: Header astronomical object, embedded in other objects
      properties:
        uid:
          type: string
          description: Astronomical object's unique ID
        name:
          type: string
          description: Astronomical object name
      required:
        - uid
        - name
    AstronomicalObjectBase:
      type: object
      description: Base astronomical object, returned in search results
      properties:
        uid:
          type: string
          description: Astronomical object's unique ID
        name:
          type: string
          description: Astronomical object name
        astronomicalObjectType:
          '$ref': '#/components/schemas/AstronomicalObjectType'
        location:
          '$ref': '#/components/schemas/AstronomicalObjectHeader'
      required:
        - uid
        - name
        - astronomicalObjectType
    AstronomicalObjectFull:
      type: object
      description: Full astronomical object, returned when queried using UID
      properties:
        uid:
          type: string
          description: Astronomical object's unique ID
        name:
          type: string
          description: Astronomical object name
        astronomicalObjectType:
          '$ref': '#/components/schemas/AstronomicalObjectType'
        location:
          '$ref': '#/components/schemas/AstronomicalObjectBase'
        astronomicalObjects:
          type: array
          description: Astronomical objects located in this astronomical object, like
            planets in a star system
          items:
            '$ref': '#/components/schemas/AstronomicalObjectBase'
      required:
        - uid
        - name
        - astronomicalObjectType
    AstronomicalObjectBaseResponse:
      type: object
      description: Response object for astronomical objects search
      properties:
        page:
          '$ref': '#/components/schemas/ResponsePage'
        sort:
          '$ref': '#/components/schemas/ResponseSort'
        astronomicalObjects:
          type: array
          description: List of astronomical objects matching given criteria
          items:
            '$ref': '#/components/schemas/AstronomicalObjectBase'
    AstronomicalObjectFullResponse:
      type: object
      description: Response object for single astronomical object query
      properties:
        astronomicalObject:
          '$ref': '#/components/schemas/AstronomicalObjectFull'
    AstronomicalObjectType:
      type: string
      description: Astronomical object type
      enum:
        - PLANET
        - D_CLASS_PLANET
        - H_CLASS_PLANET
        - GAS_GIANT_PLANET
        - K_CLASS_PLANET
        - L_CLASS_PLANET
        - M_CLASS_PLANET
        - Y_CLASS_PLANET
        - ROGUE_PLANET
        - ARTIFICIAL_PLANET
        - ASTEROID
        - ASTEROIDAL_MOON
        - ASTEROID_BELT
        - CLUSTER
        - COMET
        - CONSTELLATION
        - GALAXY
        - MOON
        - M_CLASS_MOON
        - NEBULA
        - PLANETOID
        - D_CLASS_PLANETOID
        - QUASAR
        - STAR
        - STAR_SYSTEM
        - SECTOR
        - REGION
    BloodType:
      type: string
      description: Blood type
      enum:
        - B_NEGATIVE
        - O_NEGATIVE
        - T_NEGATIVE
    BookHeader:
      type: object
      description: Header book, embedded in other objects
      properties:
        uid:
          type: string
          description: Book unique ID
        title:
          type: string
          description: Book title
      required:
        - uid
        - title
    BookBase:
      type: object
      description: Base book, returned in search results
      properties:
        uid:
          type: string
          description: Book unique ID
        title:
          type: string
          description: Book title
        publishedYear:
          type: integer
          description: Year the book was published
        publishedMonth:
          type: integer
          description: Month the book was published
        publishedDay:
          type: integer
          description: Day the book was published
        numberOfPages:
          type: integer
          description: Number of pages
        stardateFrom:
          type: number
          description: Starting stardate of book story
          format: float
        stardateTo:
          type: number
          description: Ending stardate of book story
          format: float
        yearFrom:
          type: integer
          description: Starting year of book story
        yearTo:
          type: integer
          description: Ending year of book story
        novel:
          type: boolean
          description: Whether it's a novel
        referenceBook:
          type: boolean
          description: Whether it's a reference book
        biographyBook:
          type: boolean
          description: Whether it's a biography book
        rolePlayingBook:
          type: boolean
          description: Whether it's a role playing book
        eBook:
          type: boolean
          description: Whether it's an eBook
        anthology:
          type: boolean
          description: Whether it's an anthology
        novelization:
          type: boolean
          description: Whether it's a novelization
        audiobook:
          type: boolean
          description: Whether it's an audiobook, or has been release as an audiobook
            in addition to other form
        audiobookAbridged:
          type: boolean
          description: If it's an audiobook, whether it's been abridged
        audiobookPublishedYear:
          type: integer
          description: Year the audiobook was published
        audiobookPublishedMonth:
          type: integer
          description: Month the audiobook was published
        audiobookPublishedDay:
          type: integer
          description: Day the audiobook was published
        audiobookRunTime:
          type: integer
          description: Audiobook run time, in minutes
        productionNumber:
          type: string
          description: Book's production number
      required:
        - uid
        - title
        - novel
        - referenceBook
        - biographyBook
        - rolePlayingBook
        - eBook
        - anthology
        - novelization
        - audiobook
        - audiobookAbridged
    BookFull:
      type: object
      description: Full book, returned when queried using UID
      properties:
        uid:
          type: string
          description: Book unique ID
        title:
          type: string
          description: Book title
        publishedYear:
          type: integer
          description: Year the book was published
        publishedMonth:
          type: integer
          description: Month the book was published
        publishedDay:
          type: integer
          description: Day the book was published
        numberOfPages:
          type: integer
          description: Number of pages
        stardateFrom:
          type: number
          description: Starting stardate of book story
          format: float
        stardateTo:
          type: number
          description: Ending stardate of book story
          format: float
        yearFrom:
          type: integer
          description: Starting year of book story
        yearTo:
          type: integer
          description: Ending year of book story
        novel:
          type: boolean
          description: Whether it's a novel
        referenceBook:
          type: boolean
          description: Whether it's a reference book
        biographyBook:
          type: boolean
          description: Whether it's a biography book
        rolePlayingBook:
          type: boolean
          description: Whether it's a role playing book
        eBook:
          type: boolean
          description: Whether it's an e-book
        anthology:
          type: boolean
          description: Whether it's an anthology
        novelization:
          type: boolean
          description: Whether it's a novelization
        audiobook:
          type: boolean
          description: Whether it's an audiobook, or has been release as an audiobook
            in addition to other form
        audiobookAbridged:
          type: boolean
          description: If it's an audiobook, whether it's been abridged
        audiobookPublishedYear:
          type: integer
          description: Year the audiobook was published
        audiobookPublishedMonth:
          type: integer
          description: Month the audiobook was published
        audiobookPublishedDay:
          type: integer
          description: Day the audiobook was published
        audiobookRunTime:
          type: integer
          description: Audiobook run time, in minutes
        productionNumber:
          type: string
          description: Book production number
        bookSeries:
          type: array
          description: Book series this book is included in
          items:
            '$ref': '#/components/schemas/BookSeriesBase'
        authors:
          type: array
          description: Authors of the book
          items:
            '$ref': '#/components/schemas/StaffBase'
        artists:
          type: array
          description: Artists involved in the book
          items:
            '$ref': '#/components/schemas/StaffBase'
        editors:
          type: array
          description: Editors involved in the book
          items:
            '$ref': '#/components/schemas/StaffBase'
        audiobookNarrators:
          type: array
          description: Audiobook narrators
          items:
            '$ref': '#/components/schemas/StaffBase'
        publishers:
          type: array
          description: Book publishers
          items:
            '$ref': '#/components/schemas/CompanyBase'
        audiobookPublishers:
          type: array
          description: Audiobook publishers
          items:
            '$ref': '#/components/schemas/CompanyBase'
        characters:
          type: array
          description: Characters appearing the book
          items:
            '$ref': '#/components/schemas/CharacterBase'
        references:
          type: array
          description: References
          items:
            '$ref': '#/components/schemas/Reference'
        audiobookReferences:
          type: array
          description: Audiobook references
          items:
            '$ref': '#/components/schemas/Reference'
        bookCollections:
          type: array
          description: Book collections this book is included in
          items:
            '$ref': '#/components/schemas/BookCollectionBase'
      required:
        - uid
        - title
        - novel
        - referenceBook
        - biographyBook
        - rolePlayingBook
        - eBook
        - anthology
        - novelization
        - audiobook
        - audiobookAbridged
    BookBaseResponse:
      type: object
      description: Response object for books search
      properties:
        page:
          '$ref': '#/components/schemas/ResponsePage'
        sort:
          '$ref': '#/components/schemas/ResponseSort'
        books:
          type: array
          description: List of books matching given criteria
          items:
            '$ref': '#/components/schemas/BookBase'
    BookFullResponse:
      type: object
      description: Response object for single book query
      properties:
        book:
          '$ref': '#/components/schemas/BookFull'
    BookCollectionHeader:
      type: object
      description: Header book collection, embedded in other objects
      properties:
        uid:
          type: string
          description: Book collection unique ID
        title:
          type: string
          description: Book collection title
    BookCollectionBase:
      type: object
      description: Base book collection, returned in search results
      properties:
        uid:
          type: string
          description: Book collection unique ID
        title:
          type: string
          description: Book collection title
        publishedYear:
          type: integer
          description: Year the book collection was published
        publishedMonth:
          type: integer
          description: Month the book collection was published
        publishedDay:
          type: integer
          description: Day the book collection was published
        numberOfPages:
          type: integer
          description: Number of pages
        stardateFrom:
          type: number
          description: Starting stardate of book collection stories
          format: float
        stardateTo:
          type: number
          description: Ending stardate of book collection stories
          format: float
        yearFrom:
          type: integer
          description: Starting year of book collection stories
        yearTo:
          type: integer
          description: Ending year of book collection stories
    BookCollectionFull:
      type: object
      description: Full book collection, returned when queried using UID
      properties:
        uid:
          type: string
          description: Book collection unique ID
        title:
          type: string
          description: Book collection title
        publishedYear:
          type: integer
          description: Year the book collection was published
        publishedMonth:
          type: integer
          description: Month the book collection was published
        publishedDay:
          type: integer
          description: Day the book collection was published
        numberOfPages:
          type: integer
          description: Number of pages
        stardateFrom:
          type: number
          description: Starting stardate of book collection stories
          format: float
        stardateTo:
          type: number
          description: Ending stardate of book collection stories
          format: float
        yearFrom:
          type: integer
          description: Starting year of book collection stories
        yearTo:
          type: integer
          description: Ending year of book collection stories
        bookSeries:
          type: array
          description: Book series this book collection is included in
          items:
            '$ref': '#/components/schemas/BookSeriesBase'
        authors:
          type: array
          description: Authors of the book collection
          items:
            '$ref': '#/components/schemas/StaffBase'
        artists:
          type: array
          description: Artists involved in the book collection
          items:
            '$ref': '#/components/schemas/StaffBase'
        editors:
          type: array
          description: Editors involved in the book collection
          items:
            '$ref': '#/components/schemas/StaffBase'
        publishers:
          type: array
          description: Book collection publishers
          items:
            '$ref': '#/components/schemas/CompanyBase'
        characters:
          type: array
          description: Characters appearing in the book collection
          items:
            '$ref': '#/components/schemas/CharacterBase'
        references:
          type: array
          description: References
          items:
            '$ref': '#/components/schemas/Reference'
        books:
          type: array
          description: Books included in this book collection
          items:
            '$ref': '#/components/schemas/BookBase'
    BookCollectionBaseResponse:
      type: object
      description: Response object for book collections search
      properties:
        page:
          '$ref': '#/components/schemas/ResponsePage'
        sort:
          '$ref': '#/components/schemas/ResponseSort'
        bookCollections:
          type: array
          description: List of book collections matching given criteria
          items:
            '$ref': '#/components/schemas/BookCollectionBase'
    BookCollectionFullResponse:
      type: object
      description: Response object for single book collection query
      properties:
        bookCollection:
          '$ref': '#/components/schemas/BookCollectionFull'
    BookSeriesHeader:
      type: object
      description: Header book series, embedded in other objects
      properties:
        uid:
          type: string
          description: Book series unique ID
        title:
          type: string
          description: Book series title
    BookSeriesBase:
      type: object
      description: Base book series, returned in search results
      properties:
        uid:
          type: string
          description: Book series unique ID
        title:
          type: string
          description: Book series title
        publishedYearFrom:
          type: integer
          description: Year from which the book series was published
        publishedMonthFrom:
          type: integer
          description: Month from which the book series was published
        publishedYearTo:
          type: integer
          description: Year to which the book series was published
        publishedMonthTo:
          type: integer
          description: Month to which the book series was published
        numberOfBooks:
          type: integer
          description: Number of pages
        yearFrom:
          type: integer
          description: Starting year of book series stories
        yearTo:
          type: integer
          description: Ending year of book series stories
        miniseries:
          type: boolean
          description: Whether it's a miniseries
        eBookSeries:
          type: boolean
          description: Whether it's a e-book series
      required:
        - uid
        - title
    BookSeriesFull:
      type: object
      description: Full book series, returned when queried using UID
      properties:
        uid:
          type: string
          description: Book series unique ID
        title:
          type: string
          description: Book series title
        publishedYearFrom:
          type: integer
          description: Year from which the book series was published
        publishedMonthFrom:
          type: integer
          description: Month from which the book series was published
        publishedYearTo:
          type: integer
          description: Year to which the book series was published
        publishedMonthTo:
          type: integer
          description: Month to which the book series was published
        numberOfBooks:
          type: integer
          description: Number of books in book series
        yearFrom:
          type: integer
          description: Starting year of book series stories
        yearTo:
          type: integer
          description: Ending year of book series stories
        miniseries:
          type: boolean
          description: Whether it's a miniseries
        eBookSeries:
          type: boolean
          description: Whether it's a e-book series
        parentSeries:
          type: array
          description: Book series this book series is included in
          items:
            '$ref': '#/components/schemas/BookSeriesBase'
        childSeries:
          type: array
          description: Child book series included in this book series
          items:
            '$ref': '#/components/schemas/BookSeriesBase'
        publishers:
          type: array
          description: Companies that published this book series
          items:
            '$ref': '#/components/schemas/CompanyBase'
        books:
          type: array
          description: Books included in this book series
          items:
            '$ref': '#/components/schemas/BookBase'
      required:
        - uid
        - title
    BookSeriesBaseResponse:
      type: object
      description: Response object for book series search
      properties:
        page:
          '$ref': '#/components/schemas/ResponsePage'
        sort:
          '$ref': '#/components/schemas/ResponseSort'
        bookSeries:
          type: array
          description: List of book series matching given criteria
          items:
            '$ref': '#/components/schemas/BookSeriesBase'
    BookSeriesFullResponse:
      type: object
      description: Response object for single book series query
      properties:
        bookSeries:
          '$ref': '#/components/schemas/BookSeriesFull'
    CharacterHeader:
      type: object
      description: Header character, embedded in other objects
      properties:
        uid:
          type: string
          description: Character unique ID
        name:
          type: string
          description: Character name
      required:
        - uid
        - name
    CharacterBase:
      type: object
      description: Base character, returned in search results
      properties:
        uid:
          type: string
          description: Character unique ID
        name:
          type: string
          description: Character name
        gender:
          '$ref': '#/components/schemas/Gender'
        yearOfBirth:
          type: integer
          description: Year the character was born
        monthOfBirth:
          type: integer
          description: Month the character was born
        dayOfBirth:
          type: integer
          description: Day the character was born
        placeOfBirth:
          type: string
          description: Place of birth
        yearOfDeath:
          type: integer
          description: Year the character died
        monthOfDeath:
          type: integer
          description: Month the character died
        dayOfDeath:
          type: integer
          description: Day the character died
        placeOfDeath:
          type: string
          description: Place of death
        height:
          type: integer
          description: Height in centimeters
        weight:
          type: integer
          description: Weight in kilograms
        deceased:
          type: boolean
          description: Whether this character is deceased
        bloodType:
          '$ref': '#/components/schemas/BloodType'
        maritalStatus:
          '$ref': '#/components/schemas/MaritalStatus'
        serialNumber:
          type: string
          description: Serial number
        hologramActivationDate:
          type: string
          description: Hologram activation date
        hologramStatus:
          type: string
          description: Hologram status
        hologramDateStatus:
          type: string
          description: Hologram date status
        hologram:
          type: boolean
          description: Whether this character is a hologram
        fictionalCharacter:
          type: boolean
          description: Whether this character is a fictional character (from universe
            point of view)
        mirror:
          type: boolean
          description: Whether this character is from mirror universe
        alternateReality:
          type: boolean
          description: Whether this character is from alternate reality
      required:
        - uid
        - name
    CharacterFull:
      type: object
      description: Full character, returned when queried using UID
      properties:
        uid:
          type: string
          description: Character unique ID
        name:
          type: string
          description: Character name
        gender:
          '$ref': '#/components/schemas/Gender'
        yearOfBirth:
          type: integer
          description: Year the character was born
        monthOfBirth:
          type: integer
          description: Month the character was born
        dayOfBirth:
          type: integer
          description: Day the character was born
        placeOfBirth:
          type: string
          description: Place of birth
        yearOfDeath:
          type: integer
          description: Year the character died
        monthOfDeath:
          type: integer
          description: Month the character died
        dayOfDeath:
          type: integer
          description: Day the character died
        placeOfDeath:
          type: string
          description: Place of death
        height:
          type: integer
          description: Height in centimeters
        weight:
          type: integer
          description: Weight in kilograms
        deceased:
          type: boolean
          description: Whether this character is deceased
        bloodType:
          '$ref': '#/components/schemas/BloodType'
        maritalStatus:
          '$ref': '#/components/schemas/MaritalStatus'
        serialNumber:
          type: string
          description: Serial number
        hologramActivationDate:
          type: string
          description: Hologram activation date
        hologramStatus:
          type: string
          description: Hologram status
        hologramDateStatus:
          type: string
          description: Hologram date status
        hologram:
          type: boolean
          description: Whether this character is a hologram
        fictionalCharacter:
          type: boolean
          description: Whether this character is a fictional character (from universe
            point of view)
        mirror:
          type: boolean
          description: Whether this character is from mirror universe
        alternateReality:
          type: boolean
          description: Whether this character is from alternate reality
        performers:
          type: array
          description: Performers who played this character
          items:
            '$ref': '#/components/schemas/PerformerBase'
        episodes:
          type: array
          description: Episodes in which this character appeared
          items:
            '$ref': '#/components/schemas/EpisodeBase'
        movies:
          type: array
          description: Movies in which this character appeared
          items:
            '$ref': '#/components/schemas/MovieBase'
        characterSpecies:
          type: array
          description: Species this character belongs to
          items:
            '$ref': '#/components/schemas/CharacterSpecies'
        characterRelations:
          type: array
          description: Relations with other characters
          items:
            '$ref': '#/components/schemas/CharacterRelation'
        titles:
          type: array
          description: Titles this character holds
          items:
            '$ref': '#/components/schemas/TitleBase'
        occupations:
          type: array
          description: Occupations of this character
          items:
            '$ref': '#/components/schemas/OccupationBase'
        organizations:
          type: array
          description: Organizations this character has affiliation with
          items:
            '$ref': '#/components/schemas/OrganizationBase'
      required:
        - uid
        - name
    CharacterBaseResponse:
      type: object
      description: Response object for characters search
      properties:
        page:
          '$ref': '#/components/schemas/ResponsePage'
        sort:
          '$ref': '#/components/schemas/ResponseSort'
        characters:
          type: array
          description: List of characters matching given criteria
          items:
            '$ref': '#/components/schemas/CharacterBase'
    CharacterFullResponse:
      type: object
      description: Response object for single character query
      properties:
        character:
          '$ref': '#/components/schemas/CharacterFull'
    CharacterRelation:
      type: object
      description: Relation between characters
      properties:
        type:
          type: string
          description: Relation type
        source:
          '$ref': '#/components/schemas/CharacterHeader'
        target:
          '$ref': '#/components/schemas/CharacterHeader'
    CharacterSpecies:
      type: object
      description: Species a character belongs to
      properties:
        uid:
          type: string
          description: Entity unique ID
        name:
          type: string
          description: Species name
        numerator:
          type: integer
          description: Numerator
        denominator:
          type: integer
          description: Denominator
    ComicsHeader:
      type: object
      description: Header comics, embedded in other objects
      properties:
        uid:
          type: string
          description: Comics unique ID
        title:
          type: string
          description: Comics title
      required:
        - uid
        - title
    ComicsBase:
      type: object
      description: Base comics, returned in search results
      properties:
        uid:
          type: string
          description: Comics unique ID
        title:
          type: string
          description: Comics title
        publishedYear:
          type: integer
          description: Year the comics was published
        publishedMonth:
          type: integer
          description: Month the comics was published
        publishedDay:
          type: integer
          description: Day the comics was published
        coverYear:
          type: integer
          description: Cover publication year
        coverMonth:
          type: integer
          description: Cover publication month
        coverDay:
          type: integer
          description: Cover publication day
        numberOfPages:
          type: integer
          description: Number of pages
        stardateFrom:
          type: number
          description: Starting stardate of comic story
          format: float
        stardateTo:
          type: number
          description: Ending stardate of comic story
          format: float
        yearFrom:
          type: integer
          description: Starting year of comic story
        yearTo:
          type: integer
          description: Ending year of comic story
        photonovel:
          type: boolean
          description: Whether it's a photonovel
        adaptation:
          type: boolean
          description: Whether it's an adaptation of an episode or a movie
      required:
        - uid
        - title
    ComicsFull:
      type: object
      description: Full comics, returned when queried using UID
      properties:
        uid:
          type: string
          description: Comics unique ID
        title:
          type: string
          description: Comics title
        publishedYear:
          type: integer
          description: Year the comics was published
        publishedMonth:
          type: integer
          description: Month the comics was published
        publishedDay:
          type: integer
          description: Day the comics was published
        coverYear:
          type: integer
          description: Cover publication year
        coverMonth:
          type: integer
          description: Cover publication month
        coverDay:
          type: integer
          description: Cover publication day
        numberOfPages:
          type: integer
          description: Number of pages
        stardateFrom:
          type: number
          description: Starting stardate of comic story
          format: float
        stardateTo:
          type: number
          description: Ending stardate of comic story
          format: float
        yearFrom:
          type: integer
          description: Starting year of comic  story
        yearTo:
          type: integer
          description: Ending year of comic story
        photonovel:
          type: boolean
          description: Whether it's a photonovel
        adaptation:
          type: boolean
          description: Whether it's an adaptation of an episode or a movie
        comicSeries:
          type: array
          description: Comic series this comics is included in
          items:
            '$ref': '#/components/schemas/ComicSeriesBase'
        writers:
          type: array
          description: Writers involved in the comics
          items:
            '$ref': '#/components/schemas/StaffBase'
        artists:
          type: array
          description: Artists involved in the comics
          items:
            '$ref': '#/components/schemas/StaffBase'
        editors:
          type: array
          description: Editors involved in the comics
          items:
            '$ref': '#/components/schemas/StaffBase'
        staff:
          type: array
          description: Other staff involved in the comics
          items:
            '$ref': '#/components/schemas/StaffBase'
        publishers:
          type: array
          description: Comics publishers
          items:
            '$ref': '#/components/schemas/CompanyBase'
        characters:
          type: array
          description: Characters appearing in the comics
          items:
            '$ref': '#/components/schemas/CharacterBase'
        references:
          type: array
          description: References
          items:
            '$ref': '#/components/schemas/Reference'
        comicCollections:
          type: array
          description: Comic collections this comics is included in
          items:
            '$ref': '#/components/schemas/ComicCollectionBase'
      required:
        - uid
        - title
    ComicsBaseResponse:
      type: object
      description: Response object for comics search
      properties:
        page:
          '$ref': '#/components/schemas/ResponsePage'
        sort:
          '$ref': '#/components/schemas/ResponseSort'
        comics:
          type: array
          description: List of comics matching given criteria
          items:
            '$ref': '#/components/schemas/ComicsBase'
    ComicsFullResponse:
      type: object
      description: Response object for single comics query
      properties:
        comics:
          '$ref': '#/components/schemas/ComicsFull'
    ComicCollectionHeader:
      type: object
      description: Header comic collection, embedded in other objects
      properties:
        uid:
          type: string
          description: Comic collection unique ID
        title:
          type: string
          description: Comic collection title
      required:
        - uid
        - title
    ComicCollectionBase:
      type: object
      description: Base comic collection, returned in search results
      properties:
        uid:
          type: string
          description: Comic collection unique ID
        title:
          type: string
          description: Comic collection title
        publishedYear:
          type: integer
          description: Year the comic collection was published
        publishedMonth:
          type: integer
          description: Month the comic collection was published
        publishedDay:
          type: integer
          description: Day the comic collection was published
        coverYear:
          type: integer
          description: Cover publication year
        coverMonth:
          type: integer
          description: Cover publication month
        coverDay:
          type: integer
          description: Cover publication day
        numberOfPages:
          type: integer
          description: Number of pages
        stardateFrom:
          type: number
          description: Starting stardate of comic collection stories
          format: float
        stardateTo:
          type: number
          description: Ending stardate of comic collection stories
          format: float
        yearFrom:
          type: integer
          description: Starting year of comic collection stories
        yearTo:
          type: integer
          description: Ending year of comic collection stories
        photonovel:
          type: boolean
          description: Whether it's a photonovel collection
      required:
        - uid
        - title
    ComicCollectionFull:
      type: object
      description: Full comic collection, returned when queried using UID
      properties:
        uid:
          type: string
          description: Comic collection unique ID
        title:
          type: string
          description: Comic collection title
        publishedYear:
          type: integer
          description: Year the comic collection was published
        publishedMonth:
          type: integer
          description: Month the comic collection was published
        publishedDay:
          type: integer
          description: Day the comic collection was published
        coverYear:
          type: integer
          description: Cover publication year
        coverMonth:
          type: integer
          description: Cover publication month
        coverDay:
          type: integer
          description: Cover publication day
        numberOfPages:
          type: integer
          description: Number of pages
        stardateFrom:
          type: number
          description: Starting stardate of comic collection stories
          format: float
        stardateTo:
          type: number
          description: Ending stardate of comic collection stories
          format: float
        yearFrom:
          type: integer
          description: Starting year of comic collection stories
        yearTo:
          type: integer
          description: Ending year of comic collection stories
        photonovel:
          type: boolean
          description: Whether it's a photonovel collection
        comicSeries:
          type: array
          description: Comic series this comic collection is included in
          items:
            '$ref': '#/components/schemas/ComicSeriesBase'
        writers:
          type: array
          description: Writers involved in the comic collection
          items:
            '$ref': '#/components/schemas/StaffBase'
        artists:
          type: array
          description: Artists involved in the comic collection
          items:
            '$ref': '#/components/schemas/StaffBase'
        editors:
          type: array
          description: Editors involved in the comic collection
          items:
            '$ref': '#/components/schemas/StaffBase'
        staff:
          type: array
          description: Other staff involved in the comic collection
          items:
            '$ref': '#/components/schemas/StaffBase'
        publishers:
          type: array
          description: Comic collection publishers
          items:
            '$ref': '#/components/schemas/CompanyBase'
        characters:
          type: array
          description: Characters appearing in the comic collection
          items:
            '$ref': '#/components/schemas/CharacterBase'
        references:
          type: array
          description: References
          items:
            '$ref': '#/components/schemas/Reference'
        comics:
          type: array
          description: Comics included in this comic collection
          items:
            '$ref': '#/components/schemas/ComicsBase'
      required:
        - uid
        - title
    ComicCollectionBaseResponse:
      type: object
      description: Response object for comic collections search
      properties:
        page:
          '$ref': '#/components/schemas/ResponsePage'
        sort:
          '$ref': '#/components/schemas/ResponseSort'
        comicCollections:
          type: array
          description: List of comic collections matching given criteria
          items:
            '$ref': '#/components/schemas/ComicCollectionBase'
    ComicCollectionFullResponse:
      type: object
      description: Response object for single comic collection query
      properties:
        comicCollection:
          '$ref': '#/components/schemas/ComicCollectionFull'
    ComicSeriesHeader:
      type: object
      description: Header book series, embedded in other objects
      properties:
        uid:
          type: string
          description: Comic series unique ID
        title:
          type: string
          description: Comic series title
      required:
        - uid
        - title
    ComicSeriesBase:
      type: object
      description: Base comic series, returned in search results
      properties:
        uid:
          type: string
          description: Comic series unique ID
        title:
          type: string
          description: Comic series title
        publishedYearFrom:
          type: integer
          description: Year from which the comic series was published
        publishedMonthFrom:
          type: integer
          description: Month from which the comic series was published
        publishedDayFrom:
          type: integer
          description: Day from which the comic series was published
        publishedYearTo:
          type: integer
          description: Year to which the comic series was published
        publishedMonthTo:
          type: integer
          description: Month to which the comic series was published
        publishedDayTo:
          type: integer
          description: Day to which the comic series was published
        numberOfIssues:
          type: integer
          description: Number of issues
        stardateFrom:
          type: number
          description: Starting stardate of comic series stories
          format: float
        stardateTo:
          type: number
          description: Ending stardate of comic series stories
          format: float
        yearFrom:
          type: integer
          description: Starting year of comic series stories
        yearTo:
          type: integer
          description: Ending year of comic series stories
        miniseries:
          type: boolean
          description: Whether it's a miniseries
        photonovelSeries:
          type: boolean
          description: Whether it's a photonovel series
      required:
        - uid
        - title
    ComicSeriesFull:
      type: object
      description: Full comic series, returned when queried using UID
      properties:
        uid:
          type: string
          description: Comic series unique ID
        title:
          type: string
          description: Comic series title
        publishedYearFrom:
          type: integer
          description: Year from which the comic series was published
        publishedMonthFrom:
          type: integer
          description: Month from which the comic series was published
        publishedDayFrom:
          type: integer
          description: Day from which the comic series was published
        publishedYearTo:
          type: integer
          description: Year to which the comic series was published
        publishedMonthTo:
          type: integer
          description: Month to which the comic series was published
        publishedDayTo:
          type: integer
          description: Day to which the comic series was published
        numberOfIssues:
          type: integer
          description: Number of issues
        stardateFrom:
          type: number
          description: Starting stardate of comic series stories
          format: float
        stardateTo:
          type: number
          description: Ending stardate of comic series stories
          format: float
        yearFrom:
          type: integer
          description: Starting year of comic series stories
        yearTo:
          type: integer
          description: Ending year of comic series stories
        miniseries:
          type: boolean
          description: Whether it's a miniseries
        photonovelSeries:
          type: boolean
          description: Whether it's a photonovel series
        parentSeries:
          type: array
          description: Comic series this comic series is included in
          items:
            '$ref': '#/components/schemas/ComicSeriesBase'
        childSeries:
          type: array
          description: Child comic series included in this comic series
          items:
            '$ref': '#/components/schemas/ComicSeriesBase'
        publishers:
          type: array
          description: Companies that published this comic series
          items:
            '$ref': '#/components/schemas/CompanyBase'
        comics:
          type: array
          description: Comics included in this comic series
          items:
            '$ref': '#/components/schemas/ComicsBase'
      required:
        - uid
        - title
    ComicSeriesBaseResponse:
      type: object
      description: Response object for comic series search
      properties:
        page:
          '$ref': '#/components/schemas/ResponsePage'
        sort:
          '$ref': '#/components/schemas/ResponseSort'
        comicSeries:
          type: array
          description: List of comic series matching given criteria
          items:
            '$ref': '#/components/schemas/ComicSeriesBase'
    ComicSeriesFullResponse:
      type: object
      description: Response object for single comic series query
      properties:
        comicSeries:
          '$ref': '#/components/schemas/ComicSeriesFull'
    ComicStripHeader:
      type: object
      description: Header comic strip, embedded in other objects
      properties:
        uid:
          type: string
          description: Comic strip unique ID
        title:
          type: string
          description: Comic strip title
      required:
        - uid
        - title
    ComicStripBase:
      type: object
      description: Base comic strip, returned in search results
      properties:
        uid:
          type: string
          description: Comic strip unique ID
        title:
          type: string
          description: Comic strip title
        periodical:
          type: string
          description: Title of the periodical the comic strip was published in
        publishedYearFrom:
          type: integer
          description: Year from which the comic strip was published
        publishedMonthFrom:
          type: integer
          description: Month from which the comic strip was published
        publishedDayFrom:
          type: integer
          description: Day from which the comic strip was published
        publishedYearTo:
          type: integer
          description: Year to which the comic strip was published
        publishedMonthTo:
          type: integer
          description: Month to which the comic strip was published
        publishedDayTo:
          type: integer
          description: Day to which the comic strip was published
        numberOfPages:
          type: integer
          description: Number of pages
        yearFrom:
          type: integer
          description: Starting year of comic strip story
        yearTo:
          type: integer
          description: Ending year of comic strip story
      required:
        - uid
        - title
    ComicStripFull:
      type: object
      description: Full comic strip, returned when queried using UID
      properties:
        uid:
          type: string
          description: Comic strip unique ID
        title:
          type: string
          description: Comic strip title
        periodical:
          type: string
          description: Title of the periodical the comic strip was published in
        publishedYearFrom:
          type: integer
          description: Year from which the comic strip was published
        publishedMonthFrom:
          type: integer
          description: Month from which the comic strip was published
        publishedDayFrom:
          type: integer
          description: Day from which the comic strip was published
        publishedYearTo:
          type: integer
          description: Year to which the comic strip was published
        publishedMonthTo:
          type: integer
          description: Month to which the comic strip was published
        publishedDayTo:
          type: integer
          description: Day to which the comic strip was published
        numberOfPages:
          type: integer
          description: Number of pages
        yearFrom:
          type: integer
          description: Starting year of comic strip stories
        yearTo:
          type: integer
          description: Ending year of comic strip stories
        comicSeries:
          type: array
          description: Comic series this comic strip is included in
          items:
            '$ref': '#/components/schemas/ComicSeriesBase'
        writers:
          type: array
          description: Writers involved in the comic strip
          items:
            '$ref': '#/components/schemas/StaffBase'
        artists:
          type: array
          description: Artists involved in the comic strip
          items:
            '$ref': '#/components/schemas/StaffBase'
        characters:
          type: array
          description: Characters appearing in the comic strip
          items:
            '$ref': '#/components/schemas/CharacterBase'
      required:
        - uid
        - title
    ComicStripBaseResponse:
      type: object
      description: Response object for comic strip search
      properties:
        page:
          '$ref': '#/components/schemas/ResponsePage'
        sort:
          '$ref': '#/components/schemas/ResponseSort'
        comicStrips:
          type: array
          description: List of comic strips matching given criteria
          items:
            '$ref': '#/components/schemas/ComicStripBase'
    ComicStripFullResponse:
      type: object
      description: Response object for single comic strip query
      properties:
        comicStrip:
          '$ref': '#/components/schemas/ComicStripFull'
    CompanyBase:
      type: object
      description: Base company, returned in search results
      properties:
        uid:
          type: string
          description: Company unique ID
        name:
          type: string
          description: Company name
        broadcaster:
          type: boolean
          description: Whether it's a broadcaster
        collectibleCompany:
          type: boolean
          description: Whether it's a collectible company
        conglomerate:
          type: boolean
          description: Whether it's a conglomerate
        digitalVisualEffectsCompany:
          type: boolean
          description: Whether it's a digital visual effects company
        distributor:
          type: boolean
          description: Whether it's a distributor
        gameCompany:
          type: boolean
          description: Whether it's a game company
        filmEquipmentCompany:
          type: boolean
          description: Whether it's a film equipment company
        makeUpEffectsStudio:
          type: boolean
          description: Whether it's a make-up effects studio
        mattePaintingCompany:
          type: boolean
          description: Whether it's a matte painting company
        modelAndMiniatureEffectsCompany:
          type: boolean
          description: Whether it's a model and miniature effects company
        postProductionCompany:
          type: boolean
          description: Whether it's a post-production company
        productionCompany:
          type: boolean
          description: Whether it's a production company
        propCompany:
          type: boolean
          description: Whether it's a prop company
        recordLabel:
          type: boolean
          description: Whether it's a record label
        specialEffectsCompany:
          type: boolean
          description: Whether it's a special effects company
        tvAndFilmProductionCompany:
          type: boolean
          description: Whether it's a TV and film production company
        videoGameCompany:
          type: boolean
          description: Whether it's a video game company
      required:
        - uid
        - name
    CompanyFull:
      type: object
      description: Full company, returned when queried using UID
      properties:
        uid:
          type: string
          description: Company unique ID
        name:
          type: string
          description: Company name
        broadcaster:
          type: boolean
          description: Whether it's a broadcaster
        collectibleCompany:
          type: boolean
          description: Whether it's a collectible company
        conglomerate:
          type: boolean
          description: Whether it's a conglomerate
        digitalVisualEffectsCompany:
          type: boolean
          description: Whether it's a digital visual effects company
        distributor:
          type: boolean
          description: Whether it's a distributor
        gameCompany:
          type: boolean
          description: Whether it's a game company
        filmEquipmentCompany:
          type: boolean
          description: Whether it's a film equipment company
        makeUpEffectsStudio:
          type: boolean
          description: Whether it's a make-up effects studio
        mattePaintingCompany:
          type: boolean
          description: Whether it's a matte painting company
        modelAndMiniatureEffectsCompany:
          type: boolean
          description: Whether it's a model and miniature effects company
        postProductionCompany:
          type: boolean
          description: Whether it's a post-production company
        productionCompany:
          type: boolean
          description: Whether it's a production company
        propCompany:
          type: boolean
          description: Whether it's a prop company
        recordLabel:
          type: boolean
          description: Whether it's a record label
        specialEffectsCompany:
          type: boolean
          description: Whether it's a special effects company
        tvAndFilmProductionCompany:
          type: boolean
          description: Whether it's a TV and film production company
        videoGameCompany:
          type: boolean
          description: Whether it's a video game company
      required:
        - uid
        - name
    CompanyHeader:
      type: object
      description: Header company, embedded in other objects
      properties:
        uid:
          type: string
          description: Company unique ID
        name:
          type: string
          description: Company title
      required:
        - uid
        - name
    CompanyBaseResponse:
      type: object
      description: Response object for companies search
      properties:
        page:
          '$ref': '#/components/schemas/ResponsePage'
        sort:
          '$ref': '#/components/schemas/ResponseSort'
        companies:
          type: array
          description: List of companies matching given criteria
          items:
            '$ref': '#/components/schemas/CompanyBase'
    CompanyFullResponse:
      type: object
      description: Response object for single company query
      properties:
        company:
          '$ref': '#/components/schemas/CompanyFull'
    ConflictBase:
      type: object
      description: Base conflict, returned in search results
      properties:
        uid:
          type: string
          description: Conflict unique ID
        name:
          type: string
          description: Conflict name
        yearFrom:
          type: integer
          description: Starting year of the conflict
        yearTo:
          type: integer
          description: Ending year of the conflict
        earthConflict:
          type: boolean
          description: Whether it was an Earth conflict
        federationWar:
          type: boolean
          description: Whether this conflict is part of war involving Federation
        klingonWar:
          type: boolean
          description: Whether this conflict is part of war involving the Klingons
        dominionWarBattle:
          type: boolean
          description: Whether this conflict is a Dominion war battle
        alternateReality:
          type: boolean
          description: Whether this conflict is from alternate reality
      required:
        - uid
        - name
    ConflictFull:
      type: object
      description: Base conflict, returned in search results
      properties:
        uid:
          type: string
          description: Conflict unique ID
        name:
          type: string
          description: Conflict name
        yearFrom:
          type: integer
          description: Starting year of the conflict
        yearTo:
          type: integer
          description: Ending year of the conflict
        earthConflict:
          type: boolean
          description: Whether it is an Earth conflict
        federationWar:
          type: boolean
          description: Whether this conflict is a part of war involving Federation
        klingonWar:
          type: boolean
          description: Whether this conflict is a part of war involving the Klingons
        dominionWarBattle:
          type: boolean
          description: Whether this conflict is a Dominion war battle
        alternateReality:
          type: boolean
          description: Whether this conflict is from alternate reality
        locations:
          type: array
          description: Locations this conflict occurred at
          items:
            '$ref': '#/components/schemas/LocationBase'
        firstSideBelligerents:
          type: array
          description: Organization involved in conflict on first side
          items:
            '$ref': '#/components/schemas/OrganizationBase'
        firstSideCommanders:
          type: array
          description: Commanders involved in conflict on first side
          items:
            '$ref': '#/components/schemas/CharacterBase'
        secondSideBelligerents:
          type: array
          description: Organization involved in conflict on second side
          items:
            '$ref': '#/components/schemas/OrganizationBase'
        secondSideCommanders:
          type: array
          description: Commanders involved in conflict on second side
          items:
            '$ref': '#/components/schemas/CharacterBase'
      required:
        - uid
        - name
    ConflictHeader:
      type: object
      description: Header conflict, embedded in other objects
      properties:
        uid:
          type: string
          description: Conflict unique ID
        name:
          type: string
          description: Conflict name
      required:
        - uid
        - name
    ConflictBaseResponse:
      type: object
      description: Response object for conflicts search
      properties:
        page:
          '$ref': '#/components/schemas/ResponsePage'
        sort:
          '$ref': '#/components/schemas/ResponseSort'
        conflicts:
          type: array
          description: List of conflicts matching given criteria
          items:
            '$ref': '#/components/schemas/ConflictBase'
    ConflictFullResponse:
      type: object
      description: Response object for single conflict query
      properties:
        conflict:
          '$ref': '#/components/schemas/ConflictFull'
    ContentLanguage:
      type: object
      description: Rating of video release, etc.
      properties:
        uid:
          type: string
          description: Language unique ID
        name:
          type: string
          description: Language name
        iso6391Code:
          type: string
          description: ISO 639-1 code
    ContentRatingSystem:
      type: string
      description: Content rating system
      enum:
        - BBFC
        - OFLC
        - OFLCNZ
        - DJCTQ
        - MDA
        - MPAA
        - CHVRS
        - RCQ
        - IFCO
        - FSK
        - NICAM
        - MCCYP
        - EIRIN
        - HK
        - CBFC
        - NMHH
        - VRC
        - RSAC
        - ESRB
        - ELSPA
        - PEGI
        - USK
        - SELL
        - ADESE
        - GSRR
        - ITUNES
    ContentRating:
      type: object
      description: Rating of video release, etc.
      properties:
        uid:
          type: string
          description: Rating unique ID
        contentRatingSystem:
          '$ref': '#/components/schemas/ContentRatingSystem'
        rating:
          type: string
          description: Rating within specified content rating system
    Country:
      type: object
      description: Real-world country
      properties:
        uid:
          type: string
          description: Country unique ID
        name:
          type: string
          description: Country name
        iso31661Alpha2Code:
          type: string
          description: ISO 3166-1 alpha-2 code
    ElementHeader:
      type: object
      description: Header element, embedded in other objects
      properties:
        uid:
          type: string
          description: Element unique ID
        name:
          type: string
          description: Element name
      required:
        - uid
        - name
    ElementBase:
      type: object
      description: Base element, returned in search results
      properties:
        uid:
          type: string
          description: Element unique ID
        name:
          type: string
          description: Element name
        symbol:
          type: string
          description: Element symbol
        atomicNumber:
          type: integer
          description: Element atomic number
        atomicWeight:
          type: integer
          description: Element atomic weight
        transuranium:
          type: boolean
          description: Whether it's a transuranium
        gammaSeries:
          type: boolean
          description: Whether it belongs to Gamma series
        hypersonicSeries:
          type: boolean
          description: Whether it belongs to Hypersonic series
        megaSeries:
          type: boolean
          description: Whether it belongs to Mega series
        omegaSeries:
          type: boolean
          description: Whether it belongs to Omega series
        transonicSeries:
          type: boolean
          description: Whether it belongs to Transonic series
        worldSeries:
          type: boolean
          description: Whether it belongs to World series
      required:
        - uid
        - name
    ElementFull:
      type: object
      description: Full element, returned when queried using UID
      properties:
        uid:
          type: string
          description: Element unique ID
        name:
          type: string
          description: Element name
        symbol:
          type: string
          description: Element symbol
        atomicNumber:
          type: integer
          description: Element atomic number
        atomicWeight:
          type: integer
          description: Element atomic weight
        transuranium:
          type: boolean
          description: Whether it's a transuranium
        gammaSeries:
          type: boolean
          description: Whether it belongs to Gamma series
        hypersonicSeries:
          type: boolean
          description: Whether it belongs to Hypersonic series
        megaSeries:
          type: boolean
          description: Whether it belongs to Mega series
        omegaSeries:
          type: boolean
          description: Whether it belongs to Omega series
        transonicSeries:
          type: boolean
          description: Whether it belongs to Transonic series
        worldSeries:
          type: boolean
          description: Whether it belongs to World series
      required:
        - uid
        - name
    ElementBaseResponse:
      type: object
      description: Response object for elements search
      properties:
        page:
          '$ref': '#/components/schemas/ResponsePage'
        sort:
          '$ref': '#/components/schemas/ResponseSort'
        elements:
          type: array
          description: List of elements matching given criteria
          items:
            '$ref': '#/components/schemas/ElementBase'
    ElementFullResponse:
      type: object
      description: Response object for single element query
      properties:
        element:
          '$ref': '#/components/schemas/ElementFull'
    EpisodeHeader:
      type: object
      description: Header episode, embedded in other objects
      properties:
        uid:
          type: string
          description: Episode unique ID
        title:
          type: string
          description: Episode title
      required:
        - uid
        - title
    EpisodeBase:
      type: object
      description: Base episode, returned in search results
      properties:
        uid:
          type: string
          description: Episode unique ID
        title:
          type: string
          description: Episode title
        titleGerman:
          type: string
          description: Episode title in German
        titleItalian:
          type: string
          description: Episode title in Italian
        titleJapanese:
          type: string
          description: Episode title in Japanese
        series:
          '$ref': '#/components/schemas/SeriesHeader'
        season:
          '$ref': '#/components/schemas/SeasonHeader'
        seasonNumber:
          type: integer
          description: Season number
        episodeNumber:
          type: integer
          description: Episode number in season
        productionSerialNumber:
          type: string
          description: Production serial number
        featureLength:
          type: boolean
          description: Whether it's a feature length episode
        stardateFrom:
          type: number
          description: Starting stardate of episode story
          format: float
        stardateTo:
          type: number
          description: Ending stardate of episode story
          format: float
        yearFrom:
          type: integer
          description: Starting year of episode story
        yearTo:
          type: integer
          description: Ending year of episode story
        usAirDate:
          type: string
          description: Date the episode was first aired in the United States
          format: date
        finalScriptDate:
          type: string
          description: Date the episode script was completed
          format: date
      required:
        - uid
        - title
    EpisodeFull:
      type: object
      description: Full episode, returned when queried using UID
      properties:
        uid:
          type: string
          description: Episode unique ID
        title:
          type: string
          description: Episode title
        titleGerman:
          type: string
          description: Episode title in German
        titleItalian:
          type: string
          description: Episode title in Italian
        titleJapanese:
          type: string
          description: Episode title in Japanese
        series:
          '$ref': '#/components/schemas/SeriesBase'
        season:
          '$ref': '#/components/schemas/SeasonBase'
        seasonNumber:
          type: integer
          description: Season number
        episodeNumber:
          type: integer
          description: Episode number in season
        productionSerialNumber:
          type: string
          description: Production serial number
        featureLength:
          type: boolean
          description: Whether it's a feature length episode
        stardateFrom:
          type: number
          description: Starting stardate of episode story
          format: float
        stardateTo:
          type: number
          description: Ending stardate of episode story
          format: float
        yearFrom:
          type: integer
          description: Starting year of episode story
        yearTo:
          type: integer
          description: Ending year of episode story
        usAirDate:
          type: string
          description: Date the episode was first aired in the United States
          format: date
        finalScriptDate:
          type: string
          description: Date the episode script was completed
          format: date
        writers:
          type: array
          description: Writers involved in the episode
          items:
            '$ref': '#/components/schemas/StaffBase'
        teleplayAuthors:
          type: array
          description: Teleplay authors involved in the episode
          items:
            '$ref': '#/components/schemas/StaffBase'
        storyAuthors:
          type: array
          description: Story authors involved in the episode
          items:
            '$ref': '#/components/schemas/StaffBase'
        directors:
          type: array
          description: Directors authors involved in the episode
          items:
            '$ref': '#/components/schemas/StaffBase'
        performers:
          type: array
          description: Performers appearing in the episode
          items:
            '$ref': '#/components/schemas/PerformerBase'
        stuntPerformers:
          type: array
          description: Stunt performers appearing in the episode
          items:
            '$ref': '#/components/schemas/PerformerBase'
        standInPerformers:
          type: array
          description: Stand-in performers appearing in the episode
          items:
            '$ref': '#/components/schemas/PerformerBase'
        characters:
          type: array
          description: Characters appearing in the episode
          items:
            '$ref': '#/components/schemas/CharacterBase'
      required:
        - uid
        - title
    EpisodeBaseResponse:
      type: object
      description: Response object for episodes search
      properties:
        page:
          '$ref': '#/components/schemas/ResponsePage'
        sort:
          '$ref': '#/components/schemas/ResponseSort'
        episodes:
          type: array
          description: List of episodes matching given criteria
          items:
            '$ref': '#/components/schemas/EpisodeBase'
    EpisodeFullResponse:
      type: object
      description: Response object for single episode query
      properties:
        episode:
          '$ref': '#/components/schemas/EpisodeFull'
    Error:
      type: object
      description: Error object
      properties:
        code:
          type: string
          description: Error code
        message:
          type: string
          description: Error message
    FoodHeader:
      type: object
      description: Header food, embedded in other objects
      properties:
        uid:
          type: string
          description: Food unique ID
        name:
          type: string
          description: Food name
      required:
        - uid
        - name
    FoodBase:
      type: object
      description: Base food, returned in search results
      properties:
        uid:
          type: string
          description: Food unique ID
        name:
          type: string
          description: Food name
        earthlyOrigin:
          type: boolean
          description: Whether it's of earthly origin
        dessert:
          type: boolean
          description: Whether it's a dessert
        fruit:
          type: boolean
          description: Whether it's a fruit
        herbOrSpice:
          type: boolean
          description: Whether it's a herb or a spice
        sauce:
          type: boolean
          description: Whether it's a sauce
        soup:
          type: boolean
          description: Whether it's a soup
        beverage:
          type: boolean
          description: Whether it's a beverage
        alcoholicBeverage:
          type: boolean
          description: Whether it's an alcoholic beverage
        juice:
          type: boolean
          description: Whether it's a juice
        tea:
          type: boolean
          description: Whether it's a tea
      required:
        - uid
        - name
    FoodFull:
      type: object
      description: Full food, returned when queried using UID
      properties:
        uid:
          type: string
          description: Food unique ID
        name:
          type: string
          description: Food name
        earthlyOrigin:
          type: boolean
          description: Whether it's of earthly origin
        dessert:
          type: boolean
          description: Whether it's a dessert
        fruit:
          type: boolean
          description: Whether it's a fruit
        herbOrSpice:
          type: boolean
          description: Whether it's an herb or a spice
        sauce:
          type: boolean
          description: Whether it's a sauce
        soup:
          type: boolean
          description: Whether it's a soup
        beverage:
          type: boolean
          description: Whether it's a beverage
        alcoholicBeverage:
          type: boolean
          description: Whether it's an alcoholic beverage
        juice:
          type: boolean
          description: Whether it's a juice
        tea:
          type: boolean
          description: Whether it's a tea
      required:
        - uid
        - name
    FoodBaseResponse:
      type: object
      description: Response object for foods search
      properties:
        page:
          '$ref': '#/components/schemas/ResponsePage'
        sort:
          '$ref': '#/components/schemas/ResponseSort'
        foods:
          type: array
          description: List of foods matching given criteria
          items:
            '$ref': '#/components/schemas/FoodBase'
    FoodFullResponse:
      type: object
      description: Response object for single food query
      properties:
        food:
          '$ref': '#/components/schemas/FoodFull'
    Gender:
      type: string
      description: Gender
      enum:
        - F
        - M
    Genre:
      type: object
      description: Genre of video games
      properties:
        uid:
          type: string
          description: Genre unique ID
        name:
          type: string
          description: Genre name
    LiteratureHeader:
      type: object
      description: Header literature, embedded in other objects
      properties:
        uid:
          type: string
          description: Literature unique ID
        title:
          type: string
          description: Literature title
      required:
        - uid
        - title
    LiteratureBase:
      type: object
      description: Base literature, returned in search results
      properties:
        uid:
          type: string
          description: Literature unique ID
        title:
          type: string
          description: Literature title
        earthlyOrigin:
          type: boolean
          description: Whether it's of earthly origin
        shakespeareanWork:
          type: boolean
          description: Whether it's a Shakespearean work
        report:
          type: boolean
          description: Whether it's a report
        scientificLiterature:
          type: boolean
          description: Whether it's a scientific literature
        technicalManual:
          type: boolean
          description: Whether it's a technical manual
        religiousLiterature:
          type: boolean
          description: Whether it's a religious literature
      required:
        - uid
        - title
    LiteratureFull:
      type: object
      description: Full literature, returned when queried using UID
      properties:
        uid:
          type: string
          description: Literature unique ID
        title:
          type: string
          description: Literature title
        earthlyOrigin:
          type: boolean
          description: Whether it's of earthly origin
        shakespeareanWork:
          type: boolean
          description: Whether it's a Shakespearean work
        report:
          type: boolean
          description: Whether it's a report
        scientificLiterature:
          type: boolean
          description: Whether it's a scientific literature
        technicalManual:
          type: boolean
          description: Whether it's a technical manual
        religiousLiterature:
          type: boolean
          description: Whether it's a religious literature
      required:
        - uid
        - title
    LiteratureBaseResponse:
      type: object
      description: Response object for literature search
      properties:
        page:
          '$ref': '#/components/schemas/ResponsePage'
        sort:
          '$ref': '#/components/schemas/ResponseSort'
        literature:
          type: array
          description: List of literature matching given criteria
          items:
            '$ref': '#/components/schemas/LiteratureBase'
    LiteratureFullResponse:
      type: object
      description: Response object for single literature query
      properties:
        literature:
          '$ref': '#/components/schemas/LiteratureFull'
    LocationHeader:
      type: object
      description: Header location, embedded in other objects
      properties:
        uid:
          type: string
          description: Location unique ID
        name:
          type: string
          description: Location name
      required:
        - uid
        - name
    LocationBase:
      type: object
      description: Base location, returned in search results
      properties:
        uid:
          type: string
          description: Location unique ID
        name:
          type: string
          description: Location name
        earthlyLocation:
          type: boolean
          description: Whether it's an earthly location
        fictionalLocation:
          type: boolean
          description: Whether it's a fictional location
        religiousLocation:
          type: boolean
          description: Whether it's a religious location
        geographicalLocation:
          type: boolean
          description: Whether it's a geographical location
        bodyOfWater:
          type: boolean
          description: Whether it's a body of water
        country:
          type: boolean
          description: Whether it's a country
        subnationalEntity:
          type: boolean
          description: Whether it's a subnational entity
        settlement:
          type: boolean
          description: Whether it's a settlement
        usSettlement:
          type: boolean
          description: Whether it's a US settlement
        bajoranSettlement:
          type: boolean
          description: Whether it's a Bajoran settlement
        colony:
          type: boolean
          description: Whether it's a colony
        landform:
          type: boolean
          description: Whether it's a landform
        landmark:
          type: boolean
          description: Whether it's a landmark
        road:
          type: boolean
          description: Whether it's a road
        structure:
          type: boolean
          description: Whether it's a structure
        shipyard:
          type: boolean
          description: Whether it's a shipyard
        buildingInterior:
          type: boolean
          description: Whether it's a building interior
        establishment:
          type: boolean
          description: Whether it's a establishment
        medicalEstablishment:
          type: boolean
          description: Whether it's a medical establishment
        ds9Establishment:
          type: boolean
          description: Whether it's a DS9 establishment
        school:
          type: boolean
          description: Whether it's a school
        mirror:
          type: boolean
          description: Whether this location is from mirror universe
        alternateReality:
          type: boolean
          description: Whether this location is from alternate reality
      required:
        - uid
        - name
    LocationFull:
      type: object
      description: Full location, returned when queried using UID
      properties:
        uid:
          type: string
          description: Location unique ID
        name:
          type: string
          description: Location name
        earthlyLocation:
          type: boolean
          description: Whether it's an earthly location
        fictionalLocation:
          type: boolean
          description: Whether it's a fictional location
        religiousLocation:
          type: boolean
          description: Whether it's a religious location
        geographicalLocation:
          type: boolean
          description: Whether it's a geographical location
        bodyOfWater:
          type: boolean
          description: Whether it's a body of water
        country:
          type: boolean
          description: Whether it's a country
        subnationalEntity:
          type: boolean
          description: Whether it's a subnational entity
        settlement:
          type: boolean
          description: Whether it's a settlement
        usSettlement:
          type: boolean
          description: Whether it's a US settlement
        bajoranSettlement:
          type: boolean
          description: Whether it's a Bajoran settlement
        colony:
          type: boolean
          description: Whether it's a colony
        landform:
          type: boolean
          description: Whether it's a landform
        landmark:
          type: boolean
          description: Whether it's a landmark
        road:
          type: boolean
          description: Whether it's a road
        structure:
          type: boolean
          description: Whether it's a structure
        shipyard:
          type: boolean
          description: Whether it's a shipyard
        buildingInterior:
          type: boolean
          description: Whether it's a building interior
        establishment:
          type: boolean
          description: Whether it's a establishment
        medicalEstablishment:
          type: boolean
          description: Whether it's a medical establishment
        ds9Establishment:
          type: boolean
          description: Whether it's a DS9 establishment
        school:
          type: boolean
          description: Whether it's a school
        mirror:
          type: boolean
          description: Whether this location is from mirror universe
        alternateReality:
          type: boolean
          description: Whether this location is from alternate reality
      required:
        - uid
        - name
    LocationBaseResponse:
      type: object
      description: Response object for locations search
      properties:
        page:
          '$ref': '#/components/schemas/ResponsePage'
        sort:
          '$ref': '#/components/schemas/ResponseSort'
        locations:
          type: array
          description: List of locations matching given criteria
          items:
            '$ref': '#/components/schemas/LocationBase'
    LocationFullResponse:
      type: object
      description: Response object for single location query
      properties:
        location:
          '$ref': '#/components/schemas/LocationFull'
    MagazineHeader:
      type: object
      description: Header magazine, embedded in other objects
      properties:
        uid:
          type: string
          description: Magazine unique ID
        title:
          type: string
          description: Magazine title
      required:
        - uid
        - title
    MagazineBase:
      type: object
      description: Base magazine, returned in search results
      properties:
        uid:
          type: string
          description: Magazine unique ID
        title:
          type: string
          description: Magazine title
        publishedYear:
          type: integer
          description: Year the magazine was published
        publishedMonth:
          type: integer
          description: Month the magazine was published
        publishedDay:
          type: integer
          description: Day the magazine was published
        coverYear:
          type: integer
          description: Cover publication year
        coverMonth:
          type: integer
          description: Cover publication month
        coverDay:
          type: integer
          description: Cover publication day
        numberOfPages:
          type: integer
          description: Number of pages
        issueNumber:
          type: string
          description: Magazine issue number
      required:
        - uid
        - title
    MagazineFull:
      type: object
      description: Full magazine, returned when queried using UID
      properties:
        uid:
          type: string
          description: Magazine unique ID
        title:
          type: string
          description: Magazine title
        publishedYear:
          type: integer
          description: Year the magazine was published
        publishedMonth:
          type: integer
          description: Month the magazine was published
        publishedDay:
          type: integer
          description: Day the magazine was published
        coverYear:
          type: integer
          description: Cover publication year
        coverMonth:
          type: integer
          description: Cover publication month
        coverDay:
          type: integer
          description: Cover publication day
        numberOfPages:
          type: integer
          description: Number of pages
        issueNumber:
          type: string
          description: Magazine issue number
        magazineSeries:
          type: array
          description: Magazine series this magazine is included in
          items:
            '$ref': '#/components/schemas/MagazineSeriesBase'
        editors:
          type: array
          description: Editors involved in the magazine
          items:
            '$ref': '#/components/schemas/StaffBase'
        publishers:
          type: array
          description: Magazine publishers
          items:
            '$ref': '#/components/schemas/CompanyBase'
      required:
        - uid
        - title
    MagazineBaseResponse:
      type: object
      description: Response object for magazine search
      properties:
        page:
          '$ref': '#/components/schemas/ResponsePage'
        sort:
          '$ref': '#/components/schemas/ResponseSort'
        magazines:
          type: array
          description: List of magazines matching given criteria
          items:
            '$ref': '#/components/schemas/MagazineBase'
    MagazineFullResponse:
      type: object
      description: Response object for single magazine query
      properties:
        magazine:
          '$ref': '#/components/schemas/MagazineFull'
    MagazineSeriesHeader:
      type: object
      description: Header book series, embedded in other objects
      properties:
        uid:
          type: string
          description: Magazine series unique ID
        title:
          type: string
          description: Magazine series title
      required:
        - uid
        - title
    MagazineSeriesBase:
      type: object
      description: Base magazine series, returned in search results
      properties:
        uid:
          type: string
          description: Magazine series unique ID
        title:
          type: string
          description: Magazine series title
        publishedYearFrom:
          type: integer
          description: Year from which the magazine series was published
        publishedMonthFrom:
          type: integer
          description: Month from which the magazine series was published
        publishedYearTo:
          type: integer
          description: Year to which the magazine series was published
        publishedMonthTo:
          type: integer
          description: Month to which the magazine series was published
        numberOfIssues:
          type: integer
          description: Number of issues
      required:
        - uid
        - title
    MagazineSeriesFull:
      type: object
      description: Full magazine series, returned when queried using UID
      properties:
        uid:
          type: string
          description: Magazine series unique ID
        title:
          type: string
          description: Magazine series title
        publishedYearFrom:
          type: integer
          description: Year from which the magazine series was published
        publishedMonthFrom:
          type: integer
          description: Month from which the magazine series was published
        publishedYearTo:
          type: integer
          description: Year to which the magazine series was published
        publishedMonthTo:
          type: integer
          description: Month to which the magazine series was published
        numberOfIssues:
          type: integer
          description: Number of issues
        publishers:
          type: array
          description: Companies that published this magazine series
          items:
            '$ref': '#/components/schemas/CompanyBase'
        editors:
          type: array
          description: Editors involved in the magazine series
          items:
            '$ref': '#/components/schemas/StaffBase'
        magazines:
          type: array
          description: Magazines included in this magazine series
          items:
            '$ref': '#/components/schemas/MagazineBase'
      required:
        - uid
        - title
    MagazineSeriesBaseResponse:
      type: object
      description: Response object for magazine series search
      properties:
        page:
          '$ref': '#/components/schemas/ResponsePage'
        sort:
          '$ref': '#/components/schemas/ResponseSort'
        magazineSeries:
          type: array
          description: List of magazine series matching given criteria
          items:
            '$ref': '#/components/schemas/MagazineSeriesBase'
    MagazineSeriesFullResponse:
      type: object
      description: Response object for single magazine series query
      properties:
        magazineSeries:
          '$ref': '#/components/schemas/MagazineSeriesFull'
    MaritalStatus:
      type: string
      description: Marital status
      enum:
        - SINGLE
        - ENGAGED
        - MARRIED
        - DIVORCED
        - REMARRIED
        - SEPARATED
        - WIDOWED
        - CAPTAINS_WOMAN
    MaterialHeader:
      type: object
      description: Header material, embedded in other objects
      properties:
        uid:
          type: string
          description: Material unique ID
        name:
          type: string
          description: Material name
      required:
        - uid
        - name
    MaterialBase:
      type: object
      description: Base material, returned in search results
      properties:
        uid:
          type: string
          description: Material unique ID
        name:
          type: string
          description: Material name
        chemicalCompound:
          type: boolean
          description: Whether it's a chemical compound
        biochemicalCompound:
          type: boolean
          description: Whether it's a biochemical compound
        drug:
          type: boolean
          description: Whether it's a drug
        poisonousSubstance:
          type: boolean
          description: Whether it's a poisonous substance
        explosive:
          type: boolean
          description: Whether it's an explosive
        gemstone:
          type: boolean
          description: Whether it's a gemstone
        alloyOrComposite:
          type: boolean
          description: Whether it's an alloy or a composite
        fuel:
          type: boolean
          description: Whether it's a fuel
        mineral:
          type: boolean
          description: Whether it's a mineral
        preciousMaterial:
          type: boolean
          description: Whether it's a precious material
      required:
        - uid
        - name
    MaterialFull:
      type: object
      description: Full material, returned when queried using UID
      properties:
        uid:
          type: string
          description: Material unique ID
        name:
          type: string
          description: Material name
        chemicalCompound:
          type: boolean
          description: Whether it's a chemical compound
        biochemicalCompound:
          type: boolean
          description: Whether it's a biochemical compound
        drug:
          type: boolean
          description: Whether it's a drug
        poisonousSubstance:
          type: boolean
          description: Whether it's a poisonous substance
        explosive:
          type: boolean
          description: Whether it's an explosive
        gemstone:
          type: boolean
          description: Whether it's a gemstone
        alloyOrComposite:
          type: boolean
          description: Whether it's an alloy or a composite
        fuel:
          type: boolean
          description: Whether it's a fuel
        mineral:
          type: boolean
          description: Whether it's a mineral
        preciousMaterial:
          type: boolean
          description: Whether it's a precious material
      required:
        - uid
        - name
    MaterialBaseResponse:
      type: object
      description: Response object for materials search
      properties:
        page:
          '$ref': '#/components/schemas/ResponsePage'
        sort:
          '$ref': '#/components/schemas/ResponseSort'
        materials:
          type: array
          description: List of materials matching given criteria
          items:
            '$ref': '#/components/schemas/MaterialBase'
    MaterialFullResponse:
      type: object
      description: Response object for single material query
      properties:
        material:
          '$ref': '#/components/schemas/MaterialFull'
    MedicalConditionHeader:
      type: object
      description: Header medical condition, embedded in other objects
      properties:
        uid:
          type: string
          description: Medical condition unique ID
        name:
          type: string
          description: Medical condition name
      required:
        - uid
        - name
    MedicalConditionBase:
      type: object
      description: Base medical condition, returned in search results
      properties:
        uid:
          type: string
          description: Medical condition unique ID
        name:
          type: string
          description: Medical condition name
        psychologicalCondition:
          type: boolean
          description: Whether it's a psychological condition
      required:
        - uid
        - name
    MedicalConditionFull:
      type: object
      description: Full medical condition, returned when queried using UID
      properties:
        uid:
          type: string
          description: Medical condition unique ID
        name:
          type: string
          description: Medical condition name
        psychologicalCondition:
          type: boolean
          description: Whether it's a psychological condition
      required:
        - uid
        - name
    MedicalConditionBaseResponse:
      type: object
      description: Response object for medical conditions search
      properties:
        page:
          '$ref': '#/components/schemas/ResponsePage'
        sort:
          '$ref': '#/components/schemas/ResponseSort'
        medicalConditions:
          type: array
          description: List of medical conditions matching given criteria
          items:
            '$ref': '#/components/schemas/MedicalConditionBase'
    MedicalConditionFullResponse:
      type: object
      description: Response object for single medical condition query
      properties:
        medicalCondition:
          '$ref': '#/components/schemas/MedicalConditionFull'
    MovieHeader:
      type: object
      description: Header movie, embedded in other objects
      properties:
        uid:
          type: string
          description: Movie unique ID
        title:
          type: string
          description: Movie title
      required:
        - uid
        - title
    MovieBase:
      type: object
      description: Base movie, returned in search results
      properties:
        uid:
          type: string
          description: Movie unique ID
        title:
          type: string
          description: Movie title
        mainDirector:
          '$ref': '#/components/schemas/StaffHeader'
        titleBulgarian:
          type: string
          description: Movie title in Bulgarian
        titleCatalan:
          type: string
          description: Movie title in Catalan
        titleChineseTraditional:
          type: string
          description: Movie title in Chinese traditional
        titleGerman:
          type: string
          description: Movie title in German
        titleItalian:
          type: string
          description: Movie title in Italian
        titleJapanese:
          type: string
          description: Movie title in Japanese
        titlePolish:
          type: string
          description: Movie title in Polish
        titleRussian:
          type: string
          description: Movie title in Russian
        titleSerbian:
          type: string
          description: Movie title in Serbian
        titleSpanish:
          type: string
          description: Movie title in Spanish
        stardateFrom:
          type: number
          description: Starting stardate of movie story
          format: float
        stardateTo:
          type: number
          description: Ending stardate of movie story
          format: float
        yearFrom:
          type: integer
          description: Starting year of movie story
        yearTo:
          type: integer
          description: Ending year of movie story
        usReleaseDate:
          type: string
          description: Date the movie was first released in the United States
          format: date
      required:
        - uid
        - title
    MovieFull:
      type: object
      description: Full movie, returned when queried using UID
      properties:
        uid:
          type: string
          description: Movie unique ID
        title:
          type: string
          description: Movie title
        mainDirector:
          '$ref': '#/components/schemas/StaffBase'
        titleBulgarian:
          type: string
          description: Movie title in Bulgarian
        titleCatalan:
          type: string
          description: Movie title in Catalan
        titleChineseTraditional:
          type: string
          description: Movie title in Chinese traditional
        titleGerman:
          type: string
          description: Movie title in German
        titleItalian:
          type: string
          description: Movie title in Italian
        titleJapanese:
          type: string
          description: Movie title in Japanese
        titlePolish:
          type: string
          description: Movie title in Polish
        titleRussian:
          type: string
          description: Movie title in Russian
        titleSerbian:
          type: string
          description: Movie title in Serbian
        titleSpanish:
          type: string
          description: Movie title in Spanish
        stardateFrom:
          type: number
          description: Starting stardate of movie story
          format: float
        stardateTo:
          type: number
          description: Ending stardate of movie story
          format: float
        yearFrom:
          type: integer
          description: Starting year of movie story
        yearTo:
          type: integer
          description: Ending year of movie story
        usReleaseDate:
          type: string
          description: Date the movie was first released in the United States
          format: date
        writers:
          type: array
          description: Writers involved in the movie
          items:
            '$ref': '#/components/schemas/StaffBase'
        screenplayAuthors:
          type: array
          description: Screenplay authors involved in the movie
          items:
            '$ref': '#/components/schemas/StaffBase'
        storyAuthors:
          type: array
          description: Story authors authors involved in the movie
          items:
            '$ref': '#/components/schemas/StaffBase'
        directors:
          type: array
          description: Directors authors involved in the movie
          items:
            '$ref': '#/components/schemas/StaffBase'
        producers:
          type: array
          description: Producers authors involved in the movie
          items:
            '$ref': '#/components/schemas/StaffBase'
        staff:
          type: array
          description: Other staff involved in the movie
          items:
            '$ref': '#/components/schemas/StaffBase'
        performers:
          type: array
          description: Performers appearing in the movie
          items:
            '$ref': '#/components/schemas/PerformerBase'
        stuntPerformers:
          type: array
          description: Stunt performers appearing in the movie
          items:
            '$ref': '#/components/schemas/PerformerBase'
        standInPerformers:
          type: array
          description: Stand-in performers appearing in the movie
          items:
            '$ref': '#/components/schemas/PerformerBase'
        characters:
          type: array
          description: Characters appearing in the movie
          items:
            '$ref': '#/components/schemas/CharacterBase'
      required:
        - uid
        - title
    MovieBaseResponse:
      type: object
      description: Response object for movies search
      properties:
        page:
          '$ref': '#/components/schemas/ResponsePage'
        sort:
          '$ref': '#/components/schemas/ResponseSort'
        movies:
          type: array
          description: List of movies matching given criteria
          items:
            '$ref': '#/components/schemas/MovieBase'
    MovieFullResponse:
      type: object
      description: Response object for single movie query
      properties:
        movie:
          '$ref': '#/components/schemas/MovieFull'
    OccupationHeader:
      type: object
      description: Header occupation, embedded in other objects
      properties:
        uid:
          type: string
          description: Occupation unique ID
        name:
          type: string
          description: Occupation name
      required:
        - uid
        - name
    OccupationBase:
      type: object
      description: Base occupations, returned in search results
      properties:
        uid:
          type: string
          description: Occupation unique ID
        name:
          type: string
          description: Occupation name
        legalOccupation:
          type: boolean
          description: Whether it's a legal occupation
        medicalOccupation:
          type: boolean
          description: Whether it's a medical occupation
        scientificOccupation:
          type: boolean
          description: Whether it's a scientific occupation
      required:
        - uid
        - name
    OccupationFull:
      type: object
      description: Full occupation, returned when queried using UID
      properties:
        uid:
          type: string
          description: Occupation unique ID
        name:
          type: string
          description: Occupation name
        legalOccupation:
          type: boolean
          description: Whether it's a legal occupation
        medicalOccupation:
          type: boolean
          description: Whether it's a medical occupation
        scientificOccupation:
          type: boolean
          description: Whether it's a scientific occupation
        characters:
          type: array
          description: Characters with this occupation
          items:
            '$ref': '#/components/schemas/CharacterBase'
      required:
        - uid
        - name
    OccupationBaseResponse:
      type: object
      description: Response object for occupations search
      properties:
        page:
          '$ref': '#/components/schemas/ResponsePage'
        sort:
          '$ref': '#/components/schemas/ResponseSort'
        occupations:
          type: array
          description: List of occupations matching given criteria
          items:
            '$ref': '#/components/schemas/OccupationBase'
    OccupationFullResponse:
      type: object
      description: Response object for single occupation query
      properties:
        occupation:
          '$ref': '#/components/schemas/OccupationFull'
    OrganizationHeader:
      type: object
      description: Header organization, embedded in other objects
      properties:
        uid:
          type: string
          description: Organization unique ID
        name:
          type: string
          description: Organization name
      required:
        - uid
        - name
    OrganizationBase:
      type: object
      description: Base organization, returned in search results
      properties:
        uid:
          type: string
          description: Organization unique ID
        name:
          type: string
          description: Organization name
        government:
          type: boolean
          description: Whether it's a government
        intergovernmentalOrganization:
          type: boolean
          description: Whether it's an intergovernmental organization
        researchOrganization:
          type: boolean
          description: Whether it's a research organization
        sportOrganization:
          type: boolean
          description: Whether it's a sport organization
        medicalOrganization:
          type: boolean
          description: Whether it's a medical organization
        militaryOrganization:
          type: boolean
          description: Whether it's a military organization
        militaryUnit:
          type: boolean
          description: Whether it's a military unit
        governmentAgency:
          type: boolean
          description: Whether it's a government agency
        lawEnforcementAgency:
          type: boolean
          description: Whether it's a law enforcement agency
        prisonOrPenalColony:
          type: boolean
          description: Whether it's a prison or penal colony
        mirror:
          type: boolean
          description: Whether this organization is from mirror universe
        alternateReality:
          type: boolean
          description: Whether this location is from alternate reality
      required:
        - uid
        - name
    OrganizationFull:
      type: object
      description: Full organization, returned when queried using UID
      properties:
        uid:
          type: string
          description: Organization unique ID
        name:
          type: string
          description: Organization name
        government:
          type: boolean
          description: Whether it's a government
        intergovernmentalOrganization:
          type: boolean
          description: Whether it's an intergovernmental organization
        researchOrganization:
          type: boolean
          description: Whether it's a research organization
        sportOrganization:
          type: boolean
          description: Whether it's a sport organization
        medicalOrganization:
          type: boolean
          description: Whether it's a medical organization
        militaryOrganization:
          type: boolean
          description: Whether it's a military organization
        militaryUnit:
          type: boolean
          description: Whether it's a military unit
        governmentAgency:
          type: boolean
          description: Whether it's a government agency
        lawEnforcementAgency:
          type: boolean
          description: Whether it's a law enforcement agency
        prisonOrPenalColony:
          type: boolean
          description: Whether it's a prison or penal colony
        mirror:
          type: boolean
          description: Whether this organization is from mirror universe
        alternateReality:
          type: boolean
          description: Whether this organization is from alternate reality
        characters:
          type: array
          description: Characters belonging to this organization
          items:
            '$ref': '#/components/schemas/CharacterBase'
      required:
        - uid
        - name
    OrganizationBaseResponse:
      type: object
      description: Response object for organizations search
      properties:
        page:
          '$ref': '#/components/schemas/ResponsePage'
        sort:
          '$ref': '#/components/schemas/ResponseSort'
        organizations:
          type: array
          description: List of organizations matching given criteria
          items:
            '$ref': '#/components/schemas/OrganizationBase'
    OrganizationFullResponse:
      type: object
      description: Response object for single organization query
      properties:
        organization:
          '$ref': '#/components/schemas/OrganizationFull'
    PerformerHeader:
      type: object
      description: Header performer, embedded in other objects
      properties:
        uid:
          type: string
          description: Performer unique ID
        name:
          type: string
          description: Performer name
      required:
        - uid
        - name
    PerformerBase:
      type: object
      description: Base performer, returned in search results
      properties:
        uid:
          type: string
          description: Performer unique ID
        name:
          type: string
          description: Performer name
        birthName:
          type: string
          description: Performer birth name
        gender:
          '$ref': '#/components/schemas/Gender'
        dateOfBirth:
          type: string
          description: Date the performer was born
          format: date
        placeOfBirth:
          type: string
          description: Place the performer was born
        dateOfDeath:
          type: string
          description: Date the performer died
          format: date
        placeOfDeath:
          type: string
          description: Place the performer died
        animalPerformer:
          type: boolean
          description: Whether it's an animal performer
        disPerformer:
          type: boolean
          description: "Whether it's a performer that appeared in Star Trek: Discovery"
        ds9Performer:
          type: boolean
          description: "Whether it's a performer that appeared in Star Trek: Deep
            Space Nine"
        entPerformer:
          type: boolean
          description: "Whether it's a performer that appeared in Star Trek: Enterprise"
        filmPerformer:
          type: boolean
          description: Whether it's a performer that appeared in a Star Trek movie
        standInPerformer:
          type: boolean
          description: Whether it's a stand-in performer
        stuntPerformer:
          type: boolean
          description: Whether it's a stunt performer
        tasPerformer:
          type: boolean
          description: "Whether it's a performer that appeared in Star Trek: The
            Animated Series"
        tngPerformer:
          type: boolean
          description: "Whether it's a performer that appeared in Star Trek: The
            Next Generation"
        tosPerformer:
          type: boolean
          description: "Whether it's a performer that appeared in Star Trek: The
            Original Series"
        videoGamePerformer:
          type: boolean
          description: Whether it's a video game performer
        voicePerformer:
          type: boolean
          description: Whether it's a voice performer
        voyPerformer:
          type: boolean
          description: "Whether it's a performer that appeared in Star Trek: Voyager"
      required:
        - uid
        - name
    PerformerFull:
      type: object
      description: Full performer, returned when queried using UID
      properties:
        uid:
          type: string
          description: Performer unique ID
        name:
          type: string
          description: Performer name
        birthName:
          type: string
          description: Performer birth name
        gender:
          '$ref': '#/components/schemas/Gender'
        dateOfBirth:
          type: string
          description: Date the performer was born
          format: date
        placeOfBirth:
          type: string
          description: Place the performer was born
        dateOfDeath:
          type: string
          description: Date the performer died
          format: date
        placeOfDeath:
          type: string
          description: Place the performer died
        animalPerformer:
          type: boolean
          description: Whether it's an animal performer
        disPerformer:
          type: boolean
          description: "Whether it's a performer that appeared in Star Trek: Discovery"
        ds9Performer:
          type: boolean
          description: "Whether it's a performer that appeared in Star Trek: Deep
            Space Nine"
        entPerformer:
          type: boolean
          description: "Whether it's a performer that appeared in Star Trek: Enterprise"
        filmPerformer:
          type: boolean
          description: Whether it's a performer that appeared in a Star Trek movie
        standInPerformer:
          type: boolean
          description: Whether it's a stand-in performer
        stuntPerformer:
          type: boolean
          description: Whether it's a stunt performer
        tasPerformer:
          type: boolean
          description: "Whether it's a performer that appeared in Star Trek: The
            Animated Series"
        tngPerformer:
          type: boolean
          description: "Whether it's a performer that appeared in Star Trek: The
            Next Generation"
        tosPerformer:
          type: boolean
          description: "Whether it's a performer that appeared in Star Trek: The
            Original Series"
        videoGamePerformer:
          type: boolean
          description: Whether it's a video game performer
        voicePerformer:
          type: boolean
          description: Whether it's a voice performer
        voyPerformer:
          type: boolean
          description: "Whether it's a performer that appeared in Star Trek: Voyager"
        episodesPerformances:
          type: array
          description: Episodes in which this person appeared as a performer
          items:
            '$ref': '#/components/schemas/EpisodeBase'
        episodesStuntPerformances:
          type: array
          description: Episodes in which this person appeared as a stunt performer
          items:
            '$ref': '#/components/schemas/EpisodeBase'
        episodesStandInPerformances:
          type: array
          description: Episodes in which this person appeared as a stand-in performer
          items:
            '$ref': '#/components/schemas/EpisodeBase'
        moviesPerformances:
          type: array
          description: Movies in which this person appeared as a performer
          items:
            '$ref': '#/components/schemas/MovieBase'
        moviesStuntPerformances:
          type: array
          description: Movies in which this person appeared as a stunt performer
          items:
            '$ref': '#/components/schemas/MovieBase'
        moviesStandInPerformances:
          type: array
          description: Movies in which this person appeared as a stand-in performer
          items:
            '$ref': '#/components/schemas/MovieBase'
        characters:
          type: array
          description: Characters played by this performer
          items:
            '$ref': '#/components/schemas/CharacterBase'
      required:
        - uid
        - name
    PerformerBaseResponse:
      type: object
      description: Response object for performers search
      properties:
        page:
          '$ref': '#/components/schemas/ResponsePage'
        sort:
          '$ref': '#/components/schemas/ResponseSort'
        performers:
          type: array
          description: List of performers matching given criteria
          items:
            '$ref': '#/components/schemas/PerformerBase'
    PerformerFullResponse:
      type: object
      description: Response object for single performer query
      properties:
        performer:
          '$ref': '#/components/schemas/PerformerFull'
    Platform:
      type: object
      description: Platform of video games
      properties:
        uid:
          type: string
          description: Platform unique ID
        name:
          type: string
          description: Platform name
    ProductionRunUnit:
      type: string
      description: Production run unit
      enum:
        - BOX
        - SET
    Reference:
      type: object
      description: Reference of book, comics, video release, etc.
      properties:
        uid:
          type: string
          description: Reference unique ID
        referenceType:
          '$ref': '#/components/schemas/ReferenceType'
        referenceNumber:
          type: string
          description: Reference number
    ReferenceType:
      type: string
      description: Reference type
      enum:
        - ASIN
        - ISBN
    ResponsePage:
      type: object
      description: Object describing response page
      properties:
        pageNumber:
          type: integer
          description: Zero-based page number
          format: int32
        pageSize:
          type: integer
          description: Page size
          format: int32
        numberOfElements:
          type: integer
          description: Number of elements in page
          format: int32
        totalElements:
          type: integer
          description: Total elements found
          format: int32
        totalPages:
          type: integer
          description: Total pages found
          format: int32
        firstPage:
          type: boolean
          description: Whether it is the first page
        lastPage:
          type: boolean
          description: Whether it is the last page
    ResponseSort:
      type: object
      description: Response sort
      properties:
        clauses:
          type: array
          description: List of response sort rules
          items:
            '$ref': '#/components/schemas/ResponseSortClause'
    ResponseSortClause:
      type: object
      description: Single response sort clause
      properties:
        name:
          type: string
          description: Field name results are sorted by
        direction:
          '$ref': '#/components/schemas/ResponseSortDirection'
        clauseOrder:
          type: integer
          description: Order in which this clause was applied
      required:
        - name
        - direction
        - clauseOrder
    ResponseSortDirection:
      type: string
      description: Sort direction
      enum:
        - ASC
        - DESC
    SeasonHeader:
      type: object
      description: Header season, embedded in other objects
      properties:
        uid:
          type: string
          description: Season unique ID
        title:
          type: string
          description: Season title
      required:
        - uid
        - title
    SeasonBase:
      type: object
      description: Base season, returned in search results
      properties:
        uid:
          type: string
          description: Season unique ID
        title:
          type: string
          description: Season title
        series:
          '$ref': '#/components/schemas/SeriesHeader'
        seasonNumber:
          type: integer
          description: Season number in series
        numberOfEpisodes:
          type: integer
          description: Number of episodes in this season
      required:
        - uid
        - title
    SeasonFull:
      type: object
      description: Full location, returned when queried using UID
      properties:
        uid:
          type: string
          description: Season unique ID
        title:
          type: string
          description: Season title
        series:
          '$ref': '#/components/schemas/SeriesBase'
        seasonNumber:
          type: integer
          description: Season number in series
        numberOfEpisodes:
          type: integer
          description: Number of episodes in this season
        episodes:
          type: array
          description: Episodes in this season
          items:
            '$ref': '#/components/schemas/EpisodeBase'
      required:
        - uid
        - title
    SeasonBaseResponse:
      type: object
      description: Response object for seasons search
      properties:
        page:
          '$ref': '#/components/schemas/ResponsePage'
        sort:
          '$ref': '#/components/schemas/ResponseSort'
        seasons:
          type: array
          description: List of seasons matching given criteria
          items:
            '$ref': '#/components/schemas/SeasonBase'
    SeasonFullResponse:
      type: object
      description: Response object for single season query
      properties:
        season:
          '$ref': '#/components/schemas/SeasonFull'
    SeriesHeader:
      type: object
      description: Header series, embedded in other objects
      properties:
        uid:
          type: string
          description: Series unique ID
        title:
          type: string
          description: Series title
      required:
        - uid
        - title
    SeriesBase:
      type: object
      description: Base series, returned in search results
      properties:
        uid:
          type: string
          description: Series unique ID
        title:
          type: string
          description: Series title
        abbreviation:
          type: string
          description: Series abbreviation
        productionStartYear:
          type: integer
          description: Year the series production started
        productionEndYear:
          type: integer
          description: Year the series production ended
        originalRunStartDate:
          type: string
          description: Date the series originally ran from
          format: date
        originalRunEndDate:
          type: string
          description: Date the series originally ran to
          format: date
        seasonsCount:
          type: integer
          description: Number of seasons
        episodesCount:
          type: integer
          description: Number of episodes
        featureLengthEpisodesCount:
          type: integer
          description: Number of feature length episodes
        productionCompany:
          '$ref': '#/components/schemas/CompanyHeader'
        originalBroadcaster:
          '$ref': '#/components/schemas/CompanyHeader'
      required:
        - uid
        - title
        - abbreviation
    SeriesFull:
      type: object
      description: Full series, returned when queried using UID
      properties:
        uid:
          type: string
          description: Series unique ID
        title:
          type: string
          description: Series title
        abbreviation:
          type: string
          description: Series abbreviation
        productionStartYear:
          type: integer
          description: Year the series production started
        productionEndYear:
          type: integer
          description: Year the series production ended
        originalRunStartDate:
          type: string
          description: Date the series originally ran from
          format: date
        originalRunEndDate:
          type: string
          description: Date the series originally ran to
          format: date
        seasonsCount:
          type: integer
          description: Number of seasons
        episodesCount:
          type: integer
          description: Number of episodes
        featureLengthEpisodesCount:
          type: integer
          description: Number of feature length episodes
        productionCompany:
          '$ref': '#/components/schemas/CompanyBase'
        originalBroadcaster:
          '$ref': '#/components/schemas/CompanyBase'
        episodes:
          type: array
          description: Episodes in the series
          items:
            '$ref': '#/components/schemas/EpisodeBase'
        seasons:
          type: array
          description: Seasons in the series
          items:
            '$ref': '#/components/schemas/SeasonBase'
      required:
        - uid
        - title
        - abbreviation
    SeriesBaseResponse:
      type: object
      description: Response object for series search
      properties:
        page:
          '$ref': '#/components/schemas/ResponsePage'
        sort:
          '$ref': '#/components/schemas/ResponseSort'
        series:
          type: array
          description: List of series matching given criteria
          items:
            '$ref': '#/components/schemas/SeriesBase'
    SeriesFullResponse:
      type: object
      description: Response object for single series query
      properties:
        series:
          '$ref': '#/components/schemas/SeriesFull'
    SoundtrackHeader:
      type: object
      description: Header soundtrack, embedded in other objects
      properties:
        uid:
          type: string
          description: Soundtrack unique ID
        title:
          type: string
          description: Soundtrack title
      required:
        - uid
        - title
    SoundtrackBase:
      type: object
      description: Base soundtrack, returned in search results
      properties:
        uid:
          type: string
          description: Soundtrack unique ID
        title:
          type: string
          description: Soundtrack title
        releaseDate:
          type: string
          description: Release date
          format: date
        length:
          type: integer
          description: Length, in seconds
      required:
        - uid
        - title
    SoundtrackFull:
      type: object
      description: Full soundtrack, returned when queried using UID
      properties:
        uid:
          type: string
          description: Soundtrack unique ID
        title:
          type: string
          description: Soundtrack title
        releaseDate:
          type: string
          description: Release date
          format: date
        length:
          type: integer
          description: Length, in seconds
        labels:
          type: array
          description: Labels this soundtrack was relesed by
          items:
            '$ref': '#/components/schemas/CompanyBase'
        composers:
          type: array
          description: Composers
          items:
            '$ref': '#/components/schemas/StaffBase'
        contributors:
          type: array
          description: Other musicians that contributed to this soundtrack
          items:
            '$ref': '#/components/schemas/StaffBase'
        orchestrators:
          type: array
          description: Orchestrators
          items:
            '$ref': '#/components/schemas/StaffBase'
        references:
          type: array
          description: References
          items:
            '$ref': '#/components/schemas/Reference'
      required:
        - uid
        - title
    SoundtrackBaseResponse:
      type: object
      description: Response object for soundtracks search
      properties:
        page:
          '$ref': '#/components/schemas/ResponsePage'
        sort:
          '$ref': '#/components/schemas/ResponseSort'
        soundtracks:
          type: array
          description: List of soundtracks matching given criteria
          items:
            '$ref': '#/components/schemas/SoundtrackBase'
    SoundtrackFullResponse:
      type: object
      description: Response object for single soundtrack query
      properties:
        soundtrack:
          '$ref': '#/components/schemas/SoundtrackFull'
    SpacecraftHeader:
      type: object
      description: Header spacecraft, embedded in other objects
      properties:
        uid:
          type: string
          description: Spacecraft unique ID
        name:
          type: string
          description: Spacecraft name
      required:
        - uid
        - name
    SpacecraftBase:
      type: object
      description: Base spacecraft, returned in search results
      properties:
        uid:
          type: string
          description: Spacecraft unique ID
        name:
          type: string
          description: Spacecraft name
        registry:
          type: string
          description: Spacecraft registry
        status:
          type: string
          description: Status of a spacecraft (in prime reality, if spacecraft was
            in more than one realities)
        dateStatus:
          type: string
          description: Date the spacecraft status was last known
        spacecraftClass:
          '$ref': '#/components/schemas/SpacecraftClassHeader'
        owner:
          '$ref': '#/components/schemas/OrganizationHeader'
        operator:
          '$ref': '#/components/schemas/OrganizationHeader'
      required:
        - uid
        - name
    SpacecraftFull:
      type: object
      description: Full spacecraft, returned when queried using UID
      properties:
        uid:
          type: string
          description: Spacecraft unique ID
        name:
          type: string
          description: Spacecraft name
        registry:
          type: string
          description: Spacecraft registry
        status:
          type: string
          description: Status of a spacecraft (in prime reality, if spacecraft was
            in more than one realities)
        dateStatus:
          type: string
          description: Date the spacecraft status was last known
        spacecraftClass:
          '$ref': '#/components/schemas/SpacecraftClassBase'
        owner:
          '$ref': '#/components/schemas/OrganizationBase'
        operator:
          '$ref': '#/components/schemas/OrganizationBase'
        spacecraftTypes:
          type: array
          description: Spacecraft types
          items:
            '$ref': '#/components/schemas/SpacecraftType'
      required:
        - uid
        - name
    SpacecraftBaseResponse:
      type: object
      description: Response object for spacecrafts search
      properties:
        page:
          '$ref': '#/components/schemas/ResponsePage'
        sort:
          '$ref': '#/components/schemas/ResponseSort'
        spacecrafts:
          type: array
          description: List of spacecrafts matching given criteria
          items:
            '$ref': '#/components/schemas/SpacecraftBase'
    SpacecraftFullResponse:
      type: object
      description: Response object for single spacecraft query
      properties:
        spacecraft:
          '$ref': '#/components/schemas/SpacecraftFull'
    SpacecraftClassHeader:
      type: object
      description: Header spacecraft class, embedded in other objects
      properties:
        uid:
          type: string
          description: Spacecraft class unique ID
        name:
          type: string
          description: Spacecraft class name
      required:
        - uid
        - name
    SpacecraftClassBase:
      type: object
      description: Base spacecraft class, returned in search results
      properties:
        uid:
          type: string
          description: Spacecraft class unique ID
        name:
          type: string
          description: Spacecraft class name
        numberOfDecks:
          type: integer
          description: Number of decks
        warpCapable:
          type: boolean
          description: Whether it's a warp-capable spacecraft class
        alternateReality:
          type: boolean
          description: Whether this spacecraft class is from alternate reality
        activeFrom:
          type: string
          description: Starting period when this spacecraft class was in use
        activeTo:
          type: string
          description: Ending period when this spacecraft class was in use
        species:
          '$ref': '#/components/schemas/SpeciesHeader'
        owner:
          '$ref': '#/components/schemas/OrganizationHeader'
        operator:
          '$ref': '#/components/schemas/OrganizationHeader'
        affiliation:
          '$ref': '#/components/schemas/OrganizationHeader'
      required:
        - uid
        - name
    SpacecraftClassFull:
      type: object
      description: Full spacecraft class, returned when queried using UID
      properties:
        uid:
          type: string
          description: Spacecraft class unique ID
        name:
          type: string
          description: Spacecraft class name
        numberOfDecks:
          type: integer
          description: Number of decks
        warpCapable:
          type: boolean
          description: Whether it's a warp-capable spacecraft class
        alternateReality:
          type: boolean
          description: Whether this spacecraft class is from alternate reality
        activeFrom:
          type: string
          description: Starting period when this spacecraft class was in use
        activeTo:
          type: string
          description: Ending period when this spacecraft class was in use
        species:
          '$ref': '#/components/schemas/SpeciesHeader'
        owner:
          '$ref': '#/components/schemas/OrganizationBase'
        operator:
          '$ref': '#/components/schemas/OrganizationBase'
        affiliation:
          '$ref': '#/components/schemas/OrganizationBase'
        spacecraftTypes:
          type: array
          description: Spacecraft types
          items:
            '$ref': '#/components/schemas/SpacecraftType'
        spacecrafts:
          type: array
          description: Spacecrafts
          items:
            '$ref': '#/components/schemas/SpacecraftBase'
      required:
        - uid
        - name
    SpacecraftClassBaseResponse:
      type: object
      description: Response object for spacecraft classes search
      properties:
        page:
          '$ref': '#/components/schemas/ResponsePage'
        sort:
          '$ref': '#/components/schemas/ResponseSort'
        spacecraftClasses:
          type: array
          description: List of spacecraft classes matching given criteria
          items:
            '$ref': '#/components/schemas/SpacecraftClassBase'
    SpacecraftClassFullResponse:
      type: object
      description: Response object for single spacecraft class query
      properties:
        spacecraftClass:
          '$ref': '#/components/schemas/SpacecraftClassFull'
    SpacecraftType:
      type: object
      description: Rating of video release, etc.
      properties:
        uid:
          type: string
          description: Spacecraft type unique ID
        name:
          type: string
          description: Spacecraft type name
    SpeciesHeader:
      type: object
      description: Header species, embedded in other objects
      properties:
        uid:
          type: string
          description: Species unique ID
        name:
          type: string
          description: Species name
      required:
        - uid
        - name
    SpeciesBase:
      type: object
      description: Base species, returned in search results
      properties:
        uid:
          type: string
          description: Species unique ID
        name:
          type: string
          description: Species name
        homeworld:
          '$ref': '#/components/schemas/AstronomicalObjectHeader'
        quadrant:
          '$ref': '#/components/schemas/AstronomicalObjectHeader'
        extinctSpecies:
          type: boolean
          description: Whether it's an extinct species
        warpCapableSpecies:
          type: boolean
          description: Whether it's a warp-capable species
        extraGalacticSpecies:
          type: boolean
          description: Whether it's an extra-galactic species
        humanoidSpecies:
          type: boolean
          description: Whether it's a humanoid species
        reptilianSpecies:
          type: boolean
          description: Whether it's a reptilian species
        nonCorporealSpecies:
          type: boolean
          description: Whether it's a non-corporeal species
        shapeshiftingSpecies:
          type: boolean
          description: Whether it's a shapeshifting species
        spaceborneSpecies:
          type: boolean
          description: Whether it's a spaceborne species
        telepathicSpecies:
          type: boolean
          description: Whether it's a telepathic species
        transDimensionalSpecies:
          type: boolean
          description: Whether it's a trans-dimensional species
        unnamedSpecies:
          type: boolean
          description: Whether it's a unnamed species
        alternateReality:
          type: boolean
          description: Whether this species is from alternate reality
      required:
        - uid
        - name
    SpeciesFull:
      type: object
      description: Full species, returned when queried using UID
      properties:
        uid:
          type: string
          description: Species unique ID
        name:
          type: string
          description: Species name
        homeworld:
          '$ref': '#/components/schemas/AstronomicalObjectBase'
        quadrant:
          '$ref': '#/components/schemas/AstronomicalObjectBase'
        extinctSpecies:
          type: boolean
          description: Whether it's an extinct species
        warpCapableSpecies:
          type: boolean
          description: Whether it's a warp-capable species
        extraGalacticSpecies:
          type: boolean
          description: Whether it's an extra-galactic species
        humanoidSpecies:
          type: boolean
          description: Whether it's a humanoid species
        reptilianSpecies:
          type: boolean
          description: Whether it's a reptilian species
        nonCorporealSpecies:
          type: boolean
          description: Whether it's a non-corporeal species
        shapeshiftingSpecies:
          type: boolean
          description: Whether it's a shapeshifting species
        spaceborneSpecies:
          type: boolean
          description: Whether it's a spaceborne species
        telepathicSpecies:
          type: boolean
          description: Whether it's a telepathic species
        transDimensionalSpecies:
          type: boolean
          description: Whether it's a trans-dimensional species
        unnamedSpecies:
          type: boolean
          description: Whether it's a unnamed species
        alternateReality:
          type: boolean
          description: Whether this species is from alternate reality
        characters:
          type: array
          description: Characters belonging to the species
          items:
            '$ref': '#/components/schemas/CharacterBase'
      required:
        - uid
        - name
    SpeciesBaseResponse:
      type: object
      description: Response object for species search
      properties:
        page:
          '$ref': '#/components/schemas/ResponsePage'
        sort:
          '$ref': '#/components/schemas/ResponseSort'
        species:
          type: array
          description: List of species matching given criteria
          items:
            '$ref': '#/components/schemas/SpeciesBase'
    SpeciesFullResponse:
      type: object
      description: Response object for single species query
      properties:
        species:
          '$ref': '#/components/schemas/SpeciesFull'
    StaffHeader:
      type: object
      description: Header staff, embedded in other objects
      properties:
        uid:
          type: string
          description: Staff unique ID
        name:
          type: string
          description: Staff name
      required:
        - uid
        - name
    StaffBase:
      type: object
      description: Base staff, returned in search results
      properties:
        uid:
          type: string
          description: Staff unique ID
        name:
          type: string
          description: Staff name
        birthName:
          type: string
          description: Staff birth name
        gender:
          '$ref': '#/components/schemas/Gender'
        dateOfBirth:
          type: string
          description: Date the staff was born
          format: date
        placeOfBirth:
          type: string
          description: Place the staff was born
        dateOfDeath:
          type: string
          description: Date the staff died
          format: date
        placeOfDeath:
          type: string
          description: Place the staff died
        artDepartment:
          type: boolean
          description: Whether this person if from art department
        artDirector:
          type: boolean
          description: Whether this person is an art director
        productionDesigner:
          type: boolean
          description: Whether this person is a production designer
        cameraAndElectricalDepartment:
          type: boolean
          description: Whether this person is from camera and electrical department
        cinematographer:
          type: boolean
          description: Whether this person is a cinematographer
        castingDepartment:
          type: boolean
          description: Whether this person is from casting department
        costumeDepartment:
          type: boolean
          description: Whether this person is from costume department
        costumeDesigner:
          type: boolean
          description: Whether this person is a custume designer
        director:
          type: boolean
          description: Whether this person is a director
        assistantOrSecondUnitDirector:
          type: boolean
          description: Whether this person is an assistant or secound unit director
            director
        exhibitAndAttractionStaff:
          type: boolean
          description: Whether this person is an exhibit and tttraction staff
        filmEditor:
          type: boolean
          description: Whether this person is a film editor
        linguist:
          type: boolean
          description: Whether this person is a linguist
        locationStaff:
          type: boolean
          description: Whether this person is a location staff
        makeupStaff:
          type: boolean
          description: Whether this person is a make-up staff
        musicDepartment:
          type: boolean
          description: Whether this person is from music department
        composer:
          type: boolean
          description: Whether this person is a composer
        personalAssistant:
          type: boolean
          description: Whether this person is a personal assistant
        producer:
          type: boolean
          description: Whether this person is a producer
        productionAssociate:
          type: boolean
          description: Whether this person is a production associate
        productionStaff:
          type: boolean
          description: Whether this person is a production staff
        publicationStaff:
          type: boolean
          description: Whether this person is a publication staff
        scienceConsultant:
          type: boolean
          description: Whether this person is a science consultant
        soundDepartment:
          type: boolean
          description: Whether this person is from sound department
        specialAndVisualEffectsStaff:
          type: boolean
          description: Whether this person is a special and visual effects staff
        author:
          type: boolean
          description: Whether this person is an author
        audioAuthor:
          type: boolean
          description: Whether this person is an audio author
        calendarArtist:
          type: boolean
          description: Whether this person is a calendar artist
        comicArtist:
          type: boolean
          description: Whether this person is a comic artist
        comicAuthor:
          type: boolean
          description: Whether this person is a comic author
        comicColorArtist:
          type: boolean
          description: Whether this person is a comic color artist
        comicInteriorArtist:
          type: boolean
          description: Whether this person is a comic interior artist
        comicInkArtist:
          type: boolean
          description: Whether this person is a comic ink artist
        comicPencilArtist:
          type: boolean
          description: Whether this person is a comic pencil artist
        comicLetterArtist:
          type: boolean
          description: Whether this person is a comic letter artist
        comicStripArtist:
          type: boolean
          description: Whether this person is a comic strip artist
        gameArtist:
          type: boolean
          description: Whether this person is a game artist
        gameAuthor:
          type: boolean
          description: Whether this person is a game author
        novelArtist:
          type: boolean
          description: Whether this person is a novel artist
        novelAuthor:
          type: boolean
          description: Whether this person is a novel author
        referenceArtist:
          type: boolean
          description: Whether this person is a reference artist
        referenceAuthor:
          type: boolean
          description: Whether this person is a reference author
        publicationArtist:
          type: boolean
          description: Whether this person is a publication artist
        publicationDesigner:
          type: boolean
          description: Whether this person is a publication designer
        publicationEditor:
          type: boolean
          description: Whether this person is a publication editor
        publicityArtist:
          type: boolean
          description: Whether this person is a publication artist
        cbsDigitalStaff:
          type: boolean
          description: Whether this person is a part of CBS digital staff
        ilmProductionStaff:
          type: boolean
          description: Whether this person is a part of ILM production staff
        specialFeaturesStaff:
          type: boolean
          description: Whether this person is a special features artist
        storyEditor:
          type: boolean
          description: Whether this person is a story editor
        studioExecutive:
          type: boolean
          description: Whether this person is a studio executive
        stuntDepartment:
          type: boolean
          description: Whether this person is from stunt department
        transportationDepartment:
          type: boolean
          description: Whether this person is from transportation department
        videoGameProductionStaff:
          type: boolean
          description: Whether this person is video game production staff
        writer:
          type: boolean
          description: Whether this person is a writer
      required:
        - uid
        - name
    StaffFull:
      type: object
      description: Full staff, returned when queried using UID
      properties:
        uid:
          type: string
          description: Staff unique ID
        name:
          type: string
          description: Staff name
        birthName:
          type: string
          description: Staff birth name
        gender:
          '$ref': '#/components/schemas/Gender'
        dateOfBirth:
          type: string
          description: Date the staff was born
          format: date
        placeOfBirth:
          type: string
          description: Place the staff was born
        dateOfDeath:
          type: string
          description: Date the staff died
          format: date
        placeOfDeath:
          type: string
          description: Place the staff died
        artDepartment:
          type: boolean
          description: Whether this person is from art department
        artDirector:
          type: boolean
          description: Whether this person is an art director
        productionDesigner:
          type: boolean
          description: Whether this person is a production designer
        cameraAndElectricalDepartment:
          type: boolean
          description: Whether this person is from camera and electrical department
        cinematographer:
          type: boolean
          description: Whether this person is a cinematographer
        castingDepartment:
          type: boolean
          description: Whether this person is from casting department
        costumeDepartment:
          type: boolean
          description: Whether this person is from costume department
        costumeDesigner:
          type: boolean
          description: Whether this person is a custume designer
        director:
          type: boolean
          description: Whether this person is a director
        assistantOrSecondUnitDirector:
          type: boolean
          description: Whether this person is an assistant or secound unit director
            director
        exhibitAndAttractionStaff:
          type: boolean
          description: Whether this person is an exhibit and attraction staff
        filmEditor:
          type: boolean
          description: Whether this person is a film editor
        linguist:
          type: boolean
          description: Whether this person is a linguist
        locationStaff:
          type: boolean
          description: Whether this person is a location staff
        makeupStaff:
          type: boolean
          description: Whether this person is a make-up staff
        musicDepartment:
          type: boolean
          description: Whether this person is from music department
        composer:
          type: boolean
          description: Whether this person is a composer
        personalAssistant:
          type: boolean
          description: Whether this person is a personal assistant
        producer:
          type: boolean
          description: Whether this person is a producer
        productionAssociate:
          type: boolean
          description: Whether this person is a production associate
        productionStaff:
          type: boolean
          description: Whether this person is a production staff
        publicationStaff:
          type: boolean
          description: Whether this person is a publication staff
        scienceConsultant:
          type: boolean
          description: Whether this person is a science consultant
        soundDepartment:
          type: boolean
          description: Whether this person is from sound department
        specialAndVisualEffectsStaff:
          type: boolean
          description: Whether this person is a special and visual effects staff
        author:
          type: boolean
          description: Whether this person is an author
        audioAuthor:
          type: boolean
          description: Whether this person is an audio author
        calendarArtist:
          type: boolean
          description: Whether this person is a calendar artist
        comicArtist:
          type: boolean
          description: Whether this person is a comic artist
        comicAuthor:
          type: boolean
          description: Whether this person is a comic author
        comicColorArtist:
          type: boolean
          description: Whether this person is a comic color artist
        comicInteriorArtist:
          type: boolean
          description: Whether this person is a comic interior artist
        comicInkArtist:
          type: boolean
          description: Whether this person is a comic ink artist
        comicPencilArtist:
          type: boolean
          description: Whether this person is a comic pencil artist
        comicLetterArtist:
          type: boolean
          description: Whether this person is a comic letter artist
        comicStripArtist:
          type: boolean
          description: Whether this person is a comic strip artist
        gameArtist:
          type: boolean
          description: Whether this person is a game artist
        gameAuthor:
          type: boolean
          description: Whether this person is a game author
        novelArtist:
          type: boolean
          description: Whether this person is a novel artist
        novelAuthor:
          type: boolean
          description: Whether this person is a novel author
        referenceArtist:
          type: boolean
          description: Whether this person is a reference artist
        referenceAuthor:
          type: boolean
          description: Whether this person is a reference author
        publicationArtist:
          type: boolean
          description: Whether this person is a publication artist
        publicationDesigner:
          type: boolean
          description: Whether this person is a publication designer
        publicationEditor:
          type: boolean
          description: Whether this person is a publication editor
        publicityArtist:
          type: boolean
          description: Whether this person is a publicity artist
        cbsDigitalStaff:
          type: boolean
          description: Whether this person is a part of CBS digital staff
        ilmProductionStaff:
          type: boolean
          description: Whether this person is a part of ILM production staff
        specialFeaturesStaff:
          type: boolean
          description: Whether this person is a special features artist
        storyEditor:
          type: boolean
          description: Whether this person is a story editor
        studioExecutive:
          type: boolean
          description: Whether this person is a studio executive
        stuntDepartment:
          type: boolean
          description: Whether this person is from stunt department
        transportationDepartment:
          type: boolean
          description: Whether this person is from transportation department
        videoGameProductionStaff:
          type: boolean
          description: Whether this person is video game production staff
        writer:
          type: boolean
          description: Whether this person is a writer
        writtenEpisodes:
          type: array
          description: Episodes written by this person
          items:
            '$ref': '#/components/schemas/EpisodeBase'
        teleplayAuthoredEpisodes:
          type: array
          description: Episodes to which this person has written teleplay
          items:
            '$ref': '#/components/schemas/EpisodeBase'
        storyAuthoredEpisodes:
          type: array
          description: Episodes to which this person has written story
          items:
            '$ref': '#/components/schemas/EpisodeBase'
        directedEpisodes:
          type: array
          description: Episodes directed by this person
          items:
            '$ref': '#/components/schemas/EpisodeBase'
        episodes:
          type: array
          description: Episodes on which this person worked
          items:
            '$ref': '#/components/schemas/EpisodeBase'
        writtenMovies:
          type: array
          description: Movies written by this person
          items:
            '$ref': '#/components/schemas/MovieBase'
        screenplayAuthoredMovies:
          type: array
          description: Movies to which this person has written screenplay
          items:
            '$ref': '#/components/schemas/MovieBase'
        storyAuthoredMovies:
          type: array
          description: Movies to which this person has written story
          items:
            '$ref': '#/components/schemas/MovieBase'
        directedMovies:
          type: array
          description: Movies directed by this person
          items:
            '$ref': '#/components/schemas/MovieBase'
        producedMovies:
          type: array
          description: Movies produced by this person
          items:
            '$ref': '#/components/schemas/MovieBase'
        movies:
          type: array
          description: Movies on which this person worked
          items:
            '$ref': '#/components/schemas/MovieBase'
      required:
        - uid
        - name
    StaffBaseResponse:
      type: object
      description: Response object for staff search
      properties:
        page:
          '$ref': '#/components/schemas/ResponsePage'
        sort:
          '$ref': '#/components/schemas/ResponseSort'
        staff:
          type: array
          description: List of staff matching given criteria
          items:
            '$ref': '#/components/schemas/StaffBase'
    StaffFullResponse:
      type: object
      description: Response object for single staff query
      properties:
        staff:
          '$ref': '#/components/schemas/StaffFull'
    TechnologyHeader:
      type: object
      description: Header technology, embedded in other objects
      properties:
        uid:
          type: string
          description: Technology unique ID
        name:
          type: string
          description: Technology name
      required:
        - uid
        - name
    TechnologyBase:
      type: object
      description: Base technology, returned in search results
      properties:
        uid:
          type: string
          description: Technology unique ID
        name:
          type: string
          description: Technology name
        borgTechnology:
          type: boolean
          description: Whether it's a Borg technology
        borgComponent:
          type: boolean
          description: Whether it's a Borg component
        communicationsTechnology:
          type: boolean
          description: Whether it's a communications technology
        computerTechnology:
          type: boolean
          description: Whether it's a computer technology
        computerProgramming:
          type: boolean
          description: Whether it's a technology related to computer programming
        subroutine:
          type: boolean
          description: Whether it's a subroutine
        database:
          type: boolean
          description: Whether it's a database
        energyTechnology:
          type: boolean
          description: Whether it's a energy technology
        fictionalTechnology:
          type: boolean
          description: Whether it's a fictional technology
        holographicTechnology:
          type: boolean
          description: Whether it's a holographic technology
        identificationTechnology:
          type: boolean
          description: Whether it's a identification technology
        lifeSupportTechnology:
          type: boolean
          description: Whether it's a life support technology
        sensorTechnology:
          type: boolean
          description: Whether it's a sensor technology
        shieldTechnology:
          type: boolean
          description: Whether it's a shield technology
        tool:
          type: boolean
          description: Whether it's a tool
        culinaryTool:
          type: boolean
          description: Whether it's a culinary tool
        engineeringTool:
          type: boolean
          description: Whether it's a engineering tool
        householdTool:
          type: boolean
          description: Whether it's a household tool
        medicalEquipment:
          type: boolean
          description: Whether it's a medical equipment
        transporterTechnology:
          type: boolean
          description: Whether it's a transporter technology
      required:
        - uid
        - name
    TechnologyFull:
      type: object
      description: Full technology, returned when queried using UID
      properties:
        uid:
          type: string
          description: Technology unique ID
        name:
          type: string
          description: Technology name
        borgTechnology:
          type: boolean
          description: Whether it's a Borg technology
        borgComponent:
          type: boolean
          description: Whether it's a Borg component
        communicationsTechnology:
          type: boolean
          description: Whether it's a communications technology
        computerTechnology:
          type: boolean
          description: Whether it's a computer technology
        computerProgramming:
          type: boolean
          description: Whether it's a technology related to computer programming
        subroutine:
          type: boolean
          description: Whether it's a subroutine
        database:
          type: boolean
          description: Whether it's a database
        energyTechnology:
          type: boolean
          description: Whether it's a energy technology
        fictionalTechnology:
          type: boolean
          description: Whether it's a fictional technology
        holographicTechnology:
          type: boolean
          description: Whether it's a holographic technology
        identificationTechnology:
          type: boolean
          description: Whether it's a identification technology
        lifeSupportTechnology:
          type: boolean
          description: Whether it's a life support technology
        sensorTechnology:
          type: boolean
          description: Whether it's a sensor technology
        shieldTechnology:
          type: boolean
          description: Whether it's a shield technology
        tool:
          type: boolean
          description: Whether it's a tool
        culinaryTool:
          type: boolean
          description: Whether it's a culinary tool
        engineeringTool:
          type: boolean
          description: Whether it's a engineering tool
        householdTool:
          type: boolean
          description: Whether it's a household tool
        medicalEquipment:
          type: boolean
          description: Whether it's a medical equipment
        transporterTechnology:
          type: boolean
          description: Whether it's a transporter technology
      required:
        - uid
        - name
    TechnologyBaseResponse:
      type: object
      description: Response object for technology search
      properties:
        page:
          '$ref': '#/components/schemas/ResponsePage'
        sort:
          '$ref': '#/components/schemas/ResponseSort'
        technology:
          type: array
          description: List of technology matching given criteria
          items:
            '$ref': '#/components/schemas/TechnologyBase'
    TechnologyFullResponse:
      type: object
      description: Response object for single technology query
      properties:
        technology:
          '$ref': '#/components/schemas/TechnologyFull'
    TitleHeader:
      type: object
      description: Header title, embedded in other objects
      properties:
        uid:
          type: string
          description: Title unique ID
        name:
          type: string
          description: Title name
      required:
        - uid
        - name
    TitleBase:
      type: object
      description: Base title, returned in search results
      properties:
        uid:
          type: string
          description: Title unique ID
        name:
          type: string
          description: Title name
        militaryRank:
          type: boolean
          description: Whether it's a military rank
        fleetRank:
          type: boolean
          description: Whether it's a fleet rank
        religiousTitle:
          type: boolean
          description: Whether it's a religious title
        position:
          type: boolean
          description: Whether it's a position
        mirror:
          type: boolean
          description: Whether this title is from mirror universe
      required:
        - uid
        - name
    TitleFull:
      type: object
      description: Full title, returned when queried using UID
      properties:
        uid:
          type: string
          description: Title unique ID
        name:
          type: string
          description: Title name
        militaryRank:
          type: boolean
          description: Whether it's a military rank
        fleetRank:
          type: boolean
          description: Whether it's a fleet rank
        religiousTitle:
          type: boolean
          description: Whether it's a religious title
        position:
          type: boolean
          description: Whether it's a position
        mirror:
          type: boolean
          description: Whether this title is from mirror universe
        characters:
          type: array
          description: Characters that holds this title
          items:
            '$ref': '#/components/schemas/CharacterBase'
      required:
        - uid
        - name
    TitleBaseResponse:
      type: object
      description: Response object for titles search
      properties:
        page:
          '$ref': '#/components/schemas/ResponsePage'
        sort:
          '$ref': '#/components/schemas/ResponseSort'
        titles:
          type: array
          description: List of titles matching given criteria
          items:
            '$ref': '#/components/schemas/TitleBase'
    TitleFullResponse:
      type: object
      description: Response object for single title query
      properties:
        title:
          '$ref': '#/components/schemas/TitleFull'
    TradingCardHeader:
      type: object
      description: Header trading card, embedded in other objects
      properties:
        uid:
          type: string
          description: Trading card unique ID
        name:
          type: string
          description: Trading card name
      required:
        - uid
        - name
    TradingCardBase:
      type: object
      description: Base trading card, returned in search results
      properties:
        uid:
          type: string
          description: Trading card unique ID
        name:
          type: string
          description: Trading card name
        number:
          type: string
          description: Trading card number
        releaseYear:
          type: integer
          description: Release year, if set was releases over multiple years
        productionRun:
          type: integer
          description: Production run, if different from trading card set production
            run
        tradingCardSet:
          '$ref': '#/components/schemas/TradingCardSetHeader'
        tradingCardDeck:
          '$ref': '#/components/schemas/TradingCardDeckHeader'
      required:
        - uid
        - name
    TradingCardFull:
      type: object
      description: Full trading card, returned when queried using UID
      properties:
        uid:
          type: string
          description: Trading card unique ID
        name:
          type: string
          description: Trading card name
        tradingCardSet:
          '$ref': '#/components/schemas/TradingCardSetBase'
        tradingCardDeck:
          '$ref': '#/components/schemas/TradingCardDeckBase'
        number:
          type: string
          description: Trading card number
        releaseYear:
          type: integer
          description: Release year, if set was releases over multiple years
        productionRun:
          type: integer
          description: Production run, if different from trading card set production
            run
      required:
        - uid
        - name
    TradingCardBaseResponse:
      type: object
      description: Response object for trading cards search
      properties:
        page:
          '$ref': '#/components/schemas/ResponsePage'
        sort:
          '$ref': '#/components/schemas/ResponseSort'
        tradingCards:
          type: array
          description: List of trading cards matching given criteria
          items:
            '$ref': '#/components/schemas/TradingCardBase'
    TradingCardFullResponse:
      type: object
      description: Response object for single trading card query
      properties:
        tradingCard:
          '$ref': '#/components/schemas/TradingCardFull'
    TradingCardDeckHeader:
      type: object
      description: Header trading card deck, embedded in other objects
      properties:
        uid:
          type: string
          description: Trading card deck unique ID
        name:
          type: string
          description: Trading card deck name
      required:
        - uid
        - name
    TradingCardDeckBase:
      type: object
      description: Base trading card deck, returned in search results
      properties:
        uid:
          type: string
          description: Trading card deck unique ID
        name:
          type: string
          description: Trading card deck name
        frequency:
          type: string
          description: Frequency with which this deck occur in it's set
        tradingCardSet:
          '$ref': '#/components/schemas/TradingCardSetHeader'
      required:
        - uid
        - name
    TradingCardDeckFull:
      type: object
      description: Full trading card deck, returned when queried using UID
      properties:
        uid:
          type: string
          description: Trading card deck unique ID
        name:
          type: string
          description: Trading card deck name
        frequency:
          type: string
          description: Frequency with which this deck occur in it's set
        tradingCardSet:
          '$ref': '#/components/schemas/TradingCardSetHeader'
        tradingCards:
          type: array
          description: Trading cards in this deck
          items:
            '$ref': '#/components/schemas/TradingCardBase'
      required:
        - uid
        - name
    TradingCardDeckBaseResponse:
      type: object
      description: Response object for trading card decks search
      properties:
        page:
          '$ref': '#/components/schemas/ResponsePage'
        sort:
          '$ref': '#/components/schemas/ResponseSort'
        tradingCardDecks:
          type: array
          description: List of trading card decks matching given criteria
          items:
            '$ref': '#/components/schemas/TradingCardDeckBase'
    TradingCardDeckFullResponse:
      type: object
      description: Response object for single trading card deck query
      properties:
        tradingCardDeck:
          '$ref': '#/components/schemas/TradingCardDeckFull'
    TradingCardSetHeader:
      type: object
      description: Header trading card set, embedded in other objects
      properties:
        uid:
          type: string
          description: Trading card set unique ID
        name:
          type: string
          description: Trading card set name
      required:
        - uid
        - name
    TradingCardSetBase:
      type: object
      description: Base trading card set, returned in search results
      properties:
        uid:
          type: string
          description: Trading card set unique ID
        name:
          type: string
          description: Trading card set name
        releaseYear:
          type: integer
          description: Release year
        releaseMonth:
          type: integer
          description: Release month
        releaseDay:
          type: integer
          description: Release day
        cardsPerPack:
          type: integer
          description: Cards per deck
        packsPerBox:
          type: integer
          description: Packs per box
        boxesPerCase:
          type: integer
          description: Boxes per case
        productionRun:
          type: integer
          description: Production run
        productionRunUnit:
          '$ref': '#/components/schemas/ProductionRunUnit'
        cardWidth:
          type: number
          description: Card width, in inches
          format: double
        cardHeight:
          type: number
          description: Card height, in inches
          format: double
      required:
        - uid
        - name
    TradingCardSetFull:
      type: object
      description: Full trading card set, returned when queried using UID
      properties:
        uid:
          type: string
          description: Trading card set unique ID
        name:
          type: string
          description: Trading card set name
        releaseYear:
          type: integer
          description: Release year
        releaseMonth:
          type: integer
          description: Release month
        releaseDay:
          type: integer
          description: Release day
        cardsPerPack:
          type: integer
          description: Cards per deck
        packsPerBox:
          type: integer
          description: Packs per box
        boxesPerCase:
          type: integer
          description: Boxes per case
        productionRun:
          type: integer
          description: Production run
        productionRunUnit:
          '$ref': '#/components/schemas/ProductionRunUnit'
        cardWidth:
          type: number
          description: Card width, in inches
          format: double
        cardHeight:
          type: number
          description: Card height, in inches
          format: double
        manufacturers:
          type: array
          description: Manufacturers
          items:
            '$ref': '#/components/schemas/CompanyBase'
        tradingCardDecks:
          type: array
          description: Trading card decks in this set
          items:
            '$ref': '#/components/schemas/TradingCardDeckBase'
        tradingCards:
          type: array
          description: Trading cards in this set
          items:
            '$ref': '#/components/schemas/TradingCardBase'
        countriesOfOrigin:
          type: array
          description: Countries of origin
          items:
            '$ref': '#/components/schemas/Country'
      required:
        - uid
        - name
    TradingCardSetBaseResponse:
      type: object
      description: Response object for trading card sets search
      properties:
        page:
          '$ref': '#/components/schemas/ResponsePage'
        sort:
          '$ref': '#/components/schemas/ResponseSort'
        tradingCardSets:
          type: array
          description: List of trading card sets matching given criteria
          items:
            '$ref': '#/components/schemas/TradingCardSetBase'
    TradingCardSetFullResponse:
      type: object
      description: Response object for single trading card set query
      properties:
        tradingCardSet:
          '$ref': '#/components/schemas/TradingCardSetFull'
    VideoGameHeader:
      type: object
      description: Header video game, embedded in other objects
      properties:
        uid:
          type: string
          description: Video game unique ID
        title:
          type: string
          description: Video game title
      required:
        - uid
        - title
    VideoGameBase:
      type: object
      description: Base video game, returned in search results
      properties:
        uid:
          type: string
          description: Video game unique ID
        title:
          type: string
          description: Video game title
        releaseDate:
          type: string
          description: Release date
          format: date
        stardateFrom:
          type: number
          description: Starting stardate of video game story
          format: float
        stardateTo:
          type: number
          description: Ending stardate of video game story
          format: float
        yearFrom:
          type: integer
          description: Starting year of video game story
        yearTo:
          type: integer
          description: Ending year of video game story
        systemRequirements:
          type: string
          description: System requirements
      required:
        - uid
        - title
    VideoGameFull:
      type: object
      description: Full video game, returned when queried using UID
      properties:
        uid:
          type: string
          description: Video game unique ID
        title:
          type: string
          description: Video game title
        releaseDate:
          type: string
          description: Release date
          format: date
        stardateFrom:
          type: number
          description: Starting stardate of video game story
          format: float
        stardateTo:
          type: number
          description: Ending stardate of video game story
          format: float
        yearFrom:
          type: integer
          description: Starting year of video game story
        yearTo:
          type: integer
          description: Ending year of video game story
        systemRequirements:
          type: string
          description: System requirements
        publishers:
          type: array
          description: Publishers
          items:
            '$ref': '#/components/schemas/CompanyBase'
        developers:
          type: array
          description: Developers
          items:
            '$ref': '#/components/schemas/CompanyBase'
        platforms:
          type: array
          description: Platforms
          items:
            '$ref': '#/components/schemas/Platform'
        genres:
          type: array
          description: Genres
          items:
            '$ref': '#/components/schemas/Genre'
        ratings:
          type: array
          description: Ratings
          items:
            '$ref': '#/components/schemas/ContentRating'
        references:
          type: array
          description: References
          items:
            '$ref': '#/components/schemas/Reference'
      required:
        - uid
        - title
    VideoGameBaseResponse:
      type: object
      description: Response object for video games search
      properties:
        page:
          '$ref': '#/components/schemas/ResponsePage'
        sort:
          '$ref': '#/components/schemas/ResponseSort'
        videoGames:
          type: array
          description: List of video games matching given criteria
          items:
            '$ref': '#/components/schemas/VideoGameBase'
    VideoGameFullResponse:
      type: object
      description: Response object for single video game query
      properties:
        videoGame:
          '$ref': '#/components/schemas/VideoGameFull'
    VideoReleaseHeader:
      type: object
      description: Header video release, embedded in other objects
      properties:
        uid:
          type: string
          description: Video release unique ID
        title:
          type: string
          description: Video release title
      required:
        - uid
        - title
    VideoReleaseBase:
      type: object
      description: Base video release, returned in search results
      properties:
        uid:
          type: string
          description: Video release unique ID
        title:
          type: string
          description: Video release title
        series:
          '$ref': '#/components/schemas/SeriesHeader'
        season:
          '$ref': '#/components/schemas/SeasonHeader'
        format:
          '$ref': '#/components/schemas/VideoReleaseFormat'
        numberOfEpisodes:
          type: integer
          description: Number of episodes
        numberOfFeatureLengthEpisodes:
          type: integer
          description: Number of feature-length episodes
        numberOfDataCarriers:
          type: integer
          description: Number of data carriers (like DVD, VCD, VHS etc.)
        runTime:
          type: integer
          description: Run time, in minutes
        yearFrom:
          type: integer
          description: Starting year of video release story
        yearTo:
          type: integer
          description: Ending year of video release story
        regionFreeReleaseDate:
          type: string
          description: Region free release date
          format: date
        region1AReleaseDate:
          type: string
          description: Region 1/A release date
          format: date
        region1SlimlineReleaseDate:
          type: string
          description: Region 1 slimline release date
          format: date
        region2BReleaseDate:
          type: string
          description: Region 2/B release date
          format: date
        region2SlimlineReleaseDate:
          type: string
          description: Region 2 slimline release date
          format: date
        region4AReleaseDate:
          type: string
          description: Region 4 release date
          format: date
        region4SlimlineReleaseDate:
          type: string
          description: Region 4 slimline release date
          format: date
        amazonDigitalRelease:
          type: boolean
          description: Whether this video has been release on Amazon.com
        dailymotionDigitalRelease:
          type: boolean
          description: Whether this video has been release on Dailymotion
        googlePlayDigitalRelease:
          type: boolean
          description: Whether this video has been release on Google Play
        iTunesDigitalRelease:
          type: boolean
          description: Whether this video has been release on iTunes
        ultraVioletDigitalRelease:
          type: boolean
          description: Whether this video has been release on UltraViolet
        vimeoDigitalRelease:
          type: boolean
          description: Whether this video has been release on Vimeo
        vuduDigitalRelease:
          type: boolean
          description: Whether this video has been release on VUDU
        xboxSmartGlassDigitalRelease:
          type: boolean
          description: Whether this video has been release on Xbox SmartGlass
        youTubeDigitalRelease:
          type: boolean
          description: Whether this video has been release on YouTube
        netflixDigitalRelease:
          type: boolean
          description: Whether this video has been release on Netflix
      required:
        - uid
        - title
    VideoReleaseFormat:
      type: string
      description: Video release format
      enum:
        - SUPER_8
        - BETAMAX
        - VHS
        - CED
        - LD
        - VHD
        - VCD
        - VIDEO_8
        - DVD
        - UMD
        - HD_DVD
        - BLU_RAY
        - BLU_RAY_4K_UHD
        - DIGITAL_FORMAT
    VideoReleaseFull:
      type: object
      description: Full video release, returned when queried using UID
      properties:
        uid:
          type: string
          description: Video release unique ID
        title:
          type: string
          description: Video release title
        series:
          '$ref': '#/components/schemas/SeriesBase'
        season:
          '$ref': '#/components/schemas/SeasonBase'
        format:
          '$ref': '#/components/schemas/VideoReleaseFormat'
        numberOfEpisodes:
          type: integer
          description: Number of episodes
        numberOfFeatureLengthEpisodes:
          type: integer
          description: Number of feature-length episodes
        numberOfDataCarriers:
          type: integer
          description: Number of data carriers (like DVD, VCD, VHS etc.)
        runTime:
          type: integer
          description: Run time, in minutes
        yearFrom:
          type: integer
          description: Starting year of video release story
        yearTo:
          type: integer
          description: Ending year of video release story
        regionFreeReleaseDate:
          type: string
          description: Region free release date
          format: date
        region1AReleaseDate:
          type: string
          description: Region 1/A release date
          format: date
        region1SlimlineReleaseDate:
          type: string
          description: Region 1 slimline release date
          format: date
        region2BReleaseDate:
          type: string
          description: Region 2/B release date
          format: date
        region2SlimlineReleaseDate:
          type: string
          description: Region 2 slimline release date
          format: date
        region4AReleaseDate:
          type: string
          description: Region 4 release date
          format: date
        region4SlimlineReleaseDate:
          type: string
          description: Region 4 slimline release date
          format: date
        amazonDigitalRelease:
          type: boolean
          description: Whether this video has been release on Amazon.com
        dailymotionDigitalRelease:
          type: boolean
          description: Whether this video has been release on Dailymotion
        googlePlayDigitalRelease:
          type: boolean
          description: Whether this video has been release on Google Play
        iTunesDigitalRelease:
          type: boolean
          description: Whether this video has been release on iTunes
        ultraVioletDigitalRelease:
          type: boolean
          description: Whether this video has been release on UltraViolet
        vimeoDigitalRelease:
          type: boolean
          description: Whether this video has been release on Vimeo
        vuduDigitalRelease:
          type: boolean
          description: Whether this video has been release on VUDU
        xboxSmartGlassDigitalRelease:
          type: boolean
          description: Whether this video has been release on Xbox SmartGlass
        youTubeDigitalRelease:
          type: boolean
          description: Whether this video has been release on YouTube
        netflixDigitalRelease:
          type: boolean
          description: Whether this video has been release on Netflix
        references:
          type: array
          description: References
          items:
            '$ref': '#/components/schemas/Reference'
        ratings:
          type: array
          description: Ratings
          items:
            '$ref': '#/components/schemas/ContentRating'
        languages:
          type: array
          description: Languages of audio track
          items:
            '$ref': '#/components/schemas/ContentLanguage'
        languagesSubtitles:
          type: array
          description: Languages of subtitles
          items:
            '$ref': '#/components/schemas/ContentLanguage'
        languagesDubbed:
          type: array
          description: Languages that are available with dubbing
          items:
            '$ref': '#/components/schemas/ContentLanguage'
      required:
        - uid
        - title
    VideoReleaseBaseResponse:
      type: object
      description: Response object for video releases search
      properties:
        page:
          '$ref': '#/components/schemas/ResponsePage'
        sort:
          '$ref': '#/components/schemas/ResponseSort'
        videoReleases:
          type: array
          description: List of video releases matching given criteria
          items:
            '$ref': '#/components/schemas/VideoReleaseBase'
    VideoReleaseFullResponse:
      type: object
      description: Response object for single video release query
      properties:
        videoRelease:
          '$ref': '#/components/schemas/VideoReleaseFull'
    WeaponHeader:
      type: object
      description: Header weapon, embedded in other objects
      properties:
        uid:
          type: string
          description: Weapon unique ID
        name:
          type: string
          description: Weapon name
      required:
        - uid
        - name
    WeaponBase:
      type: object
      description: Base weapon, returned in search results
      properties:
        uid:
          type: string
          description: Weapon unique ID
        name:
          type: string
          description: Weapon name
        handHeldWeapon:
          type: boolean
          description: Whether it's hand-help weapon
        laserTechnology:
          type: boolean
          description: Whether it's a laser technology
        plasmaTechnology:
          type: boolean
          description: Whether it's a plasma technology
        photonicTechnology:
          type: boolean
          description: Whether it's a photonic technology
        phaserTechnology:
          type: boolean
          description: Whether it's a phaser technology
        mirror:
          type: boolean
          description: Whether this weapon is from mirror universe
        alternateReality:
          type: boolean
          description: Whether this weapon is from alternate reality
      required:
        - uid
        - name
    WeaponFull:
      type: object
      description: Full weapon, returned when queried using UID
      properties:
        uid:
          type: string
          description: Weapon unique ID
        name:
          type: string
          description: Weapon name
        handHeldWeapon:
          type: boolean
          description: Whether it's a hand-help weapon
        laserTechnology:
          type: boolean
          description: Whether it's a laser technology
        plasmaTechnology:
          type: boolean
          description: Whether it's a plasma technology
        photonicTechnology:
          type: boolean
          description: Whether it's a photonic technology
        phaserTechnology:
          type: boolean
          description: Whether it's a phaser technology
        mirror:
          type: boolean
          description: Whether this weapon is from mirror universe
        alternateReality:
          type: boolean
          description: Whether this weapon is from alternate reality
      required:
        - uid
        - name
    WeaponBaseResponse:
      type: object
      description: Response object for weapons search
      properties:
        page:
          '$ref': '#/components/schemas/ResponsePage'
        sort:
          '$ref': '#/components/schemas/ResponseSort'
        weapons:
          type: array
          description: List of weapons matching given criteria
          items:
            '$ref': '#/components/schemas/WeaponBase'
    WeaponFullResponse:
      type: object
      description: Response object for single weapon query
      properties:
        weapon:
          '$ref': '#/components/schemas/WeaponFull'
