Open Geospatial Consortium (OGC) Map Tiles API

The Map Tiles API from Open Geospatial Consortium (OGC) — 12 operation(s) for map tiles.

Operations 12

GET /map/tiles Retrieve the list of all default map tilesets for the whole dataset #
GET /map/tiles/{tileMatrixSetId} Retrieve a default map tileset of the whole dataset for the specified tiling scheme (tile matrix set) #
GET /map/tiles/{tileMatrixSetId}/{tileMatrix}/{tileRow}/{tileCol} Retrieve a default map tile of the whole dataset #
GET /styles/{styleId}/map/tiles Retrieve the list of styled map tilesets for the whole dataset #
GET /styles/{styleId}/map/tiles/{tileMatrixSetId} Retrieve a styled map tileset of the whole dataset for the specified tiling scheme (tile matrix set) #
GET /styles/{styleId}/map/tiles/{tileMatrixSetId}/{tileMatrix}/{tileRow}/{tileCol} Retrieve a styled map tiles #
GET /collections/{collectionId}/map/tiles Retrieve a list of all map tilesets for specified collection. #
GET /collections/{collectionId}/map/tiles/{tileMatrixSetId} Retrieve a map tile set metadata for the specified collection and tiling scheme (tile matrix set) #
GET /collections/{collectionId}/map/tiles/{tileMatrixSetId}/{tileMatrix}/{tileRow}/{tileCol} Retrieve a map tile from the specified collection #
GET /collections/{collectionId}/styles/{styleId}/map/tiles Retrieve a list of styled map tilesets for the specified collection #
GET /collections/{collectionId}/styles/{styleId}/map/tiles/{tileMatrixSetId} Retrieve the map tileset metadata for the specified collection, style and tiling scheme (tile matrix set). #
GET /collections/{collectionId}/styles/{styleId}/map/tiles/{tileMatrixSetId}/{tileMatrix}/{tileRow}/{tileCol} Retrieve a map tile for a specified collection and style #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/ogc-map-tiles-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

ogc-map-tiles-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Ogc Map Tiles API
  version: '1.0'
  contact:
    name: Open Geospatial Consortium
    email: info@ogc.org
  license:
    name: OGC License
    url: http://www.opengeospatial.org/legal/
  description: 'Operations tagged Map Tiles across 2 of this provider''s published API definitions: ogc-maps-part1-1-0-openapi-ogcapi-maps-1-bundled.json, ogc-tiles-part1-1-0-openapi-ogcapi-tiles-1-bundled.json. Each path carries the servers of the definition it was published in.'
servers:
- description: Example OGC API - Maps server
  url: https://maps.gnosis.earth/ogcapi
- description: Example OGC API - Tiles server
  url: https://maps.ecere.com/ogcapi
