Ordnance Survey Tile Sets API

The Tile Sets API from Ordnance Survey — 2 operation(s) for tile sets.

Operations 2

GET /collections/{collectionId}/tiles Retrieve a list of available vector tilesets for the specified collection. #
GET /collections/{collectionId}/tiles/{tileMatrixSetId} Retrieve the vector tileset metadata for the specified collection and tiling scheme (tile matrix set) #

Documentation

📖
Documentation
https://docs.os.uk/os-apis/accessing-os-apis/os-ngd-api-features
📖
APIReference
https://api.os.uk/features/ngd/ofa/v1/api
📖
Documentation
https://docs.os.uk/os-apis/accessing-os-apis/os-ngd-api-tiles
📖
APIReference
https://api.os.uk/maps/vector/ngd/ota/v1/api
📖
Documentation
https://docs.os.uk/os-apis/accessing-os-apis/os-downloads-api
📖
APIReference
https://api.os.uk/downloads/v1/openapi.yaml
📖
Documentation
https://docs.os.uk/os-apis/accessing-os-apis/os-net-api
📖
APIReference
https://api.os.uk/positioning/osnet/v1/openapi.yaml
📖
Documentation
https://docs.os.uk/os-apis/accessing-os-apis/os-places-api
📖
APIReference
https://docs.os.uk/os-apis/accessing-os-apis/os-places-api/technical-specification
📖
Documentation
https://docs.os.uk/os-apis/accessing-os-apis/os-names-api
📖
APIReference
https://docs.os.uk/os-apis/accessing-os-apis/os-names-api/technical-specification
📖
Documentation
https://docs.os.uk/os-apis/accessing-os-apis/os-linked-identifiers-api
📖
APIReference
https://docs.os.uk/os-apis/accessing-os-apis/os-linked-identifiers-api/technical-specification
📖
Documentation
https://docs.os.uk/os-apis/accessing-os-apis/os-features-api
📖
APIReference
https://docs.os.uk/os-apis/accessing-os-apis/os-features-api/technical-specification
📖
Documentation
https://docs.os.uk/os-apis/accessing-os-apis/os-maps-api
📖
APIReference
https://docs.os.uk/os-apis/accessing-os-apis/os-maps-api/technical-specification
📖
Documentation
https://docs.os.uk/os-apis/accessing-os-apis/os-vector-tile-api
📖
APIReference
https://docs.os.uk/os-apis/accessing-os-apis/os-vector-tile-api/technical-specification

Specifications

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/ordnance-survey-tile-sets-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 email required.

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

OpenAPI Specification

ordnance-survey-tile-sets-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: OS NGD API - Tiles Tile Sets API
  version: v1.8
servers:
- description: NGD OGC API - Tiles server
  url: https://api.os.uk/maps/vector/ngd/ota/v1
tags:
- name: Tile Sets
paths:
  /collections/{collectionId}/tiles:
    get:
      operationId: .collection.vector.getTileSetsList
      parameters:
      - description: Local identifier of a collection
        in: path
        name: collectionId
        required: true
        schema:
          $ref: '#/components/schemas/AllCollections'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/_collection_vector_getTileSetsList_200_response'
          description: List of available tilesets.
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/exceptionDto'
          description: The request was not supported.
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/exceptionDto'
          description: The requested resource does not exist on the server. For example, a path parameter had an incorrect value.
        '405':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/exceptionDto'
          description: The HTTP method requested is not supported. This endpoint only supports 'GET' requests.
        '406':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/exceptionDto'
          description: A request header value was not supported.
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/exceptionDto'
          description: A server error occurred.
        '504':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/exceptionDto'
          description: Gateway Timeout.
      summary: Retrieve a list of available vector tilesets for the specified collection.
      tags:
      - Tile Sets
  /collections/{collectionId}/tiles/{tileMatrixSetId}:
    get:
      operationId: .collection.vector.getTileSet
      parameters:
      - description: Local identifier of a collection
        in: path
        name: collectionId
        required: true
        schema:
          $ref: '#/components/schemas/AllCollections'
      - allowEmptyValue: false
        description: Identifier for a supported TileMatrixSet
        in: path
        name: tileMatrixSetId
        required: true
        schema:
          $ref: '#/components/schemas/TileSets'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/tileSet'
          description: Description of the tileset
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/exceptionDto'
          description: The request was not supported.
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/exceptionDto'
          description: The requested resource does not exist on the server. For example, a path parameter had an incorrect value.
        '405':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/exceptionDto'
          description: The HTTP method requested is not supported. This endpoint only supports 'GET' requests.
        '406':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/exceptionDto'
          description: A request header value was not supported.
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/exceptionDto'
          description: A server error occurred.
        '504':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/exceptionDto'
          description: Gateway Timeout.
      summary: Retrieve the vector tileset metadata for the specified collection and tiling scheme (tile matrix set)
      tags:
      - Tile Sets
