# ===----------------------------------------------------------------------===
#
# This source file is part of the MarvelService open source project
#
# Copyright (c) 2025 Röck+Cöde VoF. and the MarvelService project authors
# Licensed under the EUPL 1.2 or later.
#
# See LICENSE for license information
# See CONTRIBUTORS for the list of MarvelService project authors
#
# ===----------------------------------------------------------------------===

openapi: 3.1.0
info:
  title: gateway.marvel.com
  description: The Marvel Comics RESTful API.
  contact:
    name: Marvel Entertainment, LLC
    url: https://help.marvel.com/hc/en-us/requests/new?ticket_form_id=32531283865236
  termsOfService: https://developer.marvel.com/terms
  version: Cable
servers:
  - url: https://gateway.marvel.com
    description: Live service
tags:
  - name: characters
    description: Group of endpoints that returns characters.
  - name: comics
    description: Group of endpoints that returns comics.
  - name: creators
    description: Group of endpoints that returns creators.
  - name: events
    description: Group of endpoints that returns events.
  - name: series
    description: Group of endpoints that returns series.
  - name: stories
    description: Group of endpoints that returns stories.
paths:
  /v1/public/characters:
    get:
      tags:
        - characters
      summary: Fetches lists of characters.
      description: Fetches lists of comic characters with optional filters.
      operationId: getCharacters
      parameters:
        - name: name
          in: query
          description: Return only characters matching the specified full character name.
          example: Spider-Man
          required: false
          schema:
            type: string
        - name: nameStartsWith
          in: query
          description: Return characters with names that begin with the specified string.
          example: Sp
          required: false
          schema:
            type: string
        - name: modifiedSince
          in: query
          description: Return only characters which have been modified since the specified date.
          required: false
          schema:
            type: string
            format: date
        - name: comics
          in: query
          description: Return only characters which appear in the specified comics (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: series
          in: query
          description: Return only characters which appear the specified series (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: events
          in: query
          description: Return only characters which appear in the specified events (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: stories
          in: query
          description: Return only characters which appear the specified stories (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: orderBy
          in: query
          description: Order the result set by a field or fields. Add a "-" to the value sort in descending order. Multiple values are given priority in the order in which they are passed.
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: string
              enum:
                - name
                - modified
                - -name
                - -modified
        - name: limit
          in: query
          description: Limit the result set to the specified number of resources.
          required: false
          schema:
            type: integer
            minimum: 1
            maximum: 100
        - name: offset
          in: query
          description: Skip the specified number of resources in the result set.
          required: false
          schema:
            type: integer
      responses:
        "200":
          description: OK response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CharacterDataWrapper'
        "401":
          description: Unauthorized response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "403":
          description: Forbidden response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "404":
          description: Not Found response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "405":
          description: Method Not Allowed response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "409":
          description: Conflict response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "429":
          description: Too Many Requests response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
  /v1/public/characters/{characterId}:
    get:
      tags:
        - characters
      summary: Fetches a single character by id.
      description: This method fetches a single character resource. It is the canonical URI for any character resource provided by the API.
      operationId: getCharacterById
      parameters:
        - name: characterId
          in: path
          description: A character id.
          required: true
          schema:
            type: integer
      responses:
        "200":
          description: OK response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CharacterDataWrapper'
        "401":
          description: Unauthorized response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "403":
          description: Forbidden response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "404":
          description: Not found response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "405":
          description: Method Not Allowed response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "409":
          description: Conflict response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "429":
          description: Too Many Requests response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
  /v1/public/characters/{characterId}/comics:
    get:
      tags:
        - comics
      summary: Fetches lists of comics filtered by a character id.
      description: Fetches lists of comics containing a specific character, with optional filters.
      operationId: getComicsByCharacterId
      parameters:
        - name: characterId
          in: path
          description: The character id.
          required: true
          schema:
            type: integer
        - name: format
          in: query
          description: Filter by the issue format.
          example: comic
          required: false
          schema:
            type: string
            enum:
              - comic
              - magazine
              - trade paperback
              - hardcover
              - digest
              - graphic novel
              - digital comic
              - infinite comic
        - name: formatType
          in: query
          description: Filter by the issue format type.
          example: comic
          required: false
          schema:
            type: string
            enum:
              - comic
              - collection
        - name: noVariants
          in: query
          description: Exclude variant comics from the result set.
          required: false
          schema:
            type: boolean
        - name: dateDescriptor
          in: query
          description: Return comics within a predefined date range.
          required: false
          schema:
            type: string
            enum:
              - lastWeek
              - thisWeek
              - nextWeek
              - thisMonth
        - name: dateRange
          in: query
          description: Return comics within a predefined date range. Dates must be specified as date1,date2. Dates are preferably formatted as YYYY-MM-DD but may be sent as any common date format.
          example: 2013-01-01,2013-01-02
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: string
        - name: title
          in: query
          description: Return only issues in series whose title matches the input.
          required: false
          schema:
            type: string
        - name: titleStartsWith
          in: query
          description: Return only issues in series whose title starts with the input.
          required: false
          schema:
            type: string
        - name: startYear
          in: query
          description: Return only issues in series whose start year matches the input.
          required: false
          schema:
            type: integer
        - name: issueNumber
          in: query
          description: Return only issues in series whose issue number matches the input.
          required: false
          schema:
            type: integer
        - name: diamondCode
          in: query
          description: Filter by diamond code.
          required: false
          schema:
            type: string
        - name: digitalId
          in: query
          description: Filter by digital comic id.
          required: false
          schema:
            type: integer
        - name: upc
          in: query
          description: Filter by UPC.
          required: false
          schema:
            type: string
        - name: isbn
          in: query
          description: Filter by ISBN.
          required: false
          schema:
            type: string
        - name: ean
          in: query
          description: Filter by EAN.
          required: false
          schema:
            type: string
        - name: issn
          in: query
          description: Filter by ISSN.
          required: false
          schema:
            type: string
        - name: hasDigitalIssue
          in: query
          description: Include only results which are available digitally.
          required: false
          schema:
            type: boolean
        - name: modifiedSince
          in: query
          description: Return only comics which have been modified since the specified date.
          required: false
          schema:
            type: string
            format: date
        - name: creators
          in: query
          description: Return only comics which feature work by the specified creators (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: series
          in: query
          description: Return only comics which are part of the specified series (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: events
          in: query
          description: Return only comics which take place in the specified events (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: stories
          in: query
          description: Return only comics which contain the specified stories (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: sharedAppearances
          in: query
          description: Return only comics in which the specified characters appear together (for example in which BOTH Spider-Man and Wolverine appear).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: collaborators
          in: query
          description: Return only comics in which the specified creators worked together (for example in which BOTH Stan Lee and Jack Kirby did work).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: orderBy
          in: query
          description: Order the result set by a field or fields. Add a "-" to the value sort in descending order. Multiple values are given priority in the order in which they are passed.
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: string
              enum:
                - issueNumber
                - modified
                - onSaleDate
                - focDate
                - title
                - -issueNumber
                - -modified
                - -onSaleDate
                - -focDate
                - -title
        - name: limit
          in: query
          description: Limit the result set to the specified number of resources.
          required: false
          schema:
            type: integer
            minimum: 1
            maximum: 100
        - name: offset
          in: query
          description: Skip the specified number of resources in the result set.
          required: false
          schema:
            type: integer
      responses:
        "200":
          description: OK response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ComicDataWrapper'
        "401":
          description: Unauthorized response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "403":
          description: Forbidden response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "404":
          description: Not Found response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "405":
          description: Method Not Allowed response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "409":
          description: Conflict response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "429":
          description: Too Many Requests response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
  /v1/public/characters/{characterId}/events:
    get:
      tags:
        - events
      summary: Fetches lists of events filtered by a character id.
      description: Fetches lists of events in which a specific character appears, with optional filters.
      operationId: getEventsByCharacterId
      parameters:
        - name: characterId
          in: path
          description: A character id.
          required: true
          schema:
            type: integer
        - name: name
          in: query
          description: Filter the event list by name.
          required: false
          schema:
            type: string
        - name: nameStartsWith
          in: query
          description: Return events with names that begin with the specified string.
          example: Sp
          required: false
          schema:
            type: string
        - name: modifiedSince
          in: query
          description: Return only events which have been modified since the specified date.
          required: false
          schema:
            type: string
            format: date
        - name: creators
          in: query
          description: Return only events which feature work by the specified creators (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: series
          in: query
          description: Return only events which are part of the specified series (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: comics
          in: query
          description: Return only events which take place in the specified comics (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: stories
          in: query
          description: Return only events which contain the specified stories (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: orderBy
          in: query
          description: Order the result set by a field or fields. Add a "-" to the value sort in descending order. Multiple values are given priority in the order in which they are passed.
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: string
              enum:
                - name
                - modified
                - startDate
                - -name
                - -modified
                - -startDate
        - name: limit
          in: query
          description: Limit the result set to the specified number of resources.
          required: false
          schema:
            type: integer
            minimum: 1
            maximum: 100
        - name: offset
          in: query
          description: Skip the specified number of resources in the result set.
          required: false
          schema:
            type: integer
      responses:
        "200":
          description: OK response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EventDataWrapper'
        "401":
          description: Unauthorized response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "403":
          description: Forbidden response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "404":
          description: Not Found response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "405":
          description: Method Not Allowed response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "409":
          description: Conflict response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "429":
          description: Too Many Requests response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
  /v1/public/characters/{characterId}/series:
    get:
      tags:
        - series
      summary: Fetches lists of series filtered by a character id.
      description: Fetches lists of comic series in which a specific character appears, with optional filters.
      operationId: getSeriesByCharacterId
      parameters:
        - name: characterId
          in: path
          description: A character id.
          required: true
          schema:
            type: integer
        - name: title
          in: query
          description: Filter by series title.
          required: false
          schema:
            type: string
        - name: titleStartsWith
          in: query
          description: Return series with titles that begin with the specified string.
          example: Sp
          required: false
          schema:
            type: string
        - name: startYear
          in: query
          description: Return only series matching the specified start year.
          required: false
          schema:
            type: integer
        - name: modifiedSince
          in: query
          description: Return only series which have been modified since the specified date.
          required: false
          schema:
            type: string
            format: date
        - name: comics
          in: query
          description: Return only series which contain the specified comics (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: stories
          in: query
          description: Return only series which contain the specified stories (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: events
          in: query
          description: Return only series which have comics that take place during the specified events (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: creators
          in: query
          description: Return only series which feature work by the specified creators (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: seriesType
          in: query
          description: Filter the series by publication frequency type.
          required: false
          schema:
            type: string
            enum:
              - collection
              - one shot
              - limited
              - ongoing
        - name: contains
          in: query
          description: Return only series containing one or more comics with the specified format.
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: string
              enum:
                - comic
                - magazine
                - trade paperback
                - hardcover
                - digest
                - graphic novel
                - digital comic
                - infinite comic
        - name: orderBy
          in: query
          description: Order the result set by a field or fields. Add a "-" to the value sort in descending order. Multiple values are given priority in the order in which they are passed.
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: string
              enum:
                - title
                - modified
                - startYear
                - -title
                - -modified
                - -startYear
        - name: limit
          in: query
          description: Limit the result set to the specified number of resources.
          required: false
          schema:
            type: integer
            minimum: 1
            maximum: 100
        - name: offset
          in: query
          description: Skip the specified number of resources in the result set.
          required: false
          schema:
            type: integer
      responses:
        "200":
          description: OK response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SeriesDataWrapper'
        "401":
          description: Unauthorized response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "403":
          description: Forbidden response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "404":
          description: Not Found response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "405":
          description: Method Not Allowed response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "409":
          description: Conflict response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "429":
          description: Too Many Requests response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
  /v1/public/characters/{characterId}/stories:
    get:
      tags:
        - stories
      summary: Fetches lists of stories filtered by a character id.
      description: Fetches lists of comic stories featuring a specific character with optional filters.
      operationId: getStoriesByCharacterId
      parameters:
        - name: characterId
          in: path
          description: A character id.
          required: true
          schema:
            type: integer
        - name: modifiedSince
          in: query
          description: Return only stories which have been modified since the specified date.
          required: false
          schema:
            type: string
            format: date
        - name: comics
          in: query
          description: Return only stories contained in the specified (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: series
          in: query
          description: Return only stories contained the specified series (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: events
          in: query
          description: Return only stories which take place during the specified events (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: creators
          in: query
          description: Return only stories which feature work by the specified creators (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: orderBy
          in: query
          description: Order the result set by a field or fields. Add a "-" to the value sort in descending order. Multiple values are given priority in the order in which they are passed.
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: string
              enum:
                - id
                - modified
                - -id
                - -modified
        - name: limit
          in: query
          description: Limit the result set to the specified number of resources.
          required: false
          schema:
            type: integer
            minimum: 1
            maximum: 100
        - name: offset
          in: query
          description: Skip the specified number of resources in the result set.
          required: false
          schema:
            type: integer
      responses:
        "200":
          description: OK response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StoryDataWrapper'
        "401":
          description: Unauthorized response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "403":
          description: Forbidden response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "404":
          description: Not Found response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "405":
          description: Method Not Allowed response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "409":
          description: Conflict response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "429":
          description: Too Many Requests response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
  /v1/public/comics:
    get:
      tags:
        - comics
      summary: Fetches lists of comics.
      description: Fetches lists of comics with optional filters.
      operationId: getComics
      parameters:
        - name: format
          in: query
          description: "Filter by the issue format."
          required: false
          schema:
            type: string
            enum:
              - comic
              - magazine
              - trade paperback
              - hardcover
              - digest
              - graphic novel
              - digital comic
              - infinite comic
        - name: formatType
          in: query
          description: Filter by the issue format type.
          required: false
          schema:
            type: string
            enum:
              - comic
              - collection
        - name: noVariants
          in: query
          description: "Exclude variants (alternate covers, secondary printings, director's cuts, etc.) from the result set."
          required: false
          schema:
            type: boolean
        - name: dateDescriptor
          in: query
          description: Return comics within a predefined date range.
          required: false
          schema:
            type: string
            enum:
              - lastWeek
              - thisWeek
              - nextWeek
              - thisMonth
        - name: dateRange
          in: query
          description: Return comics within a predefined date range. Dates must be specified as date1,date2. Dates are preferably formatted as YYYY-MM-DD but may be sent as any common date format.
          example: 2013-01-01,2013-01-02
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: string
        - name: title
          in: query
          description: Return only issues in series whose title matches the input.
          required: false
          schema:
            type: string
        - name: titleStartsWith
          in: query
          description: Return only issues in series whose title starts with the input.
          required: false
          schema:
            type: string
        - name: startYear
          in: query
          description: Return only issues in series whose start year matches the input.
          required: false
          schema:
            type: integer
        - name: issueNumber
          in: query
          description: Return only issues in series whose issue number matches the input.
          required: false
          schema:
            type: integer
        - name: diamondCode
          in: query
          description: Filter by diamond code.
          required: false
          schema:
            type: string
        - name: digitalId
          in: query
          description: Filter by digital comic id.
          required: false
          schema:
            type: integer
        - name: upc
          in: query
          description: Filter by UPC.
          required: false
          schema:
            type: string
        - name: isbn
          in: query
          description: Filter by ISBN.
          required: false
          schema:
            type: string
        - name: ean
          in: query
          description: Filter by EAN.
          required: false
          schema:
            type: string
        - name: issn
          in: query
          description: Filter by ISSN.
          required: false
          schema:
            type: string
        - name: hasDigitalIssue
          in: query
          description: Include only results which are available digitally.
          required: false
          schema:
            type: boolean
        - name: modifiedSince
          in: query
          description: Return only comics which have been modified since the specified date.
          required: false
          schema:
            type: string
            format: date
        - name: creators
          in: query
          description: Return only comics which feature work by the specified creators (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: characters
          in: query
          description: Return only comics which feature the specified characters (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: series
          in: query
          description: Return only comics which are part of the specified series (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: events
          in: query
          description: Return only comics which take place in the specified events (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: stories
          in: query
          description: Return only comics which contain the specified stories (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: sharedAppearances
          in: query
          description: Return only comics in which the specified characters appear together (for example in which BOTH Spider-Man and Wolverine appear). Accepts a comma-separated list of ids.
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: collaborators
          in: query
          description: Return only comics in which the specified creators worked together (for example in which BOTH Stan Lee and Jack Kirby did work). Accepts a comma-separated list of ids.
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: orderBy
          in: query
          description: Order the result set by a field or fields. Add a "-" to the value sort in descending order. Multiple values are given priority in the order in which they are passed.
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: string
              enum:
                - issueNumber
                - modified
                - onSaleDate
                - focDate
                - title
                - -issueNumber
                - -modified
                - -onSaleDate
                - -focDate
                - -title
        - name: limit
          in: query
          description: Limit the result set to the specified number of resources.
          required: false
          schema:
            type: integer
            minimum: 1
            maximum: 100
        - name: offset
          in: query
          description: Skip the specified number of resources in the result set.
          required: false
          schema:
            type: integer
      responses:
        "200":
          description: OK response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ComicDataWrapper'
        "401":
          description: Unauthorized response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "403":
          description: Forbidden response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "404":
          description: Not Found response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "405":
          description: Method Not Allowed response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "409":
          description: Conflict response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "429":
          description: Too Many Requests response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
  /v1/public/comics/{comicId}:
    get:
      tags:
        - comics
      summary: Fetches a single comic by id.
      description: This method fetches a single comic resource. It is the canonical URI for any comic resource provided by the API.
      operationId: getComicById
      parameters:
        - name: comicId
          in: path
          description: A comic id.
          required: true
          schema:
            type: integer
      responses:
        "200":
          description: OK response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ComicDataWrapper'
        "401":
          description: Unauthorized response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "403":
          description: Forbidden response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "404":
          description: Not found response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "405":
          description: Method Not Allowed response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "409":
          description: Conflict response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "429":
          description: Too Many Requests response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
  /v1/public/comics/{comicId}/characters:
    get:
      tags:
        - characters
      summary: Fetches lists of characters filtered by a comic id.
      description: Fetches lists of characters which appear in a specific comic with optional filters.
      operationId: getCharactersByComicId
      parameters:
        - name: comicId
          in: path
          description: A comic id.
          required: true
          schema:
            type: integer
        - name: name
          in: query
          description: Return only characters matching the specified full character name
          example: Spider-Man
          required: false
          schema:
            type: string
        - name: nameStartsWith
          in: query
          description: Return characters with names that begin with the specified string.
          example: Sp
          required: false
          schema:
            type: string
        - name: modifiedSince
          in: query
          description: Return only characters which have been modified since the specified date.
          required: false
          schema:
            type: string
            format: date
        - name: series
          in: query
          description: Return only characters which appear the specified series (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: events
          in: query
          description: Return only characters which appear comics that took place in the specified events (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: stories
          in: query
          description: Return only characters which appear the specified stories (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: orderBy
          in: query
          description: Order the result set by a field or fields. Add a "-" to the value sort in descending order. Multiple values are given priority in the order in which they are passed.
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: string
              enum:
                - name
                - modified
                - -name
                - -modified
        - name: limit
          in: query
          description: Limit the result set to the specified number of resources.
          required: false
          schema:
            type: integer
            minimum: 1
            maximum: 100
        - name: offset
          in: query
          description: Skip the specified number of resources in the result set.
          required: false
          schema:
            type: integer
      responses:
        "200":
          description: OK response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CharacterDataWrapper'
        "401":
          description: Unauthorized response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "403":
          description: Forbidden response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "404":
          description: Not Found response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "405":
          description: Method Not Allowed response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "409":
          description: Conflict response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "429":
          description: Too Many Requests response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
  /v1/public/comics/{comicId}/creators:
    get:
      tags:
        - creators
      summary: Fetches lists of creators filtered by a comic id.
      description: "Fetches lists of comic creators whose work appears in a specific comic, with optional filters."
      operationId: getCreatorsByComicId
      parameters:
        - name: comicId
          in: path
          description: A comic id.
          required: true
          schema:
            type: integer
        - name: firstName
          in: query
          description: Filter by creator first name.
          example: Brian
          required: false
          schema:
            type: string
        - name: middleName
          in: query
          description: Filter by creator middle name.
          example: Michael
          required: false
          schema:
            type: string
        - name: lastName
          in: query
          description: Filter by creator last name.
          example: Bendis
          required: false
          schema:
            type: string
        - name: suffix
          in: query
          description: "Filter by suffix or honorific"
          example: Sr.
          required: false
          schema:
            type: string
        - name: nameStartsWith
          in: query
          description: "Filter by creator names that match critera"
          example: B
          required: false
          schema:
            type: string
        - name: firstNameStartsWith
          in: query
          description: "Filter by creator first names that match critera"
          example: B
          required: false
          schema:
            type: string
        - name: middleNameStartsWith
          in: query
          description: Filter by creator middle names that match criteria.
          example: Mi
          required: false
          schema:
            type: string
        - name: lastNameStartsWith
          in: query
          description: Filter by creator last names that match criteria.
          example: Ben
          required: false
          schema:
            type: string
        - name: modifiedSince
          in: query
          description: Return only creators which have been modified since the specified date.
          required: false
          schema:
            type: string
            format: date
        - name: comics
          in: query
          description: Return only creators who worked on in the specified comics (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: series
          in: query
          description: Return only creators who worked on the specified series (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: stories
          in: query
          description: Return only creators who worked on the specified stories (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: orderBy
          in: query
          description: Order the result set by a field or fields. Add a "-" to the value sort in descending order. Multiple values are given priority in the order in which they are passed.
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: string
              enum:
                - firstName
                - middleName
                - lastName
                - suffix
                - modified
                - -firstName
                - -middleName
                - -lastName
                - -suffix
                - -modified
        - name: limit
          in: query
          description: Limit the result set to the specified number of resources.
          required: false
          schema:
            type: integer
            minimum: 1
            maximum: 100
        - name: offset
          in: query
          description: Skip the specified number of resources in the result set.
          required: false
          schema:
            type: integer
      responses:
        "200":
          description: OK response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreatorDataWrapper'
        "401":
          description: Unauthorized response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "403":
          description: Forbidden response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "404":
          description: Not Found response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "405":
          description: Method Not Allowed response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "409":
          description: Conflict response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "429":
          description: Too Many Requests response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
  /v1/public/comics/{comicId}/events:
    get:
      tags:
        - events
      summary: Fetches lists of events filtered by a comic id.
      description: Fetches lists of events in which a specific comic appears, with optional filters.
      operationId: getEventsByComicId
      parameters:
        - name: comicId
          in: path
          description: A comic id.
          required: true
          schema:
            type: integer
        - name: name
          in: query
          description: Filter the event list by name.
          required: false
          schema:
            type: string
        - name: nameStartsWith
          in: query
          description: Return events with names that begin with the specified string.
          example: Sp
          required: false
          schema:
            type: string
        - name: modifiedSince
          in: query
          description: Return only events which have been modified since the specified date.
          required: false
          schema:
            type: string
            format: date
        - name: creators
          in: query
          description: Return only events which feature work by the specified creators (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: characters
          in: query
          description: Return only events which feature the specified characters (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: series
          in: query
          description: Return only events which are part of the specified series (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: stories
          in: query
          description: Return only events which contain the specified stories (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: orderBy
          in: query
          description: Order the result set by a field or fields. Add a "-" to the value sort in descending order. Multiple values are given priority in the order in which they are passed.
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: string
              enum:
                - name
                - modified
                - startDate
                - -name
                - -modified
                - -startDate
        - name: limit
          in: query
          description: Limit the result set to the specified number of resources.
          required: false
          schema:
            type: integer
            minimum: 1
            maximum: 100
        - name: offset
          in: query
          description: Skip the specified number of resources in the result set.
          required: false
          schema:
            type: integer
      responses:
        "200":
          description: OK response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EventDataWrapper'
        "401":
          description: Unauthorized response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "403":
          description: Forbidden response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "404":
          description: Not Found response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "405":
          description: Method Not Allowed response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "409":
          description: Conflict response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "429":
          description: Too Many Requests response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
  /v1/public/comics/{comicId}/stories:
    get:
      tags:
        - stories
      summary: Fetches lists of stories filtered by a comic id.
      description: Fetches lists of comic stories in a specific comic issue, with optional filters.
      operationId: getStoriesByComicId
      parameters:
        - name: comicId
          in: path
          description: A comic id.
          required: true
          schema:
            type: integer
        - name: modifiedSince
          in: query
          description: Return only stories which have been modified since the specified date.
          required: false
          schema:
            type: string
            format: date
        - name: series
          in: query
          description: Return only stories contained the specified series (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: events
          in: query
          description: Return only stories which take place during the specified events (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: creators
          in: query
          description: Return only stories which feature work by the specified creators (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: characters
          in: query
          description: Return only stories which feature the specified characters (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: orderBy
          in: query
          description: Order the result set by a field or fields. Add a "-" to the value sort in descending order. Multiple values are given priority in the order in which they are passed.
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: string
              enum:
                - id
                - modified
                - -id
                - -modified
        - name: limit
          in: query
          description: Limit the result set to the specified number of resources.
          required: false
          schema:
            type: integer
            minimum: 1
            maximum: 100
        - name: offset
          in: query
          description: Skip the specified number of resources.
          required: false
          schema:
            type: integer
      responses:
        "200":
          description: OK response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StoryDataWrapper'
        "401":
          description: Unauthorized response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "403":
          description: Forbidden response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "404":
          description: Not Found response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "405":
          description: Method Not Allowed response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "409":
          description: Conflict response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "429":
          description: Too Many Requests response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
  /v1/public/creators:
    get:
      tags:
        - creators
      summary: Fetches lists of creators.
      description: Fetches lists of comic creators with optional filters.
      operationId: getCreators
      parameters:
        - name: firstName
          in: query
          description: Filter by creator first name.
          example: Brian
          required: false
          schema:
            type: string
        - name: middleName
          in: query
          description: Filter by creator middle name.
          example: Michael
          required: false
          schema:
            type: string
        - name: lastName
          in: query
          description: Filter by creator last name.
          example: Bendis
          required: false
          schema:
            type: string
        - name: suffix
          in: query
          description: Filter by suffix or honorific.
          example: Sr.
          required: false
          schema:
            type: string
        - name: nameStartsWith
          in: query
          description: Filter by creator names that match criteria.
          example: B
          required: false
          schema:
            type: string
        - name: firstNameStartsWith
          in: query
          description: Filter by creator first names that match criteria.
          example: B
          required: false
          schema:
            type: string
        - name: middleNameStartsWith
          in: query
          description: Filter by creator middle names that match criteria.
          example: Mi
          required: false
          schema:
            type: string
        - name: lastNameStartsWith
          in: query
          description: Filter by creator last names that match criteria.
          example: Ben
          required: false
          schema:
            type: string
        - name: modifiedSince
          in: query
          description: Return only creators which have been modified since the specified date.
          required: false
          schema:
            type: string
            format: date
        - name: comics
          in: query
          description: Return only creators who worked on in the specified comics (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: series
          in: query
          description: Return only creators who worked on the specified series (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: events
          in: query
          description: Return only creators who worked on comics that took place in the specified events (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: stories
          in: query
          description: Return only creators who worked on the specified stories (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: orderBy
          in: query
          description: Order the result set by a field or fields. Add a "-" to the value sort in descending order. Multiple values are given priority in the order in which they are passed.
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: string
              enum:
                - firstName
                - middleName
                - lastName
                - suffix
                - modified
                - -firstName
                - -middleName
                - -lastName
                - -suffix
                - -modified
        - name: limit
          in: query
          description: Limit the result set to the specified number of resources.
          required: false
          schema:
            type: integer
            minimum: 1
            maximum: 100
        - name: offset
          in: query
          description: Skip the specified number of resources in the result set.
          required: false
          schema:
            type: integer
      responses:
        "200":
          description: OK response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreatorDataWrapper'
        "401":
          description: Unauthorized response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "403":
          description: Forbidden response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "404":
          description: Not Found response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "405":
          description: Method Not Allowed response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "409":
          description: Conflict response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "429":
          description: Too Many Requests response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
  /v1/public/creators/{creatorId}:
    get:
      tags:
        - creators
      summary: Fetches a single creator by id.
      description: This method fetches a single creator resource. It is the canonical URI for any creator resource provided by the API.
      operationId: getCreatorById
      parameters:
        - name: creatorId
          in: path
          description: A creator id.
          required: true
          schema:
            type: integer
      responses:
        "200":
          description: OK response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreatorDataWrapper'
        "401":
          description: Unauthorized response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "403":
          description: Forbidden response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "404":
          description: Not found response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "405":
          description: Method Not Allowed response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "409":
          description: Conflict response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "429":
          description: Too Many Requests response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
  /v1/public/creators/{creatorId}/comics:
    get:
      tags:
        - comics
      summary: Fetches lists of comics filtered by a creator id.
      description: Fetches lists of comics in which the work of a specific creator appears, with optional filters.
      operationId: getComicsByCreatorId
      parameters:
        - name: creatorId
          in: path
          description: A creator id.
          required: true
          schema:
            type: integer
        - name: format
          in: query
          description: Filter by the issue format.
          required: false
          schema:
            type: string
            enum:
              - comic
              - magazine
              - trade paperback
              - hardcover
              - digest
              - graphic novel
              - digital comic
              - infinite comic
        - name: formatType
          in: query
          description: Filter by the issue format type.
          required: false
          schema:
            type: string
            enum:
              - comic
              - collection
        - name: noVariants
          in: query
          description: Exclude variant comics from the result set.
          required: false
          schema:
            type: boolean
        - name: dateDescriptor
          in: query
          description: Return comics within a predefined date range.
          required: false
          schema:
            type: string
            enum:
              - thisWeek
              - lastWeek
              - nextWeek
              - thisMonth
        - name: dateRange
          in: query
          description: Return comics within a predefined date range. Dates must be specified as date1,date2. Dates are preferably formatted as YYYY-MM-DD but may be sent as any common date format.
          example: 2013-01-01,2013-01-02
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: string
        - name: title
          in: query
          description: Return only issues in series whose title matches the input.
          required: false
          schema:
            type: string
        - name: titleStartsWith
          in: query
          description: Return only issues in series whose title starts with the input.
          required: false
          schema:
            type: string
        - name: startYear
          in: query
          description: Return only issues in series whose start year matches the input.
          required: false
          schema:
            type: integer
        - name: issueNumber
          in: query
          description: Return only issues in series whose issue number matches the input.
          required: false
          schema:
            type: integer
        - name: diamondCode
          in: query
          description: Filter by diamond code.
          required: false
          schema:
            type: string
        - name: digitalId
          in: query
          description: Filter by digital comic id.
          required: false
          schema:
            type: integer
        - name: upc
          in: query
          description: Filter by UPC.
          required: false
          schema:
            type: string
        - name: isbn
          in: query
          description: Filter by ISBN.
          required: false
          schema:
            type: string
        - name: ean
          in: query
          description: Filter by EAN.
          required: false
          schema:
            type: string
        - name: issn
          in: query
          description: Filter by ISSN.
          required: false
          schema:
            type: string
        - name: hasDigitalIssue
          in: query
          description: Include only results which are available digitally.
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: boolean
        - name: modifiedSince
          in: query
          description: Return only comics which have been modified since the specified date.
          required: false
          schema:
            type: string
            format: date
        - name: characters
          in: query
          description: Return only comics which feature the specified characters (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: series
          in: query
          description: Return only comics which are part of the specified series (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: events
          in: query
          description: Return only comics which take place in the specified events (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: stories
          in: query
          description: Return only comics which contain the specified stories (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: sharedAppearances
          in: query
          description: Return only comics in which the specified characters appear together (for example in which BOTH Spider-Man and Wolverine appear).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: collaborators
          in: query
          description: Return only comics in which the specified creators worked together (for example in which BOTH Stan Lee and Jack Kirby did work).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: orderBy
          in: query
          description: Order the result set by a field or fields. Add a "-" to the value sort in descending order. Multiple values are given priority in the order in which they are passed.
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: string
              enum:
                - title
                - issueNumber
                - modified
                - onSaleDate
                - focDate
                - -title
                - -issueNumber
                - -modified
                - -onSaleDate
                - -focDate
        - name: limit
          in: query
          description: Limit the result set to the specified number of resources.
          required: false
          schema:
            type: integer
            minimum: 1
            maximum: 100
        - name: offset
          in: query
          description: Skip the specified number of resources in the result set.
          required: false
          schema:
            type: integer
      responses:
        "200":
          description: OK response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ComicDataWrapper'
        "401":
          description: Unauthorized response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "403":
          description: Forbidden response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "404":
          description: Not Found response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "405":
          description: Method Not Allowed response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "409":
          description: Conflict response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "429":
          description: Too Many Requests response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
  /v1/public/creators/{creatorId}/events:
    get:
      tags:
        - events
      summary: Fetches lists of events filtered by a creator id.
      description: Fetches lists of events featuring the work of a specific creator with optional filters.
      operationId: getEventsByCreatorId
      parameters:
        - name: creatorId
          in: path
          description: A creator id.
          required: true
          schema:
            type: integer
        - name: name
          in: query
          description: Filter the event list by name.
          required: false
          schema:
            type: string
        - name: nameStartsWith
          in: query
          description: Return events with names that begin with the specified string.
          example: Sp
          required: false
          schema:
            type: string
        - name: modifiedSince
          in: query
          description: Return only events which have been modified since the specified date.
          required: false
          schema:
            type: string
            format: date
        - name: characters
          in: query
          description: Return only events which feature the specified characters (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: series
          in: query
          description: Return only events which are part of the specified series (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: comics
          in: query
          description: Return only events which take place in the specified comics (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: stories
          in: query
          description: Return only events which contain the specified stories (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: orderBy
          in: query
          description: Order the result set by a field or fields. Add a "-" to the value sort in descending order. Multiple values are given priority in the order in which they are passed.
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: string
              enum:
                - name
                - modified
                - startDate
                - -name
                - -modified
                - -startDate
        - name: limit
          in: query
          description: Limit the result set to the specified number of resources.
          required: false
          schema:
            type: integer
            minimum: 1
            maximum: 100
        - name: offset
          in: query
          description: Skip the specified number of resources in the result set.
          required: false
          schema:
            type: integer
      responses:
        "200":
          description: OK response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EventDataWrapper'
        "401":
          description: Unauthorized response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "403":
          description: Forbidden response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "404":
          description: Not Found response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "405":
          description: Method Not Allowed response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "409":
          description: Conflict response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "429":
          description: Too Many Requests response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
  /v1/public/creators/{creatorId}/series:
    get:
      tags:
        - series
      summary: Fetches lists of series filtered by a creator id.
      description: Fetches lists of comic series in which a specific creator's work appears, with optional filters.
      operationId: getSeriesByCreatorId
      parameters:
        - name: creatorId
          in: path
          description: A creator id.
          required: true
          schema:
            type: integer
        - name: title
          in: query
          description: Filter by series title.
          required: false
          schema:
            type: string
        - name: titleStartsWith
          in: query
          description: Return series with titles that begin with the specified string.
          example: Sp
          required: false
          schema:
            type: string
        - name: startYear
          in: query
          description: Return only series matching the specified start year.
          required: false
          schema:
            type: integer
        - name: modifiedSince
          in: query
          description: Return only series which have been modified since the specified date.
          required: false
          schema:
            type: string
            format: date
        - name: comics
          in: query
          description: Return only series which contain the specified comics (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: stories
          in: query
          description: Return only series which contain the specified stories (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: events
          in: query
          description: Return only series which have comics that take place during the specified events (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: characters
          in: query
          description: Return only series which feature the specified characters (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: seriesType
          in: query
          description: Filter the series by publication frequency type.
          required: false
          schema:
            type: string
            enum:
              - collection
              - one shot
              - limited
              - ongoing
        - name: contains
          in: query
          description: Return only series containing one or more comics with the specified format.
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: string
              enum:
                - comic
                - magazine
                - trade paperback
                - hardcover
                - digest
                - graphic novel
                - digital comic
                - infinite comic
        - name: orderBy
          in: query
          description: Order the result set by a field or fields. Add a "-" to the value sort in descending order. Multiple values are given priority in the order in which they are passed.
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: string
              enum:
                - title
                - startYear
                - modified
                - -title
                - -startYear
                - -modified
        - name: limit
          in: query
          description: Limit the result set to the specified number of resources.
          required: false
          schema:
            type: integer
            minimum: 1
            maximum: 100
        - name: offset
          in: query
          description: Skip the specified number of resources in the result set.
          required: false
          schema:
            type: integer
      responses:
        "200":
          description: OK response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SeriesDataWrapper'
        "401":
          description: Unauthorized response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "403":
          description: Forbidden response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "404":
          description: Not Found response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "405":
          description: Method Not Allowed response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "409":
          description: Conflict response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "429":
          description: Too Many Requests response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
  /v1/public/creators/{creatorId}/stories:
    get:
      tags:
        - stories
      summary: Fetches lists of stories filtered by a creator id.
      description: Fetches lists of comic stories by a specific creator with optional filters.
      operationId: getStoriesByCreatorId
      parameters:
        - name: creatorId
          in: path
          description: A creator id.
          required: true
          schema:
            type: integer
        - name: modifiedSince
          in: query
          description: Return only stories which have been modified since the specified date.
          required: false
          schema:
            type: string
            format: date
        - name: comics
          in: query
          description: Return only stories contained in the specified comics (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: series
          in: query
          description: Return only stories contained the specified series (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: events
          in: query
          description: Return only stories which take place during the specified events (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: characters
          in: query
          description: Return only stories which feature the specified characters (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: orderBy
          in: query
          description: Order the result set by a field or fields. Add a "-" to the value sort in descending order. Multiple values are given priority in the order in which they are passed.
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: string
              enum:
                - id
                - modified
                - -id
                - -modified
        - name: limit
          in: query
          description: Limit the result set to the specified number of resources.
          required: false
          schema:
            type: integer
            minimum: 1
            maximum: 100
        - name: offset
          in: query
          description: Skip the specified number of resources in the result set.
          required: false
          schema:
            type: integer
      responses:
        "200":
          description: OK response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StoryDataWrapper'
        "401":
          description: Unauthorized response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "403":
          description: Forbidden response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "404":
          description: Not Found response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "405":
          description: Method Not Allowed response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "409":
          description: Conflict response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "429":
          description: Too Many Requests response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
  /v1/public/events:
    get:
      tags:
        - events
      summary: Fetches lists of events.
      description: Fetches lists of events with optional filters.
      operationId: getEvents
      parameters:
        - name: name
          in: query
          description: Return only events which match the specified name.
          required: false
          schema:
            type: string
        - name: nameStartsWith
          in: query
          description: Return events with names that begin with the specified string.
          example: Sp
          required: false
          schema:
            type: string
        - name: modifiedSince
          in: query
          description: Return only events which have been modified since the specified date.
          required: false
          schema:
            type: string
            format: date
        - name: creators
          in: query
          description: Return only events which feature work by the specified creators (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: characters
          in: query
          description: Return only events which feature the specified characters (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: series
          in: query
          description: Return only events which are part of the specified series (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: comics
          in: query
          description: Return only events which take place in the specified comics (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: stories
          in: query
          description: Return only events which take place in the specified stories (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: orderBy
          in: query
          description: Order the result set by a field or fields. Add a "-" to the value sort in descending order. Multiple values are given priority in the order in which they are passed.
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: string
              enum:
                - name
                - modified
                - startDate
                - -name
                - -modified
                - -startDate
        - name: limit
          in: query
          description: Limit the result set to the specified number of resources.
          required: false
          schema:
            type: integer
            minimum: 1
            maximum: 100
        - name: offset
          in: query
          description: Skip the specified number of resources in the result set.
          required: false
          schema:
            type: integer
      responses:
        "200":
          description: OK response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EventDataWrapper'
        "401":
          description: Unauthorized response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "403":
          description: Forbidden response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "404":
          description: Not Found response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "405":
          description: Method Not Allowed response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "409":
          description: Conflict response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "429":
          description: Too Many Requests response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
  /v1/public/events/{eventId}:
    get:
      tags:
        - events
      summary: Fetches a single event by id.
      description: This method fetches a single event resource. It is the canonical URI for any event resource provided by the API.
      operationId: getEventById
      parameters:
        - name: eventId
          in: path
          description: An event id.
          required: true
          schema:
            type: integer
      responses:
        "200":
          description: OK response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EventDataWrapper'
        "401":
          description: Unauthorized response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "403":
          description: Forbidden response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "404":
          description: Not found response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "405":
          description: Method Not Allowed response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "409":
          description: Conflict response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "429":
          description: Too Many Requests response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
  /v1/public/events/{eventId}/characters:
    get:
      tags:
        - characters
      summary: Fetches lists of characters filtered by an event id.
      description: Fetches lists of characters which appear in a specific event, with optional filters.
      operationId: getCharactersByEventId
      parameters:
        - name: eventId
          in: path
          description: An event id.
          required: true
          schema:
            type: integer
        - name: name
          in: query
          description: Return only characters matching the specified full character name.
          example: Spider-Man.
          required: false
          schema:
            type: string
        - name: nameStartsWith
          in: query
          description: Return characters with names that begin with the specified string.
          example: Sp
          required: false
          schema:
            type: string
        - name: modifiedSince
          in: query
          description: Return only characters which have been modified since the specified date.
          required: false
          schema:
            type: string
            format: date
        - name: comics
          in: query
          description: Return only characters which appear in the specified comics (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: series
          in: query
          description: Return only characters which appear the specified series (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: stories
          in: query
          description: Return only characters which appear the specified stories (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: orderBy
          in: query
          description: Order the result set by a field or fields. Add a "-" to the value sort in descending order. Multiple values are given priority in the order in which they are passed.
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: string
              enum:
                - name
                - modified
                - -name
                - -modified
        - name: limit
          in: query
          description: Limit the result set to the specified number of resources.
          required: false
          schema:
            type: integer
            minimum: 1
            maximum: 100
        - name: offset
          in: query
          description: Skip the specified number of resources in the result set.
          required: false
          schema:
            type: integer
      responses:
        "200":
          description: OK response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CharacterDataWrapper'
        "401":
          description: Unauthorized response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "403":
          description: Forbidden response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "404":
          description: Not Found response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "405":
          description: Method Not Allowed response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "409":
          description: Conflict response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "429":
          description: Too Many Requests response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
  /v1/public/events/{eventId}/comics:
    get:
      tags:
        - comics
      summary: Fetches lists of comics filtered by an event id.
      description: Fetches lists of comics which take place during a specific event, with optional filters.
      operationId: getComicsByEventId
      parameters:
        - name: eventId
          in: path
          description: An event id.
          required: true
          schema:
            type: integer
        - name: format
          in: query
          description: Filter by the issue format.
          required: false
          schema:
            type: string
            enum:
              - comic
              - magazine
              - trade paperback
              - hardcover
              - digest
              - graphic novel
              - digital comic
              - infinite comic
        - name: formatType
          in: query
          description: Filter by the issue format type.
          required: false
          schema:
            type: string
            enum:
              - comic
              - collection
        - name: noVariants
          in: query
          description: Exclude variant comics from the result set.
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: boolean
        - name: dateDescriptor
          in: query
          description: Return comics within a predefined date range.
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: string
              enum:
                - lastWeek
                - thisWeek
                - nextWeek
                - thisMonth
        - name: dateRange
          in: query
          description: Return comics within a predefined date range. Dates must be specified as date1,date2. Dates are preferably formatted as YYYY-MM-DD but may be sent as any common date format.
          example: 2013-01-01,2013-01-02
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: string
        - name: title
          in: query
          description: Return only issues in series whose title matches the input.
          required: false
          schema:
            type: string
        - name: titleStartsWith
          in: query
          description: Return only issues in series whose title starts with the input.
          required: false
          schema:
            type: string
        - name: startYear
          in: query
          description: Return only issues in series whose start year matches the input.
          required: false
          schema:
            type: integer
        - name: issueNumber
          in: query
          description: Return only issues in series whose issue number matches the input.
          required: false
          schema:
            type: integer
        - name: diamondCode
          in: query
          description: Filter by diamond code.
          required: false
          schema:
            type: string
        - name: digitalId
          in: query
          description: Filter by digital comic id.
          required: false
          schema:
            type: integer
        - name: upc
          in: query
          description: Filter by UPC.
          required: false
          schema:
            type: string
        - name: isbn
          in: query
          description: Filter by ISBN.
          required: false
          schema:
            type: string
        - name: ean
          in: query
          description: Filter by EAN.
          required: false
          schema:
            type: string
        - name: issn
          in: query
          description: Filter by ISSN.
          required: false
          schema:
            type: string
        - name: hasDigitalIssue
          in: query
          description: Include only results which are available digitally.
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: boolean
        - name: modifiedSince
          in: query
          description: Return only comics which have been modified since the specified date.
          required: false
          schema:
            type: string
            format: date
        - name: creators
          in: query
          description: Return only comics which feature work by the specified creators (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: characters
          in: query
          description: Return only comics which feature the specified characters (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: series
          in: query
          description: Return only comics which are part of the specified series (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: events
          in: query
          description: Return only comics which take place in the specified events (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: stories
          in: query
          description: Return only comics which contain the specified stories (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: sharedAppearances
          in: query
          description: Return only comics in which the specified characters appear together (for example in which BOTH Spider-Man and Wolverine appear).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: collaborators
          in: query
          description: Return only comics in which the specified creators worked together (for example in which BOTH Stan Lee and Jack Kirby did work).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: orderBy
          in: query
          description: Order the result set by a field or fields. Add a "-" to the value sort in descending order. Multiple values are given priority in the order in which they are passed.
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: string
              enum:
                - focDate
                - onSaleDate
                - title
                - issueNumber
                - modified
                - -focDate
                - -onSaleDate
                - -title
                - -issueNumber
                - -modified
        - name: limit
          in: query
          description: Limit the result set to the specified number of resources.
          required: false
          schema:
            type: integer
            minimum: 1
            maximum: 100
        - name: offset
          in: query
          description: Skip the specified number of resources in the result set.
          required: false
          schema:
            type: integer
      responses:
        "200":
          description: OK response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ComicDataWrapper'
        "401":
          description: Unauthorized response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "403":
          description: Forbidden response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "404":
          description: Not Found response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "405":
          description: Method Not Allowed response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "409":
          description: Conflict response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "429":
          description: Too Many Requests response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
  /v1/public/events/{eventId}/creators:
    get:
      tags:
        - creators
      summary: Fetches lists of creators filtered by an event id.
      description: Fetches lists of comic creators whose work appears in a specific event, with optional filters.
      operationId: getCreatorsByEventId
      parameters:
        - name: eventId
          in: path
          description: An event id.
          required: true
          schema:
            type: integer
        - name: firstName
          in: query
          description: Filter by creator first name.
          example: Brian
          required: false
          schema:
            type: string
        - name: middleName
          in: query
          description: Filter by creator middle name.
          example: Michael
          required: false
          schema:
            type: string
        - name: lastName
          in: query
          description: Filter by creator last name.
          example: Bendis
          required: false
          schema:
            type: string
        - name: suffix
          in: query
          description: Filter by suffix or honorific.
          example: Sr.
          required: false
          schema:
            type: string
        - name: nameStartsWith
          in: query
          description: Filter by creator names that match criteria.
          example: B
          required: false
          schema:
            type: string
        - name: firstNameStartsWith
          in: query
          description: Filter by creator first names that match criteria.
          example: B
          required: false
          schema:
            type: string
        - name: middleNameStartsWith
          in: query
          description: Filter by creator middle names that match criteria.
          example: Mi
          required: false
          schema:
            type: string
        - name: lastNameStartsWith
          in: query
          description: Filter by creator last names that match criteria.
          required: false
          schema:
            type: string
        - name: modifiedSince
          in: query
          description: Return only creators which have been modified since the specified date.
          required: false
          schema:
            type: string
            format: date
        - name: comics
          in: query
          description: Return only creators who worked on in the specified comics (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: series
          in: query
          description: Return only creators who worked on the specified series (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: stories
          in: query
          description: Return only creators who worked on the specified stories (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: orderBy
          in: query
          description: Order the result set by a field or fields. Add a "-" to the value sort in descending order. Multiple values are given priority in the order in which they are passed.
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: string
              enum:
                - lastName
                - firstName
                - middleName
                - suffix
                - modified
                - -lastName
                - -firstName
                - -middleName
                - -suffix
                - -modified
        - name: limit
          in: query
          description: Limit the result set to the specified number of resources.
          required: false
          schema:
            type: integer
            minimum: 1
            maximum: 100
        - name: offset
          in: query
          description: Skip the specified number of resources in the result set.
          required: false
          schema:
            type: integer
      responses:
        "200":
          description: OK response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreatorDataWrapper'
        "401":
          description: Unauthorized response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "403":
          description: Forbidden response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "404":
          description: Not Found response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "405":
          description: Method Not Allowed response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "409":
          description: Conflict response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "429":
          description: Too Many Requests response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
  /v1/public/events/{eventId}/series:
    get:
      tags:
        - series
      summary: Fetches lists of series filtered by an event id.
      description: "Fetches lists of comic series in which a specific event takes place, with optional filters."
      operationId: getSeriesByEventId
      parameters:
        - name: eventId
          in: path
          description: An event id.
          required: true
          schema:
            type: integer
        - name: title
          in: query
          description: Filter by series title.
          required: false
          schema:
            type: string
        - name: titleStartsWith
          in: query
          description: Return series with titles that begin with the specified string.
          example: Sp
          required: false
          schema:
            type: string
        - name: startYear
          in: query
          description: Return only series matching the specified start year.
          required: false
          schema:
            type: integer
        - name: modifiedSince
          in: query
          description: Return only series which have been modified since the specified date.
          required: false
          schema:
            type: string
            format: date
        - name: comics
          in: query
          description: Return only series which contain the specified comics (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: stories
          in: query
          description: Return only series which contain the specified stories (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: creators
          in: query
          description: Return only series which feature work by the specified creators (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: characters
          in: query
          description: Return only series which feature the specified characters (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: seriesType
          in: query
          description: Filter the series by publication frequency type.
          required: false
          schema:
            type: string
            enum:
              - collection
              - one shot
              - limited
              - ongoing
        - name: contains
          in: query
          description: Return only series containing one or more comics with the specified format.
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: string
              enum:
                - comic
                - magazine
                - trade paperback
                - hardcover
                - digest
                - graphic novel
                - digital comic
                - infinite comic
        - name: orderBy
          in: query
          description: Order the result set by a field or fields. Add a "-" to the value sort in descending order. Multiple values are given priority in the order in which they are passed.
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: string
              enum:
                - title
                - modified
                - startYear
                - -title
                - -modified
                - -startYear
        - name: limit
          in: query
          description: Limit the result set to the specified number of resources.
          required: false
          schema:
            type: integer
            minimum: 1
            maximum: 100
        - name: offset
          in: query
          description: Skip the specified number of resources in the result set.
          required: false
          schema:
            type: integer
      responses:
        "200":
          description: OK response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SeriesDataWrapper'
        "401":
          description: Unauthorized response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "403":
          description: Forbidden response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "404":
          description: Not Found response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "405":
          description: Method Not Allowed response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "409":
          description: Conflict response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "429":
          description: Too Many Requests response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
  /v1/public/events/{eventId}/stories:
    get:
      tags:
        - stories
      summary: Fetches lists of stories filtered by an event id.
      description: Fetches lists of comic stories from a specific event, with optional filters.
      operationId: getStoriesByEventId
      parameters:
        - name: eventId
          in: path
          description: An event id.
          required: true
          schema:
            type: integer
        - name: modifiedSince
          in: query
          description: Return only stories which have been modified since the specified date.
          required: false
          schema:
            type: string
            format: date
        - name: comics
          in: query
          description: Return only stories contained in the specified (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: series
          in: query
          description: Return only stories contained the specified series (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: creators
          in: query
          description: Return only stories which feature work by the specified creators (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: characters
          in: query
          description: Return only stories which feature the specified characters (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: orderBy
          in: query
          description: Order the result set by a field or fields. Add a "-" to the value sort in descending order. Multiple values are given priority in the order in which they are passed.
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: string
              enum:
                - id
                - modified
                - -id
                - -modified
        - name: limit
          in: query
          description: Limit the result set to the specified number of resources.
          required: false
          schema:
            type: integer
            minimum: 1
            maximum: 100
        - name: offset
          in: query
          description: Skip the specified number of resources in the result set.
          required: false
          schema:
            type: integer
      responses:
        "200":
          description: OK response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StoryDataWrapper'
        "401":
          description: Unauthorized response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "403":
          description: Forbidden response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "404":
          description: Not Found response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "405":
          description: Method Not Allowed response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "409":
          description: Conflict response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "429":
          description: Too Many Requests response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
  /v1/public/series:
    get:
      tags:
        - series
      summary: Fetches lists of series.
      description: Fetches lists of comic series with optional filters.
      operationId: getSeries
      parameters:
        - name: title
          in: query
          description: Return only series matching the specified title.
          required: false
          schema:
            type: string
        - name: titleStartsWith
          in: query
          description: Return series with titles that begin with the specified string.
          example: Sp
          required: false
          schema:
            type: string
        - name: startYear
          in: query
          description: Return only series matching the specified start year.
          required: false
          schema:
            type: integer
        - name: modifiedSince
          in: query
          description: Return only series which have been modified since the specified date.
          required: false
          schema:
            type: string
            format: date
        - name: comics
          in: query
          description: Return only series which contain the specified comics (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: stories
          in: query
          description: Return only series which contain the specified stories (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: events
          in: query
          description: Return only series which have comics that take place during the specified events (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: creators
          in: query
          description: Return only series which feature work by the specified creators (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: characters
          in: query
          description: Return only series which feature the specified characters (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: seriesType
          in: query
          description: Filter the series by publication frequency type.
          required: false
          schema:
            type: string
            enum:
              - collection
              - one shot
              - limited
              - ongoing
        - name: contains
          in: query
          description: Return only series containing one or more comics with the specified format.
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: string
              enum:
                - comic
                - magazine
                - trade paperback
                - hardcover
                - digest
                - graphic novel
                - digital comic
                - infinite comic
        - name: orderBy
          in: query
          description: Order the result set by a field or fields. Add a "-" to the value sort in descending order. Multiple values are given priority in the order in which they are passed.
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: string
              enum:
                - title
                - modified
                - startYear
                - -title
                - -modified
                - -startYear
        - name: limit
          in: query
          description: Limit the result set to the specified number of resources.
          required: false
          schema:
            type: integer
            minimum: 1
            maximum: 100
        - name: offset
          in: query
          description: Skip the specified number of resources in the result set.
          required: false
          schema:
            type: integer
      responses:
        "200":
          description: OK response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SeriesDataWrapper'
        "401":
          description: Unauthorized response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "403":
          description: Forbidden response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "404":
          description: Not Found response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "405":
          description: Method Not Allowed response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "409":
          description: Conflict response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "429":
          description: Too Many Requests response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
  /v1/public/series/{seriesId}:
    get:
      tags:
        - series
      summary: Fetches a single comic series by id.
      description: This method fetches a single comic series resource. It is the canonical URI for any comic series resource provided by the API.
      operationId: getSeriesById
      parameters:
        - name: seriesId
          in: path
          description: A series id.
          required: true
          schema:
            type: integer
      responses:
        "200":
          description: OK response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SeriesDataWrapper'
        "401":
          description: Unauthorized response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "403":
          description: Forbidden response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "404":
          description: Not Found response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "405":
          description: Method Not Allowed response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "409":
          description: Conflict response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "429":
          description: Too Many Requests response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
  /v1/public/series/{seriesId}/characters:
    get:
      tags:
        - characters
      summary: Fetches lists of characters filtered by a series id.
      description: Fetches lists of characters which appear in specific series, with optional filters.
      operationId: getCharactersBySeriesId
      parameters:
        - name: seriesId
          in: path
          description: A series id.
          required: true
          schema:
            type: integer
        - name: name
          in: query
          description: Return only characters matching the specified full character name.
          example: Spider-Man
          required: false
          schema:
            type: string
        - name: nameStartsWith
          in: query
          description: Return characters with names that begin with the specified string.
          example: Sp
          required: false
          schema:
            type: string
        - name: modifiedSince
          in: query
          description: Return only characters which have been modified since the specified date.
          required: false
          schema:
            type: string
            format: date
        - name: comics
          in: query
          description: Return only characters which appear in the specified comics (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: events
          in: query
          description: Return only characters which appear comics that took place in the specified events (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: stories
          in: query
          description: Return only characters which appear the specified stories (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: orderBy
          in: query
          description: Order the result set by a field or fields. Add a "-" to the value sort in descending order. Multiple values are given priority in the order in which they are passed.
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: string
              enum:
                - name
                - modified
                - -name
                - -modified
        - name: limit
          in: query
          description: Limit the result set to the specified number of resources.
          required: false
          schema:
            type: integer
            minimum: 1
            maximum: 100
        - name: offset
          in: query
          description: Skip the specified number of resources in the result set.
          required: false
          schema:
            type: integer
      responses:
        "200":
          description: OK response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CharacterDataWrapper'
        "401":
          description: Unauthorized response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "403":
          description: Forbidden response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "404":
          description: Not Found response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "405":
          description: Method Not Allowed response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "409":
          description: Conflict response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "429":
          description: Too Many Requests response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
  /v1/public/series/{seriesId}/comics:
    get:
      tags:
        - comics
      summary: Fetches lists of comics filtered by a series id.
      description: "Fetches lists of comics which are published as part of a specific series, with optional filters."
      operationId: getComicsBySeriesId
      parameters:
        - name: seriesId
          in: path
          description: A series id.
          required: true
          schema:
            type: integer
        - name: format
          in: query
          description: Filter by the issue format.
          required: false
          schema:
            type: string
            enum:
              - comic
              - magazine
              - trade paperback
              - hardcover
              - digest
              - graphic novel
              - digital comic
              - infinite comic
        - name: formatType
          in: query
          description: Filter by the issue format type.
          required: false
          schema:
            type: string
            enum:
              - comic
              - collection
        - name: noVariants
          in: query
          description: Exclude variant comics from the result set.
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: boolean
        - name: dateDescriptor
          in: query
          description: Return comics within a predefined date range.
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: string
              enum:
                - lastWeek
                - thisWeek
                - nextWeek
                - thisMonth
        - name: dateRange
          in: query
          description: Return comics within a predefined date range. Dates must be specified as date1,date2. Dates are preferably formatted as YYYY-MM-DD but may be sent as any common date format.
          example: 2013-01-01,2013-01-02
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: string
        - name: title
          in: query
          description: Return only issues in series whose title matches the input.
          required: false
          schema:
            type: string
        - name: titleStartsWith
          in: query
          description: Return only issues in series whose title starts with the input.
          required: false
          schema:
            type: string
        - name: startYear
          in: query
          description: Return only issues in series whose start year matches the input.
          required: false
          schema:
            type: integer
        - name: issueNumber
          in: query
          description: Return only issues in series whose issue number matches the input.
          required: false
          schema:
            type: integer
        - name: diamondCode
          in: query
          description: Filter by diamond code.
          required: false
          schema:
            type: string
        - name: digitalId
          in: query
          description: Filter by digital comic id.
          required: false
          schema:
            type: integer
        - name: upc
          in: query
          description: Filter by UPC.
          required: false
          schema:
            type: string
        - name: isbn
          in: query
          description: Filter by ISBN.
          required: false
          schema:
            type: string
        - name: ean
          in: query
          description: Filter by EAN.
          required: false
          schema:
            type: string
        - name: issn
          in: query
          description: Filter by ISSN.
          required: false
          schema:
            type: string
        - name: hasDigitalIssue
          in: query
          description: Include only results which are available digitally.
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: boolean
        - name: modifiedSince
          in: query
          description: Return only comics which have been modified since the specified date.
          required: false
          schema:
            type: string
            format: date
        - name: creators
          in: query
          description: Return only comics which feature work by the specified creators (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: characters
          in: query
          description: Return only comics which feature the specified characters (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: events
          in: query
          description: Return only comics which take place in the specified events (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: stories
          in: query
          description: Return only comics which contain the specified stories (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: sharedAppearances
          in: query
          description: Return only comics in which the specified characters appear together (for example in which BOTH Spider-Man and Wolverine appear).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: collaborators
          in: query
          description: Return only comics in which the specified creators worked together (for example in which BOTH Stan Lee and Jack Kirby did work).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: orderBy
          in: query
          description: Order the result set by a field or fields. Add a "-" to the value sort in descending order. Multiple values are given priority in the order in which they are passed.
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: string
              enum:
                - focDate
                - onsaleDate
                - title
                - issueNumber
                - modified
                - -focDate
                - -onsaleDate
                - -title
                - -issueNumber
                - -modified
        - name: limit
          in: query
          description: Limit the result set to the specified number of resources.
          required: false
          schema:
            type: integer
            minimum: 1
            maximum: 100
        - name: offset
          in: query
          description: Skip the specified number of resources in the result set.
          required: false
          schema:
            type: integer
      responses:
        "200":
          description: OK response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ComicDataWrapper'
        "401":
          description: Unauthorized response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "403":
          description: Forbidden response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "404":
          description: Not Found response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "405":
          description: Method Not Allowed response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "409":
          description: Conflict response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "429":
          description: Too Many Requests response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
  /v1/public/series/{seriesId}/creators:
    get:
      tags:
        - creators
      summary: Fetches lists of creators filtered by a series id.
      description: Fetches lists of comic creators whose work appears in a specific series, with optional filters.
      operationId: getCreatorsBySeriesId
      parameters:
        - name: seriesId
          in: path
          description: A series id.
          required: true
          schema:
            type: integer
        - name: firstName
          in: query
          description: Filter by creator first name.
          example: Brian
          required: false
          schema:
            type: string
        - name: middleName
          in: query
          description: Filter by creator middle name.
          example: Michael
          required: false
          schema:
            type: string
        - name: lastName
          in: query
          description: Filter by creator last name.
          example: Bendis
          required: false
          schema:
            type: string
        - name: suffix
          in: query
          description: Filter by suffix or honorific.
          example: Sr.
          required: false
          schema:
            type: string
        - name: nameStartsWith
          in: query
          description: Filter by creator names that match criteria.
          example: B
          required: false
          schema:
            type: string
        - name: firstNameStartsWith
          in: query
          description: Filter by creator first names that match criteria.
          example: B
          required: false
          schema:
            type: string
        - name: middleNameStartsWith
          in: query
          description: Filter by creator middle names that match criteria.
          example: Mi
          required: false
          schema:
            type: string
        - name: lastNameStartsWith
          in: query
          description: Filter by creator last names that match criteria.
          example: Ben
          required: false
          schema:
            type: string
        - name: modifiedSince
          in: query
          description: Return only creators which have been modified since the specified date.
          required: false
          schema:
            type: string
            format: date
        - name: comics
          in: query
          description: Return only creators who worked on in the specified comics (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: events
          in: query
          description: Return only creators who worked on comics that took place in the specified events (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: stories
          in: query
          description: Return only creators who worked on the specified stories (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: orderBy
          in: query
          description: Order the result set by a field or fields. Add a "-" to the value sort in descending order. Multiple values are given priority in the order in which they are passed.
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: string
              enum:
                - lastName
                - firstName
                - middleName
                - suffix
                - modified
                - -lastName
                - -firstName
                - -middleName
                - -suffix
                - -modified
        - name: limit
          in: query
          description: Limit the result set to the specified number of resources.
          required: false
          schema:
            type: integer
            minimum: 1
            maximum: 100
        - name: offset
          in: query
          description: Skip the specified number of resources in the result set.
          required: false
          schema:
            type: integer
      responses:
        "200":
          description: OK response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreatorDataWrapper'
        "401":
          description: Unauthorized response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "403":
          description: Forbidden response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "404":
          description: Not Found response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "405":
          description: Method Not Allowed response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "409":
          description: Conflict response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "429":
          description: Too Many Requests response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
  /v1/public/series/{seriesId}/events:
    get:
      tags:
        - events
      summary: Fetches lists of events filtered by a series id.
      description: "Fetches lists of events which occur in a specific series, with optional filters."
      operationId: getEventsBySeriesId
      parameters:
        - name: seriesId
          in: path
          description: A series id.
          required: true
          schema:
            type: integer
        - name: name
          in: query
          description: Filter the event list by name.
          required: false
          schema:
            type: string
        - name: nameStartsWith
          in: query
          description: Return events with names that begin with the specified string.
          example: Sp
          required: false
          schema:
            type: string
        - name: modifiedSince
          in: query
          description: Return only events which have been modified since the specified date.
          required: false
          schema:
            type: string
            format: date
        - name: creators
          in: query
          description: Return only events which feature work by the specified creators (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: characters
          in: query
          description: Return only events which feature the specified characters (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: comics
          in: query
          description: Return only events which take place in the specified comics (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: stories
          in: query
          description: Return only events which contain the specified stories (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: orderBy
          in: query
          description: Order the result set by a field or fields. Add a "-" to the value sort in descending order. Multiple values are given priority in the order in which they are passed.
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: string
              enum:
                - name
                - startDate
                - modified
                - -name
                - -startDate
                - -modified
        - name: limit
          in: query
          description: Limit the result set to the specified number of resources.
          required: false
          schema:
            type: integer
            minimum: 1
            maximum: 100
        - name: offset
          in: query
          description: Skip the specified number of resources in the result set.
          required: false
          schema:
            type: integer
      responses:
        "200":
          description: OK response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EventDataWrapper'
        "409":
          description: Conflict response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
  /v1/public/series/{seriesId}/stories:
    get:
      tags:
        - stories
      summary: Fetches lists of stories filtered by a series id.
      description: Fetches lists of comic stories from a specific series with optional filters.
      operationId: getStoriesBySeriesId
      parameters:
        - name: seriesId
          in: path
          description: A series id.
          required: true
          schema:
            type: integer
        - name: modifiedSince
          in: query
          description: Return only stories which have been modified since the specified date.
          required: false
          schema:
            type: string
            format: date
        - name: comics
          in: query
          description: Return only stories contained in the specified (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: events
          in: query
          description: Return only stories which take place during the specified events (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: creators
          in: query
          description: Return only stories which feature work by the specified creators (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: characters
          in: query
          description: Return only stories which feature the specified characters (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: orderBy
          in: query
          description: Order the result set by a field or fields. Add a "-" to the value sort in descending order. Multiple values are given priority in the order in which they are passed.
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: string
              enum:
                - id
                - modified
                - -id
                - -modified
        - name: limit
          in: query
          description: Limit the result set to the specified number of resources.
          required: false
          schema:
            type: integer
            minimum: 1
            maximum: 100
        - name: offset
          in: query
          description: Skip the specified number of resources in the result set.
          required: false
          schema:
            type: integer
      responses:
        "200":
          description: OK response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StoryDataWrapper'
        "401":
          description: Unauthorized response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "403":
          description: Forbidden response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "404":
          description: Not Found response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "405":
          description: Method Not Allowed response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "409":
          description: Conflict response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "429":
          description: Too Many Requests response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
  /v1/public/stories:
    get:
      tags:
        - stories
      summary: Fetches lists of stories.
      description: Fetches lists of comic stories with optional filters.
      operationId: getStories
      parameters:
        - name: modifiedSince
          in: query
          description: Return only stories which have been modified since the specified date.
          required: false
          schema:
            type: string
            format: date
        - name: comics
          in: query
          description: Return only stories contained in the specified (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: series
          in: query
          description: Return only stories contained the specified series (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: events
          in: query
          description: Return only stories which take place during the specified events (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: creators
          in: query
          description: Return only stories which feature work by the specified creators (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: characters
          in: query
          description: Return only stories which feature the specified characters (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: orderBy
          in: query
          description: Order the result set by a field or fields. Add a "-" to the value sort in descending order. Multiple values are given priority in the order in which they are passed.
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: string
              enum:
                - id
                - modified
                - -id
                - -modified
        - name: limit
          in: query
          description: Limit the result set to the specified number of resources.
          required: false
          schema:
            type: integer
            minimum: 1
            maximum: 100
        - name: offset
          in: query
          description: Skip the specified number of resources in the result set.
          required: false
          schema:
            type: integer
      responses:
        "200":
          description: OK response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StoryDataWrapper'
        "401":
          description: Unauthorized response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "403":
          description: Forbidden response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "404":
          description: Not Found response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "405":
          description: Method Not Allowed response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "409":
          description: Conflict response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "429":
          description: Too Many Requests response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
  /v1/public/stories/{storyId}:
    get:
      tags:
        - stories
      summary: Fetches a single comic story by id.
      description: This method fetches a single comic story resource. It is the canonical URI for any comic story resource provided by the API.
      operationId: getStoryById
      parameters:
        - name: storyId
          in: path
          description: A story id.
          required: true
          schema:
            type: integer
      responses:
        "200":
          description: OK response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StoryDataWrapper'
        "401":
          description: Unauthorized response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "403":
          description: Forbidden response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "404":
          description: Not Found response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "405":
          description: Method Not Allowed response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "409":
          description: Conflict response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "429":
          description: Too Many Requests response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
  /v1/public/stories/{storyId}/characters:
    get:
      tags:
        - characters
      summary: Fetches lists of characters filtered by a story id.
      description: "Fetches lists of comic characters appearing in a single story, with optional filters."
      operationId: getCharactersByStoryId
      parameters:
        - name: storyId
          in: path
          description: A story id.
          required: true
          schema:
            type: integer
        - name: name
          in: query
          description: Return only characters matching the specified full character name.
          example: Spider-Man
          required: false
          schema:
            type: string
        - name: nameStartsWith
          in: query
          description: Return characters with names that begin with the specified string.
          example: Sp
          required: false
          schema:
            type: string
        - name: modifiedSince
          in: query
          description: Return only characters which have been modified since the specified date.
          required: false
          schema:
            type: string
            format: date
        - name: comics
          in: query
          description: Return only characters which appear in the specified comics (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: series
          in: query
          description: Return only characters which appear the specified series (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: events
          in: query
          description: Return only characters which appear comics that took place in the specified events (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: orderBy
          in: query
          description: Order the result set by a field or fields. Add a "-" to the value sort in descending order. Multiple values are given priority in the order in which they are passed.
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: string
              enum:
                - name
                - modified
                - -name
                - -modified
        - name: limit
          in: query
          description: Limit the result set to the specified number of resources.
          required: false
          schema:
            type: integer
            minimum: 1
            maximum: 100
        - name: offset
          in: query
          description: Skip the specified number of resources in the result set.
          required: false
          schema:
            type: integer
      responses:
        "200":
          description: OK response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CharacterDataWrapper'
        "401":
          description: Unauthorized response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "403":
          description: Forbidden response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "404":
          description: Not Found response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "405":
          description: Method Not Allowed response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "409":
          description: Conflict response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "429":
          description: Too Many Requests response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
  /v1/public/stories/{storyId}/comics:
    get:
      tags:
        - comics
      summary: Fetches lists of comics filtered by a story id.
      description: Fetches lists of comics in which a specific story appears, with optional filters.
      operationId: getComicsByStoryId
      parameters:
        - name: storyId
          in: path
          description: A story id.
          required: true
          schema:
            type: integer
        - name: format
          in: query
          description: Filter by the issue format.
          required: false
          schema:
            type: string
            enum:
              - comic
              - magazine
              - trade paperback
              - hardcover
              - digest
              - graphic novel
              - digital comic
              - infinite comic
        - name: formatType
          in: query
          description: Filter by the issue format type.
          required: false
          schema:
            type: string
            enum:
              - comic
              - collection
        - name: noVariants
          in: query
          description: Exclude variant comics from the result set.
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: boolean
        - name: dateDescriptor
          in: query
          description: Return comics within a predefined date range.
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: string
              enum:
                - lastWeek
                - thisWeek
                - nextWeek
                - thisMonth
        - name: dateRange
          in: query
          description: Return comics within a predefined date range. Dates must be specified as date1,date2. Dates are preferably formatted as YYYY-MM-DD but may be sent as any common date format.
          example: 2013-01-01,2013-01-02
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: title
          in: query
          description: Return only issues in series whose title matches the input.
          required: false
          schema:
            type: string
        - name: titleStartsWith
          in: query
          description: Return only issues in series whose title starts with the input.
          required: false
          schema:
            type: string
        - name: startYear
          in: query
          description: Return only issues in series whose start year matches the input.
          required: false
          schema:
            type: integer
        - name: issueNumber
          in: query
          description: Return only issues in series whose issue number matches the input.
          required: false
          schema:
            type: integer
        - name: diamondCode
          in: query
          description: Filter by diamond code.
          required: false
          schema:
            type: string
        - name: digitalId
          in: query
          description: Filter by digital comic id.
          required: false
          schema:
            type: integer
        - name: upc
          in: query
          description: Filter by UPC.
          required: false
          schema:
            type: string
        - name: isbn
          in: query
          description: Filter by ISBN.
          required: false
          schema:
            type: string
        - name: ean
          in: query
          description: Filter by EAN.
          required: false
          schema:
            type: string
        - name: issn
          in: query
          description: Filter by ISSN.
          required: false
          schema:
            type: string
        - name: hasDigitalIssue
          in: query
          description: Include only results which are available digitally.
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: boolean
        - name: modifiedSince
          in: query
          description: Return only comics which have been modified since the specified date.
          required: false
          schema:
            type: string
            format: date
        - name: creators
          in: query
          description: Return only comics which feature work by the specified creators (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: characters
          in: query
          description: Return only comics which feature the specified characters (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: series
          in: query
          description: Return only comics which are part of the specified series (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: events
          in: query
          description: Return only comics which take place in the specified events (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: sharedAppearances
          in: query
          description: Return only comics in which the specified characters appear together (for example in which BOTH Spider-Man and Wolverine appear).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: collaborators
          in: query
          description: Return only comics in which the specified creators worked together (for example in which BOTH Stan Lee and Jack Kirby did work).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: orderBy
          in: query
          description: Order the result set by a field or fields. Add a "-" to the value sort in descending order. Multiple values are given priority in the order in which they are passed.
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: string
              enum:
                - focDate
                - onsaleDate
                - title
                - issueNumber
                - modified
                - -focDate
                - -onsaleDate
                - -title
                - -issueNumber
                - -modified
        - name: limit
          in: query
          description: Limit the result set to the specified number of resources.
          required: false
          schema:
            type: integer
            minimum: 1
            maximum: 100
        - name: offset
          in: query
          description: Skip the specified number of resources in the result set.
          required: false
          schema:
            type: integer
      responses:
        "200":
          description: OK response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ComicDataWrapper'
        "401":
          description: Unauthorized response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "403":
          description: Forbidden response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "404":
          description: Not Found response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "405":
          description: Method Not Allowed response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "409":
          description: Conflict response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "429":
          description: Too Many Requests response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
  /v1/public/stories/{storyId}/creators:
    get:
      tags:
        - creators
      summary: Fetches lists of creators filtered by a story id.
      description: Fetches lists of comic creators whose work appears in a specific story, with optional filters.
      operationId: getCreatorsByStoryId
      parameters:
        - name: storyId
          in: path
          description: A story id.
          required: true
          schema:
            type: integer
        - name: firstName
          in: query
          description: Filter by creator first name.
          example: Brian
          required: false
          schema:
            type: string
        - name: middleName
          in: query
          description: Filter by creator middle name.
          example: Michael
          required: false
          schema:
            type: string
        - name: lastName
          in: query
          description: Filter by creator last name.
          example: Bendis
          required: false
          schema:
            type: string
        - name: suffix
          in: query
          description: Filter by suffix or honorific.
          example: Sr.
          required: false
          schema:
            type: string
        - name: nameStartsWith
          in: query
          description: Filter by creator names that match criteria.
          example: B
          required: false
          schema:
            type: string
        - name: firstNameStartsWith
          in: query
          description: Filter by creator first names that match criteria.
          example: B
          required: false
          schema:
            type: string
        - name: middleNameStartsWith
          in: query
          description: Filter by creator middle names that match criteria.
          example: Mi
          required: false
          schema:
            type: string
        - name: lastNameStartsWith
          in: query
          description: Filter by creator last names that match criteria.
          example: Ben
          required: false
          schema:
            type: string
        - name: modifiedSince
          in: query
          description: Return only creators which have been modified since the specified date.
          required: false
          schema:
            type: string
            format: date
        - name: comics
          in: query
          description: Return only creators who worked on in the specified comics (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: series
          in: query
          description: Return only creators who worked on the specified series (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: events
          in: query
          description: Return only creators who worked on comics that took place in the specified events (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: orderBy
          in: query
          description: Order the result set by a field or fields. Add a "-" to the value sort in descending order. Multiple values are given priority in the order in which they are passed.
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: string
              enum:
                - lastName
                - firstName
                - middleName
                - suffix
                - modified
                - -lastName
                - -firstName
                - -middleName
                - -suffix
                - -modified
        - name: limit
          in: query
          description: Limit the result set to the specified number of resources.
          required: false
          schema:
            type: integer
            minimum: 1
            maximum: 100
        - name: offset
          in: query
          description: Skip the specified number of resources in the result set.
          required: false
          schema:
            type: integer
      responses:
        "200":
          description: OK response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreatorDataWrapper'
        "401":
          description: Unauthorized response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "403":
          description: Forbidden response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "404":
          description: Not Found response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "405":
          description: Method Not Allowed response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "409":
          description: Conflict response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "429":
          description: Too Many Requests response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
  /v1/public/stories/{storyId}/events:
    get:
      tags:
        - events
      summary: Fetches lists of events filtered by a story id.
      description: Fetches lists of events in which a specific story appears, with optional filters.
      operationId: getEventsByStoryId
      parameters:
        - name: storyId
          in: path
          description: A story id.
          required: true
          schema:
            type: integer
        - name: name
          in: query
          description: Filter the event list by name.
          required: false
          schema:
            type: string
        - name: nameStartsWith
          in: query
          description: Return events with names that begin with the specified string.
          example: Sp
          required: false
          schema:
            type: string
        - name: modifiedSince
          in: query
          description: Return only events which have been modified since the specified date.
          required: false
          schema:
            type: string
            format: date
        - name: creators
          in: query
          description: Return only events which feature work by the specified creators (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: characters
          in: query
          description: Return only events which feature the specified characters (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: series
          in: query
          description: Return only events which are part of the specified series (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: comics
          in: query
          description: Return only events which take place in the specified comics (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: orderBy
          in: query
          description: Order the result set by a field or fields. Add a "-" to the value sort in descending order. Multiple values are given priority in the order in which they are passed.
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: string
              enum:
                - lastName
                - firstName
                - middleName
                - suffix
                - modified
                - -lastName
                - -firstName
                - -middleName
                - -suffix
                - -modified
        - name: limit
          in: query
          description: Limit the result set to the specified number of resources.
          required: false
          schema:
            type: integer
            minimum: 1
            maximum: 100
        - name: offset
          in: query
          description: Skip the specified number of resources in the result set.
          required: false
          schema:
            type: integer
      responses:
        "200":
          description: OK response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EventDataWrapper'
        "401":
          description: Unauthorized response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "403":
          description: Forbidden response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "404":
          description: Not Found response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "405":
          description: Method Not Allowed response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "409":
          description: Conflict response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "429":
          description: Too Many Requests response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
  /v1/public/stories/{storyId}/series:
    get:
      tags:
        - series
      summary: Fetches lists of series filtered by a story id.
      description: Fetches lists of comic series in which the specified story takes place.
      operationId: getSeriesByStoryId
      parameters:
        - name: storyId
          in: path
          description: A story id.
          required: true
          schema:
            type: integer
        - name: events
          in: query
          description: Return only series which have comics that take place during the specified events (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: title
          in: query
          description: Filter by series title.
          required: false
          schema:
            type: string
        - name: titleStartsWith
          in: query
          description: Return series with titles that begin with the specified string (e.g. Sp).
          required: false
          schema:
            type: string
        - name: startYear
          in: query
          description: Return only series matching the specified start year.
          required: false
          schema:
            type: integer
        - name: modifiedSince
          in: query
          description: Return only series which have been modified since the specified date.
          required: false
          schema:
            type: string
            format: date
        - name: comics
          in: query
          description: Return only series which contain the specified comics (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: creators
          in: query
          description: Return only series which feature work by the specified creators (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: characters
          in: query
          description: Return only series which feature the specified characters (accepts a comma-separated list of ids).
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: integer
        - name: seriesType
          in: query
          description: Filter the series by publication frequency type.
          required: false
          schema:
            type: string
            enum:
              - collection
              - one shot
              - limited
              - ongoing
        - name: contains
          in: query
          description: Return only series containing one or more comics with the specified format.
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: string
              enum:
                - comic
                - magazine
                - trade paperback
                - hardcover
                - digest
                - graphic novel
                - digital comic
                - infinite comic
        - name: orderBy
          in: query
          description: Order the result set by a field or fields. Add a "-" to the value sort in descending order. Multiple values are given priority in the order in which they are passed.
          required: false
          style: form
          explode: false
          schema:
            type: array
            items:
              type: string
              enum:
                - title
                - modified
                - startYear
                - -title
                - -modified
                - -startYear
        - name: limit
          in: query
          description: Limit the result set to the specified number of resources.
          required: false
          schema:
            type: integer
            minimum: 1
            maximum: 100
        - name: offset
          in: query
          description: Skip the specified number of resources in the result set.
          required: false
          schema:
            type: integer
      responses:
        "200":
          description: OK response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SeriesDataWrapper'
        "401":
          description: Unauthorized response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "403":
          description: Forbidden response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "404":
          description: Not Found response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "405":
          description: Method Not Allowed response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "409":
          description: Conflict response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
        "429":
          description: Too Many Requests response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardError'
components:
  schemas:
# Core Entity Representations
    Character:
      type: object
      description: A character resource type that represents the women, men, organizations, alien species, deities, animals, non-corporeal entities, trans-dimensional manifestations, abstract personifications, and green amorphous blobs which occupy the Marvel Universe as well as various alternate universes, timelines and altered realities therein (e.g. Spider-Man).
      properties:
        id:
          type: integer
          description: The unique ID of the character resource.
        name:
          type: string
          description: The name of the character.
        description:
          type: string
          description: A short bio or description of the character.
        modified:
          type: string
          description: The date the resource was most recently modified.
          format: date
        resourceURI:
          type: string
          description: The canonical URL identifier for this resource.
        urls:
          type: array
          description: A set of public web site URLs for the resource.
          items:
            $ref: '#/components/schemas/Url'
        thumbnail:
          description: The representative image for this character.
          $ref: '#/components/schemas/Image'
        comics:
          description: A resource list containing comics which feature this character.
          $ref: '#/components/schemas/ComicList'
        stories:
          description: A resource list containing stories which this character appears.
          $ref: '#/components/schemas/StoryList'
        events:
          description: A resource list containing events which this character appears.
          $ref: '#/components/schemas/EventList'
        series:
          description: A resource list containing series in which this character appears.
          $ref: '#/components/schemas/SeriesList'
      required:
        - id
        - name
        - modified
        - resourceURI
        - urls
        - comics
        - stories
        - events
        - series
    Comic:
      type: object
      description: A comic book resource type that represents physical or digital products that end-users read. This definition includes individual print and digital comic issues, collections and graphic novels (e.g. Amazing Fantasy \#15).
      properties:
        id:
          type: integer
          description: The unique ID of the comic resource.
        digitalId:
          type: integer
          description: The ID of the digital comic representation of this comic. Will be 0 if the comic is not available digitally.
        title:
          type: string
          description: The canonical title of the comic.
        issueNumber:
          type: number
          description: The number of the issue in the series (will generally be 0 for collection formats).
          format: double
        variantDescription:
          type: string
          description: If the issue is a variant (e.g. an alternate cover, second printing, or director\'s cut), a text description of the variant.
        description:
          type: string
          description: The preferred description of the comic.
        modified:
          type: string
          description: The date the resource was most recently modified.
          format: date
        isbn:
          type: string
          description: The ISBN for the comic (generally only populated for collection formats).
        upc:
          type: string
          description: The UPC barcode number for the comic (generally only populated for periodical formats).
        diamondCode:
          type: string
          description: The Diamond code for the comic.
        ean:
          type: string
          description: The EAN barcode for the comic.
        issn:
          type: string
          description: The ISSN barcode for the comic.
        format:
          type: string
          description: The publication format of the comic (e.g. comic, hardcover, trade paperback).
        pageCount:
          type: integer
          description: The number of story pages in the comic.
        textObjects:
          type: array
          description: A set of descriptive text blurbs for the comic.
          items:
            $ref: '#/components/schemas/TextObject'
        resourceURI:
          type: string
          description: The canonical URL identifier for this resource.
        urls:
          type: array
          description: A set of public web site URLs for the resource.
          items:
            $ref: '#/components/schemas/Url'
        series:
          description: A summary representation of the series to which this comic belongs.
          $ref: '#/components/schemas/SeriesSummary'
        variants:
          type: array
          description: A list of variant issues for this comic (includes the "original" issue if the current issue is a variant).
          items:
            $ref: '#/components/schemas/ComicSummary'
        collections:
          type: array
          description: A list of collections which include this comic (will generally be empty if the comic's format is a collection).
          items:
            $ref: '#/components/schemas/ComicSummary'
        collectedIssues:
          type: array
          description: A list of issues collected in this comic (will generally be empty for periodical formats such as "comic" or "magazine").
          items:
            $ref: '#/components/schemas/ComicSummary'
        dates:
          type: array
          description: A list of key dates for this comic.
          items:
            $ref: '#/components/schemas/ComicDate'
        prices:
          type: array
          description: A list of prices for this comic.
          items:
            $ref: '#/components/schemas/ComicPrice'
        thumbnail:
          description: The representative image for this comic.
          $ref: '#/components/schemas/Image'
        images:
          type: array
          description: A list of promotional images associated with this comic.
          items:
            $ref: '#/components/schemas/Image'
        creators:
          description: A resource list containing creators associated with this comic.
          $ref: '#/components/schemas/CreatorList'
        characters:
          description: A resource list containing characters which appear in this comic.
          $ref: '#/components/schemas/CharacterList'
        stories:
          description: A resource list containing stories which appear in this comic.
          $ref: '#/components/schemas/StoryList'
        events:
          description: A resource list containing events which this comic appears.
          $ref: '#/components/schemas/EventList'
      required:
        - id
        - digitalId
        - title
        - issueNumber
        - variantDescription
        - modified
        - isbn
        - upc
        - diamondCode
        - ean
        - issn
        - format
        - pageCount
        - textObjects
        - resourceURI
        - urls
        - series
        - variants
        - collections
        - collectedIssues
        - dates
        - prices
        - images
        - creators
        - characters
        - stories
        - events
    Creator:
      type: object
      description: A creator resource type that represents women, men and organizations who create comics (e.g. Jack Kirby). They are assigned to the specific comic stories on which they worked, but we bubble up those assignments to the issues, series and events in which the stories appear as a convenience.
      properties:
        id:
          type: integer
          description: The unique ID of the creator resource.
        firstName:
          type: string
          description: The first name of the creator.
        middleName:
          type: string
          description: The middle name of the creator.
        lastName:
          type: string
          description: The last name of the creator.
        suffix:
          type: string
          description: The suffix or honorific for the creator.
        fullName:
          type: string
          description: The full name of the creator (a space-separated concatenation of the above four fields).
        modified:
          type: string
          description: The date the resource was most recently modified.
          format: date
        resourceURI:
          type: string
          description: The canonical URL identifier for this resource.
        urls:
          type: array
          description: A set of public web site URLs for the resource.
          items:
            $ref: '#/components/schemas/Url'
        thumbnail:
          description: The representative image for this creator.
          $ref: '#/components/schemas/Image'
        series:
          description: A resource list containing series which feature work by this creator.
          $ref: '#/components/schemas/SeriesList'
        stories:
          description: A resource list containing stories which feature work by this creator.
          $ref: '#/components/schemas/StoryList'
        comics:
          description: A resource list containing comics which feature work by this creator.
          $ref: '#/components/schemas/ComicList'
        events:
          description: A resource list containing events which feature work by this creator.
          $ref: '#/components/schemas/EventList'
      required:
        - id
        - firstName
        - middleName
        - lastName
        - suffix
        - fullName
        - modified
        - resourceURI
        - urls
        - series
        - stories
        - comics
        - events
    Event:
      type: object
      description: An event resource type that represents big, universe-altering storylines (e.g. Infinity). A comic's appearance in an event is often independent of its membership in a series.
      properties:
        id:
          type: integer
          description: The unique ID of the event resource.
        title:
          type: string
          description: The title of the event.
        description:
          type: string
          description: A description of the event.
        resourceURI:
          type: string
          description: The canonical URL identifier for this resource.
        urls:
          type: array
          description: A set of public web site URLs for the event.
          items:
            $ref: '#/components/schemas/Url'
        modified:
          type: string
          description: The date the resource was most recently modified.
          format: date
        start:
          type: string
          description: The date of publication of the first issue in this event.
          format: date
        end:
          type: string
          description: The date of publication of the last issue in this event.
          format: date
        thumbnail:
          description: The representative image for this event.
          $ref: '#/components/schemas/Image'
        comics:
          description: A resource list containing the comics in this event.
          $ref: '#/components/schemas/ComicList'
        stories:
          description: A resource list containing the stories in this event.
          $ref: '#/components/schemas/StoryList'
        series:
          description: A resource list containing the series in this event.
          $ref: '#/components/schemas/SeriesList'
        characters:
          description: A resource list containing the characters which appear in this event.
          $ref: '#/components/schemas/CharacterList'
        creators:
          description: A resource list containing the creators whose work appears in this event.
          $ref: '#/components/schemas/CreatorList'
        next:
          $ref: '#/components/schemas/EventSummary'
          description: A summary representation of the event which follows this event.
        previous:
          description: A summary representation of the event which preceded this event.
          $ref: '#/components/schemas/EventSummary'
      required:
        - id
        - title
        - resourceURI
        - urls
        - modified
        - start
        - end
        - comics
        - stories
        - series
        - characters
        - creators
        - next
        - previous
    Series:
      type: object
      description: A series resource type that represents (usually) sequentially number list of comics with the same title and volume (e.g. Uncanny X-Men). Marvel uses the year of original publication for a series as the volume number.
      properties:
        id:
          type: integer
          description: The unique ID of the series resource.
        title:
          type: string
          description: The canonical title of the series.
        description:
          type: string
          description: A description of the series.
        resourceURI:
          type: string
          description: The canonical URL identifier for this resource.
        urls:
          type: array
          description: A set of public web site URLs for the resource.
          items:
            $ref: '#/components/schemas/Url'
        startYear:
          type: integer
          description: The first year of publication for the series.
        endYear:
          type: integer
          description: The last year of publication for the series (conventionally, 2099 for ongoing series).
        rating:
          type: string
          description: The age-appropriateness rating for the series.
        modified:
          type: string
          description: The date the resource was most recently modified.
          format: date
        thumbnail:
          description: The representative image for this series.
          $ref: '#/components/schemas/Image'
        comics:
          description: A resource list containing comics in this series.
          $ref: '#/components/schemas/ComicList'
        stories:
          description: A resource list containing stories which occur in comics in this series.
          $ref: '#/components/schemas/StoryList'
        events:
          description: A resource list containing events which take place in comics in this series.
          $ref: '#/components/schemas/EventList'
        characters:
          description: A resource list containing characters which appear in comics in this series.
          $ref: '#/components/schemas/CharacterList'
        creators:
          description: A resource list containing creators whose work appears in comics in this series.
          $ref: '#/components/schemas/CreatorList'
        next:
          description: A summary representation of the series which follows this series.
          $ref: '#/components/schemas/SeriesSummary'
        previous:
          description: A summary representation of the series which preceded this series.
          $ref: '#/components/schemas/SeriesSummary'
      required:
        - id
        - title
        - resourceURI
        - urls
        - startYear
        - endYear
        - rating
        - modified
        - comics
        - stories
        - events
        - characters
        - creators
    Story:
      type: object
      description: A story resource type that represents an indivisible, reusable components of comics. Most comics have two stories - a cover and an interior story (e. g. the cover from Amazing Fantasy \#15 and the origin of Spider-Man story from that comic) - but many, such as anthology comics and collections, will have more. Stories may be re-published in several comics, but the comic in which they originally appeared will always be present as a data point.
      properties:
        id:
          type: integer
          description: The unique ID of the story resource.
        title:
          type: string
          description: The story title.
        description:
          type: string
          description: A short description of the story.
        resourceURI:
          type: string
          description: The canonical URL identifier for this resource.
        type:
          type: string
          description: The story type (e.g. interior story, cover, text story).
        modified:
          type: string
          description: The date the resource was most recently modified.
          format: date
        thumbnail:
          description: The representative image for this story.
          $ref: '#/components/schemas/Image'
        comics:
          description: A resource list containing comics in which this story takes place.
          $ref: '#/components/schemas/ComicList'
        series:
          description: A resource list containing series in which this story appears.
          $ref: '#/components/schemas/SeriesList'
        events:
          description: A resource list containing events in which this story appears.
          $ref: '#/components/schemas/EventList'
        characters:
          description: A resource list containing characters which appear in this story.
          $ref: '#/components/schemas/CharacterList'
        creators:
          description: A resource list containing creators worked on this story.
          $ref: '#/components/schemas/CreatorList'
        originalissue:
          description: A summary representation of the issue in which this story was originally published.
          $ref: '#/components/schemas/ComicSummary'
      required:
        - id
        - title
        - resourceURI
        - type
        - modified
        - comics
        - series
        - events
        - characters
        - creators
        
# Core Entity Summary Representations
    CharacterSummary:
      type: object
      description: A type that represents a summary of a character resource.
      properties:
        resourceURI:
          type: string
          description: The path to the individual character resource.
        name:
          type: string
          description: The full name of the character.
        role:
          type: string
          description: The role of the creator in the parent entity.
      required:
        - resourceURI
        - name
    ComicSummary:
      type: object
      description: A type that represents a summary of a comic resource.
      properties:
        resourceURI:
          type: string
          description: The path to the individual comic resource.
        name:
          type: string
          description: The canonical name of the comic.
      required:
        - resourceURI
        - name
    CreatorSummary:
      type: object
      description: A type that represents a summary of a creator resource.
      properties:
        resourceURI:
          type: string
          description: The path to the individual creator resource.
        name:
          type: string
          description: The full name of the creator.
        role:
          type: string
          description: The role of the creator in the parent entity.
      required:
        - resourceURI
        - name
    EventSummary:
      type: object
      description: A type that represents a summary of an event resource.
      properties:
        resourceURI:
          type: string
          description: The path to the individual event resource.
        name:
          type: string
          description: The name of the event.
      required:
        - resourceURI
        - name
    SeriesSummary:
      type: object
      description: A type that represents a summary of a series resource.
      properties:
        resourceURI:
          type: string
          description: The path to the individual series resource.
        name:
          type: string
          description: The canonical name of the series.
      required:
        - resourceURI
        - name
    StorySummary:
      type: object
      description: A type that represents a summary of a story resource.
      properties:
        resourceURI:
          type: string
          description: The path to the individual story resource.
        name:
          type: string
          description: The canonical name of the story.
        type:
          type: string
          description: The type of the story (interior or cover).
      required:
        - resourceURI
        - name
        - type
        
# Core Entity List Representations
    CharacterList:
      type: object
      description: A resource list containing characters which appear in this story.
      properties:
        available:
          type: integer
          description: The number of total available characters in this list. Will always be greater than or equal to the "returned" value.
        returned:
          type: integer
          description: The number of characters returned in this collection.
          maximum: 20
        collectionURI:
          type: string
          description: The path to the full list of characters in this collection.
        items:
          type: array
          description: The list of returned characters in this collection.
          items:
            $ref: '#/components/schemas/CharacterSummary'
      required:
        - available
        - returned
        - collectionURI
        - items
    ComicList:
      type: object
      description: A resource list containing comics which feature this story.
      properties:
        available:
          type: integer
          description: The number of total available issues in this list. Will always be greater than or equal to the "returned" value.
        returned:
          type: integer
          description: The number of issues returned in this collection.
          maximum: 20
        collectionURI:
          type: string
          description: The path to the full list of issues in this collection.
        items:
          type: array
          description: The list of returned issues in this collection.
          items:
            $ref: '#/components/schemas/ComicSummary'
      required:
        - available
        - returned
        - collectionURI
        - items
    CreatorList:
      type: object
      description: A resource list containing creators whose work appears in this story.
      properties:
        available:
          type: integer
          description: The number of total available creators in this list. Will always be greater than or equal to the "returned" value.
        returned:
          type: integer
          description: The number of creators returned in this collection.
          maximum: 20
        collectionURI:
          type: string
          description: The path to the full list of creators in this collection.
        items:
          type: array
          description: The list of returned creators in this collection.
          items:
            $ref: '#/components/schemas/CreatorSummary'
      required:
        - available
        - returned
        - collectionURI
        - items
    EventList:
      type: object
      description: A resource list containing events which feature this story.
      properties:
        available:
          type: integer
          description: The number of total available events in this list. Will always be greater than or equal to the "returned" value.
        returned:
          type: integer
          description: The number of events returned in this collection.
          maximum: 20
        collectionURI:
          type: string
          description: The path to the full list of events in this collection.
        items:
          type: array
          description: The list of returned events in this collection.
          items:
            $ref: '#/components/schemas/EventSummary'
      required:
        - available
        - returned
        - collectionURI
        - items
    SeriesList:
      type: object
      description: A resource list containing series in which this story appears.
      properties:
        available:
          type: integer
          description: The number of total available series in this list. Will always be greater than or equal to the "returned" value.
        returned:
          type: integer
          description: The number of series returned in this collection.
          maximum: 20
        collectionURI:
          type: string
          description: The path to the full list of series in this collection.
        items:
          type: array
          description: The list of returned series in this collection.
          items:
            $ref: '#/components/schemas/SeriesSummary'
      required:
        - available
        - returned
        - collectionURI
        - items
    StoryList:
      type: object
      description: A resource list containing stories which are related to this story.
      properties:
        available:
          type: integer
          description: The number of total available stories in this list. Will always be greater than or equal to the "returned" value.
        returned:
          type: integer
          description: The number of stories returned in this collection.
          maximum: 20
        collectionURI:
          type: string
          description: The path to the full list of stories in this collection.
        items:
          type: array
          description: The list of returned stories in this collection.
          items:
            $ref: '#/components/schemas/StorySummary'
      required:
        - available
        - returned
        - collectionURI
        - items
        
# Core Entity Container Representations
    CharacterDataContainer:
      type: object
      description: The container for the character data.
      properties:
        offset:
          type: integer
          description: The requested offset (number of skipped results) of the call.
        limit:
          type: integer
          description: The requested result limit.
        total:
          type: integer
          description: The total number of resources available given the current filter set.
        count:
          type: integer
          description: The total number of results returned by this call.
        results:
          type: array
          description: The list of characters returned by the call.
          items:
            $ref: '#/components/schemas/Character'
      required:
        - offset
        - limit
        - total
        - count
        - results
    ComicDataContainer:
      type: object
      description: The container for the comic data.
      properties:
        offset:
          type: integer
          description: The requested offset (number of skipped results) of the call.
        limit:
          type: integer
          description: The requested result limit.
        total:
          type: integer
          description: The total number of resources available given the current filter set.
        count:
          type: integer
          description: The total number of results returned by this call.
        results:
          type: array
          description: The list of comics returned by the call
          items:
            $ref: '#/components/schemas/Comic'
      required:
        - offset
        - limit
        - total
        - count
        - results
    CreatorDataContainer:
      type: object
      description: A container type for lists of creators.
      properties:
        offset:
          type: integer
          description: The requested offset (number of skipped results) of the call.
        limit:
          type: integer
          description: The requested result limit.
        total:
          type: integer
          description: The total number of resources available given the current filter set.
        count:
          type: integer
          description: The total number of results returned by this call.
        results:
          type: array
          description: The list of creators returned by the call.
          items:
            $ref: '#/components/schemas/Creator'
      required:
        - offset
        - limit
        - total
        - count
        - results
    EventDataContainer:
      type: object
      description: The container for the event data.
      properties:
        offset:
          type: integer
          description: The requested offset (number of skipped results) of the call.
        limit:
          type: integer
          description: The requested result limit.
        total:
          type: integer
          description: The total number of resources available given the current filter set.
        count:
          type: integer
          description: The total number of results returned by this call.
        results:
          type: array
          description: The list of events returned by the call
          items:
            $ref: '#/components/schemas/Event'
      required:
        - offset
        - limit
        - total
        - count
        - results
    SeriesDataContainer:
      type: object
      description: The container for the series data.
      properties:
        offset:
          type: integer
          description: The requested offset (number of skipped results) of the call.
        limit:
          type: integer
          description: The requested result limit.
        total:
          type: integer
          description: The total number of resources available given the current filter set.
        count:
          type: integer
          description: The total number of results returned by this call.
        results:
          type: array
          description: The list of series returned by the call
          items:
            $ref: '#/components/schemas/Series'
      required:
        - offset
        - limit
        - total
        - count
        - results
    StoryDataContainer:
      type: object
      description: The container for the story data.
      properties:
        offset:
          type: integer
          description: The requested offset (number of skipped results) of the call.
        limit:
          type: integer
          description: The requested result limit.
        total:
          type: integer
          description: The total number of resources available given the current filter set.
        count:
          type: integer
          description: The total number of results returned by this call.
        results:
          type: array
          description: The list of stories returned by the call
          items:
            $ref: '#/components/schemas/Story'
      required:
        - offset
        - limit
        - total
        - count
        - results
        
# Core Entity Wrapper Representations
    CharacterDataWrapper:
      type: object
      description: The wrapper for the character data.
      properties:
        code:
          type: integer
          description: The HTTP status code of the returned result.
        status:
          type: string
          description: A string description of the call status.
        copyright:
          type: string
          description: The copyright notice for the returned result.
        attributionText:
          type: string
          description: The attribution notice for this result. Please display either this notice or the contents of the attributionHTML field on all screens which contain data from the Marvel Comics API.
        attributionHTML:
          type: string
          description: An HTML representation of the attribution notice for this result. Please display either this notice or the contents of the attributionText field on all screens which contain data from the Marvel Comics API.
        data:
          $ref: '#/components/schemas/CharacterDataContainer'
        etag:
          type: string
          description: A digest value of the content returned by the call.
      required:
        - code
        - status
        - copyright
        - attributionText
        - attributionHTML
        - data
        - etag
    ComicDataWrapper:
      type: object
      description: The wrapper for the comic data.
      properties:
        code:
          type: integer
          description: The HTTP status code of the returned result.
        status:
          type: string
          description: A string description of the call status.
        copyright:
          type: string
          description: The copyright notice for the returned result.
        attributionText:
          type: string
          description: The attribution notice for this result. Please display either this notice or the contents of the attributionHTML field on all screens which contain data from the Marvel Comics API.
        attributionHTML:
          type: string
          description: An HTML representation of the attribution notice for this result. Please display either this notice or the contents of the attributionText field on all screens which contain data from the Marvel Comics API.
        data:
          $ref: '#/components/schemas/ComicDataContainer'
        etag:
          type: string
          description: A digest value of the content returned by the call.
      required:
        - code
        - status
        - copyright
        - attributionText
        - attributionHTML
        - data
        - etag
    CreatorDataWrapper:
      type: object
      description: The wrapper for the creator data.
      properties:
        code:
          type: integer
          description: The HTTP status code of the returned result.
        status:
          type: string
          description: A string description of the call status.
        copyright:
          type: string
          description: The copyright notice for the returned result.
        attributionText:
          type: string
          description: The attribution notice for this result. Please display either this notice or the contents of the attributionHTML field on all screens which contain data from the Marvel Comics API.
        attributionHTML:
          type: string
          description: An HTML representation of the attribution notice for this result. Please display either this notice or the contents of the attributionText field on all screens which contain data from the Marvel Comics API.
        data:
          $ref: '#/components/schemas/CreatorDataContainer'
        etag:
          type: string
          description: A digest value of the content returned by the call.
      required:
        - code
        - status
        - copyright
        - attributionText
        - attributionHTML
        - data
        - etag
    EventDataWrapper:
      type: object
      description: The wrapper for the event data.
      properties:
        code:
          type: integer
          description: The HTTP status code of the returned result.
        status:
          type: string
          description: A string description of the call status.
        copyright:
          type: string
          description: The copyright notice for the returned result.
        attributionText:
          type: string
          description: The attribution notice for this result. Please display either this notice or the contents of the attributionHTML field on all screens which contain data from the Marvel Comics API.
        attributionHTML:
          type: string
          description: An HTML representation of the attribution notice for this result. Please display either this notice or the contents of the attributionText field on all screens which contain data from the Marvel Comics API.
        data:
          $ref: '#/components/schemas/EventDataContainer'
        etag:
          type: string
          description: A digest value of the content returned by the call.
# These required fields are commented out due to a possible bug from the service, that can returns all fields as null
# when requesting events. (e. g.this happens when requesting all events without defining any filter parameter)
#      required:
#        - code
#        - status
#        - copyright
#        - attributionText
#        - attributionHTML
#        - data
#        - etag
    SeriesDataWrapper:
      type: object
      description: The wrapper for the series data.
      properties:
        code:
          type: integer
          description: The HTTP status code of the returned result.
        status:
          type: string
          description: A string description of the call status.
        copyright:
          type: string
          description: The copyright notice for the returned result.
        attributionText:
          type: string
          description: The attribution notice for this result. Please display either this notice or the contents of the attributionHTML field on all screens which contain data from the Marvel Comics API.
        attributionHTML:
          type: string
          description: An HTML representation of the attribution notice for this result. Please display either this notice or the contents of the attributionText field on all screens which contain data from the Marvel Comics API.
        data:
          $ref: '#/components/schemas/SeriesDataContainer'
        etag:
          type: string
          description: A digest value of the content returned by the call.
      required:
        - code
        - status
        - copyright
        - attributionText
        - attributionHTML
        - data
        - etag
    StoryDataWrapper:
      type: object
      description: The wrapper for the story data.
      properties:
        code:
          type: integer
          description: The HTTP status code of the returned result.
        status:
          type: string
          description: A string description of the call status.
        copyright:
          type: string
          description: The copyright notice for the returned result.
        attributionText:
          type: string
          description: The attribution notice for this result. Please display either this notice or the contents of the attributionHTML field on all screens which contain data from the Marvel Comics API.
        attributionHTML:
          type: string
          description: An HTML representation of the attribution notice for this result. Please display either this notice or the contents of the attributionText field on all screens which contain data from the Marvel Comics API.
        data:
          $ref: '#/components/schemas/StoryDataContainer'
        etag:
          type: string
          description: A digest value of the content returned by the call.
      required:
        - code
        - status
        - copyright
        - attributionText
        - attributionHTML
        - data
        - etag
        
# Common Structures
    ComicDate:
      type: object
      description: A type that represents a date and time for which the comic was released.
      properties:
        type:
          type: string
          description: A description of the date (e.g. onsale date, FOC date).
        date:
          type: string
          description: The date.
          format: date
      required:
        - type
        - date
    ComicPrice:
      type: object
      description: A type that represents a price (e.g. print price, digital price) for the comic.
      properties:
        type:
          type: string
          description: A description of the price (e.g. print price, digital price).
        price:
          type: number
          description: The price (all prices in USD).
          format: float
      required:
        - type
        - price
    Image:
      type: object
      description: A type that represents an image for a resource.
      properties:
        path:
          type: string
          description: The directory path of to the image.
        extension:
          type: string
          description: The file extension for the image.
      required:
        - path
        - extension
    TextObject:
      type: object
      description: A type that represents bits of descriptive text which are attached to an entity.
      properties:
        type:
          type: string
          description: The canonical type of the text object (e.g. solicit text, preview text, etc.).
        language:
          type: string
          description: The IETF language tag (or language code) denoting which language the text object is written in.
        text:
          type: string
          description: The text of the text object.
      required:
        - type
        - language
        - text
    Url:
      type: object
      description: A type that represents a reference to web pages or deep links into applications. When present in a resultset, it is preferred that you use these to link back to Marvel. Many resources will have more than one representation on the web so URLs are generally presented as an array of URL resources.
      properties:
        type:
          type: string
          description: A text identifier for the URL.
        url:
          type: string
          description: A full URL (including scheme, domain, and path).
      required:
        - type
        - url

# Errors
    StandardError:
      type: object
      description: A standard error type.
      properties:
        code:
          type: integer
          description: The HTTP status code of the returned result.
        reason:
          type: string
          description: A human readable message providing more details about the error.
      required:
        - code
