From 7006aa1bc89790631c260ca1ecddee5b9214ea64 Mon Sep 17 00:00:00 2001 From: Javier Cicchelli Date: Fri, 3 Oct 2025 10:18:54 +0000 Subject: [PATCH] First version of the OpenAPI specification (#2) This PR contains the work done to include a first version of the Marvel API document specification (that requires further tweaking) and also, the defined how the client would be generated by the Open API library. Reviewed-on: https://repo.rock-n-code.com/rock-n-code/marvel-service/pulls/2 Co-authored-by: Javier Cicchelli Co-committed-by: Javier Cicchelli --- .../openapi-generator-config.yaml | 17 + Sources/MarvelService/openapi.yaml | 5775 +++++++++++++++++ 2 files changed, 5792 insertions(+) create mode 100644 Sources/MarvelService/openapi-generator-config.yaml create mode 100644 Sources/MarvelService/openapi.yaml diff --git a/Sources/MarvelService/openapi-generator-config.yaml b/Sources/MarvelService/openapi-generator-config.yaml new file mode 100644 index 00000000..74fe6e1a --- /dev/null +++ b/Sources/MarvelService/openapi-generator-config.yaml @@ -0,0 +1,17 @@ +# ===----------------------------------------------------------------------=== +# +# This source file is part of the MarvelService open source project +# +# Copyright (c) 2025 Röck+Cöde VoF. and the MarvelService project authors +# Licensed under the EUPL 1.2 or later. +# +# See LICENSE for license information +# See CONTRIBUTORS for the list of MarvelService project authors +# +# ===----------------------------------------------------------------------=== + +generate: + - types + - client +namingStrategy: defensive +accessModifier: public diff --git a/Sources/MarvelService/openapi.yaml b/Sources/MarvelService/openapi.yaml new file mode 100644 index 00000000..b01b4231 --- /dev/null +++ b/Sources/MarvelService/openapi.yaml @@ -0,0 +1,5775 @@ +# ===----------------------------------------------------------------------=== +# +# This source file is part of the MarvelService open source project +# +# Copyright (c) 2025 Röck+Cöde VoF. and the MarvelService project authors +# Licensed under the EUPL 1.2 or later. +# +# See LICENSE for license information +# See CONTRIBUTORS for the list of MarvelService project authors +# +# ===----------------------------------------------------------------------=== + +openapi: 3.1.0 +info: + title: gateway.marvel.com + description: The Marvel Comics RESTful API. + contact: + name: Marvel Entertainment, LLC + url: https://help.marvel.com/hc/en-us/requests/new?ticket_form_id=32531283865236 + termsOfService: https://developer.marvel.com/terms + version: Cable +servers: +- url: https://gateway.marvel.com/ + description: Live service +tags: +- name: characters + description: Group of endpoints that returns characters. +- name: comics + description: Group of endpoints that returns comics. +- name: creators + description: Group of endpoints that returns creators. +- name: events + description: Group of endpoints that returns events. +- name: series + description: Group of endpoints that returns series. +- name: stories + description: Group of endpoints that returns stories. +paths: + /v1/public/characters: + get: + tags: + - characters + summary: Fetches lists of characters. + description: Fetches lists of comic characters with optional filters. + operationId: getCharacters + parameters: + - name: name + in: query + description: Return only characters matching the specified full character name (e.g. Spider-Man). + required: false + schema: + type: string + - name: nameStartsWith + in: query + description: Return characters with names that begin with the specified string (e.g. 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + - name: limit + in: query + description: Limit the result set to the specified number of resources. + required: false + schema: + type: integer + format: int32 + - name: offset + in: query + description: Skip the specified number of resources in the result set. + required: false + schema: + type: integer + format: int32 + responses: + "200": + description: OK response + content: + application/json: + schema: + $ref: '#/components/schemas/CharacterDataWrapper' + "409": + description: Conflict response + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + /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 single character id. + required: true + schema: + type: integer + format: int32 + responses: + "200": + description: OK response + content: + application/json: + schema: + $ref: '#/components/schemas/CharacterDataWrapper' + "404": + description: Not found response + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + /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 + format: int32 + - name: format + in: query + description: "Filter by the issue format (e.g. comic, digital comic, hardcover)." + required: false + schema: + type: string + - name: formatType + in: query + description: Filter by the issue format type (comic or collection). + required: false + schema: + type: string + - 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 + - name: dateRange + in: query + description: "Return comics within a predefined date range. Dates must be specified as date1,date2 (e.g. 2013-01-01,2013-01-02). Dates are preferably formatted as YYYY-MM-DD but may be sent as any common date format." + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + format: int32 + - 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 + format: int32 + - name: issueNumber + in: query + description: Return only issues in series whose issue number matches the input. + required: false + schema: + type: integer + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + - name: limit + in: query + description: Limit the result set to the specified number of resources. + required: false + schema: + type: integer + format: int32 + - name: offset + in: query + description: Skip the specified number of resources in the result set. + required: false + schema: + type: integer + format: int32 + responses: + "200": + description: OK response + content: + application/json: + schema: + $ref: '#/components/schemas/ComicDataWrapper' + "409": + description: Conflict response + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + /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: The character ID. + required: true + schema: + type: integer + format: int32 + - 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 (e.g. 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + - name: limit + in: query + description: Limit the result set to the specified number of resources. + required: false + schema: + type: integer + format: int32 + - name: offset + in: query + description: Skip the specified number of resources in the result set. + required: false + schema: + type: integer + format: int32 + responses: + "200": + description: No response was specified + content: + application/json: + schema: + $ref: '#/components/schemas/EventDataWrapper' + "409": + description: Conflict response + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + /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. See notes on individual parameters below." + operationId: getSeriesByCharacterId + parameters: + - name: characterId + in: path + description: The character ID + required: true + schema: + type: integer + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - name: seriesType + in: query + description: Filter the series by publication frequency type. + required: false + schema: + type: string + - 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 + - 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 + - name: limit + in: query + description: Limit the result set to the specified number of resources. + required: false + schema: + type: integer + format: int32 + - name: offset + in: query + description: Skip the specified number of resources in the result set. + required: false + schema: + type: integer + format: int32 + responses: + "200": + description: No response was specified + content: + application/json: + schema: + $ref: '#/components/schemas/SeriesDataWrapper' + "409": + description: Conflict response + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + /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: The character ID. + required: true + schema: + type: integer + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + - name: limit + in: query + description: Limit the result set to the specified number of resources. + required: false + schema: + type: integer + format: int32 + - name: offset + in: query + description: Skip the specified number of resources in the result set. + required: false + schema: + type: integer + format: int32 + responses: + "200": + description: No response was specified + content: + application/json: + schema: + $ref: '#/components/schemas/StoryDataWrapper' + "409": + description: Conflict response + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + /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 (e.g. comic, digital comic, hardcover)." + required: false + schema: + type: string + - name: formatType + in: query + description: Filter by the issue format type (comic or collection). + required: false + schema: + type: string + - 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 + - name: dateRange + in: query + description: "Return comics within a predefined date range. Dates must be specified as date1,date2 (e.g. 2013-01-01,2013-01-02). Dates are preferably formatted as YYYY-MM-DD but may be sent as any common date format." + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + format: int32 + - 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 + format: int32 + - name: issueNumber + in: query + description: Return only issues in series whose issue number matches the input. + required: false + schema: + type: integer + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + - name: limit + in: query + description: Limit the result set to the specified number of resources. + required: false + schema: + type: integer + format: int32 + - name: offset + in: query + description: Skip the specified number of resources in the result set. + required: false + schema: + type: integer + format: int32 + responses: + "200": + description: No response was specified + content: + application/json: + schema: + $ref: '#/components/schemas/ComicDataWrapper' + "409": + description: Conflict response + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + /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 single comic. + required: true + schema: + type: integer + format: int32 + responses: + "200": + description: No response was specified + content: + application/json: + schema: + $ref: '#/components/schemas/ComicDataWrapper' + "404": + description: Not found response + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + /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: The comic id. + required: true + schema: + type: integer + format: int32 + - name: name + in: query + description: Return only characters matching the specified full character name (e.g. Spider-Man). + required: false + schema: + type: string + - name: nameStartsWith + in: query + description: Return characters with names that begin with the specified string (e.g. 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + - name: limit + in: query + description: Limit the result set to the specified number of resources. + required: false + schema: + type: integer + format: int32 + - name: offset + in: query + description: Skip the specified number of resources in the result set. + required: false + schema: + type: integer + format: int32 + responses: + "200": + description: No response was specified + content: + application/json: + schema: + $ref: '#/components/schemas/CharacterDataWrapper' + "409": + description: Conflict response + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + /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: The comic id. + required: true + schema: + type: integer + format: int32 + - name: firstName + in: query + description: Filter by creator first name (e.g. brian). + required: false + schema: + type: string + - name: middleName + in: query + description: Filter by creator middle name (e.g. Michael). + required: false + schema: + type: string + - name: lastName + in: query + description: Filter by creator last name (e.g. Bendis). + required: false + schema: + type: string + - name: suffix + in: query + description: "Filter by suffix or honorific (e.g. Jr., Sr.)." + required: false + schema: + type: string + - name: nameStartsWith + in: query + description: "Filter by creator names that match critera (e.g. B, St L)." + required: false + schema: + type: string + - name: firstNameStartsWith + in: query + description: "Filter by creator first names that match critera (e.g. B, St L)." + required: false + schema: + type: string + - name: middleNameStartsWith + in: query + description: Filter by creator middle names that match critera (e.g. Mi). + required: false + schema: + type: string + - name: lastNameStartsWith + in: query + description: Filter by creator last names that match critera (e.g. 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + - name: limit + in: query + description: Limit the result set to the specified number of resources. + required: false + schema: + type: integer + format: int32 + - name: offset + in: query + description: Skip the specified number of resources in the result set. + required: false + schema: + type: integer + format: int32 + responses: + "200": + description: No response was specified + content: + application/json: + schema: + $ref: '#/components/schemas/CreatorDataWrapper' + "409": + description: Conflict response + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + /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: The comic ID. + required: true + schema: + type: integer + format: int32 + - 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 (e.g. 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + - name: limit + in: query + description: Limit the result set to the specified number of resources. + required: false + schema: + type: integer + format: int32 + - name: offset + in: query + description: Skip the specified number of resources in the result set. + required: false + schema: + type: integer + format: int32 + responses: + "200": + description: No response was specified + content: + application/json: + schema: + $ref: '#/components/schemas/EventDataWrapper' + "409": + description: Conflict response + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + /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: The comic ID. + required: true + schema: + type: integer + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + - name: limit + in: query + description: Limit the result set to the specified number of resources. + required: false + schema: + type: integer + format: int32 + - name: offset + in: query + description: Skip the specified number of resources. + required: false + schema: + type: integer + format: int32 + responses: + "200": + description: No response was specified + content: + application/json: + schema: + $ref: '#/components/schemas/StoryDataWrapper' + "409": + description: Conflict response + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + /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 (e.g. Brian). + required: false + schema: + type: string + - name: middleName + in: query + description: Filter by creator middle name (e.g. Michael). + required: false + schema: + type: string + - name: lastName + in: query + description: Filter by creator last name (e.g. Bendis). + required: false + schema: + type: string + - name: suffix + in: query + description: "Filter by suffix or honorific (e.g. Jr., Sr.)." + required: false + schema: + type: string + - name: nameStartsWith + in: query + description: "Filter by creator names that match critera (e.g. B, St L)." + required: false + schema: + type: string + - name: firstNameStartsWith + in: query + description: "Filter by creator first names that match critera (e.g. B, St L)." + required: false + schema: + type: string + - name: middleNameStartsWith + in: query + description: Filter by creator middle names that match critera (e.g. Mi). + required: false + schema: + type: string + - name: lastNameStartsWith + in: query + description: Filter by creator last names that match critera (e.g. 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + - name: limit + in: query + description: Limit the result set to the specified number of resources. + required: false + schema: + type: integer + format: int32 + - name: offset + in: query + description: Skip the specified number of resources in the result set. + required: false + schema: + type: integer + format: int32 + responses: + "200": + description: No response was specified + content: + application/json: + schema: + $ref: '#/components/schemas/CreatorDataWrapper' + "409": + description: Conflict response + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + /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 single creator id. + required: true + schema: + type: integer + format: int32 + responses: + "200": + description: No response was specified + content: + application/json: + schema: + $ref: '#/components/schemas/CreatorDataWrapper' + "404": + description: Not found response + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + /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: The creator ID. + required: true + schema: + type: integer + format: int32 + - name: format + in: query + description: "Filter by the issue format (e.g. comic, digital comic, hardcover)." + required: false + schema: + type: string + - name: formatType + in: query + description: Filter by the issue format type (comic or collection). + required: false + schema: + type: string + - 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 + - name: dateRange + in: query + description: "Return comics within a predefined date range. Dates must be specified as date1,date2 (e.g. 2013-01-01,2013-01-02). Dates are preferably formatted as YYYY-MM-DD but may be sent as any common date format." + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + format: int32 + - 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 + format: int32 + - name: issueNumber + in: query + description: Return only issues in series whose issue number matches the input. + required: false + schema: + type: integer + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + - name: limit + in: query + description: Limit the result set to the specified number of resources. + required: false + schema: + type: integer + format: int32 + - name: offset + in: query + description: Skip the specified number of resources in the result set. + required: false + schema: + type: integer + format: int32 + responses: + "200": + description: No response was specified + content: + application/json: + schema: + $ref: '#/components/schemas/ComicDataWrapper' + "409": + description: Conflict response + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + /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: The creator ID. + required: true + schema: + type: integer + format: int32 + - 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 (e.g. 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + - name: limit + in: query + description: Limit the result set to the specified number of resources. + required: false + schema: + type: integer + format: int32 + - name: offset + in: query + description: Skip the specified number of resources in the result set. + required: false + schema: + type: integer + format: int32 + responses: + "200": + description: No response was specified + content: + application/json: + schema: + $ref: '#/components/schemas/EventDataWrapper' + "409": + description: Conflict response + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + /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: The creator ID. + required: true + schema: + type: integer + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - name: seriesType + in: query + description: Filter the series by publication frequency type. + required: false + schema: + type: string + - 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 + - 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 + - name: limit + in: query + description: Limit the result set to the specified number of resources. + required: false + schema: + type: integer + format: int32 + - name: offset + in: query + description: Skip the specified number of resources in the result set. + required: false + schema: + type: integer + format: int32 + responses: + "200": + description: No response was specified + content: + application/json: + schema: + $ref: '#/components/schemas/SeriesDataWrapper' + "409": + description: Conflict response + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + /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: The ID of the creator. + required: true + schema: + type: integer + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + - name: limit + in: query + description: Limit the result set to the specified number of resources. + required: false + schema: + type: integer + format: int32 + - name: offset + in: query + description: Skip the specified number of resources in the result set. + required: false + schema: + type: integer + format: int32 + responses: + "200": + description: No response was specified + content: + application/json: + schema: + $ref: '#/components/schemas/StoryDataWrapper' + "409": + description: Conflict response + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + /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 (e.g. 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + - name: limit + in: query + description: Limit the result set to the specified number of resources. + required: false + schema: + type: integer + format: int32 + - name: offset + in: query + description: Skip the specified number of resources in the result set. + required: false + schema: + type: integer + format: int32 + responses: + "200": + description: No response was specified + content: + application/json: + schema: + $ref: '#/components/schemas/EventDataWrapper' + "409": + description: Conflict response + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + /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: A single event. + required: true + schema: + type: integer + format: int32 + responses: + "200": + description: No response was specified + content: + application/json: + schema: + $ref: '#/components/schemas/EventDataWrapper' + "404": + description: Not found response + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + /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: The event ID + required: true + schema: + type: integer + format: int32 + - name: name + in: query + description: Return only characters matching the specified full character name (e.g. Spider-Man). + required: false + schema: + type: string + - name: nameStartsWith + in: query + description: Return characters with names that begin with the specified string (e.g. 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + - name: limit + in: query + description: Limit the result set to the specified number of resources. + required: false + schema: + type: integer + format: int32 + - name: offset + in: query + description: Skip the specified number of resources in the result set. + required: false + schema: + type: integer + format: int32 + responses: + "200": + description: No response was specified + content: + application/json: + schema: + $ref: '#/components/schemas/CharacterDataWrapper' + "409": + description: Conflict response + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + /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: The event id. + required: true + schema: + type: integer + format: int32 + - name: format + in: query + description: "Filter by the issue format (e.g. comic, digital comic, hardcover)." + required: false + schema: + type: string + - name: formatType + in: query + description: Filter by the issue format type (comic or collection). + required: false + schema: + type: string + - 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 + - name: dateRange + in: query + description: "Return comics within a predefined date range. Dates must be specified as date1,date2 (e.g. 2013-01-01,2013-01-02). Dates are preferably formatted as YYYY-MM-DD but may be sent as any common date format." + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + format: int32 + - 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 + format: int32 + - name: issueNumber + in: query + description: Return only issues in series whose issue number matches the input. + required: false + schema: + type: integer + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + - name: limit + in: query + description: Limit the result set to the specified number of resources. + required: false + schema: + type: integer + format: int32 + - name: offset + in: query + description: Skip the specified number of resources in the result set. + required: false + schema: + type: integer + format: int32 + responses: + "200": + description: No response was specified + content: + application/json: + schema: + $ref: '#/components/schemas/ComicDataWrapper' + "409": + description: Conflict response + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + /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: The event ID. + required: true + schema: + type: integer + format: int32 + - name: firstName + in: query + description: Filter by creator first name (e.g. brian). + required: false + schema: + type: string + - name: middleName + in: query + description: Filter by creator middle name (e.g. Michael). + required: false + schema: + type: string + - name: lastName + in: query + description: Filter by creator last name (e.g. Bendis). + required: false + schema: + type: string + - name: suffix + in: query + description: "Filter by suffix or honorific (e.g. Jr., Sr.)." + required: false + schema: + type: string + - name: nameStartsWith + in: query + description: "Filter by creator names that match critera (e.g. B, St L)." + required: false + schema: + type: string + - name: firstNameStartsWith + in: query + description: "Filter by creator first names that match critera (e.g. B, St L)." + required: false + schema: + type: string + - name: middleNameStartsWith + in: query + description: Filter by creator middle names that match critera (e.g. Mi). + required: false + schema: + type: string + - name: lastNameStartsWith + in: query + description: Filter by creator last names that match critera (e.g. 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + - name: limit + in: query + description: Limit the result set to the specified number of resources. + required: false + schema: + type: integer + format: int32 + - name: offset + in: query + description: Skip the specified number of resources in the result set. + required: false + schema: + type: integer + format: int32 + responses: + "200": + description: No response was specified + content: + application/json: + schema: + $ref: '#/components/schemas/CreatorDataWrapper' + "409": + description: Conflict response + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + /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: The event ID. + required: true + schema: + type: integer + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - name: seriesType + in: query + description: Filter the series by publication frequency type. + required: false + schema: + type: string + - 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 + - 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 + - name: limit + in: query + description: Limit the result set to the specified number of resources. + required: false + schema: + type: integer + format: int32 + - name: offset + in: query + description: Skip the specified number of resources in the result set. + required: false + schema: + type: integer + format: int32 + responses: + "200": + description: No response was specified + content: + application/json: + schema: + $ref: '#/components/schemas/SeriesDataWrapper' + "409": + description: Conflict response + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + /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: The ID of the event. + required: true + schema: + type: integer + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + - name: limit + in: query + description: Limit the result set to the specified number of resources. + required: false + schema: + type: integer + format: int32 + - name: offset + in: query + description: Skip the specified number of resources in the result set. + required: false + schema: + type: integer + format: int32 + responses: + "200": + description: No response was specified + content: + application/json: + schema: + $ref: '#/components/schemas/StoryDataWrapper' + "409": + description: Conflict response + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + /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 (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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - name: seriesType + in: query + description: Filter the series by publication frequency type. + required: false + schema: + type: string + - 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 + - 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 + - name: limit + in: query + description: Limit the result set to the specified number of resources. + required: false + schema: + type: integer + format: int32 + - name: offset + in: query + description: Skip the specified number of resources in the result set. + required: false + schema: + type: integer + format: int32 + responses: + "200": + description: No response was specified + content: + application/json: + schema: + $ref: '#/components/schemas/SeriesDataWrapper' + "409": + description: Conflict response + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + /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: Filter by series title. + required: true + schema: + type: integer + format: int32 + responses: + "200": + description: No response was specified + content: + application/json: + schema: + $ref: '#/components/schemas/SeriesDataWrapper' + "404": + description: Not found response + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + /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: The series id. + required: true + schema: + type: integer + format: int32 + - name: name + in: query + description: Return only characters matching the specified full character name (e.g. Spider-Man). + required: false + schema: + type: string + - name: nameStartsWith + in: query + description: Return characters with names that begin with the specified string (e.g. 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + - name: limit + in: query + description: Limit the result set to the specified number of resources. + required: false + schema: + type: integer + format: int32 + - name: offset + in: query + description: Skip the specified number of resources in the result set. + required: false + schema: + type: integer + format: int32 + responses: + "200": + description: No response was specified + content: + application/json: + schema: + $ref: '#/components/schemas/CharacterDataWrapper' + "409": + description: Conflict response + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + /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: The series ID. + required: true + schema: + type: integer + format: int32 + - name: format + in: query + description: "Filter by the issue format (e.g. comic, digital comic, hardcover)." + required: false + schema: + type: string + - name: formatType + in: query + description: Filter by the issue format type (comic or collection). + required: false + schema: + type: string + - 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 + - name: dateRange + in: query + description: "Return comics within a predefined date range. Dates must be specified as date1,date2 (e.g. 2013-01-01,2013-01-02). Dates are preferably formatted as YYYY-MM-DD but may be sent as any common date format." + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + format: int32 + - 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 + format: int32 + - name: issueNumber + in: query + description: Return only issues in series whose issue number matches the input. + required: false + schema: + type: integer + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + - name: limit + in: query + description: Limit the result set to the specified number of resources. + required: false + schema: + type: integer + format: int32 + - name: offset + in: query + description: Skip the specified number of resources in the result set. + required: false + schema: + type: integer + format: int32 + responses: + "200": + description: No response was specified + content: + application/json: + schema: + $ref: '#/components/schemas/ComicDataWrapper' + "409": + description: Conflict response + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + /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: The series ID. + required: true + schema: + type: integer + format: int32 + - name: firstName + in: query + description: Filter by creator first name (e.g. brian). + required: false + schema: + type: string + - name: middleName + in: query + description: Filter by creator middle name (e.g. Michael). + required: false + schema: + type: string + - name: lastName + in: query + description: Filter by creator last name (e.g. Bendis). + required: false + schema: + type: string + - name: suffix + in: query + description: "Filter by suffix or honorific (e.g. Jr., Sr.)." + required: false + schema: + type: string + - name: nameStartsWith + in: query + description: "Filter by creator names that match critera (e.g. B, St L)." + required: false + schema: + type: string + - name: firstNameStartsWith + in: query + description: "Filter by creator first names that match critera (e.g. B, St L)." + required: false + schema: + type: string + - name: middleNameStartsWith + in: query + description: Filter by creator middle names that match critera (e.g. Mi). + required: false + schema: + type: string + - name: lastNameStartsWith + in: query + description: Filter by creator last names that match critera (e.g. 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + - name: limit + in: query + description: Limit the result set to the specified number of resources. + required: false + schema: + type: integer + format: int32 + - name: offset + in: query + description: Skip the specified number of resources in the result set. + required: false + schema: + type: integer + format: int32 + responses: + "200": + description: No response was specified + content: + application/json: + schema: + $ref: '#/components/schemas/CreatorDataWrapper' + "409": + description: Conflict response + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + /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: The series ID. + required: true + schema: + type: integer + format: int32 + - 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 (e.g. 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + - name: limit + in: query + description: Limit the result set to the specified number of resources. + required: false + schema: + type: integer + format: int32 + - name: offset + in: query + description: Skip the specified number of resources in the result set. + required: false + schema: + type: integer + format: int32 + responses: + "200": + description: No response was specified + content: + application/json: + schema: + $ref: '#/components/schemas/EventDataWrapper' + "409": + description: Conflict response + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + /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: The series ID. + required: true + schema: + type: integer + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + - name: limit + in: query + description: Limit the result set to the specified number of resources. + required: false + schema: + type: integer + format: int32 + - name: offset + in: query + description: Skip the specified number of resources in the result set. + required: false + schema: + type: integer + format: int32 + responses: + "200": + description: No response was specified + content: + application/json: + schema: + $ref: '#/components/schemas/StoryDataWrapper' + "409": + description: Conflict response + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + /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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + - name: limit + in: query + description: Limit the result set to the specified number of resources. + required: false + schema: + type: integer + format: int32 + - name: offset + in: query + description: Skip the specified number of resources in the result set. + required: false + schema: + type: integer + format: int32 + responses: + "200": + description: No response was specified + content: + application/json: + schema: + $ref: '#/components/schemas/StoryDataWrapper' + "409": + description: Conflict response + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + /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: Filter by story id. + required: true + schema: + type: integer + format: int32 + responses: + "200": + description: No response was specified + content: + application/json: + schema: + $ref: '#/components/schemas/StoryDataWrapper' + "404": + description: Not found response + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + /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: The story ID. + required: true + schema: + type: integer + format: int32 + - name: name + in: query + description: Return only characters matching the specified full character name (e.g. Spider-Man). + required: false + schema: + type: string + - name: nameStartsWith + in: query + description: Return characters with names that begin with the specified string (e.g. 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + - name: limit + in: query + description: Limit the result set to the specified number of resources. + required: false + schema: + type: integer + format: int32 + - name: offset + in: query + description: Skip the specified number of resources in the result set. + required: false + schema: + type: integer + format: int32 + responses: + "200": + description: No response was specified + content: + application/json: + schema: + $ref: '#/components/schemas/CharacterDataWrapper' + "409": + description: Conflict response + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + /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: The story ID. + required: true + schema: + type: integer + format: int32 + - name: format + in: query + description: "Filter by the issue format (e.g. comic, digital comic, hardcover)." + required: false + schema: + type: string + - name: formatType + in: query + description: Filter by the issue format type (comic or collection). + required: false + schema: + type: string + - 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 + - name: dateRange + in: query + description: "Return comics within a predefined date range. Dates must be specified as date1,date2 (e.g. 2013-01-01,2013-01-02). Dates are preferably formatted as YYYY-MM-DD but may be sent as any common date format." + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + format: int32 + - 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 + format: int32 + - name: issueNumber + in: query + description: Return only issues in series whose issue number matches the input. + required: false + schema: + type: integer + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + - name: limit + in: query + description: Limit the result set to the specified number of resources. + required: false + schema: + type: integer + format: int32 + - name: offset + in: query + description: Skip the specified number of resources in the result set. + required: false + schema: + type: integer + format: int32 + responses: + "200": + description: No response was specified + content: + application/json: + schema: + $ref: '#/components/schemas/ComicDataWrapper' + "409": + description: Conflict response + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + /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: The story ID. + required: true + schema: + type: integer + format: int32 + - name: firstName + in: query + description: Filter by creator first name (e.g. brian). + required: false + schema: + type: string + - name: middleName + in: query + description: Filter by creator middle name (e.g. Michael). + required: false + schema: + type: string + - name: lastName + in: query + description: Filter by creator last name (e.g. Bendis). + required: false + schema: + type: string + - name: suffix + in: query + description: "Filter by suffix or honorific (e.g. Jr., Sr.)." + required: false + schema: + type: string + - name: nameStartsWith + in: query + description: "Filter by creator names that match critera (e.g. B, St L)." + required: false + schema: + type: string + - name: firstNameStartsWith + in: query + description: "Filter by creator first names that match critera (e.g. B, St L)." + required: false + schema: + type: string + - name: middleNameStartsWith + in: query + description: Filter by creator middle names that match critera (e.g. Mi). + required: false + schema: + type: string + - name: lastNameStartsWith + in: query + description: Filter by creator last names that match critera (e.g. 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + - name: limit + in: query + description: Limit the result set to the specified number of resources. + required: false + schema: + type: integer + format: int32 + - name: offset + in: query + description: Skip the specified number of resources in the result set. + required: false + schema: + type: integer + format: int32 + responses: + "200": + description: No response was specified + content: + application/json: + schema: + $ref: '#/components/schemas/CreatorDataWrapper' + "409": + description: Conflict response + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + /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: The story ID. + required: true + schema: + type: integer + format: int32 + - 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 (e.g. 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + - name: limit + in: query + description: Limit the result set to the specified number of resources. + required: false + schema: + type: integer + format: int32 + - name: offset + in: query + description: Skip the specified number of resources in the result set. + required: false + schema: + type: integer + format: int32 + responses: + "200": + description: No response was specified + content: + application/json: + schema: + $ref: '#/components/schemas/EventDataWrapper' + "409": + description: Conflict response + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' + /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: The story ID. + required: true + schema: + type: integer + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - 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 + format: int32 + - name: seriesType + in: query + description: Filter the series by publication frequency type. + required: false + schema: + type: string + - 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 + - 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 + - name: limit + in: query + description: Limit the result set to the specified number of resources. + required: false + schema: + type: integer + format: int32 + - name: offset + in: query + description: Skip the specified number of resources in the result set. + required: false + schema: + type: integer + format: int32 + responses: + "200": + description: No response was specified + content: + application/json: + schema: + $ref: '#/components/schemas/SeriesDataWrapper' + "409": + description: Conflict response + content: + application/json: + schema: + $ref: '#/components/schemas/ErrorResponse' +components: + schemas: + ComicList: + type: object + 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. + format: int32 + returned: + type: integer + description: The number of issues returned in this collection (up to 20). + format: int32 + 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' + EventList: + type: object + 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. + format: int32 + returned: + type: integer + description: The number of events returned in this collection (up to 20). + format: int32 + 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' + CreatorList: + type: object + 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. + format: int32 + returned: + type: integer + description: The number of creators returned in this collection (up to 20). + format: int32 + 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' + CharacterList: + type: object + 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. + format: int32 + returned: + type: integer + description: The number of characters returned in this collection (up to + 20). + format: int32 + 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' + SeriesList: + type: object + 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. + format: int32 + returned: + type: integer + description: The number of series returned in this collection (up to 20). + format: int32 + 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' + StoryList: + type: object + 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. + format: int32 + returned: + type: integer + description: The number of stories returned in this collection (up to 20). + format: int32 + 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' + CharacterSummary: + type: object + properties: + resourceURI: + type: string + description: The path to the individual character resource. + name: + type: string + description: The full name of the character. + role: + type: string + description: The role of the creator in the parent entity. + EventSummary: + type: object + properties: + resourceURI: + type: string + description: The path to the individual event resource. + name: + type: string + description: The name of the event. + SeriesSummary: + type: object + properties: + resourceURI: + type: string + description: The path to the individual series resource. + name: + type: string + description: The canonical name of the series. + ComicSummary: + type: object + properties: + resourceURI: + type: string + description: The path to the individual comic resource. + name: + type: string + description: The canonical name of the comic. + Url: + type: object + properties: + type: + type: string + description: A text identifier for the URL. + url: + type: string + description: "A full URL (including scheme, domain, and path)." + CreatorSummary: + type: object + properties: + resourceURI: + type: string + description: The path to the individual creator resource. + name: + type: string + description: The full name of the creator. + role: + type: string + description: The role of the creator in the parent entity. + StorySummary: + type: object + properties: + resourceURI: + type: string + description: The path to the individual story resource. + name: + type: string + description: The canonical name of the story. + type: + type: string + description: The type of the story (interior or cover). + Image: + type: object + properties: + path: + type: string + description: The directory path of to the image. + extension: + type: string + description: The file extension for the image. + ComicDate: + type: object + properties: + type: + type: string + description: "A description of the date (e.g. onsale date, FOC date)." + date: + type: string + description: The date. + format: date + CharacterDataContainer: + type: object + properties: + offset: + type: integer + description: The requested offset (number of skipped results) of the call. + format: int32 + limit: + type: integer + description: The requested result limit. + format: int32 + total: + type: integer + description: The total number of resources available given the current filter + set. + format: int32 + count: + type: integer + description: The total number of results returned by this call. + format: int32 + results: + type: array + description: The list of characters returned by the call. + items: + $ref: '#/components/schemas/Character' + EventDataContainer: + type: object + properties: + offset: + type: integer + description: The requested offset (number of skipped results) of the call. + format: int32 + limit: + type: integer + description: The requested result limit. + format: int32 + total: + type: integer + description: The total number of resources available given the current filter + set. + format: int32 + count: + type: integer + description: The total number of results returned by this call. + format: int32 + results: + type: array + description: The list of events returned by the call + items: + $ref: '#/components/schemas/Event' + ComicPrice: + type: object + properties: + type: + type: string + description: "A description of the price (e.g. print price, digital price)." + price: + type: number + description: The price (all prices in USD). + format: float + EventDataWrapper: + type: object + properties: + code: + type: integer + description: The HTTP status code of the returned result. + format: int32 + 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. + Creator: + type: object + properties: + id: + type: integer + description: The unique ID of the creator resource. + format: int32 + 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: + $ref: '#/components/schemas/Image' + series: + $ref: '#/components/schemas/SeriesList' + stories: + $ref: '#/components/schemas/StoryList' + comics: + $ref: '#/components/schemas/ComicList' + events: + $ref: '#/components/schemas/EventList' + Event: + type: object + properties: + id: + type: integer + description: The unique ID of the event resource. + format: int32 + 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: + $ref: '#/components/schemas/Image' + comics: + $ref: '#/components/schemas/ComicList' + stories: + $ref: '#/components/schemas/StoryList' + series: + $ref: '#/components/schemas/SeriesList' + characters: + $ref: '#/components/schemas/CharacterList' + creators: + $ref: '#/components/schemas/CreatorList' + next: + $ref: '#/components/schemas/EventSummary' + previous: + $ref: '#/components/schemas/EventSummary' + ComicDataContainer: + type: object + properties: + offset: + type: integer + description: The requested offset (number of skipped results) of the call. + format: int32 + limit: + type: integer + description: The requested result limit. + format: int32 + total: + type: integer + description: The total number of resources available given the current filter + set. + format: int32 + count: + type: integer + description: The total number of results returned by this call. + format: int32 + results: + type: array + description: The list of comics returned by the call + items: + $ref: '#/components/schemas/Comic' + TextObject: + type: object + properties: + type: + type: string + description: "The canonical type of the text object (e.g. solicit text,\ + \ preview text, etc.)." + language: + type: string + description: The IETF language tag denoting the language the text object + is written in. + text: + type: string + description: The text. + CreatorDataWrapper: + type: object + properties: + code: + type: integer + description: The HTTP status code of the returned result. + format: int32 + 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. + StoryDataWrapper: + type: object + properties: + code: + type: integer + description: The HTTP status code of the returned result. + format: int32 + 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. + Character: + type: object + properties: + id: + type: integer + description: The unique ID of the character resource. + format: int32 + 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: + $ref: '#/components/schemas/Image' + comics: + $ref: '#/components/schemas/ComicList' + stories: + $ref: '#/components/schemas/StoryList' + events: + $ref: '#/components/schemas/EventList' + series: + $ref: '#/components/schemas/SeriesList' + CharacterDataWrapper: + type: object + properties: + code: + type: integer + description: The HTTP status code of the returned result. + format: int32 + 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. + ComicDataWrapper: + type: object + properties: + code: + type: integer + description: The HTTP status code of the returned result. + format: int32 + 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. + Series: + type: object + properties: + id: + type: integer + description: The unique ID of the series resource. + format: int32 + 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. + format: int32 + endYear: + type: integer + description: "The last year of publication for the series (conventionally,\ + \ 2099 for ongoing series) ." + format: int32 + 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: + $ref: '#/components/schemas/Image' + comics: + $ref: '#/components/schemas/ComicList' + stories: + $ref: '#/components/schemas/StoryList' + events: + $ref: '#/components/schemas/EventList' + characters: + $ref: '#/components/schemas/CharacterList' + creators: + $ref: '#/components/schemas/CreatorList' + next: + $ref: '#/components/schemas/SeriesSummary' + previous: + $ref: '#/components/schemas/SeriesSummary' + SeriesDataWrapper: + type: object + properties: + code: + type: integer + description: The HTTP status code of the returned result. + format: int32 + 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. + SeriesDataContainer: + type: object + properties: + offset: + type: integer + description: The requested offset (number of skipped results) of the call. + format: int32 + limit: + type: integer + description: The requested result limit. + format: int32 + total: + type: integer + description: The total number of resources available given the current filter + set. + format: int32 + count: + type: integer + description: The total number of results returned by this call. + format: int32 + results: + type: array + description: The list of series returned by the call + items: + $ref: '#/components/schemas/Series' + StoryDataContainer: + type: object + properties: + offset: + type: integer + description: The requested offset (number of skipped results) of the call. + format: int32 + limit: + type: integer + description: The requested result limit. + format: int32 + total: + type: integer + description: The total number of resources available given the current filter + set. + format: int32 + count: + type: integer + description: The total number of results returned by this call. + format: int32 + results: + type: array + description: The list of stories returned by the call + items: + $ref: '#/components/schemas/Story' + Comic: + type: object + properties: + id: + type: integer + description: The unique ID of the comic resource. + format: int32 + digitalId: + type: integer + description: The ID of the digital comic representation of this comic. Will + be 0 if the comic is not available digitally. + format: int32 + 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. + format: int32 + 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: + $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: + $ref: '#/components/schemas/Image' + images: + type: array + description: A list of promotional images associated with this comic. + items: + $ref: '#/components/schemas/Image' + creators: + $ref: '#/components/schemas/CreatorList' + characters: + $ref: '#/components/schemas/CharacterList' + stories: + $ref: '#/components/schemas/StoryList' + events: + $ref: '#/components/schemas/EventList' + CreatorDataContainer: + type: object + properties: + offset: + type: integer + description: The requested offset (number of skipped results) of the call. + format: int32 + limit: + type: integer + description: The requested result limit. + format: int32 + total: + type: integer + description: The total number of resources available given the current filter + set. + format: int32 + count: + type: integer + description: The total number of results returned by this call. + format: int32 + results: + type: array + description: The list of creators returned by the call. + items: + $ref: '#/components/schemas/Creator' + Story: + type: object + properties: + id: + type: integer + description: The unique ID of the story resource. + format: int32 + 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: + $ref: '#/components/schemas/Image' + comics: + $ref: '#/components/schemas/ComicList' + series: + $ref: '#/components/schemas/SeriesList' + events: + $ref: '#/components/schemas/EventList' + characters: + $ref: '#/components/schemas/CharacterList' + creators: + $ref: '#/components/schemas/CreatorList' + originalissue: + $ref: '#/components/schemas/ComicSummary' + ErrorResponse: + type: object + properties: + code: + type: integer + description: The HTTP status code of the returned result. + reason: + type: string + description: A reason describing the error. + required: + - code + - reason