Ordnance Survey OS OpenData Users API

Operations available to customers using the OpenData plan

Operations 4

GET /featureTypes/{featureType}/{id} Query ID when input featureType is known
GET /identifierTypes/{identifierType}/{id} Queries ID when input identifierType is known
GET /identifiers/{id} Query identifer
GET /productVersionInfo/{correlationMethod} Returns product version details of the source data products

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-os-opendata-users-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-os-opendata-users-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: OS Linked Identifiers OS OpenData Users API
  version: 1.0.0
  x-apievangelist-provenance:
    method: searched
    generated: '2026-07-26'
    assembly: Assembled by the API Evangelist enrichment pipeline from the per-operation OpenAPI 3.0.1 documents Ordnance Survey publishes inline on each docs.os.uk technical-specification page. Paths, parameters, schemas, security schemes and responses are verbatim from those published documents; only the per-page fragments were merged into one document per API.
    sources:
    - https://docs.os.uk/os-apis/accessing-os-apis/os-linked-identifiers-api/technical-specification/feature-types.md
    - https://docs.os.uk/os-apis/accessing-os-apis/os-linked-identifiers-api/technical-specification/identifier-types.md
    - https://docs.os.uk/os-apis/accessing-os-apis/os-linked-identifiers-api/technical-specification/identifier.md
    - https://docs.os.uk/os-apis/accessing-os-apis/os-linked-identifiers-api/technical-specification/product-version-information.md
    server_url_published:
    - ${lids.api.server}/search/links/v1
    server_url_note: The published fragments carry an unresolved deployment template variable; substituted with the production host documented at https://api.os.uk/search/links/v1 and in the api.os.uk link index.
  description: Operations available to customers using the OpenData plan
servers:
- url: https://api.os.uk/search/links/v1
security:
- ApiKeyAuth: []
- OAuth2:
  - read
tags:
- name: OS OpenData Users
  description: Operations available to customers using the OpenData plan
paths:
  /featureTypes/{featureType}/{id}:
    get:
      tags:
      - OS OpenData Users
      summary: Query ID when input featureType is known
      description: Returns associated Linked Identifiers, when feature type is known. Returns an object.
      parameters:
      - $ref: '#/components/parameters/featureIdentifier'
      - name: featureType
        in: path
        description: Feature type of ID being queried
        explode: true
        required: true
        schema:
          type: string
          enum:
          - BLPU
          - ORRoadNode
          - ORRoadLink
          - Road
          - RoadLink
          - Street
          - TopographicArea
      responses:
        '200':
          description: Search results matching criteria
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/linkedIdentifier'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '405':
          $ref: '#/components/responses/MethodNotAllowed'
        '429':
          $ref: '#/components/responses/TooManyRequests'
        '500':
          $ref: '#/components/responses/InternalServerError'
        '503':
          $ref: '#/components/responses/ServiceUnavailable'
  /identifierTypes/{identifierType}/{id}:
    get:
      tags:
      - OS OpenData Users
      summary: Queries ID when input identifierType is known
      description: 'Returns associated Linked Identifiers, when the input identifier type is known. Returns an object.

        '
      parameters:
      - $ref: '#/components/parameters/featureIdentifier'
      - name: identifierType
        in: path
        description: Identifier type of ID being queried
        explode: true
        required: true
        schema:
          type: string
          enum:
          - GUID
          - TOID
          - UPRN
          - USRN
      responses:
        '200':
          description: Search results matching criteria
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/linkedIdentifier'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '405':
          $ref: '#/components/responses/MethodNotAllowed'
        '429':
          $ref: '#/components/responses/TooManyRequests'
        '500':
          $ref: '#/components/responses/InternalServerError'
        '503':
          $ref: '#/components/responses/ServiceUnavailable'
  /identifiers/{id}:
    get:
      tags:
      - OS OpenData Users
      summary: Query identifer
      description: Query by identifier and find its associated IDs. May return more than one set of links due to the namespace overlap between UPRNs and USRNs.
      parameters:
      - $ref: '#/components/parameters/featureIdentifier'
      responses:
        '200':
          description: Search results matching criteria
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/linkedIdentifierSet'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '405':
          $ref: '#/components/responses/MethodNotAllowed'
        '429':
          $ref: '#/components/responses/TooManyRequests'
        '500':
          $ref: '#/components/responses/InternalServerError'
        '503':
          $ref: '#/components/responses/ServiceUnavailable'
  /productVersionInfo/{correlationMethod}:
    get:
      tags:
      - OS OpenData Users
      summary: Returns product version details of the source data products
      description: Returns current valid version information for identifier relationships
      parameters:
      - name: correlationMethod
        in: path
        description: Correlation method being queried
        explode: true
        required: true
        schema:
          type: string
          enum:
          - RoadLink_TOID_TopographicArea_TOID_2
          - Road_TOID_TopographicArea_TOID_3
          - Street_USRN_TopographicArea_TOID_4
          - BLPU_UPRN_TopographicArea_TOID_5
          - RoadLink_TOID_Road_TOID_7
          - RoadLink_TOID_Street_USRN_8
          - BLPU_UPRN_RoadLink_TOID_9
          - Road_TOID_Street_USRN_10
          - BLPU_UPRN_Street_USRN_11
          - ORRoadLink_GUID_RoadLink_TOID_12
          - ORRoadNode_GUID_RoadLink_TOID_13
      responses:
        '200':
          description: Returns product version information about the requested correlation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/correlationMethodInformation'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '405':
          $ref: '#/components/responses/MethodNotAllowed'
        '429':
          $ref: '#/components/responses/TooManyRequests'
        '500':
          $ref: '#/components/responses/InternalServerError'
        '503':
          $ref: '#/components/responses/ServiceUnavailable'
