ExchangeRebel Company Snapshot API

The Company Snapshot API from ExchangeRebel — 5 operation(s) for company snapshot.

GitHub OpenAPI

Operations 5

GET /toll/companies-uk/search Search UK companies by name in the register #
GET /toll/companies-uk/company/{companyNumber} Fetch a full UK company snapshot by company number #
GET /toll/companies-uk/ownership/{companyNumber} Walk the PSC ownership chain for a UK company #
GET /toll/companies-uk/lei/{lei} Fetch a normalized GLEIF LEI record by LEI code #
GET /toll/companies-uk/health Check the UK company snapshot service status #

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/exchangerebel-com:exchangerebel-com-company-snapshot-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

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

exchangerebel-com-company-snapshot-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: ExchangeRebel — pay-per-call APIs for AI agents (x402 on…
  version: 1.0.0
  contact:
    name: 'ExchangeRebel (operator: Rebel Data)'
    url: https://exchangerebel.com
    email: sound.money.investing@gmail.com
  x-guidance: 'All paid operations use x402 on Solana: call without payment to get a 402 challenge (SOL recipient + USDC token account + fresh memo), pay with the memo attached via the Solana Memo program, then retry with header X-Payment-Tx: <signature> and ?toll_memo=<memo>. Challenges are dual-version: the PAYMENT-REQUIRED header carries the x402 v2 PaymentRequired object and the response body carries the same challenge in x402 v1 form for compatibility. Free operations (security: []) include each service''s /health catalog with full response shapes. Prices in x-payment-info are USD per call unless the summary says otherwise (RPC is per 1,000-request block; Telegram provisioning is per bot-month; transcription is per minute of audio).'
  description: '67 data and utility APIs behind x402 tolls, settled in SOL or USDC on Solana. Call a paid endpoint without payment to receive a 402 x402 challenge (recipient + fresh memo), pay with the memo attached via the Solana Memo program, then retry with the X-Payment-Tx header and toll_memo query parameter. Free catalog/health endpoints are marked without x-payment-info. Full catalogs: GET /toll/discovery and each service''s /health.'
servers:
- url: https://exchangerebel.com
tags:
- name: Company Snapshot
paths:
  /toll/companies-uk/search:
    get:
      tags:
      - Company Snapshot
      summary: Search UK companies by name in the register
      responses:
        '200':
          description: Success. Response shape is documented in the service catalog (GET /health on the service).
          content:
            application/json:
              example:
                query: barclays
                results:
                - company_number: 00048839
                  company_name: BARCLAYS PLC
                  company_status: Active
                  incorporated_on: '1896-07-20'
                  has_lei: true
                envelope:
                  v: 1
                  service: company-snapshot
                  as_of: '2026-10-01T00:00:00Z'
                  source: Companies House
                  grade: official
                  changes:
                    supported: false
        '402':
          description: 'Payment Required (x402). The PAYMENT-REQUIRED response header carries the x402 v2 PaymentRequired object (base64 JSON: scheme, CAIP-2 network, amount, asset, payTo, plus the bazaar discovery extension); the response body carries the same challenge in x402 v1 form for compatibility, naming the SOL recipient and USDC token account on Solana plus a fresh memo. To pay on this service''s rail: pay with the memo attached (Solana Memo program), then retry with header ''X-Payment-Tx: <transaction signature>'' and query parameter ''toll_memo=<memo>''.'
      parameters:
      - name: q
        in: query
        required: true
        schema:
          type: string
        description: Company name keywords or a company number
      - name: limit
        in: query
        required: false
        schema:
          type: string
        description: 1-25, default 10
      x-payment-info:
        protocols:
        - x402
        price:
          mode: fixed
          currency: USD
          amount: '0.02'
      security:
      - x402Payment: []
      operationId: getTollCompaniesUkSearch
      x-operation-id-source: derived
  /toll/companies-uk/company/{companyNumber}:
    get:
      tags:
      - Company Snapshot
      summary: Fetch a full UK company snapshot by company number
      responses:
        '200':
          description: Success. Response shape is documented in the service catalog (GET /health on the service).
          content:
            application/json:
              example:
                paid_with: onchain
                company_number: 01959090
                profile:
                  company_number: 01959090
                  company_name: DYSON TECHNOLOGY LIMITED
                  company_status: Active
                  company_category: Private Limited Company
                  country_of_origin: United Kingdom
                  incorporated_on: '1985-11-14'
                  dissolved_on: null
                  registered_office:
                    care_of: null
                    po_box: null
                    address: TETBURY HILL, MALMESBURY, WILTSHIRE
                    town: WILTSHIRE
                    county: null
                    country: null
                    postcode: SN16 0RP
                  sic_codes:
                  - 27510 - Manufacture of electric domestic appliances
                  - 72190 - Other research and experimental development on natural sciences and engineering
                  accounts:
                    accounting_reference_day: '31'
                    accounting_reference_month: '12'
                    next_due_date: '2026-09-30'
                    last_made_up_date: '2024-12-31'
                    category: FULL
                  confirmation_statement:
                    next_due_date: '2027-03-09'
                    last_made_up_date: '2026-02-23'
                  returns:
                    next_due_date: '2017-03-11'
                    last_made_up_date: '2016-02-11'
                psc:
                  status: records_found
                  statement: null
                  records:
                  - kind: corporate
                    name: Dyson Uk Holdings Limited
                    control:
                    - control_type: ownership-of-shares
                      band: 75-100
                      band_label: 75–100%
                      as_published: ownership-of-shares-75-to-100-percent
                    - control_type: voting-rights
                      band: 75-100
                      band_label: 75–100%
                      as_published: voting-rights-75-to-100-percent
                    - control_type: appoint-and-remove-directors
                      band: null
                      band_label: null
                      as_published: right-to-appoint-and-remove-directors
                    registration_number: 03772814
                  note: 'PSC data is published here in privacy-minimal form: names and control bands only (plus the registration number for corporate PSCs, the chain-walking key). Dates of birth, addresses of individuals, nationality, residence, occupation and identity-verification fields are never stored or served.'
                lei:
                  lei: 213800CME59HCE5XBI94
                  relationships:
                    direct_parent:
                      type: reporting_exception
                      reason: NO_LEI
                    ultimate_parent:
                      lei: 254900AZHJ583G4NOC24
                      legal_name: WEYBOURNE HOLDINGS PTE. LTD.
                sources:
                - Companies House (OGL v3.0)
                - GLEIF LEI data (CC0)
                attribution: Contains public sector information licensed under the Open Government Licence v3.0 (Companies House). LEI data provided by GLEIF under the CC0 licence via the GLEIF Access Service. Neither GLEIF nor Companies House endorses this service.
                positioning: Registry facts with disclosed-confidence joins — data only; not for credit, eligibility, or KYC determinations.
                envelope:
                  v: 1
                  service: company-snapshot
                  as_of: '2026-10-01T00:00:00Z'
                  source: Companies House / GLEIF
                  grade: official
                  changes:
                    supported: false
        '402':
          description: 'Payment Required (x402). The PAYMENT-REQUIRED response header carries the x402 v2 PaymentRequired object (base64 JSON: scheme, CAIP-2 network, amount, asset, payTo, plus the bazaar discovery extension); the response body carries the same challenge in x402 v1 form for compatibility, naming the SOL recipient and USDC token account on Solana plus a fresh memo. To pay on this service''s rail: pay with the memo attached (Solana Memo program), then retry with header ''X-Payment-Tx: <transaction signature>'' and query parameter ''toll_memo=<memo>''.'
      parameters:
      - name: companyNumber
        in: path
        required: true
        schema:
          type: string
        description: 8-character Companies House company number
      x-payment-info:
        protocols:
        - x402
        price:
          mode: fixed
          currency: USD
          amount: '0.05'
      security:
      - x402Payment: []
      operationId: getTollCompaniesUkCompanyByCompanyNumber
      x-operation-id-source: derived
  /toll/companies-uk/ownership/{companyNumber}:
    get:
      tags:
      - Company Snapshot
      summary: Walk the PSC ownership chain for a UK company
      responses:
        '200':
          description: Success. Response shape is documented in the service catalog (GET /health on the service).
          content:
            application/json:
              example:
                company_number: 01959090
                psc_chain:
                  root:
                    company_number: 01959090
                    controllers:
                    - kind: corporate
                      name: Dyson Uk Holdings Limited
                      registration_number: 03772814
                      chain:
                        company_number: 03772814
                  max_depth: 5
                  percentages: PSC control is published by Companies House as control BANDS only (25–50%, 50–75%, 75–100% of shares / voting rights, or a yes/no right to appoint and remove directors). Exact percentages are never published and never invented here.
                gleif_parent_chain:
                  available: true
                  lei: 213800CME59HCE5XBI94
                  ultimate_parent:
                    lei: 254900AZHJ583G4NOC24
                    legal_name: WEYBOURNE HOLDINGS PTE. LTD.
                envelope:
                  v: 1
                  service: company-snapshot
                  as_of: '2026-10-01T00:00:00Z'
                  source: Companies House / GLEIF
                  grade: official
                  changes:
                    supported: false
        '402':
          description: 'Payment Required (x402). The PAYMENT-REQUIRED response header carries the x402 v2 PaymentRequired object (base64 JSON: scheme, CAIP-2 network, amount, asset, payTo, plus the bazaar discovery extension); the response body carries the same challenge in x402 v1 form for compatibility, naming the SOL recipient and USDC token account on Solana plus a fresh memo. To pay on this service''s rail: pay with the memo attached (Solana Memo program), then retry with header ''X-Payment-Tx: <transaction signature>'' and query parameter ''toll_memo=<memo>''.'
      parameters:
      - name: companyNumber
        in: path
        required: true
        schema:
          type: string
        description: 8-character Companies House company number
      x-payment-info:
        protocols:
        - x402
        price:
          mode: fixed
          currency: USD
          amount: '0.25'
      security:
      - x402Payment: []
      operationId: getTollCompaniesUkOwnershipByCompanyNumber
      x-operation-id-source: derived
  /toll/companies-uk/lei/{lei}:
    get:
      tags:
      - Company Snapshot
      summary: Fetch a normalized GLEIF LEI record by LEI code
      responses:
        '200':
          description: Success. Response shape is documented in the service catalog (GET /health on the service).
          content:
            application/json:
              example:
                lei: 213800CME59HCE5XBI94
                envelope:
                  v: 1
                  service: company-snapshot
                  as_of: '2025-10-30T14:37:09Z'
                  source: GLEIF
                  grade: official
                  changes:
                    supported: false
        '402':
          description: 'Payment Required (x402). The PAYMENT-REQUIRED response header carries the x402 v2 PaymentRequired object (base64 JSON: scheme, CAIP-2 network, amount, asset, payTo, plus the bazaar discovery extension); the response body carries the same challenge in x402 v1 form for compatibility, naming the SOL recipient and USDC token account on Solana plus a fresh memo. To pay on this service''s rail: pay with the memo attached (Solana Memo program), then retry with header ''X-Payment-Tx: <transaction signature>'' and query parameter ''toll_memo=<memo>''.'
      parameters:
      - name: lei
        in: path
        required: true
        schema:
          type: string
        description: 20-character ISO 17442 LEI
      x-payment-info:
        protocols:
        - x402
        price:
          mode: fixed
          currency: USD
          amount: '0.05'
      security:
      - x402Payment: []
      operationId: getTollCompaniesUkLeiByLei
      x-operation-id-source: derived
  /toll/companies-uk/health:
    get:
      tags:
      - Company Snapshot
      summary: Check the UK company snapshot service status
      responses:
        '200':
          description: Success. Response shape is documented in the service catalog (GET /health on the service).
      security: []
      operationId: getTollCompaniesUkHealth
      x-operation-id-source: derived
components:
  securitySchemes:
    x402Payment:
      type: apiKey
      in: header
      name: X-Payment-Tx
      description: 'x402 toll payment proof: the Solana transaction signature of a payment carrying the memo from the 402 challenge; send together with ?toll_memo=<memo>. Payment itself is made on-chain in SOL or USDC to the recipient named in the challenge.'