# Codes & enums

Closed vocabularies used across `/v3` responses. Values may be **added** in a minor version.
Within a major version no value is removed or redefined. Tolerate values you do not
recognise.

## Resolution status

<ul class="code-grid"><li>matched</li><li>partial_match</li><li>inconclusive</li><li>no_match</li><li>not_found</li><li>pending</li><li>merged</li></ul>

## Entity status

`null` when unknown.

<ul class="code-grid"><li>active</li><li>inactive</li></ul>

## Enrichment status

On `enrichment.status`, and on the top-level `status` of a domain lookup.

<ul class="code-grid"><li>pending</li><li>building</li><li>refreshing</li><li>complete</li><li>failed</li></ul>

## Entity type

`type`

<ul class="code-grid"><li>business</li><li>nonprofit</li><li>government</li><li>person</li><li>other</li><li>unknown</li></ul>

`subtype`

<ul class="code-grid"><li>incorporated_entity</li><li>unincorporated_entity</li><li>nonprofit_entity</li><li>government_entity</li><li>natural_person</li><li>complex_business_structure</li><li>trading_name_only</li><li>other_entity</li><li>unknown</li></ul>

## Facets

`facets` describes ownership and legal form, not industry. Industry codes live under
`industry.schemes`.

`sector`

<ul class="code-grid"><li>private</li><li>public</li><li>government</li><li>nonprofit</li></ul>

`legal_form`. `corporation` is the generic incorporated form. `c_corp` and `s_corp` are used
only when a source states the election explicitly.

<ul class="code-grid"><li>llc</li><li>corporation</li><li>c_corp</li><li>s_corp</li><li>lp</li><li>llp</li><li>gp</li><li>sole_proprietorship</li><li>nonprofit_corp</li><li>pllc</li><li>pc</li><li>cooperative</li><li>municipal_agency</li><li>government_entity</li><li>trust</li><li>unknown</li></ul>

## Business model axes

On `classification`, ordered most-material-first. Index 0 is the dominant value, so group on
it rather than exploding the array. `[]` means undetermined. `market_segments` returns at
most two values and `revenue_models` at most three. `b2b2c` is never returned alongside
`b2b` or `b2c`. Both axes describe the resource that returns them: a domain describes that
domain's motion, an entity describes the whole company.

`market_segments`

<ul class="code-grid"><li>b2b</li><li>b2c</li><li>b2g</li><li>b2b2c</li></ul>

`revenue_models`

<ul class="code-grid"><li>subscription</li><li>usage_based</li><li>transaction_fee</li><li>marketplace</li><li>product_sales</li><li>services</li><li>advertising</li><li>licensing</li><li>lending_and_deposits</li><li>insurance_premium</li><li>leasing_rental</li><li>grants_donations</li></ul>

## Industry schemes

`industry.schemes` is keyed by scheme: `naics_2022` and `sic`. A scheme that was not
classified is absent, and an empty key is never returned. Within a scheme, the primary code
comes first.

## Identifier types

Returned in this order, canonicalized per type.

| Type | Format |
| --- | --- |
| `registration_id` | As issued by the registry, with the issuing `jurisdiction` |
| `cik` | Zero-padded to 10 digits |
| `lei` | 20 alphanumerics |
| `bic` | 8 or 11 characters |
| `ein` | `##-#######` |
| `duns` | 9 bare digits |
| `ticker` | Uppercase symbol |

## Basis provenance

With `include=basis`, each entry's `confidence` is `high`, `medium` or `low`, and every
citation carries a `source_type` and an `authority_tier`.

| `source_type` | `authority_tier` |
| --- | --- |
| `government_registry` | 1 |
| `public_profile` | 2 |
| `company_website` | 3 |
| `web` | 3 |

## Factor codes

`factors[]` entries have a `type` of `strength` or `limitation` and a stable `code`. Each
entry also carries its own `description` and `impact`, so you rarely need to map codes
yourself. `other` is the escape hatch on both lists.

Strengths

<ul class="code-grid"><li>name_exact_match</li><li>name_close_match</li><li>location_confirmed</li><li>jurisdiction_match</li><li>industry_match</li><li>registration_number_match</li><li>multiple_sources_corroboration</li><li>legal_entity_confirmed</li><li>headquarters_match</li><li>foreign_branch_match</li><li>branch_vs_subsidiary_clarity</li><li>legal_registration_verified</li><li>registry_identifier_anchored</li><li>legal_entity_confirmed_on_website</li><li>domain_content_matches_entity</li><li>consistent_entity_references</li><li>current_ownership_verified</li><li>website_official_status</li><li>authoritative_legal_documentation</li></ul>

Limitations

<ul class="code-grid"><li>no_location_provided</li><li>location_mismatch</li><li>multiple_potential_entities</li><li>name_too_generic</li><li>name_mismatch</li><li>numeric_identifier_only</li><li>insufficient_data</li><li>max_iterations_reached</li><li>no_legal_entity_confirmed</li><li>unsupported_entity_type</li><li>limited_entity_type_support</li><li>parent_entity_confusion</li><li>jurisdiction_mismatch</li><li>no_branch_registration_found</li><li>separate_legal_entities</li><li>product_vs_company</li><li>brand_vs_legal_entity_confusion</li><li>no_legal_entity_on_website</li><li>limited_domain_information</li><li>multiple_entities_mentioned</li><li>domain_ownership_changed</li><li>conflicting_ownership_info</li><li>domain_parked_or_inactive</li><li>entity_merged_redirect</li><li>reasoning_degraded</li></ul>

## Action codes

`actions[]` suggests how to sharpen an ambiguous query.

<ul class="code-grid"><li>add_location</li><li>clarify_name</li><li>provide_full_legal_name</li><li>specify_entity_relationship</li><li>specify_identifier_type</li><li>include_industry_context</li><li>search_for_parent_company</li><li>include_entity_name</li><li>add_jurisdiction</li></ul>

## Domain context

`domain_type`

<ul class="code-grid"><li>corporate_website</li><li>infrastructure</li><li>service_platform</li><li>email_domain</li><li>api_endpoint</li><li>cdn_domain</li><li>subdomain</li><li>parked_domain</li><li>personal_site</li><li>content_platform</li><li>placeholder_page</li><li>non_business</li><li>other</li></ul>

`domain_relationship`

<ul class="code-grid"><li>direct_owner</li><li>parent_company</li><li>infrastructure_provider</li><li>service_provider</li><li>email_provider</li><li>platform_provider</li></ul>

