Company lookup

The company_lookup module identifies a company when all you have is a name, or an identifier such as a website. It's the light "which company is this?" door: give it what you have, and it returns the matching company, or a short ranked list of candidates for a fuzzy name.

Who uses it: anyone building a lookup or picker flow, and any step that needs to turn a human-entered company name into a Veridion ID before verifying or enriching it.

📘

Lookup returns candidates; Match & Enrich resolves to one

company_lookup is discovery: it answers "which of these did you mean?" and hands you candidates to choose from. If you need the single canonical company resolved from messy or bulk input, plus a full enriched profile, use the Match & Enrich API instead.

Input contract

Requiresone identity anchor: company_name (with matches for fuzzy, or in for exact) or company_website (with in).
Allowsoptional company_location and/or company_postcode to disambiguate. These act as gates: only candidates matching them are returned.
Rejectsevery other filter.

company_name with matches is fuzzy and accepts a single name only (no arrays). company_name with in is an exact match and takes an array.

Three ways to look up a company

Exact identifier to the one company. A website or a veridion_id is unique, so it returns the single company it belongs to, with no namesakes possible. Because the identifier is exact, it resolves to the specific entity behind it: 3mfrance.fr returns 3M France, the French entity with its own veridion_id, rather than the US 3M parent company. Use this when you need a particular national entity rather than the global brand.

Exact name plus a country to pin the right company. When a name is shared across countries, an exact name and a country rank the intended company first. "Nationwide" with GB points to Nationwide Building Society; with US, to Nationwide Mutual Insurance, two unrelated companies that happen to share a name. Lookup returns a ranked candidate list, so same-named companies elsewhere fall below the one you meant.

Fuzzy name to the canonical company. Fuzzy matching turns the name a person would actually type, "Johnson and Johnson" with a missing ampersand or an ordinary typo, into the canonical company and its veridion_id, the key every other module needs to do real work.

Behavior

For an exact identifier (a website, or a name with in), lookup returns the matching company. For a fuzzy name (matches), it returns a short, ranked list of candidates, best match first. A location or postcode narrows an ambiguous name.

Output

Each candidate is returned as a full company profile at the root of the result object, including its veridion_id, which you can feed straight into company_verification , for example. See Response fields and types.

📘

No evidence block

company_lookup is the one module that carries no evidence. Its result is the ranked candidate list, and the "evidence" is simply the name and identity ranking order. See Explainability (evidence).

Request

Resolve a messy or misspelled name with the fuzzy matches relation:

{
  "module": "company_lookup",
  "query": {
    "and": [
      { "attribute": "company_name", "relation": "matches", "value": "Astrazaneca" }
    ]
  }
}