tags:
- name: Map Tiles
paths:
  /map/tiles:
    get:
      tags:
      - Map Tiles
      summary: Retrieve the list of all default map tilesets for the whole dataset
      operationId: .dataset.map.getTileSetsList
      parameters:
      - $ref: '#/components/parameters/f-metadata'
      responses:
        '200':
          $ref: '#/components/responses/TileSetsList'
        '404':
          $ref: '#/components/responses/NotFound'
        '406':
          $ref: '#/components/responses/NotAcceptable'
        '500':
          $ref: '#/components/responses/ServerError'
    servers:
    - description: Example OGC API - Maps server
      url: https://maps.gnosis.earth/ogcapi
  /map/tiles/{tileMatrixSetId}:
    get:
      tags:
      - Map Tiles
      summary: Retrieve a default map tileset of the whole dataset for the specified tiling scheme (tile matrix set)
      operationId: .dataset.map.getTileSet
      parameters:
      - $ref: '#/components/parameters/collections'
      - $ref: '#/components/parameters/tileMatrixSetId'
      - $ref: '#/components/parameters/f-metadata'
      responses:
        '200':
          $ref: '#/components/responses/TileSet'
        '404':
          $ref: '#/components/responses/NotFound'
        '406':
          $ref: '#/components/responses/NotAcceptable'
        '500':
          $ref: '#/components/responses/ServerError'
    servers:
    - description: Example OGC API - Maps server
      url: https://maps.gnosis.earth/ogcapi
  /map/tiles/{tileMatrixSetId}/{tileMatrix}/{tileRow}/{tileCol}:
    get:
      tags:
      - Map Tiles
      summary: Retrieve a default map tile of the whole dataset
      operationId: .dataset.map.getTile
      parameters:
      - $ref: '#/components/parameters/tileMatrix'
      - $ref: '#/components/parameters/tileRow'
      - $ref: '#/components/parameters/tileCol'
      - $ref: '#/components/parameters/datetime'
      - $ref: '#/components/parameters/collections'
      - $ref: '#/components/parameters/subset'
      - $ref: '#/components/parameters/crs'
      - $ref: '#/components/parameters/subset-crs'
      - $ref: '#/components/parameters/bgcolor'
      - $ref: '#/components/parameters/transparent'
      - $ref: '#/components/parameters/void-color'
      - $ref: '#/components/parameters/void-transparent'
      - $ref: '#/components/parameters/tileMatrixSetId'
      - $ref: '#/components/parameters/f-mapTile'
      responses:
        '200':
          $ref: '#/components/responses/MapTile'
        '204':
          $ref: '#/components/responses/EmptyTile'
        '404':
          $ref: '#/components/responses/NotFound'
        '406':
          $ref: '#/components/responses/NotAcceptable'
        '500':
          $ref: '#/components/responses/ServerError'
    servers:
    - description: Example OGC API - Maps server
      url: https://maps.gnosis.earth/ogcapi
  /styles/{styleId}/map/tiles:
    get:
      tags:
      - Map Tiles
      summary: Retrieve the list of styled map tilesets for the whole dataset
      operationId: .dataset.style.map.getTileSetsList
      parameters:
      - $ref: '#/components/parameters/styleId'
      - $ref: '#/components/parameters/f-metadata'
      responses:
        '200':
          $ref: '#/components/responses/TileSetsList'
        '404':
          $ref: '#/components/responses/NotFound'
        '406':
          $ref: '#/components/responses/NotAcceptable'
        '500':
          $ref: '#/components/responses/ServerError'
    servers:
    - description: Example OGC API - Maps server
      url: https://maps.gnosis.earth/ogcapi
  /styles/{styleId}/map/tiles/{tileMatrixSetId}:
    get:
      tags:
      - Map Tiles
      summary: Retrieve a styled map tileset of the whole dataset for the specified tiling scheme (tile matrix set)
      operationId: .dataset.style.map.getTileSet
      parameters:
      - $ref: '#/components/parameters/styleId'
      - $ref: '#/components/parameters/collections'
      - $ref: '#/components/parameters/tileMatrixSetId'
      - $ref: '#/components/parameters/f-metadata'
      responses:
        '200':
          $ref: '#/components/responses/TileSet'
        '404':
          $ref: '#/components/responses/NotFound'
        '406':
          $ref: '#/components/responses/NotAcceptable'
        '500':
          $ref: '#/components/responses/ServerError'
    servers:
    - description: Example OGC API - Maps server
      url: https://maps.gnosis.earth/ogcapi
  /styles/{styleId}/map/tiles/{tileMatrixSetId}/{tileMatrix}/{tileRow}/{tileCol}:
    get:
      tags:
      - Map Tiles
      summary: Retrieve a styled map tiles
      operationId: .dataset.style.map.getTile
      parameters:
      - $ref: '#/components/parameters/tileMatrix'
      - $ref: '#/components/parameters/tileRow'
      - $ref: '#/components/parameters/tileCol'
      - $ref: '#/components/parameters/datetime'
      - $ref: '#/components/parameters/collections'
      - $ref: '#/components/parameters/subset'
      - $ref: '#/components/parameters/crs'
      - $ref: '#/components/parameters/subset-crs'
      - $ref: '#/components/parameters/bgcolor'
      - $ref: '#/components/parameters/transparent'
      - $ref: '#/components/parameters/void-color'
      - $ref: '#/components/parameters/void-transparent'
      - $ref: '#/components/parameters/styleId'
      - $ref: '#/components/parameters/tileMatrixSetId'
      - $ref: '#/components/parameters/f-mapTile'
      responses:
        '200':
          $ref: '#/components/responses/MapTile'
        '204':
          $ref: '#/components/responses/EmptyTile'
        '404':
          $ref: '#/components/responses/NotFound'
        '406':
          $ref: '#/components/responses/NotAcceptable'
        '500':
          $ref: '#/components/responses/ServerError'
    servers:
    - description: Example OGC API - Maps server
      url: https://maps.gnosis.earth/ogcapi
  /collections/{collectionId}/map/tiles:
    get:
      tags:
      - Map Tiles
      summary: Retrieve a list of all map tilesets for specified collection.
      operationId: .collection.map.getTileSetsList
      parameters:
      - $ref: '#/components/parameters/collectionId-all'
      - $ref: '#/components/parameters/f-metadata'
      responses:
        '200':
          $ref: '#/components/responses/TileSetsList'
        '404':
          $ref: '#/components/responses/NotFound'
        '406':
          $ref: '#/components/responses/NotAcceptable'
        '500':
          $ref: '#/components/responses/ServerError'
    servers:
    - description: Example OGC API - Maps server
      url: https://maps.gnosis.earth/ogcapi
  /collections/{collectionId}/map/tiles/{tileMatrixSetId}:
    get:
      tags:
      - Map Tiles
      summary: Retrieve a map tile set metadata for the specified collection and tiling scheme (tile matrix set)
      operationId: .collection.map.getTileSet
      parameters:
      - $ref: '#/components/parameters/collectionId-all'
      - $ref: '#/components/parameters/collections'
      - $ref: '#/components/parameters/tileMatrixSetId'
      - $ref: '#/components/parameters/f-metadata'
      responses:
        '200':
          $ref: '#/components/responses/TileSet'
        '404':
          $ref: '#/components/responses/NotFound'
        '406':
          $ref: '#/components/responses/NotAcceptable'
        '500':
          $ref: '#/components/responses/ServerError'
    servers:
    - description: Example OGC API - Maps server
      url: https://maps.gnosis.earth/ogcapi
  /collections/{collectionId}/map/tiles/{tileMatrixSetId}/{tileMatrix}/{tileRow}/{tileCol}:
    get:
      tags:
      - Map Tiles
      summary: Retrieve a map tile from the specified collection
      operationId: .collection.map.getTile
      parameters:
      - $ref: '#/components/parameters/tileMatrix'
      - $ref: '#/components/parameters/tileRow'
      - $ref: '#/components/parameters/tileCol'
      - $ref: '#/components/parameters/datetime'
      - $ref: '#/components/parameters/collectionId-all'
      - $ref: '#/components/parameters/collections'
      - $ref: '#/components/parameters/subset'
      - $ref: '#/components/parameters/crs'
      - $ref: '#/components/parameters/subset-crs'
      - $ref: '#/components/parameters/bgcolor'
      - $ref: '#/components/parameters/transparent'
      - $ref: '#/components/parameters/void-color'
      - $ref: '#/components/parameters/void-transparent'
      - $ref: '#/components/parameters/tileMatrixSetId'
      - $ref: '#/components/parameters/f-mapTile'
      responses:
        '200':
          $ref: '#/components/responses/MapTile'
        '204':
          $ref: '#/components/responses/EmptyTile'
        '404':
          $ref: '#/components/responses/NotFound'
        '406':
          $ref: '#/components/responses/NotAcceptable'
        '500':
          $ref: '#/components/responses/ServerError'
    servers:
    - description: Example OGC API - Maps server
      url: https://maps.gnosis.earth/ogcapi
  /collections/{collectionId}/styles/{styleId}/map/tiles:
    get:
      tags:
      - Map Tiles
      summary: Retrieve a list of styled map tilesets for the specified collection
      operationId: .collection.style.map.getTileSetsList
      parameters:
      - $ref: '#/components/parameters/collectionId-all'
      - $ref: '#/components/parameters/f-metadata'
      - $ref: '#/components/parameters/styleId-collection'
      responses:
        '200':
          $ref: '#/components/responses/TileSetsList'
        '404':
          $ref: '#/components/responses/NotFound'
        '406':
          $ref: '#/components/responses/NotAcceptable'
        '500':
          $ref: '#/components/responses/ServerError'
    servers:
    - description: Example OGC API - Maps server
      url: https://maps.gnosis.earth/ogcapi
  /collections/{collectionId}/styles/{styleId}/map/tiles/{tileMatrixSetId}:
    get:
      tags:
      - Map Tiles
      summary: Retrieve the map tileset metadata for the specified collection, style and tiling scheme (tile matrix set).
      operationId: .collection.style.map.getTileSet
      parameters:
      - $ref: '#/components/parameters/collectionId-all'
      - $ref: '#/components/parameters/collections'
      - $ref: '#/components/parameters/styleId-collection'
      - $ref: '#/components/parameters/tileMatrixSetId'
      - $ref: '#/components/parameters/f-metadata'
      responses:
        '200':
          $ref: '#/components/responses/TileSet'
        '404':
          $ref: '#/components/responses/NotFound'
        '406':
          $ref: '#/components/responses/NotAcceptable'
        '500':
          $ref: '#/components/responses/ServerError'
    servers:
    - description: Example OGC API - Maps server
      url: https://maps.gnosis.earth/ogcapi
  /collections/{collectionId}/styles/{styleId}/map/tiles/{tileMatrixSetId}/{tileMatrix}/{tileRow}/{tileCol}:
    get:
      tags:
      - Map Tiles
      summary: Retrieve a map tile for a specified collection and style
      operationId: .collection.style.map.getTile
      parameters:
      - $ref: '#/components/parameters/tileMatrix'
      - $ref: '#/components/parameters/tileRow'
      - $ref: '#/components/parameters/tileCol'
      - $ref: '#/components/parameters/datetime'
      - $ref: '#/components/parameters/collectionId-all'
      - $ref: '#/components/parameters/collections'
      - $ref: '#/components/parameters/subset'
      - $ref: '#/components/parameters/crs'
      - $ref: '#/components/parameters/subset-crs'
      - $ref: '#/components/parameters/bgcolor'
      - $ref: '#/components/parameters/transparent'
      - $ref: '#/components/parameters/void-color'
      - $ref: '#/components/parameters/void-transparent'
      - $ref: '#/components/parameters/styleId-collection'
      - $ref: '#/components/parameters/tileMatrixSetId'
      - $ref: '#/components/parameters/f-mapTile'
      responses:
        '200':
          $ref: '#/components/responses/MapTile'
        '204':
          $ref: '#/components/responses/EmptyTile'
        '404':
          $ref: '#/components/responses/NotFound'
        '406':
          $ref: '#/components/responses/NotAcceptable'
        '500':
          $ref: '#/components/responses/ServerError'
    servers:
    - description: Example OGC API - Maps server
      url: https://maps.gnosis.earth/ogcapi