components:
  schemas:
    exceptionDto:
      description: JSON schema for exceptions based on RFC 7807
      properties:
        type:
          type: string
        title:
          type: string
        status:
          type: integer
        detail:
          type: string
        instance:
          type: string
        code:
          type: integer
        description:
          type: string
        help:
          type: string
      required:
      - type
      title: Exception Schema
      type: object
    propertiesSchema_properties_value:
      description: No property names are defined but any property name they should be described by JSON Schema. So 'additionalProperties' implements 'name'.
      properties:
        type:
          enum:
          - array
          - boolean
          - integer
          - 'null'
          - number
          - object
          - string
          type: string
        enum:
          description: Implements 'acceptedValues'
          items:
            type: object
          minItems: 1
          type: array
          uniqueItems: true
      type: object
    crs:
      description: Reference to one coordinate reference system (CRS)
      format: uri
      title: CRS
      type: string
    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
      properties:
        tileMatrix:
          type: string
        minTileRow:
          minimum: 0
          type: integer
        maxTileRow:
          minimum: 0
          type: integer
        minTileCol:
          minimum: 0
          type: integer
        maxTileCol:
          minimum: 0
          type: integer
      required:
      - maxTileCol
      - maxTileRow
      - minTileCol
      - minTileRow
      - tileMatrix
      title: TileMatrixLimits
      type: object
    propertiesSchema:
      description: Attributes of the features or rangetypes of a coverage. Defined by a subset of the JSON Schema for the properties of a feature
      properties:
        type:
          enum:
          - object
          type: string
        properties:
          additionalProperties:
            $ref: '#/components/schemas/propertiesSchema_properties_value'
          default: {}
          type: object
      required:
      - properties
      - type
      type: object
    TileSets:
      enum:
      - '3857'
      - '27700'
      type: string
    geospatialData:
      properties:
        description:
          description: Brief narrative description of this tile matrix set, normally available for display to a human
          type: string
        id:
          description: Unique identifier of the Layer. Implementation of 'identifier'
          type: string
        dataType:
          allOf:
          - $ref: '#/components/schemas/DataType'
        geometryType:
          type: string
        maxTileMatrix:
          description: TileMatrix identifier associated with the minScaleDenominator
          type: string
        minTileMatrix:
          description: TileMatrix identifier associated with the maxScaleDenominator
          type: string
        propertiesSchema:
          $ref: '#/components/schemas/geospatialData_propertiesSchema'
      required:
      - dataType
      - id
      type: object
    geospatialData_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)
        type: object
      - $ref: '#/components/schemas/propertiesSchema'
    AllCollections:
      enum:
      - ngd-base
      - asu-bdy
      - wtr-ctch
      - trn-ntwk-railway
      - wtr-tidalboundary
      type: string
    _collection_vector_getTileSetsList_200_response:
      properties:
        links:
          items:
            $ref: '#/components/schemas/link'
          type: array
        tilesets:
          items:
            $ref: '#/components/schemas/tileSet-item'
          type: array
      required:
      - tilesets
      type: object
    DataType:
      description: Type of data
      enum:
      - map
      - vector
      - coverage
      type: string
    tileSet:
      allOf:
      - $ref: '#/components/schemas/tileSet-item'
      - type: object
      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
      properties:
        description:
          description: Brief narrative description of this tile set
          type: string
        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
          items:
            $ref: '#/components/schemas/tileMatrixLimits'
          type: array
        layers:
          items:
            $ref: '#/components/schemas/geospatialData'
          minItems: 1
          type: array
        boundingBox:
          allOf:
          - $ref: '#/components/schemas/BoundingBox2D'
      required:
      - crs
      - dataType
      - links
      title: Tile Set Metadata
      type: object
    tileSet-item:
      description: A minimal tileset element for use within a list of tilesets linking to full description of those tilesets.
      properties:
        id:
          description: identifier of the tile matrix set
          example: '3857'
          type: string
        title:
          description: A title for this tileset
          type: string
        dataType:
          allOf:
          - $ref: '#/components/schemas/DataType'
        crs:
          allOf:
          - $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.
          format: uri
          type: string
        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.
          items:
            $ref: '#/components/schemas/link'
          type: array
      required:
      - crs
      - dataType
      - links
      title: Tile Set Metadata item
      type: object
    BoundingBox2D:
      description: Minimum bounding rectangle surrounding a 2D resource in the CRS indicated elsewhere
      properties:
        lowerLeft:
          description: A 2D Point in the CRS indicated elsewhere
          items:
            type: number
          maxItems: 2
          minItems: 2
          type: array
        upperRight:
          description: A 2D Point in the CRS indicated elsewhere
          items:
            type: number
          maxItems: 2
          minItems: 2
          type: array
        crs:
          $ref: '#/components/schemas/crs'
      required:
      - lowerLeft
      - upperRight
      type: object
    link:
      properties:
        href:
          description: Supplies the URI to a remote resource (or resource fragment).
          example: http://data.example.com/buildingpart/123
          type: string
        rel:
          description: The type or semantics of the relation.
          example: alternate
          type: string
        type:
          description: A hint indicating what the media type of the result of dereferencing the link should be.
          example: application/geo+json
          type: string
        templated:
          description: This flag set to true if the link is a URL template.
          type: boolean
        varBase:
          description: A base path to retrieve semantic information about the variables used in URL template.
          example: /ogcapi/vars/
          type: string
        hreflang:
          description: A hint indicating what the language of the result of dereferencing the link should be.
          example: en
          type: string
        title:
          description: Used to label the destination of a link such that it can be used as a human-readable identifier.
          example: Building Part
          type: string
        length:
          type: integer
      required:
      - href
      - rel
      type: object
  securitySchemes:
    api-key:
      type: apiKey
      name: key
      in: query
    api-key-header:
      type: apiKey
      name: key
      in: header
    oauth2:
      type: oauth2
      name: oauth2
      flows:
        clientCredentials:
          tokenUrl: https://api.os.uk/oauth2/token/v1
          scopes: {}