{
  "swagger": "2.0",
  "info": {
    "title": "Marvel Public API v1",
    "version": ""
  },
  "host": "gateway.marvel.com",
  "basePath": "/v1/public",
  "schemes": [
    "http"
  ],
  "paths": {
    "/characters": {
      "get": {
        "summary": "List characters",
        "description": "Fetches lists of characters.",
        "operationId": "list-characters",
        "parameters": [
          {
            "name": "name",
            "in": "query",
            "description": "Return only characters matching the specified full character name (e.g. Spider-Man).",
            "type": "string"
          },
          {
            "name": "nameStartsWith",
            "in": "query",
            "description": "Return characters with names that begin with the specified string (e.g. Sp).",
            "type": "string"
          },
          {
            "name": "modifiedSince",
            "in": "query",
            "description": "Return only characters which have been modified since the specified date.",
            "type": "string"
          },
          {
            "name": "comics",
            "in": "query",
            "description": "Return only characters which appear in the specified comics (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "series",
            "in": "query",
            "description": "Return only characters which appear the specified series (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "events",
            "in": "query",
            "description": "Return only characters which appear in the specified events (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "stories",
            "in": "query",
            "description": "Return only characters which appear the specified stories (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "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.",
            "type": "string"
          },
          {
            "name": "limit",
            "in": "query",
            "description": "Limit the result set to the specified number of resources.",
            "type": "number"
          },
          {
            "name": "offset",
            "in": "query",
            "description": "Skip the specified number of resources in the result set.",
            "type": "number"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "type": "object",
              "properties": {
                "code": {
                  "type": "number",
                  "description": "The HTTP status code of the returned result",
                  "example": 200
                },
                "status": {
                  "type": "string",
                  "description": "A string description of the call status",
                  "example": "Ok"
                },
                "etag": {
                  "type": "string",
                  "description": "A digest value of the content",
                  "example": "f0fbae65eb2f8f28bdeea0a29be8749a4e67acb3"
                },
                "data": {
                  "type": "object",
                  "description": "The results returned by the call",
                  "properties": {
                    "offset": {
                      "type": "number",
                      "description": "The requested offset (skipped results) of the call",
                      "example": 0
                    },
                    "limit": {
                      "type": "number",
                      "description": "The requested result limit",
                      "example": 20
                    },
                    "total": {
                      "type": "number",
                      "description": "The total number of results available",
                      "example": 30920
                    },
                    "count": {
                      "type": "number",
                      "description": "The total number of results returned by this call",
                      "example": 20
                    },
                    "results": {
                      "type": "object",
                      "format": "data_container",
                      "description": "The list of entities returned by the call"
                    }
                  }
                },
                "copyright": {
                  "type": "string",
                  "description": "The copyright notice for the returned result"
                },
                "attributionText": {
                  "type": "string",
                  "description": "The attribution notice for this result"
                },
                "attributionHTML": {
                  "type": "string",
                  "description": "An HTML representation of the attribution notice for this result"
                }
              }
            }
          }
        }
      }
    },
    "/characters/{characterId}": {
      "get": {
        "summary": "Character by Id",
        "description": "Fetches a single character by id.",
        "operationId": "character-by-id",
        "parameters": [
          {
            "name": "characterId",
            "in": "path",
            "description": "A single character id.",
            "required": true,
            "type": "string"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/CharacterDataWrapper"
            }
          }
        }
      }
    },
    "/characters/{characterId}/comics": {
      "get": {
        "summary": "Character comics",
        "description": "Fetches lists of comics filtered by a character id.",
        "operationId": "character-comics",
        "parameters": [
          {
            "name": "characterId",
            "in": "path",
            "description": "The character id.",
            "required": true,
            "type": "string"
          },
          {
            "name": "format",
            "in": "query",
            "description": "Filter by the issue format (e.g. comic, digital comic, hardcover).",
            "type": "string"
          },
          {
            "name": "formatType",
            "in": "query",
            "description": "Filter by the issue format type (comic or collection).",
            "type": "string"
          },
          {
            "name": "noVariants",
            "in": "query",
            "description": "Exclude variant comics from the result set.",
            "type": "boolean"
          },
          {
            "name": "dateDescriptor",
            "in": "query",
            "description": "Return comics within a predefined date range.",
            "type": "string"
          },
          {
            "name": "dateRange",
            "in": "query",
            "description": "Return comics within a predefined date range.  Dates must be specified as date1,date2 (e.g. 2013-01-01,2013-01-02).  Dates are preferably formatted as YYYY-MM-DD but may be sent as any common date format.",
            "type": "number"
          },
          {
            "name": "diamondCode",
            "in": "query",
            "description": "Filter by diamond code.",
            "type": "string"
          },
          {
            "name": "digitalId",
            "in": "query",
            "description": "Filter by digital comic id.",
            "type": "number"
          },
          {
            "name": "upc",
            "in": "query",
            "description": "Filter by UPC.",
            "type": "string"
          },
          {
            "name": "isbn",
            "in": "query",
            "description": "Filter by ISBN.",
            "type": "string"
          },
          {
            "name": "ean",
            "in": "query",
            "description": "Filter by EAN.",
            "type": "string"
          },
          {
            "name": "issn",
            "in": "query",
            "description": "Filter by ISSN.",
            "type": "string"
          },
          {
            "name": "hasDigitalIssue",
            "in": "query",
            "description": "Include only results which are available digitally.",
            "type": "boolean"
          },
          {
            "name": "modifiedSince",
            "in": "query",
            "description": "Return only comics which have been modified since the specified date.",
            "type": "string"
          },
          {
            "name": "creators",
            "in": "query",
            "description": "Return only comics which feature work by the specified creators (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "series",
            "in": "query",
            "description": "Return only comics which are part of the specified series (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "events",
            "in": "query",
            "description": "Return only comics which take place in the specified events (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "stories",
            "in": "query",
            "description": "Return only comics which contain the specified stories (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "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).",
            "type": "number"
          },
          {
            "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).",
            "type": "number"
          },
          {
            "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.",
            "type": "string"
          },
          {
            "name": "limit",
            "in": "query",
            "description": "Limit the result set to the specified number of resources.",
            "type": "number"
          },
          {
            "name": "offset",
            "in": "query",
            "description": "Skip the specified number of resources in the result set.",
            "type": "number"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/ComicDataWrapper"
            }
          }
        }
      }
    },
    "/characters/{characterId}/events": {
      "get": {
        "summary": "Character events",
        "description": "Fetches lists of events filtered by a character id.",
        "operationId": "character-events",
        "parameters": [
          {
            "name": "characterId",
            "in": "path",
            "description": "The character ID.",
            "required": true,
            "type": "string"
          },
          {
            "name": "name",
            "in": "query",
            "description": "Filter the event list by name.",
            "type": "string"
          },
          {
            "name": "nameStartsWith",
            "in": "query",
            "description": "Return events with names that begin with the specified string (e.g. Sp).",
            "type": "string"
          },
          {
            "name": "modifiedSince",
            "in": "query",
            "description": "Return only events which have been modified since the specified date.",
            "type": "string"
          },
          {
            "name": "creators",
            "in": "query",
            "description": "Return only events which feature work by the specified creators (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "series",
            "in": "query",
            "description": "Return only events which are part of the specified series (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "comics",
            "in": "query",
            "description": "Return only events which take place in the specified comics (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "stories",
            "in": "query",
            "description": "Return only events which contain the specified stories (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "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.",
            "type": "string"
          },
          {
            "name": "limit",
            "in": "query",
            "description": "Limit the result set to the specified number of resources.",
            "type": "number"
          },
          {
            "name": "offset",
            "in": "query",
            "description": "Skip the specified number of resources in the result set.",
            "type": "number"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/EventDataWrapper"
            }
          }
        }
      }
    },
    "/characters/{characterId}/series": {
      "get": {
        "summary": "Character series",
        "description": "Fetches lists of series filtered by a character id.",
        "operationId": "character-series",
        "parameters": [
          {
            "name": "characterId",
            "in": "path",
            "description": "The character ID",
            "required": true,
            "type": "string"
          },
          {
            "name": "title",
            "in": "query",
            "description": "Filter by series title.",
            "type": "string"
          },
          {
            "name": "titleStartsWith",
            "in": "query",
            "description": "Return series with titles that begin with the specified string (e.g. Sp).",
            "type": "string"
          },
          {
            "name": "startYear",
            "in": "query",
            "description": "Return only series matching the specified start year.",
            "type": "number"
          },
          {
            "name": "modifiedSince",
            "in": "query",
            "description": "Return only series which have been modified since the specified date.",
            "type": "string"
          },
          {
            "name": "comics",
            "in": "query",
            "description": "Return only series which contain the specified comics (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "stories",
            "in": "query",
            "description": "Return only series which contain the specified stories (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "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).",
            "type": "number"
          },
          {
            "name": "creators",
            "in": "query",
            "description": "Return only series which feature work by the specified creators (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "seriesType",
            "in": "query",
            "description": "Filter the series by publication frequency type.",
            "type": "string"
          },
          {
            "name": "contains",
            "in": "query",
            "description": "Return only series containing one or more comics with the specified format.",
            "type": "string"
          },
          {
            "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.",
            "type": "string"
          },
          {
            "name": "limit",
            "in": "query",
            "description": "Limit the result set to the specified number of resources.",
            "type": "number"
          },
          {
            "name": "offset",
            "in": "query",
            "description": "Skip the specified number of resources in the result set.",
            "type": "number"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/SeriesDataWrapper"
            }
          }
        }
      }
    },
    "/characters/{characterId}/stories": {
      "get": {
        "summary": "Character stories",
        "description": "Fetches lists of stories filtered by a character id.",
        "operationId": "character-stories",
        "parameters": [
          {
            "name": "characterId",
            "in": "path",
            "description": "The character ID.",
            "required": true,
            "type": "string"
          },
          {
            "name": "modifiedSince",
            "in": "query",
            "description": "Return only stories which have been modified since the specified date.",
            "type": "string"
          },
          {
            "name": "comics",
            "in": "query",
            "description": "Return only stories contained in the specified (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "series",
            "in": "query",
            "description": "Return only stories contained the specified series (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "events",
            "in": "query",
            "description": "Return only stories which take place during the specified events (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "creators",
            "in": "query",
            "description": "Return only stories which feature work by the specified creators (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "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.",
            "type": "string"
          },
          {
            "name": "limit",
            "in": "query",
            "description": "Limit the result set to the specified number of resources.",
            "type": "number"
          },
          {
            "name": "offset",
            "in": "query",
            "description": "Skip the specified number of resources in the result set.",
            "type": "number"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/StoryDataWrapper"
            }
          }
        }
      }
    },
    "/comics": {
      "get": {
        "summary": "List comics",
        "description": "Fetches lists of comics.",
        "operationId": "list-comics",
        "parameters": [
          {
            "name": "format",
            "in": "query",
            "description": "Filter by the issue format (e.g. comic, digital comic, hardcover).",
            "type": "string"
          },
          {
            "name": "formatType",
            "in": "query",
            "description": "Filter by the issue format type (comic or collection).",
            "type": "string"
          },
          {
            "name": "noVariants",
            "in": "query",
            "description": "Exclude variants (alternate covers, secondary printings, director's cuts, etc.) from the result set.",
            "type": "boolean"
          },
          {
            "name": "dateDescriptor",
            "in": "query",
            "description": "Return comics within a predefined date range.",
            "type": "string"
          },
          {
            "name": "dateRange",
            "in": "query",
            "description": "Return comics within a predefined date range.  Dates must be specified as date1,date2 (e.g. 2013-01-01,2013-01-02).  Dates are preferably formatted as YYYY-MM-DD but may be sent as any common date format.",
            "type": "number"
          },
          {
            "name": "diamondCode",
            "in": "query",
            "description": "Filter by diamond code.",
            "type": "string"
          },
          {
            "name": "digitalId",
            "in": "query",
            "description": "Filter by digital comic id.",
            "type": "number"
          },
          {
            "name": "upc",
            "in": "query",
            "description": "Filter by UPC.",
            "type": "string"
          },
          {
            "name": "isbn",
            "in": "query",
            "description": "Filter by ISBN.",
            "type": "string"
          },
          {
            "name": "ean",
            "in": "query",
            "description": "Filter by EAN.",
            "type": "string"
          },
          {
            "name": "issn",
            "in": "query",
            "description": "Filter by ISSN.",
            "type": "string"
          },
          {
            "name": "hasDigitalIssue",
            "in": "query",
            "description": "Include only results which are available digitally.",
            "type": "boolean"
          },
          {
            "name": "modifiedSince",
            "in": "query",
            "description": "Return only comics which have been modified since the specified date.",
            "type": "string"
          },
          {
            "name": "creators",
            "in": "query",
            "description": "Return only comics which feature work by the specified creators (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "characters",
            "in": "query",
            "description": "Return only comics which feature the specified characters (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "series",
            "in": "query",
            "description": "Return only comics which are part of the specified series (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "events",
            "in": "query",
            "description": "Return only comics which take place in the specified events (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "stories",
            "in": "query",
            "description": "Return only comics which contain the specified stories (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "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.",
            "type": "number"
          },
          {
            "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.",
            "type": "number"
          },
          {
            "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.",
            "type": "string"
          },
          {
            "name": "limit",
            "in": "query",
            "description": "Limit the result set to the specified number of resources.",
            "type": "number"
          },
          {
            "name": "offset",
            "in": "query",
            "description": "Skip the specified number of resources in the result set.",
            "type": "number"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/ComicDataWrapper"
            }
          }
        }
      }
    },
    "/comics/{comicId}": {
      "get": {
        "summary": "Comic by Id",
        "description": "Fetches a single comic by id.",
        "operationId": "comic-by-id",
        "parameters": [
          {
            "name": "comicId",
            "in": "path",
            "description": "A single comic.",
            "required": true,
            "type": "string"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/ComicDataWrapper"
            }
          }
        }
      }
    },
    "/comics/{comicId}/characters": {
      "get": {
        "summary": "Comic characters",
        "description": "Fetches lists of characters filtered by a comic id.",
        "operationId": "comic-characters",
        "parameters": [
          {
            "name": "comicId",
            "in": "path",
            "description": "The comic id.",
            "required": true,
            "type": "string"
          },
          {
            "name": "name",
            "in": "query",
            "description": "Return only characters matching the specified full character name (e.g. Spider-Man).",
            "type": "string"
          },
          {
            "name": "nameStartsWith",
            "in": "query",
            "description": "Return characters with names that begin with the specified string (e.g. Sp).",
            "type": "string"
          },
          {
            "name": "modifiedSince",
            "in": "query",
            "description": "Return only characters which have been modified since the specified date.",
            "type": "string"
          },
          {
            "name": "series",
            "in": "query",
            "description": "Return only characters which appear the specified series (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "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).",
            "type": "number"
          },
          {
            "name": "stories",
            "in": "query",
            "description": "Return only characters which appear the specified stories (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "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.",
            "type": "string"
          },
          {
            "name": "limit",
            "in": "query",
            "description": "Limit the result set to the specified number of resources.",
            "type": "number"
          },
          {
            "name": "offset",
            "in": "query",
            "description": "Skip the specified number of resources in the result set.",
            "type": "number"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/CharacterDataWrapper"
            }
          }
        }
      }
    },
    "/comics/{comicId}/creators": {
      "get": {
        "summary": "Comic creators",
        "description": "Fetches lists of creators filtered by a comic id.",
        "operationId": "comic-creators",
        "parameters": [
          {
            "name": "comicId",
            "in": "path",
            "description": "The comic id.",
            "required": true,
            "type": "string"
          },
          {
            "name": "firstName",
            "in": "query",
            "description": "Filter by creator first name (e.g. brian).",
            "type": "string"
          },
          {
            "name": "middleName",
            "in": "query",
            "description": "Filter by creator middle name (e.g. Michael).",
            "type": "string"
          },
          {
            "name": "lastName",
            "in": "query",
            "description": "Filter by creator last name (e.g. Bendis).",
            "type": "string"
          },
          {
            "name": "suffix",
            "in": "query",
            "description": "Filter by suffix or honorific (e.g. Jr., Sr.).",
            "type": "string"
          },
          {
            "name": "nameStartsWith",
            "in": "query",
            "description": "Filter by creator names that match critera (e.g. B, St L).",
            "type": "string"
          },
          {
            "name": "firstNameStartsWith",
            "in": "query",
            "description": "Filter by creator first names that match critera (e.g. B, St L).",
            "type": "string"
          },
          {
            "name": "middleNameStartsWith",
            "in": "query",
            "description": "Filter by creator middle names that match critera (e.g. Mi).",
            "type": "string"
          },
          {
            "name": "lastNameStartsWith",
            "in": "query",
            "description": "Filter by creator last names that match critera (e.g. Ben).",
            "type": "string"
          },
          {
            "name": "modifiedSince",
            "in": "query",
            "description": "Return only creators which have been modified since the specified date.",
            "type": "string"
          },
          {
            "name": "comics",
            "in": "query",
            "description": "Return only creators who worked on in the specified comics (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "series",
            "in": "query",
            "description": "Return only creators who worked on the specified series (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "stories",
            "in": "query",
            "description": "Return only creators who worked on the specified stories (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "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.",
            "type": "string"
          },
          {
            "name": "limit",
            "in": "query",
            "description": "Limit the result set to the specified number of resources.",
            "type": "number"
          },
          {
            "name": "offset",
            "in": "query",
            "description": "Skip the specified number of resources in the result set.",
            "type": "number"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/CreatorDataWrapper"
            }
          }
        }
      }
    },
    "/comics/{comicId}/events": {
      "get": {
        "summary": "Comic events",
        "description": "Fetches lists of events filtered by a comic id.",
        "operationId": "comic-events",
        "parameters": [
          {
            "name": "comicId",
            "in": "path",
            "description": "The comic ID.",
            "required": true,
            "type": "string"
          },
          {
            "name": "name",
            "in": "query",
            "description": "Filter the event list by name.",
            "type": "string"
          },
          {
            "name": "nameStartsWith",
            "in": "query",
            "description": "Return events with names that begin with the specified string (e.g. Sp).",
            "type": "string"
          },
          {
            "name": "modifiedSince",
            "in": "query",
            "description": "Return only events which have been modified since the specified date.",
            "type": "string"
          },
          {
            "name": "creators",
            "in": "query",
            "description": "Return only events which feature work by the specified creators (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "characters",
            "in": "query",
            "description": "Return only events which feature the specified characters (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "series",
            "in": "query",
            "description": "Return only events which are part of the specified series (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "stories",
            "in": "query",
            "description": "Return only events which contain the specified stories (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "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.",
            "type": "string"
          },
          {
            "name": "limit",
            "in": "query",
            "description": "Limit the result set to the specified number of resources.",
            "type": "number"
          },
          {
            "name": "offset",
            "in": "query",
            "description": "Skip the specified number of resources in the result set.",
            "type": "number"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/EventDataWrapper"
            }
          }
        }
      }
    },
    "/comics/{comicId}/stories": {
      "get": {
        "summary": "Comic stories",
        "description": "Fetches lists of stories filtered by a comic id.",
        "operationId": "comic-stories",
        "parameters": [
          {
            "name": "comicId",
            "in": "path",
            "description": "The comic ID.",
            "required": true,
            "type": "string"
          },
          {
            "name": "modifiedSince",
            "in": "query",
            "description": "Return only stories which have been modified since the specified date.",
            "type": "string"
          },
          {
            "name": "series",
            "in": "query",
            "description": "Return only stories contained the specified series (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "events",
            "in": "query",
            "description": "Return only stories which take place during the specified events (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "creators",
            "in": "query",
            "description": "Return only stories which feature work by the specified creators (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "characters",
            "in": "query",
            "description": "Return only stories which feature the specified characters (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "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.",
            "type": "string"
          },
          {
            "name": "limit",
            "in": "query",
            "description": "Limit the result set to the specified number of resources.",
            "type": "number"
          },
          {
            "name": "offset",
            "in": "query",
            "description": "Skip the specified number of resources.",
            "type": "number"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/StoryDataWrapper"
            }
          }
        }
      }
    },
    "/creators": {
      "get": {
        "summary": "List creators",
        "description": "Fetches lists of creators.",
        "operationId": "list-creators",
        "parameters": [
          {
            "name": "firstName",
            "in": "query",
            "description": "Filter by creator first name (e.g. Brian).",
            "type": "string"
          },
          {
            "name": "middleName",
            "in": "query",
            "description": "Filter by creator middle name (e.g. Michael).",
            "type": "string"
          },
          {
            "name": "lastName",
            "in": "query",
            "description": "Filter by creator last name (e.g. Bendis).",
            "type": "string"
          },
          {
            "name": "suffix",
            "in": "query",
            "description": "Filter by suffix or honorific (e.g. Jr., Sr.).",
            "type": "string"
          },
          {
            "name": "nameStartsWith",
            "in": "query",
            "description": "Filter by creator names that match critera (e.g. B, St L).",
            "type": "string"
          },
          {
            "name": "firstNameStartsWith",
            "in": "query",
            "description": "Filter by creator first names that match critera (e.g. B, St L).",
            "type": "string"
          },
          {
            "name": "middleNameStartsWith",
            "in": "query",
            "description": "Filter by creator middle names that match critera (e.g. Mi).",
            "type": "string"
          },
          {
            "name": "lastNameStartsWith",
            "in": "query",
            "description": "Filter by creator last names that match critera (e.g. Ben).",
            "type": "string"
          },
          {
            "name": "modifiedSince",
            "in": "query",
            "description": "Return only creators which have been modified since the specified date.",
            "type": "string"
          },
          {
            "name": "comics",
            "in": "query",
            "description": "Return only creators who worked on in the specified comics (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "series",
            "in": "query",
            "description": "Return only creators who worked on the specified series (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "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).",
            "type": "number"
          },
          {
            "name": "stories",
            "in": "query",
            "description": "Return only creators who worked on the specified stories (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "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.",
            "type": "string"
          },
          {
            "name": "limit",
            "in": "query",
            "description": "Limit the result set to the specified number of resources.",
            "type": "number"
          },
          {
            "name": "offset",
            "in": "query",
            "description": "Skip the specified number of resources in the result set.",
            "type": "number"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/CreatorDataWrapper"
            }
          }
        }
      }
    },
    "/creators/{creatorId}": {
      "get": {
        "summary": "Creator by Id",
        "description": "Fetches a single creator by id.",
        "operationId": "creator-by-id",
        "parameters": [
          {
            "name": "creatorId",
            "in": "path",
            "description": "A single creator id.",
            "required": true,
            "type": "string"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/CreatorDataWrapper"
            }
          }
        }
      }
    },
    "/creators/{creatorId}/comics": {
      "get": {
        "summary": "Creator comics",
        "description": "Fetches lists of comics filtered by a creator id.",
        "operationId": "creator-comics",
        "parameters": [
          {
            "name": "creatorId",
            "in": "path",
            "description": "The creator ID.",
            "required": true,
            "type": "string"
          },
          {
            "name": "format",
            "in": "query",
            "description": "Filter by the issue format (e.g. comic, digital comic, hardcover).",
            "type": "string"
          },
          {
            "name": "formatType",
            "in": "query",
            "description": "Filter by the issue format type (comic or collection).",
            "type": "string"
          },
          {
            "name": "noVariants",
            "in": "query",
            "description": "Exclude variant comics from the result set.",
            "type": "boolean"
          },
          {
            "name": "dateDescriptor",
            "in": "query",
            "description": "Return comics within a predefined date range.",
            "type": "string"
          },
          {
            "name": "dateRange",
            "in": "query",
            "description": "Return comics within a predefined date range.  Dates must be specified as date1,date2 (e.g. 2013-01-01,2013-01-02).  Dates are preferably formatted as YYYY-MM-DD but may be sent as any common date format.",
            "type": "number"
          },
          {
            "name": "diamondCode",
            "in": "query",
            "description": "Filter by diamond code.",
            "type": "string"
          },
          {
            "name": "digitalId",
            "in": "query",
            "description": "Filter by digital comic id.",
            "type": "number"
          },
          {
            "name": "upc",
            "in": "query",
            "description": "Filter by UPC.",
            "type": "string"
          },
          {
            "name": "isbn",
            "in": "query",
            "description": "Filter by ISBN.",
            "type": "string"
          },
          {
            "name": "ean",
            "in": "query",
            "description": "Filter by EAN.",
            "type": "string"
          },
          {
            "name": "issn",
            "in": "query",
            "description": "Filter by ISSN.",
            "type": "string"
          },
          {
            "name": "hasDigitalIssue",
            "in": "query",
            "description": "Include only results which are available digitally.",
            "type": "boolean"
          },
          {
            "name": "modifiedSince",
            "in": "query",
            "description": "Return only comics which have been modified since the specified date.",
            "type": "string"
          },
          {
            "name": "characters",
            "in": "query",
            "description": "Return only comics which feature the specified characters (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "series",
            "in": "query",
            "description": "Return only comics which are part of the specified series (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "events",
            "in": "query",
            "description": "Return only comics which take place in the specified events (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "stories",
            "in": "query",
            "description": "Return only comics which contain the specified stories (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "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).",
            "type": "number"
          },
          {
            "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).",
            "type": "number"
          },
          {
            "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.",
            "type": "string"
          },
          {
            "name": "limit",
            "in": "query",
            "description": "Limit the result set to the specified number of resources.",
            "type": "number"
          },
          {
            "name": "offset",
            "in": "query",
            "description": "Skip the specified number of resources in the result set.",
            "type": "number"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/ComicDataWrapper"
            }
          }
        }
      }
    },
    "/creators/{creatorId}/events": {
      "get": {
        "summary": "Creator events",
        "description": "Fetches lists of events filtered by a creator id.",
        "operationId": "creator-events",
        "parameters": [
          {
            "name": "creatorId",
            "in": "path",
            "description": "The creator ID.",
            "required": true,
            "type": "string"
          },
          {
            "name": "name",
            "in": "query",
            "description": "Filter the event list by name.",
            "type": "string"
          },
          {
            "name": "nameStartsWith",
            "in": "query",
            "description": "Return events with names that begin with the specified string (e.g. Sp).",
            "type": "string"
          },
          {
            "name": "modifiedSince",
            "in": "query",
            "description": "Return only events which have been modified since the specified date.",
            "type": "string"
          },
          {
            "name": "characters",
            "in": "query",
            "description": "Return only events which feature the specified characters (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "series",
            "in": "query",
            "description": "Return only events which are part of the specified series (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "comics",
            "in": "query",
            "description": "Return only events which take place in the specified comics (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "stories",
            "in": "query",
            "description": "Return only events which contain the specified stories (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "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.",
            "type": "string"
          },
          {
            "name": "limit",
            "in": "query",
            "description": "Limit the result set to the specified number of resources.",
            "type": "number"
          },
          {
            "name": "offset",
            "in": "query",
            "description": "Skip the specified number of resources in the result set.",
            "type": "number"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/EventDataWrapper"
            }
          }
        }
      }
    },
    "/creators/{creatorId}/series": {
      "get": {
        "summary": "Creator series",
        "description": "Fetches lists of series filtered by a creator id.",
        "operationId": "creator-series",
        "parameters": [
          {
            "name": "creatorId",
            "in": "path",
            "description": "The creator ID.",
            "required": true,
            "type": "string"
          },
          {
            "name": "title",
            "in": "query",
            "description": "Filter by series title.",
            "type": "string"
          },
          {
            "name": "titleStartsWith",
            "in": "query",
            "description": "Return series with titles that begin with the specified string (e.g. Sp).",
            "type": "string"
          },
          {
            "name": "startYear",
            "in": "query",
            "description": "Return only series matching the specified start year.",
            "type": "number"
          },
          {
            "name": "modifiedSince",
            "in": "query",
            "description": "Return only series which have been modified since the specified date.",
            "type": "string"
          },
          {
            "name": "comics",
            "in": "query",
            "description": "Return only series which contain the specified comics (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "stories",
            "in": "query",
            "description": "Return only series which contain the specified stories (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "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).",
            "type": "number"
          },
          {
            "name": "characters",
            "in": "query",
            "description": "Return only series which feature the specified characters (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "seriesType",
            "in": "query",
            "description": "Filter the series by publication frequency type.",
            "type": "string"
          },
          {
            "name": "contains",
            "in": "query",
            "description": "Return only series containing one or more comics with the specified format.",
            "type": "string"
          },
          {
            "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.",
            "type": "string"
          },
          {
            "name": "limit",
            "in": "query",
            "description": "Limit the result set to the specified number of resources.",
            "type": "number"
          },
          {
            "name": "offset",
            "in": "query",
            "description": "Skip the specified number of resources in the result set.",
            "type": "number"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/SeriesDataWrapper"
            }
          }
        }
      }
    },
    "/creators/{creatorId}/stories": {
      "get": {
        "summary": "Creator stories",
        "description": "Fetches lists of stories filtered by a creator id.",
        "operationId": "creator-stories",
        "parameters": [
          {
            "name": "creatorId",
            "in": "path",
            "description": "The ID of the creator.",
            "required": true,
            "type": "string"
          },
          {
            "name": "modifiedSince",
            "in": "query",
            "description": "Return only stories which have been modified since the specified date.",
            "type": "string"
          },
          {
            "name": "comics",
            "in": "query",
            "description": "Return only stories contained in the specified comics (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "series",
            "in": "query",
            "description": "Return only stories contained the specified series (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "events",
            "in": "query",
            "description": "Return only stories which take place during the specified events (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "characters",
            "in": "query",
            "description": "Return only stories which feature the specified characters (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "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.",
            "type": "string"
          },
          {
            "name": "limit",
            "in": "query",
            "description": "Limit the result set to the specified number of resources.",
            "type": "number"
          },
          {
            "name": "offset",
            "in": "query",
            "description": "Skip the specified number of resources in the result set.",
            "type": "number"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/StoryDataWrapper"
            }
          }
        }
      }
    },
    "/events": {
      "get": {
        "summary": "List events",
        "description": "Fetches lists of events.",
        "operationId": "list-events",
        "parameters": [
          {
            "name": "name",
            "in": "query",
            "description": "Return only events which match the specified name.",
            "type": "string"
          },
          {
            "name": "nameStartsWith",
            "in": "query",
            "description": "Return events with names that begin with the specified string (e.g. Sp).",
            "type": "string"
          },
          {
            "name": "modifiedSince",
            "in": "query",
            "description": "Return only events which have been modified since the specified date.",
            "type": "string"
          },
          {
            "name": "creators",
            "in": "query",
            "description": "Return only events which feature work by the specified creators (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "characters",
            "in": "query",
            "description": "Return only events which feature the specified characters (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "series",
            "in": "query",
            "description": "Return only events which are part of the specified series (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "comics",
            "in": "query",
            "description": "Return only events which take place in the specified comics (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "stories",
            "in": "query",
            "description": "Return only events which take place in the specified stories (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "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.",
            "type": "string"
          },
          {
            "name": "limit",
            "in": "query",
            "description": "Limit the result set to the specified number of resources.",
            "type": "number"
          },
          {
            "name": "offset",
            "in": "query",
            "description": "Skip the specified number of resources in the result set.",
            "type": "number"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/EventDataWrapper"
            }
          }
        }
      }
    },
    "/events/{eventId}": {
      "get": {
        "summary": "Event by Id",
        "description": "Fetches a single event by id.",
        "operationId": "event-by-id",
        "parameters": [
          {
            "name": "eventId",
            "in": "path",
            "description": "A single event.",
            "required": true,
            "type": "string"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/EventDataWrapper"
            }
          }
        }
      }
    },
    "/events/{eventId}/characters": {
      "get": {
        "summary": "Event characters",
        "description": "Fetches lists of characters filtered by an event id.",
        "operationId": "event-characters",
        "parameters": [
          {
            "name": "eventId",
            "in": "path",
            "description": "The event ID",
            "required": true,
            "type": "string"
          },
          {
            "name": "name",
            "in": "query",
            "description": "Return only characters matching the specified full character name (e.g. Spider-Man).",
            "type": "string"
          },
          {
            "name": "nameStartsWith",
            "in": "query",
            "description": "Return characters with names that begin with the specified string (e.g. Sp).",
            "type": "string"
          },
          {
            "name": "modifiedSince",
            "in": "query",
            "description": "Return only characters which have been modified since the specified date.",
            "type": "string"
          },
          {
            "name": "comics",
            "in": "query",
            "description": "Return only characters which appear in the specified comics (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "series",
            "in": "query",
            "description": "Return only characters which appear the specified series (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "stories",
            "in": "query",
            "description": "Return only characters which appear the specified stories (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "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.",
            "type": "string"
          },
          {
            "name": "limit",
            "in": "query",
            "description": "Limit the result set to the specified number of resources.",
            "type": "number"
          },
          {
            "name": "offset",
            "in": "query",
            "description": "Skip the specified number of resources in the result set.",
            "type": "number"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/CharacterDataWrapper"
            }
          }
        }
      }
    },
    "/events/{eventId}/comics": {
      "get": {
        "summary": "Event comics",
        "description": "Fetches lists of comics filtered by an event id.",
        "operationId": "event-comics",
        "parameters": [
          {
            "name": "eventId",
            "in": "path",
            "description": "The event id.",
            "required": true,
            "type": "string"
          },
          {
            "name": "format",
            "in": "query",
            "description": "Filter by the issue format (e.g. comic, digital comic, hardcover).",
            "type": "string"
          },
          {
            "name": "formatType",
            "in": "query",
            "description": "Filter by the issue format type (comic or collection).",
            "type": "string"
          },
          {
            "name": "noVariants",
            "in": "query",
            "description": "Exclude variant comics from the result set.",
            "type": "boolean"
          },
          {
            "name": "dateDescriptor",
            "in": "query",
            "description": "Return comics within a predefined date range.",
            "type": "string"
          },
          {
            "name": "dateRange",
            "in": "query",
            "description": "Return comics within a predefined date range.  Dates must be specified as date1,date2 (e.g. 2013-01-01,2013-01-02).  Dates are preferably formatted as YYYY-MM-DD but may be sent as any common date format.",
            "type": "number"
          },
          {
            "name": "diamondCode",
            "in": "query",
            "description": "Filter by diamond code.",
            "type": "string"
          },
          {
            "name": "digitalId",
            "in": "query",
            "description": "Filter by digital comic id.",
            "type": "number"
          },
          {
            "name": "upc",
            "in": "query",
            "description": "Filter by UPC.",
            "type": "string"
          },
          {
            "name": "isbn",
            "in": "query",
            "description": "Filter by ISBN.",
            "type": "string"
          },
          {
            "name": "ean",
            "in": "query",
            "description": "Filter by EAN.",
            "type": "string"
          },
          {
            "name": "issn",
            "in": "query",
            "description": "Filter by ISSN.",
            "type": "string"
          },
          {
            "name": "hasDigitalIssue",
            "in": "query",
            "description": "Include only results which are available digitally.",
            "type": "boolean"
          },
          {
            "name": "modifiedSince",
            "in": "query",
            "description": "Return only comics which have been modified since the specified date.",
            "type": "string"
          },
          {
            "name": "creators",
            "in": "query",
            "description": "Return only comics which feature work by the specified creators (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "characters",
            "in": "query",
            "description": "Return only comics which feature the specified characters (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "series",
            "in": "query",
            "description": "Return only comics which are part of the specified series (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "events",
            "in": "query",
            "description": "Return only comics which take place in the specified events (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "stories",
            "in": "query",
            "description": "Return only comics which contain the specified stories (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "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).",
            "type": "number"
          },
          {
            "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).",
            "type": "number"
          },
          {
            "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.",
            "type": "string"
          },
          {
            "name": "limit",
            "in": "query",
            "description": "Limit the result set to the specified number of resources.",
            "type": "number"
          },
          {
            "name": "offset",
            "in": "query",
            "description": "Skip the specified number of resources in the result set.",
            "type": "number"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/ComicDataWrapper"
            }
          }
        }
      }
    },
    "/events/{eventId}/creators": {
      "get": {
        "summary": "Event creators",
        "description": "Fetches lists of creators filtered by an event id.",
        "operationId": "event-creators",
        "parameters": [
          {
            "name": "eventId",
            "in": "path",
            "description": "The event ID.",
            "required": true,
            "type": "string"
          },
          {
            "name": "firstName",
            "in": "query",
            "description": "Filter by creator first name (e.g. brian).",
            "type": "string"
          },
          {
            "name": "middleName",
            "in": "query",
            "description": "Filter by creator middle name (e.g. Michael).",
            "type": "string"
          },
          {
            "name": "lastName",
            "in": "query",
            "description": "Filter by creator last name (e.g. Bendis).",
            "type": "string"
          },
          {
            "name": "suffix",
            "in": "query",
            "description": "Filter by suffix or honorific (e.g. Jr., Sr.).",
            "type": "string"
          },
          {
            "name": "nameStartsWith",
            "in": "query",
            "description": "Filter by creator names that match critera (e.g. B, St L).",
            "type": "string"
          },
          {
            "name": "firstNameStartsWith",
            "in": "query",
            "description": "Filter by creator first names that match critera (e.g. B, St L).",
            "type": "string"
          },
          {
            "name": "middleNameStartsWith",
            "in": "query",
            "description": "Filter by creator middle names that match critera (e.g. Mi).",
            "type": "string"
          },
          {
            "name": "lastNameStartsWith",
            "in": "query",
            "description": "Filter by creator last names that match critera (e.g. Ben).",
            "type": "string"
          },
          {
            "name": "modifiedSince",
            "in": "query",
            "description": "Return only creators which have been modified since the specified date.",
            "type": "string"
          },
          {
            "name": "comics",
            "in": "query",
            "description": "Return only creators who worked on in the specified comics (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "series",
            "in": "query",
            "description": "Return only creators who worked on the specified series (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "stories",
            "in": "query",
            "description": "Return only creators who worked on the specified stories (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "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.",
            "type": "string"
          },
          {
            "name": "limit",
            "in": "query",
            "description": "Limit the result set to the specified number of resources.",
            "type": "number"
          },
          {
            "name": "offset",
            "in": "query",
            "description": "Skip the specified number of resources in the result set.",
            "type": "number"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/CreatorDataWrapper"
            }
          }
        }
      }
    },
    "/events/{eventId}/series": {
      "get": {
        "summary": "Event series",
        "description": "Fetches lists of series filtered by an event id.",
        "operationId": "event-series",
        "parameters": [
          {
            "name": "eventId",
            "in": "path",
            "description": "The event ID.",
            "required": true,
            "type": "string"
          },
          {
            "name": "title",
            "in": "query",
            "description": "Filter by series title.",
            "type": "string"
          },
          {
            "name": "titleStartsWith",
            "in": "query",
            "description": "Return series with titles that begin with the specified string (e.g. Sp).",
            "type": "string"
          },
          {
            "name": "startYear",
            "in": "query",
            "description": "Return only series matching the specified start year.",
            "type": "number"
          },
          {
            "name": "modifiedSince",
            "in": "query",
            "description": "Return only series which have been modified since the specified date.",
            "type": "string"
          },
          {
            "name": "comics",
            "in": "query",
            "description": "Return only series which contain the specified comics (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "stories",
            "in": "query",
            "description": "Return only series which contain the specified stories (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "creators",
            "in": "query",
            "description": "Return only series which feature work by the specified creators (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "characters",
            "in": "query",
            "description": "Return only series which feature the specified characters (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "seriesType",
            "in": "query",
            "description": "Filter the series by publication frequency type.",
            "type": "string"
          },
          {
            "name": "contains",
            "in": "query",
            "description": "Return only series containing one or more comics with the specified format.",
            "type": "string"
          },
          {
            "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.",
            "type": "string"
          },
          {
            "name": "limit",
            "in": "query",
            "description": "Limit the result set to the specified number of resources.",
            "type": "number"
          },
          {
            "name": "offset",
            "in": "query",
            "description": "Skip the specified number of resources in the result set.",
            "type": "number"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/SeriesDataWrapper"
            }
          }
        }
      }
    },
    "/events/{eventId}/stories": {
      "get": {
        "summary": "Event stories",
        "description": "Fetches lists of stories filtered by an event id.",
        "operationId": "event-stories",
        "parameters": [
          {
            "name": "eventId",
            "in": "path",
            "description": "The ID of the event.",
            "required": true,
            "type": "string"
          },
          {
            "name": "modifiedSince",
            "in": "query",
            "description": "Return only stories which have been modified since the specified date.",
            "type": "string"
          },
          {
            "name": "comics",
            "in": "query",
            "description": "Return only stories contained in the specified (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "series",
            "in": "query",
            "description": "Return only stories contained the specified series (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "creators",
            "in": "query",
            "description": "Return only stories which feature work by the specified creators (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "characters",
            "in": "query",
            "description": "Return only stories which feature the specified characters (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "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.",
            "type": "string"
          },
          {
            "name": "limit",
            "in": "query",
            "description": "Limit the result set to the specified number of resources.",
            "type": "number"
          },
          {
            "name": "offset",
            "in": "query",
            "description": "Skip the specified number of resources in the result set.",
            "type": "number"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/StoryDataWrapper"
            }
          }
        }
      }
    },
    "/series": {
      "get": {
        "summary": "List series",
        "description": "Fetches lists of series.",
        "operationId": "list-series",
        "parameters": [
          {
            "name": "title",
            "in": "query",
            "description": "Return only series matching the specified title.",
            "type": "string"
          },
          {
            "name": "titleStartsWith",
            "in": "query",
            "description": "Return series with titles that begin with the specified string (e.g. Sp).",
            "type": "string"
          },
          {
            "name": "startYear",
            "in": "query",
            "description": "Return only series matching the specified start year.",
            "type": "number"
          },
          {
            "name": "modifiedSince",
            "in": "query",
            "description": "Return only series which have been modified since the specified date.",
            "type": "string"
          },
          {
            "name": "comics",
            "in": "query",
            "description": "Return only series which contain the specified comics (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "stories",
            "in": "query",
            "description": "Return only series which contain the specified stories (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "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).",
            "type": "number"
          },
          {
            "name": "creators",
            "in": "query",
            "description": "Return only series which feature work by the specified creators (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "characters",
            "in": "query",
            "description": "Return only series which feature the specified characters (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "seriesType",
            "in": "query",
            "description": "Filter the series by publication frequency type.",
            "type": "string"
          },
          {
            "name": "contains",
            "in": "query",
            "description": "Return only series containing one or more comics with the specified format.",
            "type": "string"
          },
          {
            "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.",
            "type": "string"
          },
          {
            "name": "limit",
            "in": "query",
            "description": "Limit the result set to the specified number of resources.",
            "type": "number"
          },
          {
            "name": "offset",
            "in": "query",
            "description": "Skip the specified number of resources in the result set.",
            "type": "number"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/SeriesDataWrapper"
            }
          }
        }
      }
    },
    "/series/{seriesId}": {
      "get": {
        "summary": "Series by id",
        "description": "Fetches a single comic series by id.",
        "operationId": "series-by-id",
        "parameters": [
          {
            "name": "seriesId",
            "in": "path",
            "description": "Filter by series title.",
            "required": true,
            "type": "string"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/SeriesDataWrapper"
            }
          }
        }
      }
    },
    "/series/{seriesId}/characters": {
      "get": {
        "summary": "Series characters",
        "description": "Fetches lists of characters filtered by a series id.",
        "operationId": "series-characters",
        "parameters": [
          {
            "name": "seriesId",
            "in": "path",
            "description": "The series id.",
            "required": true,
            "type": "string"
          },
          {
            "name": "name",
            "in": "query",
            "description": "Return only characters matching the specified full character name (e.g. Spider-Man).",
            "type": "string"
          },
          {
            "name": "nameStartsWith",
            "in": "query",
            "description": "Return characters with names that begin with the specified string (e.g. Sp).",
            "type": "string"
          },
          {
            "name": "modifiedSince",
            "in": "query",
            "description": "Return only characters which have been modified since the specified date.",
            "type": "string"
          },
          {
            "name": "comics",
            "in": "query",
            "description": "Return only characters which appear in the specified comics (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "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).",
            "type": "number"
          },
          {
            "name": "stories",
            "in": "query",
            "description": "Return only characters which appear the specified stories (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "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.",
            "type": "string"
          },
          {
            "name": "limit",
            "in": "query",
            "description": "Limit the result set to the specified number of resources.",
            "type": "number"
          },
          {
            "name": "offset",
            "in": "query",
            "description": "Skip the specified number of resources in the result set.",
            "type": "number"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/CharacterDataWrapper"
            }
          }
        }
      }
    },
    "/series/{seriesId}/comics": {
      "get": {
        "summary": "Series comics",
        "description": "Fetches lists of comics filtered by a series id.",
        "operationId": "series-comics",
        "parameters": [
          {
            "name": "seriesId",
            "in": "path",
            "description": "The series ID.",
            "required": true,
            "type": "string"
          },
          {
            "name": "format",
            "in": "query",
            "description": "Filter by the issue format (e.g. comic, digital comic, hardcover).",
            "type": "string"
          },
          {
            "name": "formatType",
            "in": "query",
            "description": "Filter by the issue format type (comic or collection).",
            "type": "string"
          },
          {
            "name": "noVariants",
            "in": "query",
            "description": "Exclude variant comics from the result set.",
            "type": "boolean"
          },
          {
            "name": "dateDescriptor",
            "in": "query",
            "description": "Return comics within a predefined date range.",
            "type": "string"
          },
          {
            "name": "dateRange",
            "in": "query",
            "description": "Return comics within a predefined date range.  Dates must be specified as date1,date2 (e.g. 2013-01-01,2013-01-02).  Dates are preferably formatted as YYYY-MM-DD but may be sent as any common date format.",
            "type": "number"
          },
          {
            "name": "diamondCode",
            "in": "query",
            "description": "Filter by diamond code.",
            "type": "string"
          },
          {
            "name": "digitalId",
            "in": "query",
            "description": "Filter by digital comic id.",
            "type": "number"
          },
          {
            "name": "upc",
            "in": "query",
            "description": "Filter by UPC.",
            "type": "string"
          },
          {
            "name": "isbn",
            "in": "query",
            "description": "Filter by ISBN.",
            "type": "string"
          },
          {
            "name": "ean",
            "in": "query",
            "description": "Filter by EAN.",
            "type": "string"
          },
          {
            "name": "issn",
            "in": "query",
            "description": "Filter by ISSN.",
            "type": "string"
          },
          {
            "name": "hasDigitalIssue",
            "in": "query",
            "description": "Include only results which are available digitally.",
            "type": "boolean"
          },
          {
            "name": "modifiedSince",
            "in": "query",
            "description": "Return only comics which have been modified since the specified date.",
            "type": "string"
          },
          {
            "name": "creators",
            "in": "query",
            "description": "Return only comics which feature work by the specified creators (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "characters",
            "in": "query",
            "description": "Return only comics which feature the specified characters (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "events",
            "in": "query",
            "description": "Return only comics which take place in the specified events (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "stories",
            "in": "query",
            "description": "Return only comics which contain the specified stories (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "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).",
            "type": "number"
          },
          {
            "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).",
            "type": "number"
          },
          {
            "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.",
            "type": "string"
          },
          {
            "name": "limit",
            "in": "query",
            "description": "Limit the result set to the specified number of resources.",
            "type": "number"
          },
          {
            "name": "offset",
            "in": "query",
            "description": "Skip the specified number of resources in the result set.",
            "type": "number"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/ComicDataWrapper"
            }
          }
        }
      }
    },
    "/series/{seriesId}/creators": {
      "get": {
        "summary": "Series creators",
        "description": "Fetches lists of creators filtered by a series id.",
        "operationId": "series-creators",
        "parameters": [
          {
            "name": "seriesId",
            "in": "path",
            "description": "The series ID.",
            "required": true,
            "type": "string"
          },
          {
            "name": "firstName",
            "in": "query",
            "description": "Filter by creator first name (e.g. brian).",
            "type": "string"
          },
          {
            "name": "middleName",
            "in": "query",
            "description": "Filter by creator middle name (e.g. Michael).",
            "type": "string"
          },
          {
            "name": "lastName",
            "in": "query",
            "description": "Filter by creator last name (e.g. Bendis).",
            "type": "string"
          },
          {
            "name": "suffix",
            "in": "query",
            "description": "Filter by suffix or honorific (e.g. Jr., Sr.).",
            "type": "string"
          },
          {
            "name": "nameStartsWith",
            "in": "query",
            "description": "Filter by creator names that match critera (e.g. B, St L).",
            "type": "string"
          },
          {
            "name": "firstNameStartsWith",
            "in": "query",
            "description": "Filter by creator first names that match critera (e.g. B, St L).",
            "type": "string"
          },
          {
            "name": "middleNameStartsWith",
            "in": "query",
            "description": "Filter by creator middle names that match critera (e.g. Mi).",
            "type": "string"
          },
          {
            "name": "lastNameStartsWith",
            "in": "query",
            "description": "Filter by creator last names that match critera (e.g. Ben).",
            "type": "string"
          },
          {
            "name": "modifiedSince",
            "in": "query",
            "description": "Return only creators which have been modified since the specified date.",
            "type": "string"
          },
          {
            "name": "comics",
            "in": "query",
            "description": "Return only creators who worked on in the specified comics (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "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).",
            "type": "number"
          },
          {
            "name": "stories",
            "in": "query",
            "description": "Return only creators who worked on the specified stories (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "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.",
            "type": "string"
          },
          {
            "name": "limit",
            "in": "query",
            "description": "Limit the result set to the specified number of resources.",
            "type": "number"
          },
          {
            "name": "offset",
            "in": "query",
            "description": "Skip the specified number of resources in the result set.",
            "type": "number"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/CreatorDataWrapper"
            }
          }
        }
      }
    },
    "/series/{seriesId}/events": {
      "get": {
        "summary": "Series events",
        "description": "Fetches lists of events filtered by a series id.",
        "operationId": "series-events",
        "parameters": [
          {
            "name": "seriesId",
            "in": "path",
            "description": "The series ID.",
            "required": true,
            "type": "string"
          },
          {
            "name": "name",
            "in": "query",
            "description": "Filter the event list by name.",
            "type": "string"
          },
          {
            "name": "nameStartsWith",
            "in": "query",
            "description": "Return events with names that begin with the specified string (e.g. Sp).",
            "type": "string"
          },
          {
            "name": "modifiedSince",
            "in": "query",
            "description": "Return only events which have been modified since the specified date.",
            "type": "string"
          },
          {
            "name": "creators",
            "in": "query",
            "description": "Return only events which feature work by the specified creators (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "characters",
            "in": "query",
            "description": "Return only events which feature the specified characters (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "comics",
            "in": "query",
            "description": "Return only events which take place in the specified comics (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "stories",
            "in": "query",
            "description": "Return only events which contain the specified stories (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "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.",
            "type": "string"
          },
          {
            "name": "limit",
            "in": "query",
            "description": "Limit the result set to the specified number of resources.",
            "type": "number"
          },
          {
            "name": "offset",
            "in": "query",
            "description": "Skip the specified number of resources in the result set.",
            "type": "number"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/EventDataWrapper"
            }
          }
        }
      }
    },
    "/series/{seriesId}/stories": {
      "get": {
        "summary": "Series stories",
        "description": "Fetches lists of stories filtered by a series id.",
        "operationId": "series-stories",
        "parameters": [
          {
            "name": "seriesId",
            "in": "path",
            "description": "The series ID.",
            "required": true,
            "type": "string"
          },
          {
            "name": "modifiedSince",
            "in": "query",
            "description": "Return only stories which have been modified since the specified date.",
            "type": "string"
          },
          {
            "name": "comics",
            "in": "query",
            "description": "Return only stories contained in the specified (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "events",
            "in": "query",
            "description": "Return only stories which take place during the specified events (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "creators",
            "in": "query",
            "description": "Return only stories which feature work by the specified creators (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "characters",
            "in": "query",
            "description": "Return only stories which feature the specified characters (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "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.",
            "type": "string"
          },
          {
            "name": "limit",
            "in": "query",
            "description": "Limit the result set to the specified number of resources.",
            "type": "number"
          },
          {
            "name": "offset",
            "in": "query",
            "description": "Skip the specified number of resources in the result set.",
            "type": "number"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/StoryDataWrapper"
            }
          }
        }
      }
    },
    "/stories": {
      "get": {
        "summary": "List stories",
        "description": "Fetches lists of stories.",
        "operationId": "list-stories",
        "parameters": [
          {
            "name": "modifiedSince",
            "in": "query",
            "description": "Return only stories which have been modified since the specified date.",
            "type": "string"
          },
          {
            "name": "comics",
            "in": "query",
            "description": "Return only stories contained in the specified (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "series",
            "in": "query",
            "description": "Return only stories contained the specified series (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "events",
            "in": "query",
            "description": "Return only stories which take place during the specified events (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "creators",
            "in": "query",
            "description": "Return only stories which feature work by the specified creators (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "characters",
            "in": "query",
            "description": "Return only stories which feature the specified characters (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "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.",
            "type": "string"
          },
          {
            "name": "limit",
            "in": "query",
            "description": "Limit the result set to the specified number of resources.",
            "type": "number"
          },
          {
            "name": "offset",
            "in": "query",
            "description": "Skip the specified number of resources in the result set.",
            "type": "number"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/StoryDataWrapper"
            }
          }
        }
      }
    },
    "/stories/{storyId}": {
      "get": {
        "summary": "Story by Id",
        "description": "Fetches a single comic story by id.",
        "operationId": "story-by-id",
        "parameters": [
          {
            "name": "storyId",
            "in": "path",
            "description": "Filter by story id.",
            "required": true,
            "type": "string"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/StoryDataWrapper"
            }
          }
        }
      }
    },
    "/stories/{storyId}/characters": {
      "get": {
        "summary": "Story characters",
        "description": "Fetches lists of characters filtered by a story id.",
        "operationId": "story-characters",
        "parameters": [
          {
            "name": "storyId",
            "in": "path",
            "description": "The story ID.",
            "required": true,
            "type": "string"
          },
          {
            "name": "name",
            "in": "query",
            "description": "Return only characters matching the specified full character name (e.g. Spider-Man).",
            "type": "string"
          },
          {
            "name": "nameStartsWith",
            "in": "query",
            "description": "Return characters with names that begin with the specified string (e.g. Sp).",
            "type": "string"
          },
          {
            "name": "modifiedSince",
            "in": "query",
            "description": "Return only characters which have been modified since the specified date.",
            "type": "string"
          },
          {
            "name": "comics",
            "in": "query",
            "description": "Return only characters which appear in the specified comics (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "series",
            "in": "query",
            "description": "Return only characters which appear the specified series (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "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).",
            "type": "number"
          },
          {
            "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.",
            "type": "string"
          },
          {
            "name": "limit",
            "in": "query",
            "description": "Limit the result set to the specified number of resources.",
            "type": "number"
          },
          {
            "name": "offset",
            "in": "query",
            "description": "Skip the specified number of resources in the result set.",
            "type": "number"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/CharacterDataWrapper"
            }
          }
        }
      }
    },
    "/stories/{storyId}/comics": {
      "get": {
        "summary": "Story comics",
        "description": "Fetches lists of comics filtered by a story id.",
        "operationId": "story-comics",
        "parameters": [
          {
            "name": "storyId",
            "in": "path",
            "description": "The story ID.",
            "required": true,
            "type": "string"
          },
          {
            "name": "format",
            "in": "query",
            "description": "Filter by the issue format (e.g. comic, digital comic, hardcover).",
            "type": "string"
          },
          {
            "name": "formatType",
            "in": "query",
            "description": "Filter by the issue format type (comic or collection).",
            "type": "string"
          },
          {
            "name": "noVariants",
            "in": "query",
            "description": "Exclude variant comics from the result set.",
            "type": "boolean"
          },
          {
            "name": "dateDescriptor",
            "in": "query",
            "description": "Return comics within a predefined date range.",
            "type": "string"
          },
          {
            "name": "dateRange",
            "in": "query",
            "description": "Return comics within a predefined date range.  Dates must be specified as date1,date2 (e.g. 2013-01-01,2013-01-02).  Dates are preferably formatted as YYYY-MM-DD but may be sent as any common date format.",
            "type": "number"
          },
          {
            "name": "diamondCode",
            "in": "query",
            "description": "Filter by diamond code.",
            "type": "string"
          },
          {
            "name": "digitalId",
            "in": "query",
            "description": "Filter by digital comic id.",
            "type": "number"
          },
          {
            "name": "upc",
            "in": "query",
            "description": "Filter by UPC.",
            "type": "string"
          },
          {
            "name": "isbn",
            "in": "query",
            "description": "Filter by ISBN.",
            "type": "string"
          },
          {
            "name": "ean",
            "in": "query",
            "description": "Filter by EAN.",
            "type": "string"
          },
          {
            "name": "issn",
            "in": "query",
            "description": "Filter by ISSN.",
            "type": "string"
          },
          {
            "name": "hasDigitalIssue",
            "in": "query",
            "description": "Include only results which are available digitally.",
            "type": "boolean"
          },
          {
            "name": "modifiedSince",
            "in": "query",
            "description": "Return only comics which have been modified since the specified date.",
            "type": "string"
          },
          {
            "name": "creators",
            "in": "query",
            "description": "Return only comics which feature work by the specified creators (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "characters",
            "in": "query",
            "description": "Return only comics which feature the specified characters (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "series",
            "in": "query",
            "description": "Return only comics which are part of the specified series (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "events",
            "in": "query",
            "description": "Return only comics which take place in the specified events (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "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).",
            "type": "number"
          },
          {
            "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).",
            "type": "number"
          },
          {
            "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.",
            "type": "string"
          },
          {
            "name": "limit",
            "in": "query",
            "description": "Limit the result set to the specified number of resources.",
            "type": "number"
          },
          {
            "name": "offset",
            "in": "query",
            "description": "Skip the specified number of resources in the result set.",
            "type": "number"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/ComicDataWrapper"
            }
          }
        }
      }
    },
    "/stories/{storyId}/creators": {
      "get": {
        "summary": "Story creators",
        "description": "Fetches lists of creators filtered by a story id.",
        "operationId": "story-creators",
        "parameters": [
          {
            "name": "storyId",
            "in": "path",
            "description": "The story ID.",
            "required": true,
            "type": "string"
          },
          {
            "name": "firstName",
            "in": "query",
            "description": "Filter by creator first name (e.g. brian).",
            "type": "string"
          },
          {
            "name": "middleName",
            "in": "query",
            "description": "Filter by creator middle name (e.g. Michael).",
            "type": "string"
          },
          {
            "name": "lastName",
            "in": "query",
            "description": "Filter by creator last name (e.g. Bendis).",
            "type": "string"
          },
          {
            "name": "suffix",
            "in": "query",
            "description": "Filter by suffix or honorific (e.g. Jr., Sr.).",
            "type": "string"
          },
          {
            "name": "nameStartsWith",
            "in": "query",
            "description": "Filter by creator names that match critera (e.g. B, St L).",
            "type": "string"
          },
          {
            "name": "firstNameStartsWith",
            "in": "query",
            "description": "Filter by creator first names that match critera (e.g. B, St L).",
            "type": "string"
          },
          {
            "name": "middleNameStartsWith",
            "in": "query",
            "description": "Filter by creator middle names that match critera (e.g. Mi).",
            "type": "string"
          },
          {
            "name": "lastNameStartsWith",
            "in": "query",
            "description": "Filter by creator last names that match critera (e.g. Ben).",
            "type": "string"
          },
          {
            "name": "modifiedSince",
            "in": "query",
            "description": "Return only creators which have been modified since the specified date.",
            "type": "string"
          },
          {
            "name": "comics",
            "in": "query",
            "description": "Return only creators who worked on in the specified comics (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "series",
            "in": "query",
            "description": "Return only creators who worked on the specified series (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "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).",
            "type": "number"
          },
          {
            "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.",
            "type": "string"
          },
          {
            "name": "limit",
            "in": "query",
            "description": "Limit the result set to the specified number of resources.",
            "type": "number"
          },
          {
            "name": "offset",
            "in": "query",
            "description": "Skip the specified number of resources in the result set.",
            "type": "number"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/CreatorDataWrapper"
            }
          }
        }
      }
    },
    "/stories/{storyId}/events": {
      "get": {
        "summary": "Story events",
        "description": "Fetches lists of events filtered by a story id.",
        "operationId": "story-events",
        "parameters": [
          {
            "name": "storyId",
            "in": "path",
            "description": "The story ID.",
            "required": true,
            "type": "string"
          },
          {
            "name": "name",
            "in": "query",
            "description": "Filter the event list by name.",
            "type": "string"
          },
          {
            "name": "nameStartsWith",
            "in": "query",
            "description": "Return events with names that begin with the specified string (e.g. Sp).",
            "type": "string"
          },
          {
            "name": "modifiedSince",
            "in": "query",
            "description": "Return only events which have been modified since the specified date.",
            "type": "string"
          },
          {
            "name": "creators",
            "in": "query",
            "description": "Return only events which feature work by the specified creators (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "characters",
            "in": "query",
            "description": "Return only events which feature the specified characters (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "series",
            "in": "query",
            "description": "Return only events which are part of the specified series (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "comics",
            "in": "query",
            "description": "Return only events which take place in the specified comics (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "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.",
            "type": "string"
          },
          {
            "name": "limit",
            "in": "query",
            "description": "Limit the result set to the specified number of resources.",
            "type": "number"
          },
          {
            "name": "offset",
            "in": "query",
            "description": "Skip the specified number of resources in the result set.",
            "type": "number"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/EventDataWrapper"
            }
          }
        }
      }
    },
    "/stories/{storyId}/series": {
      "get": {
        "summary": "Story series",
        "description": "Fetches lists of series filtered by a story id.",
        "operationId": "story-series",
        "parameters": [
          {
            "name": "storyId",
            "in": "path",
            "description": "The story ID.",
            "required": true,
            "type": "string"
          },
          {
            "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).",
            "type": "number"
          },
          {
            "name": "title",
            "in": "query",
            "description": "Filter by series title.",
            "type": "string"
          },
          {
            "name": "titleStartsWith",
            "in": "query",
            "description": "Return series with titles that begin with the specified string (e.g. Sp).",
            "type": "string"
          },
          {
            "name": "startYear",
            "in": "query",
            "description": "Return only series matching the specified start year.",
            "type": "number"
          },
          {
            "name": "modifiedSince",
            "in": "query",
            "description": "Return only series which have been modified since the specified date.",
            "type": "string"
          },
          {
            "name": "comics",
            "in": "query",
            "description": "Return only series which contain the specified comics (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "creators",
            "in": "query",
            "description": "Return only series which feature work by the specified creators (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "characters",
            "in": "query",
            "description": "Return only series which feature the specified characters (accepts a comma-separated list of ids).",
            "type": "number"
          },
          {
            "name": "seriesType",
            "in": "query",
            "description": "Filter the series by publication frequency type.",
            "type": "string"
          },
          {
            "name": "contains",
            "in": "query",
            "description": "Return only series containing one or more comics with the specified format.",
            "type": "string"
          },
          {
            "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.",
            "type": "string"
          },
          {
            "name": "limit",
            "in": "query",
            "description": "Limit the result set to the specified number of resources.",
            "type": "number"
          },
          {
            "name": "offset",
            "in": "query",
            "description": "Skip the specified number of resources in the result set.",
            "type": "number"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/SeriesDataWrapper"
            }
          }
        }
      }
    }
  },
  "definitions": {
    "ComicList": {
      "type": "object",
      "properties": {
        "available": {
          "type": "number",
          "description": "The number of total available issues in this list. Will always be greater than or equal to the \"returned\" value."
        },
        "returned": {
          "type": "number",
          "description": "The number of issues returned in this collection (up to 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": "#/definitions/ComicSummary"
          }
        }
      }
    },
    "EventList": {
      "type": "object",
      "properties": {
        "available": {
          "type": "number",
          "description": "The number of total available events in this list. Will always be greater than or equal to the \"returned\" value."
        },
        "returned": {
          "type": "number",
          "description": "The number of events returned in this collection (up to 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": "#/definitions/EventSummary"
          }
        }
      }
    },
    "CreatorList": {
      "type": "object",
      "properties": {
        "available": {
          "type": "number",
          "description": "The number of total available creators in this list. Will always be greater than or equal to the \"returned\" value."
        },
        "returned": {
          "type": "number",
          "description": "The number of creators returned in this collection (up to 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": "#/definitions/CreatorSummary"
          }
        }
      }
    },
    "CharacterList": {
      "type": "object",
      "properties": {
        "available": {
          "type": "number",
          "description": "The number of total available characters in this list. Will always be greater than or equal to the \"returned\" value."
        },
        "returned": {
          "type": "number",
          "description": "The number of characters returned in this collection (up to 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": "#/definitions/CharacterSummary"
          }
        }
      }
    },
    "SeriesList": {
      "type": "object",
      "properties": {
        "available": {
          "type": "number",
          "description": "The number of total available series in this list. Will always be greater than or equal to the \"returned\" value."
        },
        "returned": {
          "type": "number",
          "description": "The number of series returned in this collection (up to 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": "#/definitions/SeriesSummary"
          }
        }
      }
    },
    "StoryList": {
      "type": "object",
      "properties": {
        "available": {
          "type": "number",
          "description": "The number of total available stories in this list. Will always be greater than or equal to the \"returned\" value."
        },
        "returned": {
          "type": "number",
          "description": "The number of stories returned in this collection (up to 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": "#/definitions/StorySummary"
          }
        }
      }
    },
    "CharacterSummary": {
      "type": "object",
      "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."
        }
      }
    },
    "EventSummary": {
      "type": "object",
      "properties": {
        "resourceURI": {
          "type": "string",
          "description": "The path to the individual event resource."
        },
        "name": {
          "type": "string",
          "description": "The name of the event."
        }
      }
    },
    "SeriesSummary": {
      "type": "object",
      "properties": {
        "resourceURI": {
          "type": "string",
          "description": "The path to the individual series resource."
        },
        "name": {
          "type": "string",
          "description": "The canonical name of the series."
        }
      }
    },
    "ComicSummary": {
      "type": "object",
      "properties": {
        "resourceURI": {
          "type": "string",
          "description": "The path to the individual comic resource."
        },
        "name": {
          "type": "string",
          "description": "The canonical name of the comic."
        }
      }
    },
    "Url": {
      "type": "object",
      "properties": {
        "type": {
          "type": "string",
          "description": "A text identifier for the URL."
        },
        "url": {
          "type": "string",
          "description": "A full URL (including scheme, domain, and path)."
        }
      }
    },
    "CreatorSummary": {
      "type": "object",
      "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."
        }
      }
    },
    "StorySummary": {
      "type": "object",
      "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)."
        }
      }
    },
    "Image": {
      "type": "object",
      "properties": {
        "path": {
          "type": "string",
          "description": "The directory path of to the image."
        },
        "extension": {
          "type": "string",
          "description": "The file extension for the image."
        }
      }
    },
    "ComicDate": {
      "type": "object",
      "properties": {
        "type": {
          "type": "string",
          "description": "A description of the date (e.g. onsale date, FOC date)."
        },
        "date": {
          "type": "string",
          "description": "The date."
        }
      }
    },
    "CharacterDataContainer": {
      "type": "object",
      "properties": {
        "offset": {
          "type": "number",
          "description": "The requested offset (number of skipped results) of the call."
        },
        "limit": {
          "type": "number",
          "description": "The requested result limit."
        },
        "total": {
          "type": "number",
          "description": "The total number of resources available given the current filter set."
        },
        "count": {
          "type": "number",
          "description": "The total number of results returned by this call."
        },
        "results": {
          "type": "array",
          "description": "The list of characters returned by the call.",
          "items": {
            "$ref": "#/definitions/Character"
          }
        }
      }
    },
    "EventDataContainer": {
      "type": "object",
      "properties": {
        "offset": {
          "type": "number",
          "description": "The requested offset (number of skipped results) of the call."
        },
        "limit": {
          "type": "number",
          "description": "The requested result limit."
        },
        "total": {
          "type": "number",
          "description": "The total number of resources available given the current filter set."
        },
        "count": {
          "type": "number",
          "description": "The total number of results returned by this call."
        },
        "results": {
          "type": "array",
          "description": "The list of events returned by the call",
          "items": {
            "$ref": "#/definitions/Event"
          }
        }
      }
    },
    "ComicPrice": {
      "type": "object",
      "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)."
        }
      }
    },
    "EventDataWrapper": {
      "type": "object",
      "properties": {
        "code": {
          "type": "number",
          "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": "#/definitions/EventDataContainer"
        },
        "etag": {
          "type": "string",
          "description": "A digest value of the content returned by the call."
        }
      }
    },
    "Creator": {
      "type": "object",
      "properties": {
        "id": {
          "type": "number",
          "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."
        },
        "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": "#/definitions/Url"
          }
        },
        "thumbnail": {
          "$ref": "#/definitions/Image"
        },
        "series": {
          "$ref": "#/definitions/SeriesList"
        },
        "stories": {
          "$ref": "#/definitions/StoryList"
        },
        "comics": {
          "$ref": "#/definitions/ComicList"
        },
        "events": {
          "$ref": "#/definitions/EventList"
        }
      }
    },
    "Event": {
      "type": "object",
      "properties": {
        "id": {
          "type": "number",
          "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": "#/definitions/Url"
          }
        },
        "modified": {
          "type": "string",
          "description": "The date the resource was most recently modified."
        },
        "start": {
          "type": "string",
          "description": "The date of publication of the first issue in this event."
        },
        "end": {
          "type": "string",
          "description": "The date of publication of the last issue in this event."
        },
        "thumbnail": {
          "$ref": "#/definitions/Image"
        },
        "comics": {
          "$ref": "#/definitions/ComicList"
        },
        "stories": {
          "$ref": "#/definitions/StoryList"
        },
        "series": {
          "$ref": "#/definitions/SeriesList"
        },
        "characters": {
          "$ref": "#/definitions/CharacterList"
        },
        "creators": {
          "$ref": "#/definitions/CreatorList"
        },
        "next": {
          "$ref": "#/definitions/EventSummary"
        },
        "previous": {
          "$ref": "#/definitions/EventSummary"
        }
      }
    },
    "ComicDataContainer": {
      "type": "object",
      "properties": {
        "offset": {
          "type": "number",
          "description": "The requested offset (number of skipped results) of the call."
        },
        "limit": {
          "type": "number",
          "description": "The requested result limit."
        },
        "total": {
          "type": "number",
          "description": "The total number of resources available given the current filter set."
        },
        "count": {
          "type": "number",
          "description": "The total number of results returned by this call."
        },
        "results": {
          "type": "array",
          "description": "The list of comics returned by the call",
          "items": {
            "$ref": "#/definitions/Comic"
          }
        }
      }
    },
    "TextObject": {
      "type": "object",
      "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 denoting the language the text object is written in."
        },
        "text": {
          "type": "string",
          "description": "The text."
        }
      }
    },
    "CreatorDataWrapper": {
      "type": "object",
      "properties": {
        "code": {
          "type": "number",
          "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": "#/definitions/CreatorDataContainer"
        },
        "etag": {
          "type": "string",
          "description": "A digest value of the content returned by the call."
        }
      }
    },
    "StoryDataWrapper": {
      "type": "object",
      "properties": {
        "code": {
          "type": "number",
          "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": "#/definitions/StoryDataContainer"
        },
        "etag": {
          "type": "string",
          "description": "A digest value of the content returned by the call."
        }
      }
    },
    "Character": {
      "type": "object",
      "properties": {
        "id": {
          "type": "number",
          "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."
        },
        "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": "#/definitions/Url"
          }
        },
        "thumbnail": {
          "$ref": "#/definitions/Image"
        },
        "comics": {
          "$ref": "#/definitions/ComicList"
        },
        "stories": {
          "$ref": "#/definitions/StoryList"
        },
        "events": {
          "$ref": "#/definitions/EventList"
        },
        "series": {
          "$ref": "#/definitions/SeriesList"
        }
      }
    },
    "CharacterDataWrapper": {
      "type": "object",
      "properties": {
        "code": {
          "type": "number",
          "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": "#/definitions/CharacterDataContainer"
        },
        "etag": {
          "type": "string",
          "description": "A digest value of the content returned by the call."
        }
      }
    },
    "ComicDataWrapper": {
      "type": "object",
      "properties": {
        "code": {
          "type": "number",
          "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": "#/definitions/ComicDataContainer"
        },
        "etag": {
          "type": "string",
          "description": "A digest value of the content returned by the call."
        }
      }
    },
    "Series": {
      "type": "object",
      "properties": {
        "id": {
          "type": "number",
          "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": "#/definitions/Url"
          }
        },
        "startYear": {
          "type": "number",
          "description": "The first year of publication for the series."
        },
        "endYear": {
          "type": "number",
          "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."
        },
        "thumbnail": {
          "$ref": "#/definitions/Image"
        },
        "comics": {
          "$ref": "#/definitions/ComicList"
        },
        "stories": {
          "$ref": "#/definitions/StoryList"
        },
        "events": {
          "$ref": "#/definitions/EventList"
        },
        "characters": {
          "$ref": "#/definitions/CharacterList"
        },
        "creators": {
          "$ref": "#/definitions/CreatorList"
        },
        "next": {
          "$ref": "#/definitions/SeriesSummary"
        },
        "previous": {
          "$ref": "#/definitions/SeriesSummary"
        }
      }
    },
    "SeriesDataWrapper": {
      "type": "object",
      "properties": {
        "code": {
          "type": "number",
          "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": "#/definitions/SeriesDataContainer"
        },
        "etag": {
          "type": "string",
          "description": "A digest value of the content returned by the call."
        }
      }
    },
    "SeriesDataContainer": {
      "type": "object",
      "properties": {
        "offset": {
          "type": "number",
          "description": "The requested offset (number of skipped results) of the call."
        },
        "limit": {
          "type": "number",
          "description": "The requested result limit."
        },
        "total": {
          "type": "number",
          "description": "The total number of resources available given the current filter set."
        },
        "count": {
          "type": "number",
          "description": "The total number of results returned by this call."
        },
        "results": {
          "type": "array",
          "description": "The list of series returned by the call",
          "items": {
            "$ref": "#/definitions/Series"
          }
        }
      }
    },
    "StoryDataContainer": {
      "type": "object",
      "properties": {
        "offset": {
          "type": "number",
          "description": "The requested offset (number of skipped results) of the call."
        },
        "limit": {
          "type": "number",
          "description": "The requested result limit."
        },
        "total": {
          "type": "number",
          "description": "The total number of resources available given the current filter set."
        },
        "count": {
          "type": "number",
          "description": "The total number of results returned by this call."
        },
        "results": {
          "type": "array",
          "description": "The list of stories returned by the call",
          "items": {
            "$ref": "#/definitions/Story"
          }
        }
      }
    },
    "Comic": {
      "type": "object",
      "properties": {
        "id": {
          "type": "number",
          "description": "The unique ID of the comic resource."
        },
        "digitalId": {
          "type": "number",
          "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)."
        },
        "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."
        },
        "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": "number",
          "description": "The number of story pages in the comic."
        },
        "textObjects": {
          "type": "array",
          "description": "A set of descriptive text blurbs for the comic.",
          "items": {
            "$ref": "#/definitions/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": "#/definitions/Url"
          }
        },
        "series": {
          "$ref": "#/definitions/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": "#/definitions/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": "#/definitions/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": "#/definitions/ComicSummary"
          }
        },
        "dates": {
          "type": "array",
          "description": "A list of key dates for this comic.",
          "items": {
            "$ref": "#/definitions/ComicDate"
          }
        },
        "prices": {
          "type": "array",
          "description": "A list of prices for this comic.",
          "items": {
            "$ref": "#/definitions/ComicPrice"
          }
        },
        "thumbnail": {
          "$ref": "#/definitions/Image"
        },
        "images": {
          "type": "array",
          "description": "A list of promotional images associated with this comic.",
          "items": {
            "$ref": "#/definitions/Image"
          }
        },
        "creators": {
          "$ref": "#/definitions/CreatorList"
        },
        "characters": {
          "$ref": "#/definitions/CharacterList"
        },
        "stories": {
          "$ref": "#/definitions/StoryList"
        },
        "events": {
          "$ref": "#/definitions/EventList"
        }
      }
    },
    "CreatorDataContainer": {
      "type": "object",
      "properties": {
        "offset": {
          "type": "number",
          "description": "The requested offset (number of skipped results) of the call."
        },
        "limit": {
          "type": "number",
          "description": "The requested result limit."
        },
        "total": {
          "type": "number",
          "description": "The total number of resources available given the current filter set."
        },
        "count": {
          "type": "number",
          "description": "The total number of results returned by this call."
        },
        "results": {
          "type": "array",
          "description": "The list of creators returned by the call.",
          "items": {
            "$ref": "#/definitions/Creator"
          }
        }
      }
    },
    "Story": {
      "type": "object",
      "properties": {
        "id": {
          "type": "number",
          "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."
        },
        "thumbnail": {
          "$ref": "#/definitions/Image"
        },
        "comics": {
          "$ref": "#/definitions/ComicList"
        },
        "series": {
          "$ref": "#/definitions/SeriesList"
        },
        "events": {
          "$ref": "#/definitions/EventList"
        },
        "characters": {
          "$ref": "#/definitions/CharacterList"
        },
        "creators": {
          "$ref": "#/definitions/CreatorList"
        },
        "originalissue": {
          "$ref": "#/definitions/ComicSummary"
        }
      }
    }
  }
}