CCP Games Market API

The Market API from CCP Games — 11 operation(s) for market.

OpenAPI Specification

ccp-games-market-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  contact:
    name: ESI Support
    url: https://developers.eveonline.com/docs/support/
  license:
    name: EVE Developer License
    url: https://developers.eveonline.com/license-agreement
  termsOfService: https://support.eveonline.com/hc/en-us/articles/8414770561948-EVE-Online-Terms-of-Service
  title: EVE Swagger Incineration (ESI) - tranquility Alliance Market API
  version: '2020-01-01'
servers:
- url: https://esi.evetech.net
tags:
- name: Market
paths:
  /characters/{character_id}/orders:
    get:
      description: List open market orders placed by a character
      operationId: GetCharactersCharacterIdOrders
      parameters:
      - description: The ID of the character
        in: path
        name: character_id
        required: true
        schema:
          $ref: '#/components/schemas/CharacterID'
      - $ref: '#/components/parameters/AcceptLanguage'
      - $ref: '#/components/parameters/IfNoneMatch'
      - $ref: '#/components/parameters/CompatibilityDate'
      - $ref: '#/components/parameters/Tenant'
      - $ref: '#/components/parameters/IfModifiedSince'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CharactersCharacterIdOrdersGet'
          description: OK
          headers:
            Cache-Control:
              $ref: '#/components/headers/CacheControl'
            ETag:
              $ref: '#/components/headers/ETag'
            Last-Modified:
              $ref: '#/components/headers/LastModified'
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
          description: Error
      security:
      - OAuth2:
        - esi-markets.read_character_orders.v1
      summary: List open orders from a character
      tags:
      - Market
      x-cache-age: 1200
      x-compatibility-date: '2020-01-01'
  /characters/{character_id}/orders/history:
    get:
      description: List cancelled and expired market orders placed by a character up to 90 days in the past.
      operationId: GetCharactersCharacterIdOrdersHistory
      parameters:
      - description: The ID of the character
        in: path
        name: character_id
        required: true
        schema:
          $ref: '#/components/schemas/CharacterID'
      - in: query
        name: page
        schema:
          description: Which page of results to return.
          format: int32
          minimum: 1
          type: integer
      - $ref: '#/components/parameters/AcceptLanguage'
      - $ref: '#/components/parameters/IfNoneMatch'
      - $ref: '#/components/parameters/CompatibilityDate'
      - $ref: '#/components/parameters/Tenant'
      - $ref: '#/components/parameters/IfModifiedSince'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CharactersCharacterIdOrdersHistoryGet'
          description: OK
          headers:
            Cache-Control:
              $ref: '#/components/headers/CacheControl'
            ETag:
              $ref: '#/components/headers/ETag'
            Last-Modified:
              $ref: '#/components/headers/LastModified'
            X-Pages:
              description: The total number of pages in the result set.
              schema:
                format: int64
                type: integer
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
          description: Error
      security:
      - OAuth2:
        - esi-markets.read_character_orders.v1
      summary: List historical orders by a character
      tags:
      - Market
      x-cache-age: 3600
      x-compatibility-date: '2020-01-01'
  /corporations/{corporation_id}/orders:
    get:
      description: List open market orders placed on behalf of a corporation
      operationId: GetCorporationsCorporationIdOrders
      parameters:
      - description: The ID of the corporation
        in: path
        name: corporation_id
        required: true
        schema:
          $ref: '#/components/schemas/CorporationID'
      - in: query
        name: page
        schema:
          description: Which page of results to return.
          format: int32
          minimum: 1
          type: integer
      - $ref: '#/components/parameters/AcceptLanguage'
      - $ref: '#/components/parameters/IfNoneMatch'
      - $ref: '#/components/parameters/CompatibilityDate'
      - $ref: '#/components/parameters/Tenant'
      - $ref: '#/components/parameters/IfModifiedSince'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CorporationsCorporationIdOrdersGet'
          description: OK
          headers:
            Cache-Control:
              $ref: '#/components/headers/CacheControl'
            ETag:
              $ref: '#/components/headers/ETag'
            Last-Modified:
              $ref: '#/components/headers/LastModified'
            X-Pages:
              description: The total number of pages in the result set.
              schema:
                format: int64
                type: integer
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
          description: Error
      security:
      - OAuth2:
        - esi-markets.read_corporation_orders.v1
      summary: List open orders from a corporation
      tags:
      - Market
      x-cache-age: 1200
      x-compatibility-date: '2020-01-01'
      x-required-roles:
      - Accountant
      - Trader
  /corporations/{corporation_id}/orders/history:
    get:
      description: List cancelled and expired market orders placed on behalf of a corporation up to 90 days in the past.
      operationId: GetCorporationsCorporationIdOrdersHistory
      parameters:
      - description: The ID of the corporation
        in: path
        name: corporation_id
        required: true
        schema:
          $ref: '#/components/schemas/CorporationID'
      - in: query
        name: page
        schema:
          description: Which page of results to return.
          format: int32
          minimum: 1
          type: integer
      - $ref: '#/components/parameters/AcceptLanguage'
      - $ref: '#/components/parameters/IfNoneMatch'
      - $ref: '#/components/parameters/CompatibilityDate'
      - $ref: '#/components/parameters/Tenant'
      - $ref: '#/components/parameters/IfModifiedSince'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CorporationsCorporationIdOrdersHistoryGet'
          description: OK
          headers:
            Cache-Control:
              $ref: '#/components/headers/CacheControl'
            ETag:
              $ref: '#/components/headers/ETag'
            Last-Modified:
              $ref: '#/components/headers/LastModified'
            X-Pages:
              description: The total number of pages in the result set.
              schema:
                format: int64
                type: integer
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
          description: Error
      security:
      - OAuth2:
        - esi-markets.read_corporation_orders.v1
      summary: List historical orders from a corporation
      tags:
      - Market
      x-cache-age: 3600
      x-compatibility-date: '2020-01-01'
      x-required-roles:
      - Accountant
      - Trader
  /markets/groups:
    get:
      description: 'Get a list of item groups


        This route expires daily at 11:05'
      operationId: GetMarketsGroups
      parameters:
      - $ref: '#/components/parameters/AcceptLanguage'
      - $ref: '#/components/parameters/IfNoneMatch'
      - $ref: '#/components/parameters/CompatibilityDate'
      - $ref: '#/components/parameters/Tenant'
      - $ref: '#/components/parameters/IfModifiedSince'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MarketsGroupsGet'
          description: OK
          headers:
            Cache-Control:
              $ref: '#/components/headers/CacheControl'
            ETag:
              $ref: '#/components/headers/ETag'
            Last-Modified:
              $ref: '#/components/headers/LastModified'
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
          description: Error
      summary: Get item groups
      tags:
      - Market
      x-compatibility-date: '2020-01-01'
  /markets/groups/{market_group_id}:
    get:
      description: 'Get information on an item group


        This route expires daily at 11:05'
      operationId: GetMarketsGroupsMarketGroupId
      parameters:
      - in: path
        name: market_group_id
        required: true
        schema:
          description: An Eve item group ID
          format: int64
          type: integer
      - $ref: '#/components/parameters/AcceptLanguage'
      - $ref: '#/components/parameters/IfNoneMatch'
      - $ref: '#/components/parameters/CompatibilityDate'
      - $ref: '#/components/parameters/Tenant'
      - $ref: '#/components/parameters/IfModifiedSince'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MarketsGroupsMarketGroupIdGet'
          description: OK
          headers:
            Cache-Control:
              $ref: '#/components/headers/CacheControl'
            Content-Language:
              $ref: '#/components/headers/ContentLanguage'
            ETag:
              $ref: '#/components/headers/ETag'
            Last-Modified:
              $ref: '#/components/headers/LastModified'
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
          description: Error
      summary: Get item group information
      tags:
      - Market
      x-compatibility-date: '2020-01-01'
  /markets/prices:
    get:
      description: Return a list of prices
      operationId: GetMarketsPrices
      parameters:
      - $ref: '#/components/parameters/AcceptLanguage'
      - $ref: '#/components/parameters/IfNoneMatch'
      - $ref: '#/components/parameters/CompatibilityDate'
      - $ref: '#/components/parameters/Tenant'
      - $ref: '#/components/parameters/IfModifiedSince'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MarketsPricesGet'
          description: OK
          headers:
            Cache-Control:
              $ref: '#/components/headers/CacheControl'
            ETag:
              $ref: '#/components/headers/ETag'
            Last-Modified:
              $ref: '#/components/headers/LastModified'
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
          description: Error
      summary: List market prices
      tags:
      - Market
      x-cache-age: 3600
      x-compatibility-date: '2020-01-01'
  /markets/structures/{structure_id}:
    get:
      description: Return all orders in a structure
      operationId: GetMarketsStructuresStructureId
      parameters:
      - in: query
        name: page
        schema:
          description: Which page of results to return.
          format: int32
          minimum: 1
          type: integer
      - in: path
        name: structure_id
        required: true
        schema:
          description: Return orders in this structure
          format: int64
          type: integer
      - $ref: '#/components/parameters/AcceptLanguage'
      - $ref: '#/components/parameters/IfNoneMatch'
      - $ref: '#/components/parameters/CompatibilityDate'
      - $ref: '#/components/parameters/Tenant'
      - $ref: '#/components/parameters/IfModifiedSince'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MarketsStructuresStructureIdGet'
          description: OK
          headers:
            Cache-Control:
              $ref: '#/components/headers/CacheControl'
            ETag:
              $ref: '#/components/headers/ETag'
            Last-Modified:
              $ref: '#/components/headers/LastModified'
            X-Pages:
              description: The total number of pages in the result set.
              schema:
                format: int64
                type: integer
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
          description: Error
      security:
      - OAuth2:
        - esi-markets.structure_markets.v1
      summary: List orders in a structure
      tags:
      - Market
      x-cache-age: 300
      x-compatibility-date: '2020-01-01'
  /markets/{region_id}/history:
    get:
      description: 'Return a list of historical market statistics for the specified type in a region


        This route expires daily at 11:05'
      operationId: GetMarketsRegionIdHistory
      parameters:
      - in: path
        name: region_id
        required: true
        schema:
          description: Return statistics in this region
          format: int64
          type: integer
      - in: query
        name: type_id
        required: true
        schema:
          description: Return statistics for this type
          format: int64
          type: integer
      - $ref: '#/components/parameters/AcceptLanguage'
      - $ref: '#/components/parameters/IfNoneMatch'
      - $ref: '#/components/parameters/CompatibilityDate'
      - $ref: '#/components/parameters/Tenant'
      - $ref: '#/components/parameters/IfModifiedSince'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MarketsRegionIdHistoryGet'
          description: OK
          headers:
            Cache-Control:
              $ref: '#/components/headers/CacheControl'
            ETag:
              $ref: '#/components/headers/ETag'
            Last-Modified:
              $ref: '#/components/headers/LastModified'
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
          description: Error
      summary: List historical market statistics in a region
      tags:
      - Market
      x-compatibility-date: '2020-01-01'
  /markets/{region_id}/orders:
    get:
      description: Return a list of orders in a region
      operationId: GetMarketsRegionIdOrders
      parameters:
      - in: query
        name: order_type
        required: true
        schema:
          default: all
          description: Filter buy/sell orders, return all orders by default. If you query without type_id, we always return both buy and sell orders
          enum:
          - buy
          - sell
          - all
          type: string
      - in: query
        name: page
        schema:
          description: Which page of results to return.
          format: int32
          minimum: 1
          type: integer
      - in: path
        name: region_id
        required: true
        schema:
          description: Return orders in this region
          format: int64
          type: integer
      - in: query
        name: type_id
        schema:
          description: Return orders only for this type
          format: int64
          type: integer
      - $ref: '#/components/parameters/AcceptLanguage'
      - $ref: '#/components/parameters/IfNoneMatch'
      - $ref: '#/components/parameters/CompatibilityDate'
      - $ref: '#/components/parameters/Tenant'
      - $ref: '#/components/parameters/IfModifiedSince'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MarketsRegionIdOrdersGet'
          description: OK
          headers:
            Cache-Control:
              $ref: '#/components/headers/CacheControl'
            ETag:
              $ref: '#/components/headers/ETag'
            Last-Modified:
              $ref: '#/components/headers/LastModified'
            X-Pages:
              description: The total number of pages in the result set.
              schema:
                format: int64
                type: integer
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
          description: Error
      summary: List orders in a region
      tags:
      - Market
      x-cache-age: 300
      x-compatibility-date: '2020-01-01'
      x-rate-limit:
        group: market-order
        max-tokens: 12000
        window-size: 15m
  /markets/{region_id}/types:
    get:
      description: Return a list of type IDs that have active orders in the region, for efficient market indexing.
      operationId: GetMarketsRegionIdTypes
      parameters:
      - in: query
        name: page
        schema:
          description: Which page of results to return.
          format: int32
          minimum: 1
          type: integer
      - in: path
        name: region_id
        required: true
        schema:
          description: Return statistics in this region
          format: int64
          type: integer
      - $ref: '#/components/parameters/AcceptLanguage'
      - $ref: '#/components/parameters/IfNoneMatch'
      - $ref: '#/components/parameters/CompatibilityDate'
      - $ref: '#/components/parameters/Tenant'
      - $ref: '#/components/parameters/IfModifiedSince'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MarketsRegionIdTypesGet'
          description: OK
          headers:
            Cache-Control:
              $ref: '#/components/headers/CacheControl'
            ETag:
              $ref: '#/components/headers/ETag'
            Last-Modified:
              $ref: '#/components/headers/LastModified'
            X-Pages:
              description: The total number of pages in the result set.
              schema:
                format: int64
                type: integer
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
          description: Error
      summary: List type IDs relevant to a market
      tags:
      - Market
      x-cache-age: 600
      x-compatibility-date: '2020-01-01'
