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