Skip to main content
Docs

Documentation

Everything you need to integrate CompanyLens into your application or AI agent.

Quickstart — REST API

Make your first company search call and get a real response in under 60 seconds.

Prerequisites

  1. A CompanyLens account — sign up free, no credit card required.
  2. An API key from your dashboard.
  3. curl installed (comes with macOS and most Linux distros).

Step 1: Get your API key

Go to Dashboard → API Keys and copy your key. It starts with cl_live_.

Keep your key private — never commit it to source control or expose it in client-side code.

Step 2: Make your first call

Search for companies named "Revolut" in the UK registry:

curl
curl -G https://api.companylens.io/v1/companies/search \
  -H "X-Api-Key: YOUR_API_KEY" \
  --data-urlencode "q=Revolut" \
  --data-urlencode "jurisdiction=gb" \
  --data-urlencode "status=active"
Node.js
const res = await fetch(
  'https://api.companylens.io/v1/companies/search?' +
  new URLSearchParams({ q: 'Revolut', jurisdiction: 'gb', status: 'active' }),
  { headers: { 'X-Api-Key': 'YOUR_API_KEY' } }
);
const data = await res.json();
Python
import httpx

r = httpx.get(
    'https://api.companylens.io/v1/companies/search',
    params={'q': 'Revolut', 'jurisdiction': 'gb', 'status': 'active'},
    headers={'X-Api-Key': 'YOUR_API_KEY'},
)
data = r.json()

Step 3: Understand the response

A successful call returns:

200 — Success
{
  "results": [
    {
      "entityId": "gb-08804411",       // stable unique ID — use this for follow-up calls
      "entityName": "Revolut Ltd",
      "jurisdiction": "gb",
      "status": "active",
      "incorporationDate": "2015-07-23",
      "address": {
        "line1": "7 Westferry Circus",
        "city": "London",
        "postcode": "E14 4HD",
        "country": "GB"
      }
    }
  ],
  "pagination": {
    "page": 1,
    "pageSize": 20,
    "total": 3,
    "hasMore": false                   // no more pages to fetch
  }
}
FieldWhat to do with it
entityIdPass to the Get company endpoint for officers and beneficial owners.
jurisdictionISO code for the source registry. Always present.
addressMay be null — not all registries publish addresses. Always check.
pagination.hasMoreIf true, increment page and request again.