{
  "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"
          }
        }
      }
    }
  }
}
