cmp_….
Everything else — tickers, CIKs, ISINs, local market codes — is an identifier attached
to that company. Most routes accept any of them; one route insists on the canonical ID.
This page gives you the exact rules.
The canonical cmp_ ID
The registry spans roughly 25,000 listed companies across 82 countries. A company’s
cmp_ ID is stable: tickers change, companies re-list, ISINs get reassigned, but the
cmp_ ID keeps pointing at the same company. You get it from any registry search:
data carries the company’s cmp_ ID alongside its identifiers.
What each route accepts
The four registry routes are strict.GET /v1/companies/:company_id and its
siblings /identifiers, /listings, and /events require a literal cmp_ ID in the
path — a ticker there returns 404:
/v1/companies/:company_id/... dataset route is flexible. Market data,
short interest, news, events, guidance, executive compensation, the Taiwan and Korea
datasets, disclosures, 20-F — all of them resolve the path segment as a ticker, CIK,
ISIN, or cmp_ ID, whichever you pass:
404 whose message names the accepted
forms — so a failed lookup tells you what to try next rather than leaving you guessing.
Non-US symbols carry a market suffix
Outside the US, a bare local code is ambiguous — Taiwan’s 6976 and Japan’s 6976 are different companies. Pass the suffixed symbol:Listing every identifier
GET /v1/companies/:company_id/identifiers returns every identifier the registry holds
for a company — useful when you arrive with one identifier system and need another:
CIK, TICKER, ISIN, and market-specific systems such as
TW_UBN (Taiwan unified business number) and DART_CORP (Korea DART corporation
code), among others. Sibling routes complete the picture:
GET /v1/companies/:company_id/listings— every exchange listingGET /v1/companies/:company_id/events— splits and name changes (partial history)
One company, many tickers
A company can trade under several symbols — dual listings, share classes, ADRs. The guidance and earnings routes (/guidance*, /earnings-results) deliberately resolve
your identifier to every ticker the company is known by, not just its primary
listing, so data filed under a secondary symbol still shows up. You do not need to
enumerate a company’s tickers yourself before querying those datasets.
Related pages
Coverage and freshness
What the registry covers, and how to read the coverage object on responses.
Errors
What a 404 from an unresolvable identifier looks like.