The problem
Company names are messy. “JPMorgan”, “JP Morgan Chase & Co.”, and “JPMorgan Chase” are the same entity - but not to a system that needs exact identifiers. Before this API, resolving that ambiguity meant manual work or custom matching logic built outside CB entirely.What it does
Send a name, get back a ranked list of entity candidates. The API runs a three-stage pipeline: candidate retrieval, feature engineering, and ML scoring.Entity
entity_name
country (opt)
industry (opt)
lei (opt)
1 — Candidate Entity Retrieval
Searches the CB Entity Database for likely candidates
2 — Feature Engineering
Measures name similarity and metadata alignment per candidate
3 — ML Scoring
Scores each candidate as a match probability
Top Result
CBId
CBEntityName
confidence
rank
CBId- the canonical CB identifierCBEntityName- the standardized entity nameCBCountryOfRiskISO- country of riskconfidence- a score you can use to automate decisions: accept high matches, flag low ones for review
Use cases
- Portfolio onboarding - map client-supplied names to CB identifiers before loading, so data enters clean rather than requiring cleanup after
- Automated workflows - any pipeline ingesting external entity lists can run a matching pass upfront and carry reliable identifiers forward
- One-off lookups - resolve a single name before pulling analytics or checking coverage, without leaving the API
Getting started
- Get a bearer token -
POST /api/security/token - Submit names - POST /matching/text/match_external
- Read the schema - API reference
Back to all release notes