components:
  parameters:
    IfNoneMatch:
      description: The ETag of the previous request. A 304 will be returned if this matches the current ETag.
      in: header
      name: If-None-Match
      schema:
        type: string
    Tenant:
      description: The tenant ID for the request.
      example: ''
      in: header
      name: X-Tenant
      schema:
        default: tranquility
        type: string
    CompatibilityDate:
      description: The compatibility date for the request.
      in: header
      name: X-Compatibility-Date
      required: true
      schema:
        enum:
        - '2020-01-01'
        format: date
        type: string
    AcceptLanguage:
      description: The language to use for the response.
      in: header
      name: Accept-Language
      schema:
        default: en
        enum:
        - en
        - de
        - fr
        - ja
        - ru
        - zh
        - ko
        - es
        type: string
    IfModifiedSince:
      description: The date the resource was last modified. A 304 will be returned if the resource has not been modified since this date.
      in: header
      name: If-Modified-Since
      schema:
        type: string
  schemas:
    Error:
      properties:
        details:
          description: List of individual error details.
          items:
            $ref: '#/components/schemas/ErrorDetail'
          type: array
        error:
          description: Error message.
          type: string
      required:
      - error
      type: object
    ErrorDetail:
      properties:
        location:
          description: Where the error occurred, e.g. 'body.items[3].tags' or 'path.thing-id'
          type: string
        message:
          description: Error message text
          type: string
        value:
          description: The value at the given location
      type: object
    CharacterID:
      examples:
      - 90000001
      format: int64
      type: integer
      x-common-model: 'true'
    MarketsGroupsGet:
      items:
        format: int64
        type: integer
      type: array
    MarketsStructuresStructureIdGet:
      items:
        properties:
          duration:
            format: int64
            type: integer
          is_buy_order:
            type: boolean
          issued:
            format: date-time
            type: string
          location_id:
            format: int64
            type: integer
          min_volume:
            format: int64
            type: integer
          order_id:
            format: int64
            type: integer
          price:
            format: double
            type: number
          range:
            enum:
            - station
            - region
            - solarsystem
            - '1'
            - '2'
            - '3'
            - '4'
            - '5'
            - '10'
            - '20'
            - '30'
            - '40'
            type: string
          type_id:
            format: int64
            type: integer
          volume_remain:
            format: int64
            type: integer
          volume_total:
            format: int64
            type: integer
        required:
        - order_id
        - type_id
        - location_id
        - volume_total
        - volume_remain
        - min_volume
        - price
        - is_buy_order
        - duration
        - issued
        - range
        type: object
      type: array
    CorporationID:
      examples:
      - 98777771
      format: int64
      type: integer
      x-common-model: 'true'
    CorporationsCorporationIdOrdersGet:
      items:
        properties:
          duration:
            description: Number of days for which order is valid (starting from the issued date). An order expires at time issued + duration
            format: int64
            type: integer
          escrow:
            description: For buy orders, the amount of ISK in escrow
            format: double
            type: number
          is_buy_order:
            description: True if the order is a bid (buy) order
            type: boolean
          issued:
            description: Date and time when this order was issued
            format: date-time
            type: string
          issued_by:
            description: The character who issued this order
            format: int64
            type: integer
          location_id:
            description: ID of the location where order was placed
            format: int64
            type: integer
          min_volume:
            description: For buy orders, the minimum quantity that will be accepted in a matching sell order
            format: int64
            type: integer
          order_id:
            description: Unique order ID
            format: int64
            type: integer
          price:
            description: Cost per unit for this order
            format: double
            type: number
          range:
            description: Valid order range, numbers are ranges in jumps
            enum:
            - '1'
            - '10'
            - '2'
            - '20'
            - '3'
            - '30'
            - '4'
            - '40'
            - '5'
            - region
            - solarsystem
            - station
            type: string
          region_id:
            description: ID of the region where order was placed
            format: int64
            type: integer
          type_id:
            description: The type ID of the item transacted in this order
            format: int64
            type: integer
          volume_remain:
            description: Quantity of items still required or offered
            format: int64
            type: integer
          volume_total:
            description: Quantity of items required or offered at time order was placed
            format: int64
            type: integer
          wallet_division:
            description: The corporation wallet division used for this order.
            format: int64
            type: integer
        required:
        - duration
        - wallet_division
        - order_id
        - type_id
        - region_id
        - location_id
        - range
        - price
        - volume_total
        - volume_remain
        - issued
        - issued_by
        type: object
      type: array
    MarketsRegionIdOrdersGet:
      items:
        properties:
          duration:
            format: int64
            type: integer
          is_buy_order:
            type: boolean
          issued:
            format: date-time
            type: string
          location_id:
            format: int64
            type: integer
          min_volume:
            format: int64
            type: integer
          order_id:
            format: int64
            type: integer
          price:
            format: double
            type: number
          range:
            enum:
            - station
            - region
            - solarsystem
            - '1'
            - '2'
            - '3'
            - '4'
            - '5'
            - '10'
            - '20'
            - '30'
            - '40'
            type: string
          system_id:
            description: The solar system this order was placed
            format: int64
            type: integer
          type_id:
            format: int64
            type: integer
          volume_remain:
            format: int64
            type: integer
          volume_total:
            format: int64
            type: integer
        required:
        - order_id
        - type_id
        - location_id
        - system_id
        - volume_total
        - volume_remain
        - min_volume
        - price
        - is_buy_order
        - duration
        - issued
        - range
        type: object
      type: array
    CorporationsCorporationIdOrdersHistoryGet:
      items:
        properties:
          duration:
            description: Number of days the order was valid for (starting from the issued date). An order expires at time issued + duration
            format: int64
            type: integer
          escrow:
            description: For buy orders, the amount of ISK in escrow
            format: double
            type: number
          is_buy_order:
            description: True if the order is a bid (buy) order
            type: boolean
          issued:
            description: Date and time when this order was issued
            format: date-time
            type: string
          issued_by:
            description: The character who issued this order
            format: int64
            type: integer
          location_id:
            description: ID of the location where order was placed
            format: int64
            type: integer
          min_volume:
            description: For buy orders, the minimum quantity that will be accepted in a matching sell order
            format: int64
            type: integer
          order_id:
            description: Unique order ID
            format: int64
            type: integer
          price:
            description: Cost per unit for this order
            format: double
            type: number
          range:
            description: Valid order range, numbers are ranges in jumps
            enum:
            - '1'
            - '10'
            - '2'
            - '20'
            - '3'
            - '30'
            - '4'
            - '40'
            - '5'
            - region
            - solarsystem
            - station
            type: string
          region_id:
            description: ID of the region where order was placed
            format: int64
            type: integer
          state:
            description: Current order state
            enum:
            - cancelled
            - expired
            type: string
          type_id:
            description: The type ID of the item transacted in this order
            format: int64
            type: integer
          volume_remain:
            description: Quantity of items still required or offered
            format: int64
            type: integer
          volume_total:
            description: Quantity of items required or offered at time order was placed
            format: int64
            type: integer
          wallet_division:
            description: The corporation wallet division used for this order
            format: int64
            type: integer
        required:
        - wallet_division
        - duration
        - state
        - order_id
        - type_id
        - region_id
        - location_id
        - range
        - price
        - volume_total
        - volume_remain
        - issued
        type: object
      type: array
    MarketsGroupsMarketGroupIdGet:
      properties:
        description:
          type: string
        market_group_id:
          format: int64
          type: integer
        name:
          type: string
        parent_group_id:
          format: int64
          type: integer
        types:
          items:
            description: type integer
            format: int64
            type: integer
          type: array
      required:
      - market_group_id
      - name
      - description
      - types
      type: object
    CharactersCharacterIdOrdersGet:
      items:
        properties:
          duration:
            description: Number of days for which order is valid (starting from the issued date). An order expires at time issued + duration
            format: int64
            type: integer
          escrow:
            description: For buy orders, the amount of ISK in escrow
            format: double
            type: number
          is_buy_order:
            description: True if the order is a bid (buy) order
            type: boolean
          is_corporation:
            description: Signifies whether the buy/sell order was placed on behalf of a corporation.
            type: boolean
          issued:
            description: Date and time when this order was issued
            format: date-time
            type: string
          location_id:
            description: ID of the location where order was placed
            format: int64
            type: integer
          min_volume:
            description: For buy orders, the minimum quantity that will be accepted in a matching sell order
            format: int64
            type: integer
          order_id:
            description: Unique order ID
            format: int64
            type: integer
          price:
            description: Cost per unit for this order
            format: double
            type: number
          range:
            description: Valid order range, numbers are ranges in jumps
            enum:
            - '1'
            - '10'
            - '2'
            - '20'
            - '3'
            - '30'
            - '4'
            - '40'
            - '5'
            - region
            - solarsystem
            - station
            type: string
          region_id:
            description: ID of the region where order was placed
            format: int64
            type: integer
          type_id:
            description: The type ID of the item transacted in this order
            format: int64
            type: integer
          volume_remain:
            description: Quantity of items still required or offered
            format: int64
            type: integer
          volume_total:
            description: Quantity of items required or offered at time order was placed
            format: int64
            type: integer
        required:
        - is_corporation
        - duration
        - order

# --- truncated at 32 KB (42 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/ccp-games/refs/heads/main/openapi/ccp-games-market-api-openapi.yml