components:
  parameters:
    tileMatrixSetId:
      name: tileMatrixSetId
      in: path
      description: Identifier for a supported TileMatrixSet
      required: true
      allowEmptyValue: false
      schema:
        $ref: '#/components/schemas/tileMatrixSets'
    collectionId-all:
      name: collectionId
      in: path
      description: Local identifier of a collection
      required: true
      schema:
        $ref: '#/components/schemas/all-collections'
    transparent:
      name: transparent
      in: query
      description: Background transparency of map (defaults to `true` without a `bgcolor` specified, but to `false` when a `bgcolor` is used).
      required: false
      style: form
      explode: false
      schema:
        type: boolean
        default: true
    styleId-collection:
      name: styleId
      in: path
      description: An identifier representing a specific style.
      required: true
      allowEmptyValue: false
      schema:
        type: string
    styleId:
      name: styleId
      in: path
      description: An identifier representing a specific style.
      required: true
      allowEmptyValue: false
      schema:
        $ref: '#/components/schemas/styles'
    bgcolor:
      name: bgcolor
      in: query
      description: Web color name or hexadecimal 0x[AA]RRGGBB color value for the background color (default to 0x9C9C9C gray). If alpha is not specified, full opacity is assumed.
      required: false
      style: form
      explode: false
      schema:
        type: string
        default: '0xFFFFFF'
    datetime:
      name: datetime
      in: query
      description: 'Either a date-time or an interval. Date and time expressions adhere to RFC 3339, section 5.6. Intervals may be bounded or half-bounded (double-dots at start or end). Server implementations may or may not support times expressed using time offsets from UTC, but need to support UTC time with the notation ending with a Z.

        Examples:

        * A date-time: "2018-02-12T23:20:50Z" * A bounded interval: "2018-02-12T00:00:00Z/2018-03-18T12:31:12Z" * Half-bounded intervals: "2018-02-12T00:00:00Z/.." or "../2018-03-18T12:31:12Z"

        Only resources that have a temporal property that intersects the value of `datetime` are selected.

        If a feature has multiple temporal properties, it is the decision of the server whether only a single temporal property is used to determine the extent or all relevant temporal properties.'
      required: false
      schema:
        type: string
      style: form
      explode: false
    subset:
      name: subset
      in: query
      description: 'Retrieve only part of the data by slicing or trimming along one or more axis

        For trimming: {axisAbbrev}({low}:{high}) (preserves dimensionality)

        For slicing:  {axisAbbrev}({value})      (reduces dimensionality)

        An asterisk (`*`) can be used instead of {low} or {high} to indicate the minimum/maximum value.

        For a temporal dimension, a single asterisk can be used to indicate the high value.

        Support for `*` is required for time, but optional for spatial and other dimensions.

        '
      style: form
      explode: false
      required: false
      schema:
        type: array
        items:
          type: string
    f-mapTile:
      name: f
      in: query
      description: The format of the map tile response (e.g. png). Accepted values are 'png', 'jpg' or 'tiff' (GeoTIFF).
      required: false
      schema:
        type: string
        enum:
        - png
        - jpg
        - tiff
      style: form
      explode: false
    collections:
      name: collections
      in: query
      style: form
      description: The collections that should be included in the response. The parameter value is a comma-separated list of collection identifiers. If the parameters is missing, some or all collections will be included. The collection will be rendered in the order specified, with the last one showing on top, unless the priority is overridden by styling rules.
      required: false
      explode: false
      schema:
        type: array
        items:
          $ref: '#/components/schemas/all-collections'
    tileRow:
      name: tileRow
      in: path
      description: Row index of the tile on the selected TileMatrix. It cannot exceed the MatrixWidth-1 for the selected TileMatrix. For example, Ireland is fully within the Tile at WebMercatorQuad tileMatrix=5, tileRow=10 and tileCol=15.
      required: true
      schema:
        minimum: 0
        type: integer
      example: 10
    tileCol:
      name: tileCol
      in: path
      description: Column index of the tile on the selected TileMatrix. It cannot exceed the MatrixHeight-1 for the selected TileMatrix. For example, Ireland is fully within the Tile at WebMercatorQuad tileMatrix=5, tileRow=10 and tileCol=15.
      required: true
      schema:
        minimum: 0
        type: integer
      example: 15
    f-metadata:
      name: f
      in: query
      description: The format of the response. If no value is provided, the accept header is used to determine the format. Accepted values are 'json' or 'html'.
      required: false
      schema:
        type: string
        enum:
        - json
        - html
      style: form
      explode: false
    void-color:
      name: void-color
      in: query
      description: Web color name or hexadecimal 0x[AA]RRGGBB color value for the void color for parts of the map outside of the valid area of the projection / CRS. If not specified, this defaults to the same as `bgcolor`.
      required: false
      style: form
      explode: false
      schema:
        type: string
        default: '0xFFFFFF'
    subset-crs:
      name: subset-crs
      in: query
      description: crs for the specified subset
      required: false
      style: form
      explode: true
      schema:
        type: string
    crs:
      name: crs
      in: query
      description: reproject the output to the given crs
      required: false
      style: form
      explode: true
      schema:
        type: string
    tileMatrix:
      name: tileMatrix
      in: path
      description: 'Identifier selecting one of the scales defined in the TileMatrixSet and representing the scaleDenominator the tile. For example,

        Ireland is fully within the Tile at WebMercatorQuad tileMatrix=5, tileRow=10 and tileCol=15.'
      required: true
      schema:
        type: string
      example: '5'
    void-transparent:
      name: void-transparent
      in: query
      description: Background transparency for parts of the map outside of the valid areas of the CRS / projection (defaults to the same as `transparent` if not specified).
      required: false
      style: form
      explode: false
      schema:
        type: boolean
        default: true
    transparent_2:
      name: transparent
      in: query
      description: Background transparency of map (default=true).
      required: false
      style: form
      explode: false
      schema:
        type: boolean
        default: true
    datetime_2:
      name: datetime
      in: query
      description: 'Either a date-time or an interval, half-bounded or bounded. Date and time expressions

        adhere to RFC 3339. Half-bounded intervals are expressed using double-dots.


        Examples:


        * A date-time: "2018-02-12T23:20:50Z"

        * A bounded interval: "2018-02-12T00:00:00Z/2018-03-18T12:31:12Z"

        * Half-bounded intervals: "2018-02-12T00:00:00Z/.." or "../2018-03-18T12:31:12Z"


        Only features that have a temporal property that intersects the value of

        `datetime` are selected.


        If a feature has multiple temporal properties, it is the decision of the

        server whether only a single temporal property is used to determine

        the extent or all relevant temporal properties.'
      required: false
      schema:
        type: string
      style: form
      explode: false
    subset_2:
      name: subset
      in: query
      description: "Retrieve only part of the data by slicing or trimming along one or more axis\nFor trimming: {axisAbbrev}({low}:{high}) (preserves dimensionality)\n   An asterisk (`*`) can be used instead of {low} or {high} to indicate the minimum/maximum value.\nFor slicing:  {axisAbbrev}({value})      (reduces dimensionality)\n"
      style: form
      explode: false
      required: false
      schema:
        type: array
        items:
          type: string
  schemas:
    tileSet-item:
      title: Tile Set Metadata item
      description: A minimal tileset element for use within a list of tilesets linking to full description of those tilesets.
      type: object
      required:
      - dataType
      - links
      - crs
      properties:
        title:
          description: A title for this tileset
          type: string
        dataType:
          allOf:
          - description: Type of data represented in the tileset
          - $ref: '#/components/schemas/dataType'
        crs:
          allOf:
          - description: Coordinate Reference System (CRS)
          - $ref: '#/components/schemas/crs'
        tileMatrixSetURI:
          description: Reference to a Tile Matrix Set on an offical source for Tile Matrix Sets such as the OGC NA definition server (http://www.opengis.net/def/tms/). Required if the tile matrix set is registered on an open official source.
          type: string
          format: uri
        links:
          description: Links to related resources. A 'self' link to the tileset as well as a 'http://www.opengis.net/def/rel/ogc/1.0/tiling-scheme' link to a definition of the TileMatrixSet are required.
          type: array
          items:
            $ref: '#/components/schemas/link'
    styles:
      type: string
      enum:
      - default
    tileMatrixLimits:
      title: TileMatrixLimits
      description: The limits for an individual tile matrix of a TileSet's TileMatrixSet, as defined in the OGC 2D TileMatrixSet and TileSet Metadata Standard
      type: object
      required:
      - tileMatrix
      - minTileRow
      - maxTileRow
      - minTileCol
      - maxTileCol
      properties:
        tileMatrix:
          type: string
        minTileRow:
          type: integer
          minimum: 0
        maxTileRow:
          type: integer
          minimum: 0
        minTileCol:
          type: integer
          minimum: 0
        maxTileCol:
          type: integer
          minimum: 0
    tileMatrixSets:
      type: string
      enum:
      - WebMercatorQuad
      - WorldCRS84Quad
      - GNOSISGlobalGrid
      - WorldMercatorWGS84Quad
    tileSet:
      title: Tile Set Metadata
      description: A resource describing a tileset based on the OGC TileSet Metadata Standard. At least one of the 'TileMatrixSet',  or a link with 'rel' http://www.opengis.net/def/rel/ogc/1.0/tiling-scheme
      type: object
      required:
      - dataType
      - crs
      - links
      properties:
        title:
          description: A title for this tileset
          type: string
        description:
          description: Brief narrative description of this tile set
          type: string
        dataType:
          allOf:
          - description: Type of data represented in the tileset
          - $ref: '#/components/schemas/dataType'
        crs:
          allOf:
          - description: Coordinate Reference System (CRS)
          - $ref: '#/components/schemas/crs'
        tileMatrixSetURI:
          description: Reference to a Tile Matrix Set on an offical source for Tile Matrix Sets such as the OGC NA definition server (http://www.opengis.net/def/tms/). Required if the tile matrix set is registered on an open official source.
          type: string
          format: uri
        links:
          description: 'Links to related resources. Possible link ''rel'' values are: ''http://www.opengis.net/def/rel/ogc/1.0/dataset'' for a URL pointing to the dataset, ''item'' for a URL template to get a tile; ''alternate'' for a URL pointing to another representation of the TileSetMetadata (e.g a TileJSON file); ''http://www.opengis.net/def/rel/ogc/1.0/tiling-scheme'' for a definition of the TileMatrixSet; ''http://www.opengis.net/def/rel/ogc/1.0/geodata'' for pointing to a single collection (if the tileset represents a single collection)'
          type: array
          items:
            $ref: '#/components/schemas/link'
        tileMatrixSetLimits:
          description: Limits for the TileRow and TileCol values for each TileMatrix in the tileMatrixSet. If missing, there are no limits other that the ones imposed by the TileMatrixSet. If present the TileMatrices listed are limited and the rest not available at all
          type: array
          items:
            $ref: '#/components/schemas/tileMatrixLimits'
        epoch:
          description: Epoch of the Coordinate Reference System (CRS)
          type: number
        layers:
          minItems: 1
          type: array
          items:
            type: object
            required:
            - id
            - dataType
            properties:
              title:
                description: Title of this tile matrix set, normally used for display to a human
                type: string
              description:
                description: Brief narrative description of this tile matrix set, normally available for display to a human
                type: string
              keywords:
                description: Unordered list of one or more commonly used or formalized word(s) or phrase(s) used to describe this layer
                type: string
              id:
                description: Unique identifier of the Layer. Implementation of 'identifier'
                type: string
              dataType:
                allOf:
                - description: Type of data represented in the layer
                - $ref: '#/components/schemas/dataType'
              geometryDimension:
                description: 'The geometry dimension of the features shown in this layer (0: points, 1: curves, 2: surfaces, 3: solids), unspecified: mixed or unknown'
                type: integer
                minimum: 0
                maximum: 3
              featureType:
                description: Feature type identifier. Only applicable to layers of datatype 'geometries'
                type: string
              attribution:
                description: Short reference to recognize the author or provider
                type: string
              license:
                description: License applicable to the tiles
                type: string
              pointOfContact:
                description: Useful information to contact the authors or custodians for the layer (e.g. e-mail address, a physical address,  phone numbers, etc)
                type: string
              publisher:
                description: Organization or individual responsible for making the layer available
                type: string
              theme:
                description: Category where the layer can be grouped
                type: string
              crs:
                allOf:
                - description: Coordinate Reference System (CRS)
                - $ref: '#/components/schemas/crs'
              epoch:
                description: Epoch of the Coordinate Reference System (CRS)
                type: number
              minScaleDenominator:
                description: Minimum scale denominator for usage of the layer
                type: number
              maxScaleDenominator:
                description: Maximum scale denominator for usage of the layer
                type: number
              minCellSize:
                description: Minimum cell size for usage of the layer
                type: number
              maxCellSize:
                description: Maximum cell size for usage of the layer
                type: number
              maxTileMatrix:
                description: TileMatrix identifier associated with the minScaleDenominator
                type: string
              minTileMatrix:
                description: TileMatrix identifier associated with the maxScaleDenominator
                type: string
              boundingBox:
                allOf:
                - description: Minimum bounding rectangle surrounding the layer
                - $ref: '#/components/schemas/2DBoundingBox'
              created:
                allOf:
                - description: When the layer was first produced
                - $ref: '#/components/schemas/timeStamp'
              updated:
                allOf:
                - description: Last layer change/revision
                - $ref: '#/components/schemas/timeStamp'
              style:
                allOf:
                - description: Style used to generate the layer in the tileset
                - $ref: '#/components/schemas/tileSet/properties/style/allOf/1'
              geoDataClasses:
                description: URI identifying a class of data contained in this layer (useful to determine compatibility with styles or processes)
                type: array
                items:
                  type: string
              propertiesSchema:
                allOf:
                - description: Properties represented by the features in this layer. Can be the attributes of a feature dataset (datatype=geometries) or the rangeType of a coverage (datatype=coverage)
                - description: Attributes of the features or rangetypes of a coverage. Defined by a subset of the JSON Schema for the properties of a feature
                  type: object
                  required:
                  - type
                  - properties
                  properties:
                    type:
                      type: string
                      enum:
                      - object
                    required:
                      description: Implements 'multiplicity' by citing property 'name' defined as 'additionalProperties'
                      type: array
                      minItems: 1
                      items:
                        type: string
                    properties:
                      type: object
                      default: {}
                      additionalProperties:
                        description: No property names are defined but any property name they should be described by JSON Schema. So 'additionalProperties' implements 'name'.
                        type: object
                        properties:
                          title:
                            type: string
                          description:
                            description: Implements 'description'
                            type: string
                          type:
                            type: string
                            enum:
                            - array
                            - boolean
                            - integer
                            - 'null'
                            - number
                            - object
                            - string
                          enum:
                            description: Implements 'acceptedValues'
                            type: array
                            minItems: 1
                            items: {}
                            uniqueItems: true
                          format:
                            description: Complements implementation of 'type'
                            type: string
                          contentMediaType:
                            description: Implements 'mediaType'
                            t

# --- truncated at 32 KB (58 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/ogc/refs/heads/main/openapi/ogc-map-tiles-api-openapi.yml