components:
  responses:
    MethodNotAllowed:
      description: Request used an unsupported HTTP method, e.g. DELETE or PUT.
    InternalServerError:
      description: Generic internal server error.
    Unauthorized:
      description: The client has not provided authentication or incorrect authentication.
    Forbidden:
      description: The client has authenticated its access but does not have sufficient rights to complete the request.
    NotFound:
      description: The server has not found anything matching the Request-URI.
    ServiceUnavailable:
      description: Temporary outage due to overloading or maintenance.
    TooManyRequests:
      description: Exceeded the number of requests per minute (rate-limit).
    BadRequest:
      description: E.g. missing query parameter, malformed syntax.
  parameters:
    featureIdentifier:
      name: id
      in: path
      description: ID of the feature that is being matched
      required: true
      schema:
        type: string
        minLength: 1
        maxLength: 36
  schemas:
    correlationMethodIdentifier:
      type: string
      enum:
      - RoadLink_TOID_TopographicArea_TOID_2
      - Road_TOID_TopographicArea_TOID_3
      - Street_USRN_TopographicArea_TOID_4
      - BLPU_UPRN_TopographicArea_TOID_5
      - RoadLink_TOID_Road_TOID_7
      - RoadLink_TOID_Street_USRN_8
      - BLPU_UPRN_RoadLink_TOID_9
      - Road_TOID_Street_USRN_10
      - BLPU_UPRN_Street_USRN_11
      - ORRoadLink_GUID_RoadLink_TOID_12
      - ORRoadNode_GUID_RoadLink_TOID_13
    identifierType:
      type: string
      enum:
      - GUID
      - TOID
      - UPRN
      - USRN
    featureType:
      type: string
      enum:
      - BLPU
      - ORRoadNode
      - ORRoadLink
      - Road
      - RoadLink
      - Street
      - TopographicArea
    correlationMethodInformation:
      type: object
      required:
      - methodIdentfier
      - productCreationDate
      - identifier1Source
      - identifier2Source
      additionalProperties: false
      properties:
        methodIdentifier:
          $ref: '#/components/schemas/correlationMethodIdentifier'
        productCreationDate:
          type: string
        productPublicationName:
          type: string
        identifier1Source:
          $ref: '#/components/schemas/identifierSource'
        identifier2Source:
          $ref: '#/components/schemas/identifierSource'
    identifierSource:
      type: object
      required:
      - productName
      - productPublicationDate
      - featureType
      - identifierType
      additionalProperties: false
      properties:
        productName:
          type: string
          enum:
          - AddressBase Premium
          - OS MasterMap Highways Network - Roads
          - OS MasterMap Topography Layer
          - OS Open Roads
        productPublicationDate:
          type: string
        productPublicationName:
          type: string
        featureType:
          $ref: '#/components/schemas/featureType'
        identifierType:
          $ref: '#/components/schemas/identifierType'
    linkedIdentifier:
      type: object
      required:
      - linkedIdentifier
      - correlations
      additionalProperties: false
      properties:
        linkedIdentifier:
          title: linkedIdentifier
          type: object
          required:
          - identifier
          - featureType
          - identifierType
          additionalProperties: false
          properties:
            identifier:
              type: string
            featureType:
              $ref: '#/components/schemas/featureType'
            identifierType:
              $ref: '#/components/schemas/identifierType'
        correlations:
          type: array
          title: correlations
          items:
            type: object
            required:
            - correlationMethodIdentifier
            - correlatedFeatureType
            - correlatedIdentifierType
            - correlatedIdentifiers
            additionalProperties: false
            properties:
              searchedIdentifierVersionDate:
                type: string
              searchedIdentifierVersionNumber:
                type: number
              correlationMethodIdentifier:
                $ref: '#/components/schemas/correlationMethodIdentifier'
              correlatedFeatureType:
                $ref: '#/components/schemas/featureType'
              correlatedIdentifierType:
                $ref: '#/components/schemas/identifierType'
              correlatedIdentifiers:
                type: array
                required:
                - identifier
                - confidence
                - correlationIdentifier
                additionalProperties: false
                items:
                  type: object
                  properties:
                    identifier:
                      type: string
                    versionNumber:
                      type: number
                    versionDate:
                      type: string
                    confidence:
                      type: string
                    correlationIdentifier:
                      type: string
    linkedIdentifierSet:
      type: object
      required:
      - linkedIdentifiers
      additionalProperties: false
      properties:
        linkedIdentifiers:
          type: array
          title: linkedIdentifiers
          items:
            $ref: '#/components/schemas/linkedIdentifier'
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: query
      name: key
    OAuth2:
      type: oauth2
      flows:
        clientCredentials:
          tokenUrl: https://api.os.uk/oauth2/token/v1
          scopes:
            read: Grants read access