diff --git a/Sources/MarvelService/Public/marvel_service.swift b/Sources/MarvelService/Public/marvel_service.swift deleted file mode 100644 index 08b22b80..00000000 --- a/Sources/MarvelService/Public/marvel_service.swift +++ /dev/null @@ -1,2 +0,0 @@ -// The Swift Programming Language -// https://docs.swift.org/swift-book diff --git a/Sources/MarvelService/openapi.yaml b/Sources/MarvelService/openapi.yaml index 1da5d1c5..11ee1e08 100644 --- a/Sources/MarvelService/openapi.yaml +++ b/Sources/MarvelService/openapi.yaml @@ -20,117 +20,120 @@ info: termsOfService: https://developer.marvel.com/terms version: Cable servers: -- url: https://gateway.marvel.com - description: Live service + - 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. + - 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 + - characters summary: Fetches lists of characters. - description: Fetches lists of comic characters with optional filters. + 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: + - name: name + in: query + description: Return only characters matching the specified full character name. + example: Spider-Man + required: false + schema: 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 + - name: nameStartsWith + in: query + description: Return characters with names that begin with the specified string. + example: Sp + required: false + schema: + type: string + - name: modifiedSince + in: query + description: Return only characters which have been modified since the specified date. + required: false + schema: + type: string + format: date + - name: comics + in: query + description: Return only characters which appear in the specified comics (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: series + in: query + description: Return only characters which appear the specified series (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: events + in: query + description: Return only characters which appear in the specified events (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: stories + in: query + description: Return only characters which appear the specified stories (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: orderBy + in: query + description: Order the result set by a field or fields. Add a "-" to the value sort in descending order. Multiple values are given priority in the order in which they are passed. + required: false + style: form + explode: false + schema: + type: array + items: + type: string + enum: + - name + - modified + - -name + - -modified + - name: limit + in: query + description: Limit the result set to the specified number of resources. + required: false + schema: + type: integer + minimum: 1 + maximum: 100 + - name: offset + in: query + description: Skip the specified number of resources in the result set. + required: false + schema: + type: integer responses: "200": description: OK response @@ -138,27 +141,56 @@ paths: application/json: schema: $ref: '#/components/schemas/CharacterDataWrapper' + "401": + description: Unauthorized response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "403": + description: Forbidden response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "404": + description: Not Found response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "405": + description: Method Not Allowed response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' "409": description: Conflict response content: application/json: schema: - $ref: '#/components/schemas/ErrorResponse' + $ref: '#/components/schemas/StandardError' + "429": + description: Too Many Requests response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' /v1/public/characters/{characterId}: get: tags: - - characters + - 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 + - name: characterId + in: path + description: A character id. + required: true + schema: + type: integer responses: "200": description: OK response @@ -166,228 +198,278 @@ paths: application/json: schema: $ref: '#/components/schemas/CharacterDataWrapper' + "401": + description: Unauthorized response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "403": + description: Forbidden response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' "404": description: Not found response content: application/json: schema: - $ref: '#/components/schemas/ErrorResponse' + $ref: '#/components/schemas/StandardError' + "405": + description: Method Not Allowed response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "409": + description: Conflict response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "429": + description: Too Many Requests response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' /v1/public/characters/{characterId}/comics: get: tags: - - comics + - comics summary: Fetches lists of comics filtered by a character id. - description: "Fetches lists of comics containing a specific character, with optional filters." + 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: + - name: characterId + in: path + description: The character id. + required: true + schema: 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: + - name: format + in: query + description: Filter by the issue format. + example: comic + required: false + schema: 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 + enum: + - comic + - magazine + - trade paperback + - hardcover + - digest + - graphic novel + - digital comic + - infinite comic + - name: formatType + in: query + description: Filter by the issue format type. + example: comic + required: false + schema: + type: string + enum: + - comic + - collection + - name: noVariants + in: query + description: Exclude variant comics from the result set. + required: false + schema: + type: boolean + - name: dateDescriptor + in: query + description: Return comics within a predefined date range. + required: false + schema: + type: string + enum: + - lastWeek + - thisWeek + - nextWeek + - thisMonth + - name: dateRange + in: query + description: Return comics within a predefined date range. Dates must be specified as date1,date2. Dates are preferably formatted as YYYY-MM-DD but may be sent as any common date format. + example: 2013-01-01,2013-01-02 + required: false + style: form + explode: false + schema: + type: array + items: + type: string + - name: title + in: query + description: Return only issues in series whose title matches the input. + required: false + schema: + type: string + - name: titleStartsWith + in: query + description: Return only issues in series whose title starts with the input. + required: false + schema: + type: string + - name: startYear + in: query + description: Return only issues in series whose start year matches the input. + required: false + schema: + type: integer + - name: issueNumber + in: query + description: Return only issues in series whose issue number matches the input. + required: false + schema: + type: integer + - name: diamondCode + in: query + description: Filter by diamond code. + required: false + schema: + type: string + - name: digitalId + in: query + description: Filter by digital comic id. + required: false + schema: + type: integer + - name: upc + in: query + description: Filter by UPC. + required: false + schema: + type: string + - name: isbn + in: query + description: Filter by ISBN. + required: false + schema: + type: string + - name: ean + in: query + description: Filter by EAN. + required: false + schema: + type: string + - name: issn + in: query + description: Filter by ISSN. + required: false + schema: + type: string + - name: hasDigitalIssue + in: query + description: Include only results which are available digitally. + required: false + schema: + type: boolean + - name: modifiedSince + in: query + description: Return only comics which have been modified since the specified date. + required: false + schema: + type: string + format: date + - name: creators + in: query + description: Return only comics which feature work by the specified creators (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: series + in: query + description: Return only comics which are part of the specified series (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: events + in: query + description: Return only comics which take place in the specified events (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: stories + in: query + description: Return only comics which contain the specified stories (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: sharedAppearances + in: query + description: Return only comics in which the specified characters appear together (for example in which BOTH Spider-Man and Wolverine appear). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: collaborators + in: query + description: Return only comics in which the specified creators worked together (for example in which BOTH Stan Lee and Jack Kirby did work). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: orderBy + in: query + description: Order the result set by a field or fields. Add a "-" to the value sort in descending order. Multiple values are given priority in the order in which they are passed. + required: false + style: form + explode: false + schema: + type: array + items: + type: string + enum: + - issueNumber + - modified + - onSaleDate + - focDate + - title + - -issueNumber + - -modified + - -onSaleDate + - -focDate + - -title + - name: limit + in: query + description: Limit the result set to the specified number of resources. + required: false + schema: + type: integer + minimum: 1 + maximum: 100 + - name: offset + in: query + description: Skip the specified number of resources in the result set. + required: false + schema: + type: integer responses: "200": description: OK response @@ -395,3497 +477,4550 @@ paths: application/json: schema: $ref: '#/components/schemas/ComicDataWrapper' + "401": + description: Unauthorized response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "403": + description: Forbidden response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "404": + description: Not Found response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "405": + description: Method Not Allowed response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' "409": description: Conflict response content: application/json: schema: - $ref: '#/components/schemas/ErrorResponse' + $ref: '#/components/schemas/StandardError' + "429": + description: Too Many Requests response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' /v1/public/characters/{characterId}/events: get: tags: - - events + - 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." + 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: + - name: characterId + in: path + description: A character id. + required: true + schema: 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: + - name: name + in: query + description: Filter the event list by name. + required: false + schema: 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 + - name: nameStartsWith + in: query + description: Return events with names that begin with the specified string. + example: Sp + required: false + schema: + type: string + - name: modifiedSince + in: query + description: Return only events which have been modified since the specified date. + required: false + schema: + type: string + format: date + - name: creators + in: query + description: Return only events which feature work by the specified creators (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: series + in: query + description: Return only events which are part of the specified series (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: comics + in: query + description: Return only events which take place in the specified comics (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: stories + in: query + description: Return only events which contain the specified stories (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: orderBy + in: query + description: Order the result set by a field or fields. Add a "-" to the value sort in descending order. Multiple values are given priority in the order in which they are passed. + required: false + style: form + explode: false + schema: + type: array + items: + type: string + enum: + - name + - modified + - startDate + - -name + - -modified + - -startDate + - name: limit + in: query + description: Limit the result set to the specified number of resources. + required: false + schema: + type: integer + minimum: 1 + maximum: 100 + - name: offset + in: query + description: Skip the specified number of resources in the result set. + required: false + schema: + type: integer responses: "200": - description: No response was specified + description: OK response content: application/json: schema: $ref: '#/components/schemas/EventDataWrapper' + "401": + description: Unauthorized response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "403": + description: Forbidden response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "404": + description: Not Found response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "405": + description: Method Not Allowed response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' "409": description: Conflict response content: application/json: schema: - $ref: '#/components/schemas/ErrorResponse' + $ref: '#/components/schemas/StandardError' + "429": + description: Too Many Requests response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' /v1/public/characters/{characterId}/series: get: tags: - - series + - 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." + description: Fetches lists of comic series in which a specific character appears, with optional filters. 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: + - name: characterId + in: path + description: A character id. + required: true + schema: 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: + - name: title + in: query + description: Filter by series title. + required: false + schema: 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: + - name: titleStartsWith + in: query + description: Return series with titles that begin with the specified string. + example: Sp + required: false + schema: 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 + - name: startYear + in: query + description: Return only series matching the specified start year. + required: false + schema: + type: integer + - name: modifiedSince + in: query + description: Return only series which have been modified since the specified date. + required: false + schema: + type: string + format: date + - name: comics + in: query + description: Return only series which contain the specified comics (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: stories + in: query + description: Return only series which contain the specified stories (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: events + in: query + description: Return only series which have comics that take place during the specified events (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: creators + in: query + description: Return only series which feature work by the specified creators (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: seriesType + in: query + description: Filter the series by publication frequency type. + required: false + schema: + type: string + enum: + - collection + - one shot + - limited + - ongoing + - name: contains + in: query + description: Return only series containing one or more comics with the specified format. + required: false + style: form + explode: false + schema: + type: array + items: + type: string + enum: + - comic + - magazine + - trade paperback + - hardcover + - digest + - graphic novel + - digital comic + - infinite comic + - name: orderBy + in: query + description: Order the result set by a field or fields. Add a "-" to the value sort in descending order. Multiple values are given priority in the order in which they are passed. + required: false + style: form + explode: false + schema: + type: array + items: + type: string + enum: + - title + - modified + - startYear + - -title + - -modified + - -startYear + - name: limit + in: query + description: Limit the result set to the specified number of resources. + required: false + schema: + type: integer + minimum: 1 + maximum: 100 + - name: offset + in: query + description: Skip the specified number of resources in the result set. + required: false + schema: + type: integer responses: "200": - description: No response was specified + description: OK response content: application/json: schema: $ref: '#/components/schemas/SeriesDataWrapper' + "401": + description: Unauthorized response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "403": + description: Forbidden response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "404": + description: Not Found response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "405": + description: Method Not Allowed response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' "409": description: Conflict response content: application/json: schema: - $ref: '#/components/schemas/ErrorResponse' + $ref: '#/components/schemas/StandardError' + "429": + description: Too Many Requests response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' /v1/public/characters/{characterId}/stories: get: tags: - - stories + - 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: + - name: characterId + in: path + description: A character id. + required: true + schema: 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: + - name: modifiedSince + in: query + description: Return only stories which have been modified since the specified date. + required: false + schema: 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 + format: date + - name: comics + in: query + description: Return only stories contained in the specified (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: series + in: query + description: Return only stories contained the specified series (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: events + in: query + description: Return only stories which take place during the specified events (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: creators + in: query + description: Return only stories which feature work by the specified creators (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: orderBy + in: query + description: Order the result set by a field or fields. Add a "-" to the value sort in descending order. Multiple values are given priority in the order in which they are passed. + required: false + style: form + explode: false + schema: + type: array + items: + type: string + enum: + - id + - modified + - -id + - -modified + - name: limit + in: query + description: Limit the result set to the specified number of resources. + required: false + schema: + type: integer + minimum: 1 + maximum: 100 + - name: offset + in: query + description: Skip the specified number of resources in the result set. + required: false + schema: + type: integer responses: "200": - description: No response was specified + description: OK response content: application/json: schema: $ref: '#/components/schemas/StoryDataWrapper' + "401": + description: Unauthorized response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "403": + description: Forbidden response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "404": + description: Not Found response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "405": + description: Method Not Allowed response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' "409": description: Conflict response content: application/json: schema: - $ref: '#/components/schemas/ErrorResponse' + $ref: '#/components/schemas/StandardError' + "429": + description: Too Many Requests response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' /v1/public/comics: get: tags: - - comics + - 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: + - name: format + in: query + description: "Filter by the issue format." + required: false + schema: 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 + enum: + - comic + - magazine + - trade paperback + - hardcover + - digest + - graphic novel + - digital comic + - infinite comic + - name: formatType + in: query + description: Filter by the issue format type. + required: false + schema: + type: string + enum: + - comic + - collection + - name: noVariants + in: query + description: "Exclude variants (alternate covers, secondary printings, director's cuts, etc.) from the result set." + required: false + schema: + type: boolean + - name: dateDescriptor + in: query + description: Return comics within a predefined date range. + required: false + schema: + type: string + enum: + - lastWeek + - thisWeek + - nextWeek + - thisMonth + - name: dateRange + in: query + description: Return comics within a predefined date range. Dates must be specified as date1,date2. Dates are preferably formatted as YYYY-MM-DD but may be sent as any common date format. + example: 2013-01-01,2013-01-02 + required: false + style: form + explode: false + schema: + type: array + items: + type: string + - name: title + in: query + description: Return only issues in series whose title matches the input. + required: false + schema: + type: string + - name: titleStartsWith + in: query + description: Return only issues in series whose title starts with the input. + required: false + schema: + type: string + - name: startYear + in: query + description: Return only issues in series whose start year matches the input. + required: false + schema: + type: integer + - name: issueNumber + in: query + description: Return only issues in series whose issue number matches the input. + required: false + schema: + type: integer + - name: diamondCode + in: query + description: Filter by diamond code. + required: false + schema: + type: string + - name: digitalId + in: query + description: Filter by digital comic id. + required: false + schema: + type: integer + - name: upc + in: query + description: Filter by UPC. + required: false + schema: + type: string + - name: isbn + in: query + description: Filter by ISBN. + required: false + schema: + type: string + - name: ean + in: query + description: Filter by EAN. + required: false + schema: + type: string + - name: issn + in: query + description: Filter by ISSN. + required: false + schema: + type: string + - name: hasDigitalIssue + in: query + description: Include only results which are available digitally. + required: false + schema: + type: boolean + - name: modifiedSince + in: query + description: Return only comics which have been modified since the specified date. + required: false + schema: + type: string + format: date + - name: creators + in: query + description: Return only comics which feature work by the specified creators (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: characters + in: query + description: Return only comics which feature the specified characters (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: series + in: query + description: Return only comics which are part of the specified series (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: events + in: query + description: Return only comics which take place in the specified events (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: stories + in: query + description: Return only comics which contain the specified stories (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: sharedAppearances + in: query + description: Return only comics in which the specified characters appear together (for example in which BOTH Spider-Man and Wolverine appear). Accepts a comma-separated list of ids. + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: collaborators + in: query + description: Return only comics in which the specified creators worked together (for example in which BOTH Stan Lee and Jack Kirby did work). Accepts a comma-separated list of ids. + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: orderBy + in: query + description: Order the result set by a field or fields. Add a "-" to the value sort in descending order. Multiple values are given priority in the order in which they are passed. + required: false + style: form + explode: false + schema: + type: array + items: + type: string + enum: + - issueNumber + - modified + - onSaleDate + - focDate + - title + - -issueNumber + - -modified + - -onSaleDate + - -focDate + - -title + - name: limit + in: query + description: Limit the result set to the specified number of resources. + required: false + schema: + type: integer + minimum: 1 + maximum: 100 + - name: offset + in: query + description: Skip the specified number of resources in the result set. + required: false + schema: + type: integer responses: "200": - description: No response was specified + description: OK response content: application/json: schema: $ref: '#/components/schemas/ComicDataWrapper' + "401": + description: Unauthorized response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "403": + description: Forbidden response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "404": + description: Not Found response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "405": + description: Method Not Allowed response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' "409": description: Conflict response content: application/json: schema: - $ref: '#/components/schemas/ErrorResponse' + $ref: '#/components/schemas/StandardError' + "429": + description: Too Many Requests response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' /v1/public/comics/{comicId}: get: tags: - - comics + - 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 + - name: comicId + in: path + description: A comic id. + required: true + schema: + type: integer responses: "200": - description: No response was specified + description: OK response content: application/json: schema: $ref: '#/components/schemas/ComicDataWrapper' + "401": + description: Unauthorized response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "403": + description: Forbidden response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' "404": description: Not found response content: application/json: schema: - $ref: '#/components/schemas/ErrorResponse' + $ref: '#/components/schemas/StandardError' + "405": + description: Method Not Allowed response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "409": + description: Conflict response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "429": + description: Too Many Requests response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' /v1/public/comics/{comicId}/characters: get: tags: - - characters + - 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: + - name: comicId + in: path + description: A comic id. + required: true + schema: 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: + - name: name + in: query + description: Return only characters matching the specified full character name + example: Spider-Man + required: false + schema: 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 + - name: nameStartsWith + in: query + description: Return characters with names that begin with the specified string. + example: Sp + required: false + schema: + type: string + - name: modifiedSince + in: query + description: Return only characters which have been modified since the specified date. + required: false + schema: + type: string + format: date + - name: series + in: query + description: Return only characters which appear the specified series (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: events + in: query + description: Return only characters which appear comics that took place in the specified events (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: stories + in: query + description: Return only characters which appear the specified stories (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: orderBy + in: query + description: Order the result set by a field or fields. Add a "-" to the value sort in descending order. Multiple values are given priority in the order in which they are passed. + required: false + style: form + explode: false + schema: + type: array + items: + type: string + enum: + - name + - modified + - -name + - -modified + - name: limit + in: query + description: Limit the result set to the specified number of resources. + required: false + schema: + type: integer + minimum: 1 + maximum: 100 + - name: offset + in: query + description: Skip the specified number of resources in the result set. + required: false + schema: + type: integer responses: "200": - description: No response was specified + description: OK response content: application/json: schema: $ref: '#/components/schemas/CharacterDataWrapper' + "401": + description: Unauthorized response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "403": + description: Forbidden response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "404": + description: Not Found response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "405": + description: Method Not Allowed response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' "409": description: Conflict response content: application/json: schema: - $ref: '#/components/schemas/ErrorResponse' + $ref: '#/components/schemas/StandardError' + "429": + description: Too Many Requests response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' /v1/public/comics/{comicId}/creators: get: tags: - - creators + - 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: + - name: comicId + in: path + description: A comic id. + required: true + schema: 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: + - name: firstName + in: query + description: Filter by creator first name. + example: Brian + required: false + schema: 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 + - name: middleName + in: query + description: Filter by creator middle name. + example: Michael + required: false + schema: + type: string + - name: lastName + in: query + description: Filter by creator last name. + example: Bendis + required: false + schema: + type: string + - name: suffix + in: query + description: "Filter by suffix or honorific" + example: Sr. + required: false + schema: + type: string + - name: nameStartsWith + in: query + description: "Filter by creator names that match critera" + example: B + required: false + schema: + type: string + - name: firstNameStartsWith + in: query + description: "Filter by creator first names that match critera" + example: B + required: false + schema: + type: string + - name: middleNameStartsWith + in: query + description: Filter by creator middle names that match criteria. + example: Mi + required: false + schema: + type: string + - name: lastNameStartsWith + in: query + description: Filter by creator last names that match criteria. + example: Ben + required: false + schema: + type: string + - name: modifiedSince + in: query + description: Return only creators which have been modified since the specified date. + required: false + schema: + type: string + format: date + - name: comics + in: query + description: Return only creators who worked on in the specified comics (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: series + in: query + description: Return only creators who worked on the specified series (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: stories + in: query + description: Return only creators who worked on the specified stories (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: orderBy + in: query + description: Order the result set by a field or fields. Add a "-" to the value sort in descending order. Multiple values are given priority in the order in which they are passed. + required: false + style: form + explode: false + schema: + type: array + items: + type: string + enum: + - firstName + - middleName + - lastName + - suffix + - modified + - -firstName + - -middleName + - -lastName + - -suffix + - -modified + - name: limit + in: query + description: Limit the result set to the specified number of resources. + required: false + schema: + type: integer + minimum: 1 + maximum: 100 + - name: offset + in: query + description: Skip the specified number of resources in the result set. + required: false + schema: + type: integer responses: "200": - description: No response was specified + description: OK response content: application/json: schema: $ref: '#/components/schemas/CreatorDataWrapper' + "401": + description: Unauthorized response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "403": + description: Forbidden response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "404": + description: Not Found response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "405": + description: Method Not Allowed response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' "409": description: Conflict response content: application/json: schema: - $ref: '#/components/schemas/ErrorResponse' + $ref: '#/components/schemas/StandardError' + "429": + description: Too Many Requests response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' /v1/public/comics/{comicId}/events: get: tags: - - events + - 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." + 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: + - name: comicId + in: path + description: A comic id. + required: true + schema: 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: + - name: name + in: query + description: Filter the event list by name. + required: false + schema: 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 + - name: nameStartsWith + in: query + description: Return events with names that begin with the specified string. + example: Sp + required: false + schema: + type: string + - name: modifiedSince + in: query + description: Return only events which have been modified since the specified date. + required: false + schema: + type: string + format: date + - name: creators + in: query + description: Return only events which feature work by the specified creators (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: characters + in: query + description: Return only events which feature the specified characters (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: series + in: query + description: Return only events which are part of the specified series (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: stories + in: query + description: Return only events which contain the specified stories (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: orderBy + in: query + description: Order the result set by a field or fields. Add a "-" to the value sort in descending order. Multiple values are given priority in the order in which they are passed. + required: false + style: form + explode: false + schema: + type: array + items: + type: string + enum: + - name + - modified + - startDate + - -name + - -modified + - -startDate + - name: limit + in: query + description: Limit the result set to the specified number of resources. + required: false + schema: + type: integer + minimum: 1 + maximum: 100 + - name: offset + in: query + description: Skip the specified number of resources in the result set. + required: false + schema: + type: integer responses: "200": - description: No response was specified + description: OK response content: application/json: schema: $ref: '#/components/schemas/EventDataWrapper' + "401": + description: Unauthorized response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "403": + description: Forbidden response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "404": + description: Not Found response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "405": + description: Method Not Allowed response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' "409": description: Conflict response content: application/json: schema: - $ref: '#/components/schemas/ErrorResponse' + $ref: '#/components/schemas/StandardError' + "429": + description: Too Many Requests response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' /v1/public/comics/{comicId}/stories: get: tags: - - stories + - 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." + 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: + - name: comicId + in: path + description: A comic id. + required: true + schema: 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: + - name: modifiedSince + in: query + description: Return only stories which have been modified since the specified date. + required: false + schema: 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 + format: date + - name: series + in: query + description: Return only stories contained the specified series (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: events + in: query + description: Return only stories which take place during the specified events (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: creators + in: query + description: Return only stories which feature work by the specified creators (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: characters + in: query + description: Return only stories which feature the specified characters (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: orderBy + in: query + description: Order the result set by a field or fields. Add a "-" to the value sort in descending order. Multiple values are given priority in the order in which they are passed. + required: false + style: form + explode: false + schema: + type: array + items: + type: string + enum: + - id + - modified + - -id + - -modified + - name: limit + in: query + description: Limit the result set to the specified number of resources. + required: false + schema: + type: integer + minimum: 1 + maximum: 100 + - name: offset + in: query + description: Skip the specified number of resources. + required: false + schema: + type: integer responses: "200": - description: No response was specified + description: OK response content: application/json: schema: $ref: '#/components/schemas/StoryDataWrapper' + "401": + description: Unauthorized response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "403": + description: Forbidden response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "404": + description: Not Found response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "405": + description: Method Not Allowed response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' "409": description: Conflict response content: application/json: schema: - $ref: '#/components/schemas/ErrorResponse' + $ref: '#/components/schemas/StandardError' + "429": + description: Too Many Requests response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' /v1/public/creators: get: tags: - - creators + - 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: + - name: firstName + in: query + description: Filter by creator first name. + example: Brian + required: false + schema: 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 + - name: middleName + in: query + description: Filter by creator middle name. + example: Michael + required: false + schema: + type: string + - name: lastName + in: query + description: Filter by creator last name. + example: Bendis + required: false + schema: + type: string + - name: suffix + in: query + description: Filter by suffix or honorific. + example: Sr. + required: false + schema: + type: string + - name: nameStartsWith + in: query + description: Filter by creator names that match criteria. + example: B + required: false + schema: + type: string + - name: firstNameStartsWith + in: query + description: Filter by creator first names that match criteria. + example: B + required: false + schema: + type: string + - name: middleNameStartsWith + in: query + description: Filter by creator middle names that match criteria. + example: Mi + required: false + schema: + type: string + - name: lastNameStartsWith + in: query + description: Filter by creator last names that match criteria. + example: Ben + required: false + schema: + type: string + - name: modifiedSince + in: query + description: Return only creators which have been modified since the specified date. + required: false + schema: + type: string + format: date + - name: comics + in: query + description: Return only creators who worked on in the specified comics (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: series + in: query + description: Return only creators who worked on the specified series (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: events + in: query + description: Return only creators who worked on comics that took place in the specified events (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: stories + in: query + description: Return only creators who worked on the specified stories (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: orderBy + in: query + description: Order the result set by a field or fields. Add a "-" to the value sort in descending order. Multiple values are given priority in the order in which they are passed. + required: false + style: form + explode: false + schema: + type: array + items: + type: string + enum: + - firstName + - middleName + - lastName + - suffix + - modified + - -firstName + - -middleName + - -lastName + - -suffix + - -modified + - name: limit + in: query + description: Limit the result set to the specified number of resources. + required: false + schema: + type: integer + minimum: 1 + maximum: 100 + - name: offset + in: query + description: Skip the specified number of resources in the result set. + required: false + schema: + type: integer responses: "200": - description: No response was specified + description: OK response content: application/json: schema: $ref: '#/components/schemas/CreatorDataWrapper' + "401": + description: Unauthorized response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "403": + description: Forbidden response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "404": + description: Not Found response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "405": + description: Method Not Allowed response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' "409": description: Conflict response content: application/json: schema: - $ref: '#/components/schemas/ErrorResponse' + $ref: '#/components/schemas/StandardError' + "429": + description: Too Many Requests response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' /v1/public/creators/{creatorId}: get: tags: - - creators + - 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 + - name: creatorId + in: path + description: A creator id. + required: true + schema: + type: integer responses: "200": - description: No response was specified + description: OK response content: application/json: schema: $ref: '#/components/schemas/CreatorDataWrapper' + "401": + description: Unauthorized response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "403": + description: Forbidden response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' "404": description: Not found response content: application/json: schema: - $ref: '#/components/schemas/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 + $ref: '#/components/schemas/StandardError' + "405": + description: Method Not Allowed response content: application/json: schema: - $ref: '#/components/schemas/ComicDataWrapper' + $ref: '#/components/schemas/StandardError' "409": description: Conflict response content: application/json: schema: - $ref: '#/components/schemas/ErrorResponse' + $ref: '#/components/schemas/StandardError' + "429": + description: Too Many Requests response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + /v1/public/creators/{creatorId}/comics: + get: + tags: + - comics + summary: Fetches lists of comics filtered by a creator id. + description: Fetches lists of comics in which the work of a specific creator appears, with optional filters. + operationId: getComicsByCreatorId + parameters: + - name: creatorId + in: path + description: A creator id. + required: true + schema: + type: integer + - name: format + in: query + description: Filter by the issue format. + required: false + schema: + type: string + enum: + - comic + - magazine + - trade paperback + - hardcover + - digest + - graphic novel + - digital comic + - infinite comic + - name: formatType + in: query + description: Filter by the issue format type. + required: false + schema: + type: string + enum: + - comic + - collection + - name: noVariants + in: query + description: Exclude variant comics from the result set. + required: false + schema: + type: boolean + - name: dateDescriptor + in: query + description: Return comics within a predefined date range. + required: false + schema: + type: string + enum: + - thisWeek + - lastWeek + - nextWeek + - thisMonth + - name: dateRange + in: query + description: Return comics within a predefined date range. Dates must be specified as date1,date2. Dates are preferably formatted as YYYY-MM-DD but may be sent as any common date format. + example: 2013-01-01,2013-01-02 + required: false + style: form + explode: false + schema: + type: array + items: + type: string + - name: title + in: query + description: Return only issues in series whose title matches the input. + required: false + schema: + type: string + - name: titleStartsWith + in: query + description: Return only issues in series whose title starts with the input. + required: false + schema: + type: string + - name: startYear + in: query + description: Return only issues in series whose start year matches the input. + required: false + schema: + type: integer + - name: issueNumber + in: query + description: Return only issues in series whose issue number matches the input. + required: false + schema: + type: integer + - name: diamondCode + in: query + description: Filter by diamond code. + required: false + schema: + type: string + - name: digitalId + in: query + description: Filter by digital comic id. + required: false + schema: + type: integer + - name: upc + in: query + description: Filter by UPC. + required: false + schema: + type: string + - name: isbn + in: query + description: Filter by ISBN. + required: false + schema: + type: string + - name: ean + in: query + description: Filter by EAN. + required: false + schema: + type: string + - name: issn + in: query + description: Filter by ISSN. + required: false + schema: + type: string + - name: hasDigitalIssue + in: query + description: Include only results which are available digitally. + required: false + style: form + explode: false + schema: + type: array + items: + type: boolean + - name: modifiedSince + in: query + description: Return only comics which have been modified since the specified date. + required: false + schema: + type: string + format: date + - name: characters + in: query + description: Return only comics which feature the specified characters (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: series + in: query + description: Return only comics which are part of the specified series (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: events + in: query + description: Return only comics which take place in the specified events (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: stories + in: query + description: Return only comics which contain the specified stories (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: sharedAppearances + in: query + description: Return only comics in which the specified characters appear together (for example in which BOTH Spider-Man and Wolverine appear). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: collaborators + in: query + description: Return only comics in which the specified creators worked together (for example in which BOTH Stan Lee and Jack Kirby did work). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: orderBy + in: query + description: Order the result set by a field or fields. Add a "-" to the value sort in descending order. Multiple values are given priority in the order in which they are passed. + required: false + style: form + explode: false + schema: + type: array + items: + type: string + enum: + - title + - issueNumber + - modified + - onSaleDate + - focDate + - -title + - -issueNumber + - -modified + - -onSaleDate + - -focDate + - name: limit + in: query + description: Limit the result set to the specified number of resources. + required: false + schema: + type: integer + minimum: 1 + maximum: 100 + - name: offset + in: query + description: Skip the specified number of resources in the result set. + required: false + schema: + type: integer + responses: + "200": + description: OK response + content: + application/json: + schema: + $ref: '#/components/schemas/ComicDataWrapper' + "401": + description: Unauthorized response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "403": + description: Forbidden response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "404": + description: Not Found response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "405": + description: Method Not Allowed response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "409": + description: Conflict response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "429": + description: Too Many Requests response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' /v1/public/creators/{creatorId}/events: get: tags: - - events + - 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: + - name: creatorId + in: path + description: A creator id. + required: true + schema: 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: + - name: name + in: query + description: Filter the event list by name. + required: false + schema: 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 + - name: nameStartsWith + in: query + description: Return events with names that begin with the specified string. + example: Sp + required: false + schema: + type: string + - name: modifiedSince + in: query + description: Return only events which have been modified since the specified date. + required: false + schema: + type: string + format: date + - name: characters + in: query + description: Return only events which feature the specified characters (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: series + in: query + description: Return only events which are part of the specified series (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: comics + in: query + description: Return only events which take place in the specified comics (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: stories + in: query + description: Return only events which contain the specified stories (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: orderBy + in: query + description: Order the result set by a field or fields. Add a "-" to the value sort in descending order. Multiple values are given priority in the order in which they are passed. + required: false + style: form + explode: false + schema: + type: array + items: + type: string + enum: + - name + - modified + - startDate + - -name + - -modified + - -startDate + - name: limit + in: query + description: Limit the result set to the specified number of resources. + required: false + schema: + type: integer + minimum: 1 + maximum: 100 + - name: offset + in: query + description: Skip the specified number of resources in the result set. + required: false + schema: + type: integer responses: "200": - description: No response was specified + description: OK response content: application/json: schema: $ref: '#/components/schemas/EventDataWrapper' + "401": + description: Unauthorized response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "403": + description: Forbidden response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "404": + description: Not Found response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "405": + description: Method Not Allowed response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' "409": description: Conflict response content: application/json: schema: - $ref: '#/components/schemas/ErrorResponse' + $ref: '#/components/schemas/StandardError' + "429": + description: Too Many Requests response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' /v1/public/creators/{creatorId}/series: get: tags: - - series + - 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." + 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: + - name: creatorId + in: path + description: A creator id. + required: true + schema: 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: + - name: title + in: query + description: Filter by series title. + required: false + schema: 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: + - name: titleStartsWith + in: query + description: Return series with titles that begin with the specified string. + example: Sp + required: false + schema: 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 + - name: startYear + in: query + description: Return only series matching the specified start year. + required: false + schema: + type: integer + - name: modifiedSince + in: query + description: Return only series which have been modified since the specified date. + required: false + schema: + type: string + format: date + - name: comics + in: query + description: Return only series which contain the specified comics (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: stories + in: query + description: Return only series which contain the specified stories (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: events + in: query + description: Return only series which have comics that take place during the specified events (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: characters + in: query + description: Return only series which feature the specified characters (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: seriesType + in: query + description: Filter the series by publication frequency type. + required: false + schema: + type: string + enum: + - collection + - one shot + - limited + - ongoing + - name: contains + in: query + description: Return only series containing one or more comics with the specified format. + required: false + style: form + explode: false + schema: + type: array + items: + type: string + enum: + - comic + - magazine + - trade paperback + - hardcover + - digest + - graphic novel + - digital comic + - infinite comic + - name: orderBy + in: query + description: Order the result set by a field or fields. Add a "-" to the value sort in descending order. Multiple values are given priority in the order in which they are passed. + required: false + style: form + explode: false + schema: + type: array + items: + type: string + enum: + - title + - startYear + - modified + - -title + - -startYear + - -modified + - name: limit + in: query + description: Limit the result set to the specified number of resources. + required: false + schema: + type: integer + minimum: 1 + maximum: 100 + - name: offset + in: query + description: Skip the specified number of resources in the result set. + required: false + schema: + type: integer responses: "200": - description: No response was specified + description: OK response content: application/json: schema: $ref: '#/components/schemas/SeriesDataWrapper' + "401": + description: Unauthorized response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "403": + description: Forbidden response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "404": + description: Not Found response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "405": + description: Method Not Allowed response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' "409": description: Conflict response content: application/json: schema: - $ref: '#/components/schemas/ErrorResponse' + $ref: '#/components/schemas/StandardError' + "429": + description: Too Many Requests response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' /v1/public/creators/{creatorId}/stories: get: tags: - - stories + - 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: + - name: creatorId + in: path + description: A creator id. + required: true + schema: 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: + - name: modifiedSince + in: query + description: Return only stories which have been modified since the specified date. + required: false + schema: 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 + format: date + - name: comics + in: query + description: Return only stories contained in the specified comics (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: series + in: query + description: Return only stories contained the specified series (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: events + in: query + description: Return only stories which take place during the specified events (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: characters + in: query + description: Return only stories which feature the specified characters (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: orderBy + in: query + description: Order the result set by a field or fields. Add a "-" to the value sort in descending order. Multiple values are given priority in the order in which they are passed. + required: false + style: form + explode: false + schema: + type: array + items: + type: string + enum: + - id + - modified + - -id + - -modified + - name: limit + in: query + description: Limit the result set to the specified number of resources. + required: false + schema: + type: integer + minimum: 1 + maximum: 100 + - name: offset + in: query + description: Skip the specified number of resources in the result set. + required: false + schema: + type: integer responses: "200": - description: No response was specified + description: OK response content: application/json: schema: $ref: '#/components/schemas/StoryDataWrapper' + "401": + description: Unauthorized response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "403": + description: Forbidden response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "404": + description: Not Found response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "405": + description: Method Not Allowed response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' "409": description: Conflict response content: application/json: schema: - $ref: '#/components/schemas/ErrorResponse' + $ref: '#/components/schemas/StandardError' + "429": + description: Too Many Requests response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' /v1/public/events: get: tags: - - events + - 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: + - name: name + in: query + description: Return only events which match the specified name. + required: false + schema: 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 + - name: nameStartsWith + in: query + description: Return events with names that begin with the specified string. + example: Sp + required: false + schema: + type: string + - name: modifiedSince + in: query + description: Return only events which have been modified since the specified date. + required: false + schema: + type: string + format: date + - name: creators + in: query + description: Return only events which feature work by the specified creators (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: characters + in: query + description: Return only events which feature the specified characters (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: series + in: query + description: Return only events which are part of the specified series (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: comics + in: query + description: Return only events which take place in the specified comics (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: stories + in: query + description: Return only events which take place in the specified stories (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: orderBy + in: query + description: Order the result set by a field or fields. Add a "-" to the value sort in descending order. Multiple values are given priority in the order in which they are passed. + required: false + style: form + explode: false + schema: + type: array + items: + type: string + enum: + - name + - modified + - startDate + - -name + - -modified + - -startDate + - name: limit + in: query + description: Limit the result set to the specified number of resources. + required: false + schema: + type: integer + minimum: 1 + maximum: 100 + - name: offset + in: query + description: Skip the specified number of resources in the result set. + required: false + schema: + type: integer responses: "200": - description: No response was specified + description: OK response content: application/json: schema: $ref: '#/components/schemas/EventDataWrapper' + "401": + description: Unauthorized response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "403": + description: Forbidden response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "404": + description: Not Found response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "405": + description: Method Not Allowed response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' "409": description: Conflict response content: application/json: schema: - $ref: '#/components/schemas/ErrorResponse' + $ref: '#/components/schemas/StandardError' + "429": + description: Too Many Requests response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' /v1/public/events/{eventId}: get: tags: - - events + - 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 + - name: eventId + in: path + description: An event id. + required: true + schema: + type: integer responses: "200": - description: No response was specified + description: OK response content: application/json: schema: $ref: '#/components/schemas/EventDataWrapper' + "401": + description: Unauthorized response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "403": + description: Forbidden response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' "404": description: Not found response content: application/json: schema: - $ref: '#/components/schemas/ErrorResponse' + $ref: '#/components/schemas/StandardError' + "405": + description: Method Not Allowed response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "409": + description: Conflict response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "429": + description: Too Many Requests response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' /v1/public/events/{eventId}/characters: get: tags: - - characters + - 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." + 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: + - name: eventId + in: path + description: An event id. + required: true + schema: 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: + - name: name + in: query + description: Return only characters matching the specified full character name. + example: Spider-Man. + required: false + schema: 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 + - name: nameStartsWith + in: query + description: Return characters with names that begin with the specified string. + example: Sp + required: false + schema: + type: string + - name: modifiedSince + in: query + description: Return only characters which have been modified since the specified date. + required: false + schema: + type: string + format: date + - name: comics + in: query + description: Return only characters which appear in the specified comics (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: series + in: query + description: Return only characters which appear the specified series (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: stories + in: query + description: Return only characters which appear the specified stories (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: orderBy + in: query + description: Order the result set by a field or fields. Add a "-" to the value sort in descending order. Multiple values are given priority in the order in which they are passed. + required: false + style: form + explode: false + schema: + type: array + items: + type: string + enum: + - name + - modified + - -name + - -modified + - name: limit + in: query + description: Limit the result set to the specified number of resources. + required: false + schema: + type: integer + minimum: 1 + maximum: 100 + - name: offset + in: query + description: Skip the specified number of resources in the result set. + required: false + schema: + type: integer responses: "200": - description: No response was specified + description: OK response content: application/json: schema: $ref: '#/components/schemas/CharacterDataWrapper' + "401": + description: Unauthorized response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "403": + description: Forbidden response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "404": + description: Not Found response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "405": + description: Method Not Allowed response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' "409": description: Conflict response content: application/json: schema: - $ref: '#/components/schemas/ErrorResponse' + $ref: '#/components/schemas/StandardError' + "429": + description: Too Many Requests response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' /v1/public/events/{eventId}/comics: get: tags: - - comics + - 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." + 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: + - name: eventId + in: path + description: An event id. + required: true + schema: + type: integer + - name: format + in: query + description: Filter by the issue format. + required: false + schema: type: string - - 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: + enum: + - comic + - magazine + - trade paperback + - hardcover + - digest + - graphic novel + - digital comic + - infinite comic + - name: formatType + in: query + description: Filter by the issue format type. + required: false + schema: type: string - - 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 + enum: + - comic + - collection + - name: noVariants + in: query + description: Exclude variant comics from the result set. + required: false + style: form + explode: false + schema: + type: array + items: + type: boolean + - name: dateDescriptor + in: query + description: Return comics within a predefined date range. + required: false + style: form + explode: false + schema: + type: array + items: + type: string + enum: + - lastWeek + - thisWeek + - nextWeek + - thisMonth + - name: dateRange + in: query + description: Return comics within a predefined date range. Dates must be specified as date1,date2. Dates are preferably formatted as YYYY-MM-DD but may be sent as any common date format. + example: 2013-01-01,2013-01-02 + required: false + style: form + explode: false + schema: + type: array + items: + type: string + - name: title + in: query + description: Return only issues in series whose title matches the input. + required: false + schema: + type: string + - name: titleStartsWith + in: query + description: Return only issues in series whose title starts with the input. + required: false + schema: + type: string + - name: startYear + in: query + description: Return only issues in series whose start year matches the input. + required: false + schema: + type: integer + - name: issueNumber + in: query + description: Return only issues in series whose issue number matches the input. + required: false + schema: + type: integer + - name: diamondCode + in: query + description: Filter by diamond code. + required: false + schema: + type: string + - name: digitalId + in: query + description: Filter by digital comic id. + required: false + schema: + type: integer + - name: upc + in: query + description: Filter by UPC. + required: false + schema: + type: string + - name: isbn + in: query + description: Filter by ISBN. + required: false + schema: + type: string + - name: ean + in: query + description: Filter by EAN. + required: false + schema: + type: string + - name: issn + in: query + description: Filter by ISSN. + required: false + schema: + type: string + - name: hasDigitalIssue + in: query + description: Include only results which are available digitally. + required: false + style: form + explode: false + schema: + type: array + items: + type: boolean + - name: modifiedSince + in: query + description: Return only comics which have been modified since the specified date. + required: false + schema: + type: string + format: date + - name: creators + in: query + description: Return only comics which feature work by the specified creators (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: characters + in: query + description: Return only comics which feature the specified characters (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: series + in: query + description: Return only comics which are part of the specified series (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: events + in: query + description: Return only comics which take place in the specified events (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: stories + in: query + description: Return only comics which contain the specified stories (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: sharedAppearances + in: query + description: Return only comics in which the specified characters appear together (for example in which BOTH Spider-Man and Wolverine appear). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: collaborators + in: query + description: Return only comics in which the specified creators worked together (for example in which BOTH Stan Lee and Jack Kirby did work). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: orderBy + in: query + description: Order the result set by a field or fields. Add a "-" to the value sort in descending order. Multiple values are given priority in the order in which they are passed. + required: false + style: form + explode: false + schema: + type: array + items: + type: string + enum: + - focDate + - onSaleDate + - title + - issueNumber + - modified + - -focDate + - -onSaleDate + - -title + - -issueNumber + - -modified + - name: limit + in: query + description: Limit the result set to the specified number of resources. + required: false + schema: + type: integer + minimum: 1 + maximum: 100 + - name: offset + in: query + description: Skip the specified number of resources in the result set. + required: false + schema: + type: integer responses: "200": - description: No response was specified + description: OK response content: application/json: schema: $ref: '#/components/schemas/ComicDataWrapper' + "401": + description: Unauthorized response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "403": + description: Forbidden response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "404": + description: Not Found response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "405": + description: Method Not Allowed response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' "409": description: Conflict response content: application/json: schema: - $ref: '#/components/schemas/ErrorResponse' + $ref: '#/components/schemas/StandardError' + "429": + description: Too Many Requests response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' /v1/public/events/{eventId}/creators: get: tags: - - creators + - 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." + 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: + - name: eventId + in: path + description: An event id. + required: true + schema: 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: + - name: firstName + in: query + description: Filter by creator first name. + example: Brian + required: false + schema: 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 + - name: middleName + in: query + description: Filter by creator middle name. + example: Michael + required: false + schema: + type: string + - name: lastName + in: query + description: Filter by creator last name. + example: Bendis + required: false + schema: + type: string + - name: suffix + in: query + description: Filter by suffix or honorific. + example: Sr. + required: false + schema: + type: string + - name: nameStartsWith + in: query + description: Filter by creator names that match criteria. + example: B + required: false + schema: + type: string + - name: firstNameStartsWith + in: query + description: Filter by creator first names that match criteria. + example: B + required: false + schema: + type: string + - name: middleNameStartsWith + in: query + description: Filter by creator middle names that match criteria. + example: Mi + required: false + schema: + type: string + - name: lastNameStartsWith + in: query + description: Filter by creator last names that match criteria. + required: false + schema: + type: string + - name: modifiedSince + in: query + description: Return only creators which have been modified since the specified date. + required: false + schema: + type: string + format: date + - name: comics + in: query + description: Return only creators who worked on in the specified comics (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: series + in: query + description: Return only creators who worked on the specified series (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: stories + in: query + description: Return only creators who worked on the specified stories (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: orderBy + in: query + description: Order the result set by a field or fields. Add a "-" to the value sort in descending order. Multiple values are given priority in the order in which they are passed. + required: false + style: form + explode: false + schema: + type: array + items: + type: string + enum: + - lastName + - firstName + - middleName + - suffix + - modified + - -lastName + - -firstName + - -middleName + - -suffix + - -modified + - name: limit + in: query + description: Limit the result set to the specified number of resources. + required: false + schema: + type: integer + minimum: 1 + maximum: 100 + - name: offset + in: query + description: Skip the specified number of resources in the result set. + required: false + schema: + type: integer responses: "200": - description: No response was specified + description: OK response content: application/json: schema: $ref: '#/components/schemas/CreatorDataWrapper' + "401": + description: Unauthorized response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "403": + description: Forbidden response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "404": + description: Not Found response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "405": + description: Method Not Allowed response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' "409": description: Conflict response content: application/json: schema: - $ref: '#/components/schemas/ErrorResponse' + $ref: '#/components/schemas/StandardError' + "429": + description: Too Many Requests response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' /v1/public/events/{eventId}/series: get: tags: - - series + - 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: + - name: eventId + in: path + description: An event id. + required: true + schema: 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: + - name: title + in: query + description: Filter by series title. + required: false + schema: 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: + - name: titleStartsWith + in: query + description: Return series with titles that begin with the specified string. + example: Sp + required: false + schema: 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 + - name: startYear + in: query + description: Return only series matching the specified start year. + required: false + schema: + type: integer + - name: modifiedSince + in: query + description: Return only series which have been modified since the specified date. + required: false + schema: + type: string + format: date + - name: comics + in: query + description: Return only series which contain the specified comics (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: stories + in: query + description: Return only series which contain the specified stories (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: creators + in: query + description: Return only series which feature work by the specified creators (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: characters + in: query + description: Return only series which feature the specified characters (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: seriesType + in: query + description: Filter the series by publication frequency type. + required: false + schema: + type: string + enum: + - collection + - one shot + - limited + - ongoing + - name: contains + in: query + description: Return only series containing one or more comics with the specified format. + required: false + style: form + explode: false + schema: + type: array + items: + type: string + enum: + - comic + - magazine + - trade paperback + - hardcover + - digest + - graphic novel + - digital comic + - infinite comic + - name: orderBy + in: query + description: Order the result set by a field or fields. Add a "-" to the value sort in descending order. Multiple values are given priority in the order in which they are passed. + required: false + style: form + explode: false + schema: + type: array + items: + type: string + enum: + - title + - modified + - startYear + - -title + - -modified + - -startYear + - name: limit + in: query + description: Limit the result set to the specified number of resources. + required: false + schema: + type: integer + minimum: 1 + maximum: 100 + - name: offset + in: query + description: Skip the specified number of resources in the result set. + required: false + schema: + type: integer responses: "200": - description: No response was specified + description: OK response content: application/json: schema: $ref: '#/components/schemas/SeriesDataWrapper' + "401": + description: Unauthorized response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "403": + description: Forbidden response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "404": + description: Not Found response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "405": + description: Method Not Allowed response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' "409": description: Conflict response content: application/json: schema: - $ref: '#/components/schemas/ErrorResponse' + $ref: '#/components/schemas/StandardError' + "429": + description: Too Many Requests response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' /v1/public/events/{eventId}/stories: get: tags: - - stories + - stories summary: Fetches lists of stories filtered by an event id. - description: "Fetches lists of comic stories from a specific event, with optional filters." + 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: + - name: eventId + in: path + description: An event id. + required: true + schema: 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: + - name: modifiedSince + in: query + description: Return only stories which have been modified since the specified date. + required: false + schema: 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 + format: date + - name: comics + in: query + description: Return only stories contained in the specified (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: series + in: query + description: Return only stories contained the specified series (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: creators + in: query + description: Return only stories which feature work by the specified creators (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: characters + in: query + description: Return only stories which feature the specified characters (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: orderBy + in: query + description: Order the result set by a field or fields. Add a "-" to the value sort in descending order. Multiple values are given priority in the order in which they are passed. + required: false + style: form + explode: false + schema: + type: array + items: + type: string + enum: + - id + - modified + - -id + - -modified + - name: limit + in: query + description: Limit the result set to the specified number of resources. + required: false + schema: + type: integer + minimum: 1 + maximum: 100 + - name: offset + in: query + description: Skip the specified number of resources in the result set. + required: false + schema: + type: integer responses: "200": - description: No response was specified + description: OK response content: application/json: schema: $ref: '#/components/schemas/StoryDataWrapper' + "401": + description: Unauthorized response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "403": + description: Forbidden response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "404": + description: Not Found response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "405": + description: Method Not Allowed response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' "409": description: Conflict response content: application/json: schema: - $ref: '#/components/schemas/ErrorResponse' + $ref: '#/components/schemas/StandardError' + "429": + description: Too Many Requests response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' /v1/public/series: get: tags: - - series + - 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: + - name: title + in: query + description: Return only series matching the specified title. + required: false + schema: 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: + - name: titleStartsWith + in: query + description: Return series with titles that begin with the specified string. + example: Sp + required: false + schema: 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 + - name: startYear + in: query + description: Return only series matching the specified start year. + required: false + schema: + type: integer + - name: modifiedSince + in: query + description: Return only series which have been modified since the specified date. + required: false + schema: + type: string + format: date + - name: comics + in: query + description: Return only series which contain the specified comics (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: stories + in: query + description: Return only series which contain the specified stories (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: events + in: query + description: Return only series which have comics that take place during the specified events (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: creators + in: query + description: Return only series which feature work by the specified creators (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: characters + in: query + description: Return only series which feature the specified characters (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: seriesType + in: query + description: Filter the series by publication frequency type. + required: false + schema: + type: string + enum: + - collection + - one shot + - limited + - ongoing + - name: contains + in: query + description: Return only series containing one or more comics with the specified format. + required: false + style: form + explode: false + schema: + type: array + items: + type: string + enum: + - comic + - magazine + - trade paperback + - hardcover + - digest + - graphic novel + - digital comic + - infinite comic + - name: orderBy + in: query + description: Order the result set by a field or fields. Add a "-" to the value sort in descending order. Multiple values are given priority in the order in which they are passed. + required: false + style: form + explode: false + schema: + type: array + items: + type: string + enum: + - title + - modified + - startYear + - -title + - -modified + - -startYear + - name: limit + in: query + description: Limit the result set to the specified number of resources. + required: false + schema: + type: integer + minimum: 1 + maximum: 100 + - name: offset + in: query + description: Skip the specified number of resources in the result set. + required: false + schema: + type: integer responses: "200": - description: No response was specified + description: OK response content: application/json: schema: $ref: '#/components/schemas/SeriesDataWrapper' + "401": + description: Unauthorized response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "403": + description: Forbidden response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "404": + description: Not Found response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "405": + description: Method Not Allowed response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' "409": description: Conflict response content: application/json: schema: - $ref: '#/components/schemas/ErrorResponse' + $ref: '#/components/schemas/StandardError' + "429": + description: Too Many Requests response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' /v1/public/series/{seriesId}: get: tags: - - series + - 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 + - name: seriesId + in: path + description: A series id. + required: true + schema: + type: integer responses: "200": - description: No response was specified + description: OK response content: application/json: schema: $ref: '#/components/schemas/SeriesDataWrapper' + "401": + description: Unauthorized response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "403": + description: Forbidden response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' "404": - description: Not found response + 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 + $ref: '#/components/schemas/StandardError' + "405": + description: Method Not Allowed response content: application/json: schema: - $ref: '#/components/schemas/CharacterDataWrapper' + $ref: '#/components/schemas/StandardError' "409": description: Conflict response content: application/json: schema: - $ref: '#/components/schemas/ErrorResponse' + $ref: '#/components/schemas/StandardError' + "429": + description: Too Many Requests response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + /v1/public/series/{seriesId}/characters: + get: + tags: + - characters + summary: Fetches lists of characters filtered by a series id. + description: Fetches lists of characters which appear in specific series, with optional filters. + operationId: getCharactersBySeriesId + parameters: + - name: seriesId + in: path + description: A series id. + required: true + schema: + type: integer + - name: name + in: query + description: Return only characters matching the specified full character name. + example: Spider-Man + required: false + schema: + type: string + - name: nameStartsWith + in: query + description: Return characters with names that begin with the specified string. + example: Sp + required: false + schema: + type: string + - name: modifiedSince + in: query + description: Return only characters which have been modified since the specified date. + required: false + schema: + type: string + format: date + - name: comics + in: query + description: Return only characters which appear in the specified comics (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: events + in: query + description: Return only characters which appear comics that took place in the specified events (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: stories + in: query + description: Return only characters which appear the specified stories (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: orderBy + in: query + description: Order the result set by a field or fields. Add a "-" to the value sort in descending order. Multiple values are given priority in the order in which they are passed. + required: false + style: form + explode: false + schema: + type: array + items: + type: string + enum: + - name + - modified + - -name + - -modified + - name: limit + in: query + description: Limit the result set to the specified number of resources. + required: false + schema: + type: integer + minimum: 1 + maximum: 100 + - name: offset + in: query + description: Skip the specified number of resources in the result set. + required: false + schema: + type: integer + responses: + "200": + description: OK response + content: + application/json: + schema: + $ref: '#/components/schemas/CharacterDataWrapper' + "401": + description: Unauthorized response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "403": + description: Forbidden response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "404": + description: Not Found response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "405": + description: Method Not Allowed response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "409": + description: Conflict response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "429": + description: Too Many Requests response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' /v1/public/series/{seriesId}/comics: get: tags: - - comics + - 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: + - name: seriesId + in: path + description: A series id. + required: true + schema: + type: integer + - name: format + in: query + description: Filter by the issue format. + required: false + schema: type: string - - 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: + enum: + - comic + - magazine + - trade paperback + - hardcover + - digest + - graphic novel + - digital comic + - infinite comic + - name: formatType + in: query + description: Filter by the issue format type. + required: false + schema: type: string - - 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 + enum: + - comic + - collection + - name: noVariants + in: query + description: Exclude variant comics from the result set. + required: false + style: form + explode: false + schema: + type: array + items: + type: boolean + - name: dateDescriptor + in: query + description: Return comics within a predefined date range. + required: false + style: form + explode: false + schema: + type: array + items: + type: string + enum: + - lastWeek + - thisWeek + - nextWeek + - thisMonth + - name: dateRange + in: query + description: Return comics within a predefined date range. Dates must be specified as date1,date2. Dates are preferably formatted as YYYY-MM-DD but may be sent as any common date format. + example: 2013-01-01,2013-01-02 + required: false + style: form + explode: false + schema: + type: array + items: + type: string + - name: title + in: query + description: Return only issues in series whose title matches the input. + required: false + schema: + type: string + - name: titleStartsWith + in: query + description: Return only issues in series whose title starts with the input. + required: false + schema: + type: string + - name: startYear + in: query + description: Return only issues in series whose start year matches the input. + required: false + schema: + type: integer + - name: issueNumber + in: query + description: Return only issues in series whose issue number matches the input. + required: false + schema: + type: integer + - name: diamondCode + in: query + description: Filter by diamond code. + required: false + schema: + type: string + - name: digitalId + in: query + description: Filter by digital comic id. + required: false + schema: + type: integer + - name: upc + in: query + description: Filter by UPC. + required: false + schema: + type: string + - name: isbn + in: query + description: Filter by ISBN. + required: false + schema: + type: string + - name: ean + in: query + description: Filter by EAN. + required: false + schema: + type: string + - name: issn + in: query + description: Filter by ISSN. + required: false + schema: + type: string + - name: hasDigitalIssue + in: query + description: Include only results which are available digitally. + required: false + style: form + explode: false + schema: + type: array + items: + type: boolean + - name: modifiedSince + in: query + description: Return only comics which have been modified since the specified date. + required: false + schema: + type: string + format: date + - name: creators + in: query + description: Return only comics which feature work by the specified creators (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: characters + in: query + description: Return only comics which feature the specified characters (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: events + in: query + description: Return only comics which take place in the specified events (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: stories + in: query + description: Return only comics which contain the specified stories (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: sharedAppearances + in: query + description: Return only comics in which the specified characters appear together (for example in which BOTH Spider-Man and Wolverine appear). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: collaborators + in: query + description: Return only comics in which the specified creators worked together (for example in which BOTH Stan Lee and Jack Kirby did work). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: orderBy + in: query + description: Order the result set by a field or fields. Add a "-" to the value sort in descending order. Multiple values are given priority in the order in which they are passed. + required: false + style: form + explode: false + schema: + type: array + items: + type: string + enum: + - focDate + - onsaleDate + - title + - issueNumber + - modified + - -focDate + - -onsaleDate + - -title + - -issueNumber + - -modified + - name: limit + in: query + description: Limit the result set to the specified number of resources. + required: false + schema: + type: integer + minimum: 1 + maximum: 100 + - name: offset + in: query + description: Skip the specified number of resources in the result set. + required: false + schema: + type: integer responses: "200": - description: No response was specified + description: OK response content: application/json: schema: $ref: '#/components/schemas/ComicDataWrapper' + "401": + description: Unauthorized response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "403": + description: Forbidden response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "404": + description: Not Found response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "405": + description: Method Not Allowed response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' "409": description: Conflict response content: application/json: schema: - $ref: '#/components/schemas/ErrorResponse' + $ref: '#/components/schemas/StandardError' + "429": + description: Too Many Requests response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' /v1/public/series/{seriesId}/creators: get: tags: - - creators + - 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." + 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: + - name: seriesId + in: path + description: A series id. + required: true + schema: 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: + - name: firstName + in: query + description: Filter by creator first name. + example: Brian + required: false + schema: 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 + - name: middleName + in: query + description: Filter by creator middle name. + example: Michael + required: false + schema: + type: string + - name: lastName + in: query + description: Filter by creator last name. + example: Bendis + required: false + schema: + type: string + - name: suffix + in: query + description: Filter by suffix or honorific. + example: Sr. + required: false + schema: + type: string + - name: nameStartsWith + in: query + description: Filter by creator names that match criteria. + example: B + required: false + schema: + type: string + - name: firstNameStartsWith + in: query + description: Filter by creator first names that match criteria. + example: B + required: false + schema: + type: string + - name: middleNameStartsWith + in: query + description: Filter by creator middle names that match criteria. + example: Mi + required: false + schema: + type: string + - name: lastNameStartsWith + in: query + description: Filter by creator last names that match criteria. + example: Ben + required: false + schema: + type: string + - name: modifiedSince + in: query + description: Return only creators which have been modified since the specified date. + required: false + schema: + type: string + format: date + - name: comics + in: query + description: Return only creators who worked on in the specified comics (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: events + in: query + description: Return only creators who worked on comics that took place in the specified events (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: stories + in: query + description: Return only creators who worked on the specified stories (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: orderBy + in: query + description: Order the result set by a field or fields. Add a "-" to the value sort in descending order. Multiple values are given priority in the order in which they are passed. + required: false + style: form + explode: false + schema: + type: array + items: + type: string + enum: + - lastName + - firstName + - middleName + - suffix + - modified + - -lastName + - -firstName + - -middleName + - -suffix + - -modified + - name: limit + in: query + description: Limit the result set to the specified number of resources. + required: false + schema: + type: integer + minimum: 1 + maximum: 100 + - name: offset + in: query + description: Skip the specified number of resources in the result set. + required: false + schema: + type: integer responses: "200": - description: No response was specified + description: OK response content: application/json: schema: $ref: '#/components/schemas/CreatorDataWrapper' + "401": + description: Unauthorized response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "403": + description: Forbidden response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "404": + description: Not Found response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "405": + description: Method Not Allowed response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' "409": description: Conflict response content: application/json: schema: - $ref: '#/components/schemas/ErrorResponse' + $ref: '#/components/schemas/StandardError' + "429": + description: Too Many Requests response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' /v1/public/series/{seriesId}/events: get: tags: - - events + - 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: + - name: seriesId + in: path + description: A series id. + required: true + schema: 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: + - name: name + in: query + description: Filter the event list by name. + required: false + schema: 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 + - name: nameStartsWith + in: query + description: Return events with names that begin with the specified string. + example: Sp + required: false + schema: + type: string + - name: modifiedSince + in: query + description: Return only events which have been modified since the specified date. + required: false + schema: + type: string + format: date + - name: creators + in: query + description: Return only events which feature work by the specified creators (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: characters + in: query + description: Return only events which feature the specified characters (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: comics + in: query + description: Return only events which take place in the specified comics (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: stories + in: query + description: Return only events which contain the specified stories (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: orderBy + in: query + description: Order the result set by a field or fields. Add a "-" to the value sort in descending order. Multiple values are given priority in the order in which they are passed. + required: false + style: form + explode: false + schema: + type: array + items: + type: string + enum: + - name + - startDate + - modified + - -name + - -startDate + - -modified + - name: limit + in: query + description: Limit the result set to the specified number of resources. + required: false + schema: + type: integer + minimum: 1 + maximum: 100 + - name: offset + in: query + description: Skip the specified number of resources in the result set. + required: false + schema: + type: integer responses: "200": - description: No response was specified + description: OK response content: application/json: schema: @@ -3895,1292 +5030,1481 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/ErrorResponse' + $ref: '#/components/schemas/StandardError' /v1/public/series/{seriesId}/stories: get: tags: - - stories + - 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: + - name: seriesId + in: path + description: A series id. + required: true + schema: 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: + - name: modifiedSince + in: query + description: Return only stories which have been modified since the specified date. + required: false + schema: 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 + format: date + - name: comics + in: query + description: Return only stories contained in the specified (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: events + in: query + description: Return only stories which take place during the specified events (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: creators + in: query + description: Return only stories which feature work by the specified creators (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: characters + in: query + description: Return only stories which feature the specified characters (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: orderBy + in: query + description: Order the result set by a field or fields. Add a "-" to the value sort in descending order. Multiple values are given priority in the order in which they are passed. + required: false + style: form + explode: false + schema: + type: array + items: + type: string + enum: + - id + - modified + - -id + - -modified + - name: limit + in: query + description: Limit the result set to the specified number of resources. + required: false + schema: + type: integer + minimum: 1 + maximum: 100 + - name: offset + in: query + description: Skip the specified number of resources in the result set. + required: false + schema: + type: integer responses: "200": - description: No response was specified + description: OK response content: application/json: schema: $ref: '#/components/schemas/StoryDataWrapper' + "401": + description: Unauthorized response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "403": + description: Forbidden response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "404": + description: Not Found response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "405": + description: Method Not Allowed response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' "409": description: Conflict response content: application/json: schema: - $ref: '#/components/schemas/ErrorResponse' + $ref: '#/components/schemas/StandardError' + "429": + description: Too Many Requests response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' /v1/public/stories: get: tags: - - stories + - 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: + - name: modifiedSince + in: query + description: Return only stories which have been modified since the specified date. + required: false + schema: 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 + format: date + - name: comics + in: query + description: Return only stories contained in the specified (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: series + in: query + description: Return only stories contained the specified series (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: events + in: query + description: Return only stories which take place during the specified events (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: creators + in: query + description: Return only stories which feature work by the specified creators (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: characters + in: query + description: Return only stories which feature the specified characters (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: orderBy + in: query + description: Order the result set by a field or fields. Add a "-" to the value sort in descending order. Multiple values are given priority in the order in which they are passed. + required: false + style: form + explode: false + schema: + type: array + items: + type: string + enum: + - id + - modified + - -id + - -modified + - name: limit + in: query + description: Limit the result set to the specified number of resources. + required: false + schema: + type: integer + minimum: 1 + maximum: 100 + - name: offset + in: query + description: Skip the specified number of resources in the result set. + required: false + schema: + type: integer responses: "200": - description: No response was specified + description: OK response content: application/json: schema: $ref: '#/components/schemas/StoryDataWrapper' + "401": + description: Unauthorized response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "403": + description: Forbidden response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "404": + description: Not Found response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "405": + description: Method Not Allowed response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' "409": description: Conflict response content: application/json: schema: - $ref: '#/components/schemas/ErrorResponse' + $ref: '#/components/schemas/StandardError' + "429": + description: Too Many Requests response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' /v1/public/stories/{storyId}: get: tags: - - stories + - 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 + - name: storyId + in: path + description: A story id. + required: true + schema: + type: integer responses: "200": - description: No response was specified + description: OK response content: application/json: schema: $ref: '#/components/schemas/StoryDataWrapper' - "404": - description: Not found response + "401": + description: Unauthorized response content: application/json: schema: - $ref: '#/components/schemas/ErrorResponse' + $ref: '#/components/schemas/StandardError' + "403": + description: Forbidden response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "404": + description: Not Found response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "405": + description: Method Not Allowed response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "409": + description: Conflict response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "429": + description: Too Many Requests response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' /v1/public/stories/{storyId}/characters: get: tags: - - characters + - 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: + - name: storyId + in: path + description: A story id. + required: true + schema: 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: + - name: name + in: query + description: Return only characters matching the specified full character name. + example: Spider-Man + required: false + schema: 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 + - name: nameStartsWith + in: query + description: Return characters with names that begin with the specified string. + example: Sp + required: false + schema: + type: string + - name: modifiedSince + in: query + description: Return only characters which have been modified since the specified date. + required: false + schema: + type: string + format: date + - name: comics + in: query + description: Return only characters which appear in the specified comics (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: series + in: query + description: Return only characters which appear the specified series (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: events + in: query + description: Return only characters which appear comics that took place in the specified events (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: orderBy + in: query + description: Order the result set by a field or fields. Add a "-" to the value sort in descending order. Multiple values are given priority in the order in which they are passed. + required: false + style: form + explode: false + schema: + type: array + items: + type: string + enum: + - name + - modified + - -name + - -modified + - name: limit + in: query + description: Limit the result set to the specified number of resources. + required: false + schema: + type: integer + minimum: 1 + maximum: 100 + - name: offset + in: query + description: Skip the specified number of resources in the result set. + required: false + schema: + type: integer responses: "200": - description: No response was specified + description: OK response content: application/json: schema: $ref: '#/components/schemas/CharacterDataWrapper' + "401": + description: Unauthorized response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "403": + description: Forbidden response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "404": + description: Not Found response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "405": + description: Method Not Allowed response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' "409": description: Conflict response content: application/json: schema: - $ref: '#/components/schemas/ErrorResponse' + $ref: '#/components/schemas/StandardError' + "429": + description: Too Many Requests response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' /v1/public/stories/{storyId}/comics: get: tags: - - comics + - 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." + 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: + - name: storyId + in: path + description: A story id. + required: true + schema: + type: integer + - name: format + in: query + description: Filter by the issue format. + required: false + schema: type: string - - 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: + enum: + - comic + - magazine + - trade paperback + - hardcover + - digest + - graphic novel + - digital comic + - infinite comic + - name: formatType + in: query + description: Filter by the issue format type. + required: false + schema: type: string - - 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 + enum: + - comic + - collection + - name: noVariants + in: query + description: Exclude variant comics from the result set. + required: false + style: form + explode: false + schema: + type: array + items: + type: boolean + - name: dateDescriptor + in: query + description: Return comics within a predefined date range. + required: false + style: form + explode: false + schema: + type: array + items: + type: string + enum: + - lastWeek + - thisWeek + - nextWeek + - thisMonth + - name: dateRange + in: query + description: Return comics within a predefined date range. Dates must be specified as date1,date2. Dates are preferably formatted as YYYY-MM-DD but may be sent as any common date format. + example: 2013-01-01,2013-01-02 + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: title + in: query + description: Return only issues in series whose title matches the input. + required: false + schema: + type: string + - name: titleStartsWith + in: query + description: Return only issues in series whose title starts with the input. + required: false + schema: + type: string + - name: startYear + in: query + description: Return only issues in series whose start year matches the input. + required: false + schema: + type: integer + - name: issueNumber + in: query + description: Return only issues in series whose issue number matches the input. + required: false + schema: + type: integer + - name: diamondCode + in: query + description: Filter by diamond code. + required: false + schema: + type: string + - name: digitalId + in: query + description: Filter by digital comic id. + required: false + schema: + type: integer + - name: upc + in: query + description: Filter by UPC. + required: false + schema: + type: string + - name: isbn + in: query + description: Filter by ISBN. + required: false + schema: + type: string + - name: ean + in: query + description: Filter by EAN. + required: false + schema: + type: string + - name: issn + in: query + description: Filter by ISSN. + required: false + schema: + type: string + - name: hasDigitalIssue + in: query + description: Include only results which are available digitally. + required: false + style: form + explode: false + schema: + type: array + items: + type: boolean + - name: modifiedSince + in: query + description: Return only comics which have been modified since the specified date. + required: false + schema: + type: string + format: date + - name: creators + in: query + description: Return only comics which feature work by the specified creators (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: characters + in: query + description: Return only comics which feature the specified characters (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: series + in: query + description: Return only comics which are part of the specified series (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: events + in: query + description: Return only comics which take place in the specified events (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: sharedAppearances + in: query + description: Return only comics in which the specified characters appear together (for example in which BOTH Spider-Man and Wolverine appear). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: collaborators + in: query + description: Return only comics in which the specified creators worked together (for example in which BOTH Stan Lee and Jack Kirby did work). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: orderBy + in: query + description: Order the result set by a field or fields. Add a "-" to the value sort in descending order. Multiple values are given priority in the order in which they are passed. + required: false + style: form + explode: false + schema: + type: array + items: + type: string + enum: + - focDate + - onsaleDate + - title + - issueNumber + - modified + - -focDate + - -onsaleDate + - -title + - -issueNumber + - -modified + - name: limit + in: query + description: Limit the result set to the specified number of resources. + required: false + schema: + type: integer + minimum: 1 + maximum: 100 + - name: offset + in: query + description: Skip the specified number of resources in the result set. + required: false + schema: + type: integer responses: "200": - description: No response was specified + description: OK response content: application/json: schema: $ref: '#/components/schemas/ComicDataWrapper' + "401": + description: Unauthorized response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "403": + description: Forbidden response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "404": + description: Not Found response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "405": + description: Method Not Allowed response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' "409": description: Conflict response content: application/json: schema: - $ref: '#/components/schemas/ErrorResponse' + $ref: '#/components/schemas/StandardError' + "429": + description: Too Many Requests response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' /v1/public/stories/{storyId}/creators: get: tags: - - creators + - 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." + 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: + - name: storyId + in: path + description: A story id. + required: true + schema: 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: + - name: firstName + in: query + description: Filter by creator first name. + example: Brian + required: false + schema: 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 + - name: middleName + in: query + description: Filter by creator middle name. + example: Michael + required: false + schema: + type: string + - name: lastName + in: query + description: Filter by creator last name. + example: Bendis + required: false + schema: + type: string + - name: suffix + in: query + description: Filter by suffix or honorific. + example: Sr. + required: false + schema: + type: string + - name: nameStartsWith + in: query + description: Filter by creator names that match criteria. + example: B + required: false + schema: + type: string + - name: firstNameStartsWith + in: query + description: Filter by creator first names that match criteria. + example: B + required: false + schema: + type: string + - name: middleNameStartsWith + in: query + description: Filter by creator middle names that match criteria. + example: Mi + required: false + schema: + type: string + - name: lastNameStartsWith + in: query + description: Filter by creator last names that match criteria. + example: Ben + required: false + schema: + type: string + - name: modifiedSince + in: query + description: Return only creators which have been modified since the specified date. + required: false + schema: + type: string + format: date + - name: comics + in: query + description: Return only creators who worked on in the specified comics (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: series + in: query + description: Return only creators who worked on the specified series (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: events + in: query + description: Return only creators who worked on comics that took place in the specified events (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: orderBy + in: query + description: Order the result set by a field or fields. Add a "-" to the value sort in descending order. Multiple values are given priority in the order in which they are passed. + required: false + style: form + explode: false + schema: + type: array + items: + type: string + enum: + - lastName + - firstName + - middleName + - suffix + - modified + - -lastName + - -firstName + - -middleName + - -suffix + - -modified + - name: limit + in: query + description: Limit the result set to the specified number of resources. + required: false + schema: + type: integer + minimum: 1 + maximum: 100 + - name: offset + in: query + description: Skip the specified number of resources in the result set. + required: false + schema: + type: integer responses: "200": - description: No response was specified + description: OK response content: application/json: schema: $ref: '#/components/schemas/CreatorDataWrapper' + "401": + description: Unauthorized response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "403": + description: Forbidden response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "404": + description: Not Found response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "405": + description: Method Not Allowed response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' "409": description: Conflict response content: application/json: schema: - $ref: '#/components/schemas/ErrorResponse' + $ref: '#/components/schemas/StandardError' + "429": + description: Too Many Requests response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' /v1/public/stories/{storyId}/events: get: tags: - - events + - 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." + 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: + - name: storyId + in: path + description: A story id. + required: true + schema: 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: + - name: name + in: query + description: Filter the event list by name. + required: false + schema: 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 + - name: nameStartsWith + in: query + description: Return events with names that begin with the specified string. + example: Sp + required: false + schema: + type: string + - name: modifiedSince + in: query + description: Return only events which have been modified since the specified date. + required: false + schema: + type: string + format: date + - name: creators + in: query + description: Return only events which feature work by the specified creators (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: characters + in: query + description: Return only events which feature the specified characters (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: series + in: query + description: Return only events which are part of the specified series (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: comics + in: query + description: Return only events which take place in the specified comics (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: orderBy + in: query + description: Order the result set by a field or fields. Add a "-" to the value sort in descending order. Multiple values are given priority in the order in which they are passed. + required: false + style: form + explode: false + schema: + type: array + items: + type: string + enum: + - lastName + - firstName + - middleName + - suffix + - modified + - -lastName + - -firstName + - -middleName + - -suffix + - -modified + - name: limit + in: query + description: Limit the result set to the specified number of resources. + required: false + schema: + type: integer + minimum: 1 + maximum: 100 + - name: offset + in: query + description: Skip the specified number of resources in the result set. + required: false + schema: + type: integer responses: "200": - description: No response was specified + description: OK response content: application/json: schema: $ref: '#/components/schemas/EventDataWrapper' + "401": + description: Unauthorized response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "403": + description: Forbidden response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "404": + description: Not Found response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "405": + description: Method Not Allowed response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' "409": description: Conflict response content: application/json: schema: - $ref: '#/components/schemas/ErrorResponse' + $ref: '#/components/schemas/StandardError' + "429": + description: Too Many Requests response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' /v1/public/stories/{storyId}/series: get: tags: - - series + - 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: + - name: storyId + in: path + description: A story 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: 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: + - name: events + in: query + description: Return only series which have comics that take place during the specified events (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: title + in: query + description: Filter by series title. + required: false + schema: type: string - - name: 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: + - name: titleStartsWith + in: query + description: Return series with titles that begin with the specified string (e.g. Sp). + required: false + schema: 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 + - name: startYear + in: query + description: Return only series matching the specified start year. + required: false + schema: + type: integer + - name: modifiedSince + in: query + description: Return only series which have been modified since the specified date. + required: false + schema: + type: string + format: date + - name: comics + in: query + description: Return only series which contain the specified comics (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: creators + in: query + description: Return only series which feature work by the specified creators (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: characters + in: query + description: Return only series which feature the specified characters (accepts a comma-separated list of ids). + required: false + style: form + explode: false + schema: + type: array + items: + type: integer + - name: seriesType + in: query + description: Filter the series by publication frequency type. + required: false + schema: + type: string + enum: + - collection + - one shot + - limited + - ongoing + - name: contains + in: query + description: Return only series containing one or more comics with the specified format. + required: false + style: form + explode: false + schema: + type: array + items: + type: string + enum: + - comic + - magazine + - trade paperback + - hardcover + - digest + - graphic novel + - digital comic + - infinite comic + - name: orderBy + in: query + description: Order the result set by a field or fields. Add a "-" to the value sort in descending order. Multiple values are given priority in the order in which they are passed. + required: false + style: form + explode: false + schema: + type: array + items: + type: string + enum: + - title + - modified + - startYear + - -title + - -modified + - -startYear + - name: limit + in: query + description: Limit the result set to the specified number of resources. + required: false + schema: + type: integer + minimum: 1 + maximum: 100 + - name: offset + in: query + description: Skip the specified number of resources in the result set. + required: false + schema: + type: integer responses: "200": - description: No response was specified + description: OK response content: application/json: schema: $ref: '#/components/schemas/SeriesDataWrapper' + "401": + description: Unauthorized response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "403": + description: Forbidden response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "404": + description: Not Found response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' + "405": + description: Method Not Allowed response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' "409": description: Conflict response content: application/json: schema: - $ref: '#/components/schemas/ErrorResponse' + $ref: '#/components/schemas/StandardError' + "429": + description: Too Many Requests response + content: + application/json: + schema: + $ref: '#/components/schemas/StandardError' components: schemas: - ComicList: +# Core Entity Representations + Character: type: object + description: A character resource type that represents the women, men, organizations, alien species, deities, animals, non-corporeal entities, trans-dimensional manifestations, abstract personifications, and green amorphous blobs which occupy the Marvel Universe as well as various alternate universes, timelines and altered realities therein (e.g. Spider-Man). properties: - available: + id: 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: + description: The unique ID of the character resource. + name: type: string - description: The path to the full list of issues in this collection. - items: + 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: The list of returned issues in this collection. + description: A set of public web site URLs for the resource. + items: + $ref: '#/components/schemas/Url' + thumbnail: + description: The representative image for this character. + $ref: '#/components/schemas/Image' + comics: + description: A resource list containing comics which feature this character. + $ref: '#/components/schemas/ComicList' + stories: + description: A resource list containing stories which this character appears. + $ref: '#/components/schemas/StoryList' + events: + description: A resource list containing events which this character appears. + $ref: '#/components/schemas/EventList' + series: + description: A resource list containing series in which this character appears. + $ref: '#/components/schemas/SeriesList' + required: + - id + - name + - description + - modified + - resourceURI + - urls + - thumbnail + - comics + - stories + - events + - series + Comic: + type: object + description: A comic book resource type that represents physical or digital products that end-users read. This definition includes individual print and digital comic issues, collections and graphic novels (e.g. Amazing Fantasy \#15). + properties: + id: + type: integer + description: The unique ID of the comic resource. + digitalId: + type: integer + description: The ID of the digital comic representation of this comic. Will be 0 if the comic is not available digitally. + title: + type: string + description: The canonical title of the comic. + issueNumber: + type: number + description: The number of the issue in the series (will generally be 0 for collection formats). + format: double + variantDescription: + type: string + description: If the issue is a variant (e.g. an alternate cover, second printing, or director\'s cut), a text description of the variant. + description: + type: string + description: The preferred description of the comic. + modified: + type: string + description: The date the resource was most recently modified. + format: date + isbn: + type: string + description: The ISBN for the comic (generally only populated for collection formats). + upc: + type: string + description: The UPC barcode number for the comic (generally only populated for periodical formats). + diamondCode: + type: string + description: The Diamond code for the comic. + ean: + type: string + description: The EAN barcode for the comic. + issn: + type: string + description: The ISSN barcode for the comic. + format: + type: string + description: The publication format of the comic (e.g. comic, hardcover, trade paperback). + pageCount: + type: integer + description: The number of story pages in the comic. + textObjects: + type: array + description: A set of descriptive text blurbs for the comic. + items: + $ref: '#/components/schemas/TextObject' + resourceURI: + type: string + description: The canonical URL identifier for this resource. + urls: + type: array + description: A set of public web site URLs for the resource. + items: + $ref: '#/components/schemas/Url' + series: + description: A summary representation of the series to which this comic belongs. + $ref: '#/components/schemas/SeriesSummary' + variants: + type: array + description: A list of variant issues for this comic (includes the "original" issue if the current issue is a variant). items: $ref: '#/components/schemas/ComicSummary' - 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: + collections: type: array - description: The list of returned events in this collection. + 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/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: + $ref: '#/components/schemas/ComicSummary' + collectedIssues: type: array - description: The list of returned creators in this collection. + 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/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: + $ref: '#/components/schemas/ComicSummary' + dates: type: array - description: The list of returned characters in this collection. + description: A list of key dates for this comic. 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: + $ref: '#/components/schemas/ComicDate' + prices: type: array - description: The list of returned series in this collection. + description: A list of prices for this comic. 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: + $ref: '#/components/schemas/ComicPrice' + thumbnail: + description: The representative image for this comic. + $ref: '#/components/schemas/Image' + images: type: array - description: The list of returned stories in this collection. + description: A list of promotional images associated with this comic. 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. + $ref: '#/components/schemas/Image' + creators: + description: A resource list containing creators associated with this comic. + $ref: '#/components/schemas/CreatorList' + characters: + description: A resource list containing characters which appear in this comic. + $ref: '#/components/schemas/CharacterList' + stories: + description: A resource list containing stories which appear in this comic. + $ref: '#/components/schemas/StoryList' + events: + description: A resource list containing events which this comic appears. + $ref: '#/components/schemas/EventList' + required: + - id + - digitalId + - title + - issueNumber + - variantDescription + - description + - modified + - isbn + - upc + - diamondCode + - ean + - issn + - format + - pageCount + - textObjects + - resourceURI + - urls + - series + - variants + - collections + - collectedIssues + - dates + - prices + - thumbnail + - images + - creators + - characters + - stories + - events Creator: type: object + description: A creator resource type that represents women, men and organizations who create comics (e.g. Jack Kirby). They are assigned to the specific comic stories on which they worked, but we bubble up those assignments to the issues, series and events in which the stories appear as a convenience. properties: id: type: integer description: The unique ID of the creator resource. - format: int32 firstName: type: string description: The first name of the creator. @@ -5195,8 +6519,7 @@ components: 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). + 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. @@ -5210,22 +6533,42 @@ components: items: $ref: '#/components/schemas/Url' thumbnail: + description: The representative image for this creator. $ref: '#/components/schemas/Image' series: + description: A resource list containing series which feature work by this creator. $ref: '#/components/schemas/SeriesList' stories: + description: A resource list containing stories which feature work by this creator. $ref: '#/components/schemas/StoryList' comics: + description: A resource list containing comics which feature work by this creator. $ref: '#/components/schemas/ComicList' events: + description: A resource list containing events which feature work by this creator. $ref: '#/components/schemas/EventList' + required: + - id + - firstName + - middleName + - lastName + - suffix + - fullName + - modified + - resourceURI + - urls + - thumbnail + - series + - stories + - comics + - events Event: type: object + description: An event resource type that represents big, universe-altering storylines (e.g. Infinity). A comic's appearance in an event is often independent of its membership in a series. properties: id: type: integer description: The unique ID of the event resource. - format: int32 title: type: string description: The title of the event. @@ -5253,214 +6596,53 @@ components: description: The date of publication of the last issue in this event. format: date thumbnail: + description: The representative image for this event. $ref: '#/components/schemas/Image' comics: + description: A resource list containing the comics in this event. $ref: '#/components/schemas/ComicList' stories: + description: A resource list containing the stories in this event. $ref: '#/components/schemas/StoryList' series: + description: A resource list containing the series in this event. $ref: '#/components/schemas/SeriesList' characters: + description: A resource list containing the characters which appear in this event. $ref: '#/components/schemas/CharacterList' creators: + description: A resource list containing the creators whose work appears in this event. $ref: '#/components/schemas/CreatorList' next: $ref: '#/components/schemas/EventSummary' + description: A summary representation of the event which follows this event. previous: + description: A summary representation of the event which preceded this event. $ref: '#/components/schemas/EventSummary' - 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. + required: + - id + - title + - description + - resourceURI + - urls + - modified + - start + - end + - thumbnail + - comics + - stories + - series + - characters + - creators + - next + - previous Series: type: object + description: A series resource type that represents (usually) sequentially number list of comics with the same title and volume (e.g. Uncanny X-Men). Marvel uses the year of original publication for a series as the volume number. properties: id: type: integer description: The unique ID of the series resource. - format: int32 title: type: string description: The canonical title of the series. @@ -5478,12 +6660,9 @@ components: 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 + description: The last year of publication for the series (conventionally, 2099 for ongoing series). rating: type: string description: The age-appropriateness rating for the series. @@ -5492,245 +6671,54 @@ components: description: The date the resource was most recently modified. format: date thumbnail: + description: The representative image for this series. $ref: '#/components/schemas/Image' comics: + description: A resource list containing comics in this series. $ref: '#/components/schemas/ComicList' stories: + description: A resource list containing stories which occur in comics in this series. $ref: '#/components/schemas/StoryList' events: + description: A resource list containing events which take place in comics in this series. $ref: '#/components/schemas/EventList' characters: + description: A resource list containing characters which appear in comics in this series. $ref: '#/components/schemas/CharacterList' creators: + description: A resource list containing creators whose work appears in comics in this series. $ref: '#/components/schemas/CreatorList' next: + description: A summary representation of the series which follows this series. $ref: '#/components/schemas/SeriesSummary' previous: + description: A summary representation of the series which preceded this series. $ref: '#/components/schemas/SeriesSummary' - 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' + required: + - id + - title + - description + - resourceURI + - urls + - startYear + - endYear + - rating + - modified + - thumbnail + - comics + - stories + - events + - characters + - creators + - next + - previous Story: type: object + description: A story resource type that represents an indivisible, reusable components of comics. Most comics have two stories - a cover and an interior story (e. g. the cover from Amazing Fantasy \#15 and the origin of Spider-Man story from that comic) - but many, such as anthology comics and collections, will have more. Stories may be re-published in several comics, but the comic in which they originally appeared will always be present as a data point. properties: id: type: integer description: The unique ID of the story resource. - format: int32 title: type: string description: The story title. @@ -5739,34 +6727,729 @@ components: description: A short description of the story. resourceURI: type: string - description: 'The canonical URL identifier for this resource. ' + description: The canonical URL identifier for this resource. type: type: string - description: "The story type e.g. interior story, cover, text story." + description: The story type (e.g. interior story, cover, text story). modified: type: string description: The date the resource was most recently modified. format: date thumbnail: + description: The representative image for this story. $ref: '#/components/schemas/Image' comics: + description: A resource list containing comics in which this story takes place. $ref: '#/components/schemas/ComicList' series: + description: A resource list containing series in which this story appears. $ref: '#/components/schemas/SeriesList' events: + description: A resource list containing events in which this story appears. $ref: '#/components/schemas/EventList' characters: + description: A resource list containing characters which appear in this story. $ref: '#/components/schemas/CharacterList' creators: + description: A resource list containing creators worked on this story. $ref: '#/components/schemas/CreatorList' originalissue: + description: A summary representation of the issue in which this story was originally published. $ref: '#/components/schemas/ComicSummary' - ErrorResponse: + required: + - id + - title + - description + - resourceURI + - type + - modified + - thumbnail + - comics + - series + - events + - characters + - creators + - originalissue + +# Core Entity Summary Representations + CharacterSummary: type: object - description: This is the standard error response type. + description: A type that represents a summary of a character resource. + properties: + resourceURI: + type: string + description: The path to the individual character resource. + name: + type: string + description: The full name of the character. + role: + type: string + description: The role of the creator in the parent entity. + required: + - resourceURI + - name + - role + ComicSummary: + type: object + description: A type that represents a summary of a comic resource. + properties: + resourceURI: + type: string + description: The path to the individual comic resource. + name: + type: string + description: The canonical name of the comic. + required: + - resourceURI + - name + CreatorSummary: + type: object + description: A type that represents a summary of a creator resource. + properties: + resourceURI: + type: string + description: The path to the individual creator resource. + name: + type: string + description: The full name of the creator. + role: + type: string + description: The role of the creator in the parent entity. + required: + - resourceURI + - name + - role + EventSummary: + type: object + description: A type that represents a summary of an event resource. + properties: + resourceURI: + type: string + description: The path to the individual event resource. + name: + type: string + description: The name of the event. + required: + - resourceURI + - name + SeriesSummary: + type: object + description: A type that represents a summary of a series resource. + properties: + resourceURI: + type: string + description: The path to the individual series resource. + name: + type: string + description: The canonical name of the series. + required: + - resourceURI + - name + StorySummary: + type: object + description: A type that represents a summary of a story resource. + properties: + resourceURI: + type: string + description: The path to the individual story resource. + name: + type: string + description: The canonical name of the story. + type: + type: string + description: The type of the story (interior or cover). + required: + - resourceURI + - name + - type + +# Core Entity List Representations + CharacterList: + type: object + description: A resource list containing characters which appear in this story. + properties: + available: + type: integer + description: The number of total available characters in this list. Will always be greater than or equal to the "returned" value. + returned: + type: integer + description: The number of characters returned in this collection. + maximum: 20 + collectionURI: + type: string + description: The path to the full list of characters in this collection. + items: + type: array + description: The list of returned characters in this collection. + items: + $ref: '#/components/schemas/CharacterSummary' + required: + - available + - returned + - collectionURI + - items + ComicList: + type: object + description: A resource list containing comics which feature this story. + properties: + available: + type: integer + description: The number of total available issues in this list. Will always be greater than or equal to the "returned" value. + returned: + type: integer + description: The number of issues returned in this collection. + maximum: 20 + collectionURI: + type: string + description: The path to the full list of issues in this collection. + items: + type: array + description: The list of returned issues in this collection. + items: + $ref: '#/components/schemas/ComicSummary' + required: + - available + - returned + - collectionURI + - items + CreatorList: + type: object + description: A resource list containing creators whose work appears in this story. + properties: + available: + type: integer + description: The number of total available creators in this list. Will always be greater than or equal to the "returned" value. + returned: + type: integer + description: The number of creators returned in this collection. + maximum: 20 + collectionURI: + type: string + description: The path to the full list of creators in this collection. + items: + type: array + description: The list of returned creators in this collection. + items: + $ref: '#/components/schemas/CreatorSummary' + required: + - available + - returned + - collectionURI + - items + EventList: + type: object + description: A resource list containing events which feature this story. + properties: + available: + type: integer + description: The number of total available events in this list. Will always be greater than or equal to the "returned" value. + returned: + type: integer + description: The number of events returned in this collection. + maximum: 20 + collectionURI: + type: string + description: The path to the full list of events in this collection. + items: + type: array + description: The list of returned events in this collection. + items: + $ref: '#/components/schemas/EventSummary' + required: + - available + - returned + - collectionURI + - items + SeriesList: + type: object + description: A resource list containing series in which this story appears. + properties: + available: + type: integer + description: The number of total available series in this list. Will always be greater than or equal to the "returned" value. + returned: + type: integer + description: The number of series returned in this collection. + maximum: 20 + collectionURI: + type: string + description: The path to the full list of series in this collection. + items: + type: array + description: The list of returned series in this collection. + items: + $ref: '#/components/schemas/SeriesSummary' + required: + - available + - returned + - collectionURI + - items + StoryList: + type: object + description: A resource list containing stories which are related to this story. + properties: + available: + type: integer + description: The number of total available stories in this list. Will always be greater than or equal to the "returned" value. + returned: + type: integer + description: The number of stories returned in this collection. + maximum: 20 + collectionURI: + type: string + description: The path to the full list of stories in this collection. + items: + type: array + description: The list of returned stories in this collection. + items: + $ref: '#/components/schemas/StorySummary' + required: + - available + - returned + - collectionURI + - items + +# Core Entity Container Representations + CharacterDataContainer: + type: object + description: The container for the character data. + properties: + offset: + type: integer + description: The requested offset (number of skipped results) of the call. + limit: + type: integer + description: The requested result limit. + total: + type: integer + description: The total number of resources available given the current filter set. + count: + type: integer + description: The total number of results returned by this call. + results: + type: array + description: The list of characters returned by the call. + items: + $ref: '#/components/schemas/Character' + required: + - offset + - limit + - total + - count + - results + ComicDataContainer: + type: object + description: The container for the comic data. + properties: + offset: + type: integer + description: The requested offset (number of skipped results) of the call. + limit: + type: integer + description: The requested result limit. + total: + type: integer + description: The total number of resources available given the current filter set. + count: + type: integer + description: The total number of results returned by this call. + results: + type: array + description: The list of comics returned by the call + items: + $ref: '#/components/schemas/Comic' + required: + - offset + - limit + - total + - count + - results + CreatorDataContainer: + type: object + description: A container type for lists of creators. + properties: + offset: + type: integer + description: The requested offset (number of skipped results) of the call. + limit: + type: integer + description: The requested result limit. + total: + type: integer + description: The total number of resources available given the current filter set. + count: + type: integer + description: The total number of results returned by this call. + results: + type: array + description: The list of creators returned by the call. + items: + $ref: '#/components/schemas/Creator' + required: + - offset + - limit + - total + - count + - results + EventDataContainer: + type: object + description: The container for the event data. + properties: + offset: + type: integer + description: The requested offset (number of skipped results) of the call. + limit: + type: integer + description: The requested result limit. + total: + type: integer + description: The total number of resources available given the current filter set. + count: + type: integer + description: The total number of results returned by this call. + results: + type: array + description: The list of events returned by the call + items: + $ref: '#/components/schemas/Event' + required: + - offset + - limit + - total + - count + - results + SeriesDataContainer: + type: object + description: The container for the series data. + properties: + offset: + type: integer + description: The requested offset (number of skipped results) of the call. + limit: + type: integer + description: The requested result limit. + total: + type: integer + description: The total number of resources available given the current filter set. + count: + type: integer + description: The total number of results returned by this call. + results: + type: array + description: The list of series returned by the call + items: + $ref: '#/components/schemas/Series' + required: + - offset + - limit + - total + - count + - results + StoryDataContainer: + type: object + description: The container for the story data. + properties: + offset: + type: integer + description: The requested offset (number of skipped results) of the call. + limit: + type: integer + description: The requested result limit. + total: + type: integer + description: The total number of resources available given the current filter set. + count: + type: integer + description: The total number of results returned by this call. + results: + type: array + description: The list of stories returned by the call + items: + $ref: '#/components/schemas/Story' + required: + - offset + - limit + - total + - count + - results + +# Core Entity Wrapper Representations + CharacterDataWrapper: + type: object + description: The wrapper for the character data. + properties: + code: + type: integer + description: The HTTP status code of the returned result. + status: + type: string + description: A string description of the call status. + copyright: + type: string + description: The copyright notice for the returned result. + attributionText: + type: string + description: The attribution notice for this result. Please display either this notice or the contents of the attributionHTML field on all screens which contain data from the Marvel Comics API. + attributionHTML: + type: string + description: An HTML representation of the attribution notice for this result. Please display either this notice or the contents of the attributionText field on all screens which contain data from the Marvel Comics API. + data: + $ref: '#/components/schemas/CharacterDataContainer' + etag: + type: string + description: A digest value of the content returned by the call. + required: + - code + - status + - copyright + - attributionText + - attributionHTML + - data + - etag + ComicDataWrapper: + type: object + description: The wrapper for the comic data. + properties: + code: + type: integer + description: The HTTP status code of the returned result. + status: + type: string + description: A string description of the call status. + copyright: + type: string + description: The copyright notice for the returned result. + attributionText: + type: string + description: The attribution notice for this result. Please display either this notice or the contents of the attributionHTML field on all screens which contain data from the Marvel Comics API. + attributionHTML: + type: string + description: An HTML representation of the attribution notice for this result. Please display either this notice or the contents of the attributionText field on all screens which contain data from the Marvel Comics API. + data: + $ref: '#/components/schemas/ComicDataContainer' + etag: + type: string + description: A digest value of the content returned by the call. + required: + - code + - status + - copyright + - attributionText + - attributionHTML + - data + - etag + CreatorDataWrapper: + type: object + description: The wrapper for the creator data. + properties: + code: + type: integer + description: The HTTP status code of the returned result. + status: + type: string + description: A string description of the call status. + copyright: + type: string + description: The copyright notice for the returned result. + attributionText: + type: string + description: The attribution notice for this result. Please display either this notice or the contents of the attributionHTML field on all screens which contain data from the Marvel Comics API. + attributionHTML: + type: string + description: An HTML representation of the attribution notice for this result. Please display either this notice or the contents of the attributionText field on all screens which contain data from the Marvel Comics API. + data: + $ref: '#/components/schemas/CreatorDataContainer' + etag: + type: string + description: A digest value of the content returned by the call. + required: + - code + - status + - copyright + - attributionText + - attributionHTML + - data + - etag + EventDataWrapper: + type: object + description: The wrapper for the event data. + properties: + code: + type: integer + description: The HTTP status code of the returned result. + status: + type: string + description: A string description of the call status. + copyright: + type: string + description: The copyright notice for the returned result. + attributionText: + type: string + description: The attribution notice for this result. Please display either this notice or the contents of the attributionHTML field on all screens which contain data from the Marvel Comics API. + attributionHTML: + type: string + description: An HTML representation of the attribution notice for this result. Please display either this notice or the contents of the attributionText field on all screens which contain data from the Marvel Comics API. + data: + $ref: '#/components/schemas/EventDataContainer' + etag: + type: string + description: A digest value of the content returned by the call. + required: + - code + - status + - copyright + - attributionText + - attributionHTML + - data + - etag + SeriesDataWrapper: + type: object + description: The wrapper for the series data. + properties: + code: + type: integer + description: The HTTP status code of the returned result. + status: + type: string + description: A string description of the call status. + copyright: + type: string + description: The copyright notice for the returned result. + attributionText: + type: string + description: The attribution notice for this result. Please display either this notice or the contents of the attributionHTML field on all screens which contain data from the Marvel Comics API. + attributionHTML: + type: string + description: An HTML representation of the attribution notice for this result. Please display either this notice or the contents of the attributionText field on all screens which contain data from the Marvel Comics API. + data: + $ref: '#/components/schemas/SeriesDataContainer' + etag: + type: string + description: A digest value of the content returned by the call. + required: + - code + - status + - copyright + - attributionText + - attributionHTML + - data + - etag + StoryDataWrapper: + type: object + description: The wrapper for the story data. + properties: + code: + type: integer + description: The HTTP status code of the returned result. + status: + type: string + description: A string description of the call status. + copyright: + type: string + description: The copyright notice for the returned result. + attributionText: + type: string + description: The attribution notice for this result. Please display either this notice or the contents of the attributionHTML field on all screens which contain data from the Marvel Comics API. + attributionHTML: + type: string + description: An HTML representation of the attribution notice for this result. Please display either this notice or the contents of the attributionText field on all screens which contain data from the Marvel Comics API. + data: + $ref: '#/components/schemas/StoryDataContainer' + etag: + type: string + description: A digest value of the content returned by the call. + required: + - code + - status + - copyright + - attributionText + - attributionHTML + - data + - etag + +# Common Structures + ComicDate: + type: object + description: A type that represents a date and time for which the comic was released. + properties: + type: + type: string + description: A description of the date (e.g. onsale date, FOC date). + date: + type: string + description: The date. + format: date + required: + - type + - date + ComicPrice: + type: object + description: A type that represents a price (e.g. print price, digital price) for the comic. + properties: + type: + type: string + description: A description of the price (e.g. print price, digital price). + price: + type: number + description: The price (all prices in USD). + format: float + required: + - type + - price + Image: + type: object + description: A type that represents an image for a resource. + properties: + path: + type: string + description: The directory path of to the image. + extension: + type: string + description: The file extension for the image. + required: + - path + - extension + TextObject: + type: object + description: A type that represents bits of descriptive text which are attached to an entity. + properties: + type: + type: string + description: The canonical type of the text object (e.g. solicit text, preview text, etc.). + language: + type: string + description: The IETF language tag (or language code) denoting which language the text object is written in. + text: + type: string + description: The text of the text object. + required: + - type + - language + - text + Url: + type: object + description: A type that represents a reference to web pages or deep links into applications. When present in a resultset, it is preferred that you use these to link back to Marvel. Many resources will have more than one representation on the web so URLs are generally presented as an array of URL resources. + properties: + type: + type: string + description: A text identifier for the URL. + url: + type: string + description: A full URL (including scheme, domain, and path). + required: + - type + - url + +# Errors + StandardError: + type: object + description: A standard error type. properties: code: type: string description: The HTTP status code of the returned result. + message: + type: string + description: A human readable message providing more details about the error. required: - - code \ No newline at end of file + - code