> ## Documentation Index
> Fetch the complete documentation index at: https://dev.kernel.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Get alignment result

> Returns the status and result of an alignment job. When `status` is `completed`, the `record` object has the same top-level shape as a combined result plus the `alignment` block.

Returns the status and result of an alignment job started with [`POST /v1/alignment`](https://dev.kernel.ai/api-reference/endpoint/alignment).

When `status` is `completed`, `record` has the same shape as [`GET /v1/combined/{job_id}`](https://dev.kernel.ai/api-reference/endpoint/get-combined) plus:

* `external_id`, echoed back
* `identity_resolution_source`: `resolved` when identity resolution ran in this job, `existing_link` when the record kept its Kernel ID
* `parentage` entities carry your `external_id` when they exist in your dataset
* `alignment`: the recommended action, the duplicate group, Kernel ID history and drifted identity inputs

## Completed response

```json theme={null}
{
  "id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
  "status": "completed",
  "created_at": "2026-10-13T10:00:00Z",
  "completed_at": "2026-10-13T10:06:12Z",
  "record": {
    "external_id": "stripe-001",
    "kernel_id": "6347422643",
    "identity_resolution_confidence": "HIGH",
    "identity_resolution_reasoning": "Matched by domain and legal name.",
    "identity_resolution_source": "existing_link",
    "company_registration": { "number": "4675506", "country": "US", "source": "Delaware Division of Corporations" },
    "company_registration_number": "4675506",
    "legal_info": {
      "legal_name": "Stripe, Inc.",
      "trading_name": "Stripe",
      "website": "https://stripe.com",
      "country": "US",
      "confidence": "HIGH",
      "reasoning": "Confirmed via Stripe terms of service page."
    },
    "trading_info": {
      "trading_name": "Stripe",
      "website": "https://stripe.com",
      "country": "US",
      "confidence": "HIGH",
      "reasoning": "Primary brand site confirmed via domain ownership."
    },
    "entity_classification": { "type": "Company", "subtype": "Operating", "reasoning": "Classified as an operating company." },
    "firmographics": {
      "kernel_id": "6347422643",
      "op_status": { "operational_status": "Active", "reasoning": "Website live and recent filings found." },
      "location": {
        "operating": { "street": "354 Oyster Point Blvd", "city": "South San Francisco", "state": "CA", "country": "US", "postcode": "94080", "reasoning": "Headquarters per website." },
        "registered": { "street": null, "city": null, "state": "DE", "country": "US", "postcode": null, "reasoning": "Delaware registration." }
      },
      "headcount": { "count": 8000, "count_entity": 8000, "count_consolidated": 8000, "confidence": "HIGH", "reasoning": "LinkedIn headcount." },
      "revenue": { "usd": null, "usd_entity": null, "consolidated_usd": null, "confidence": null, "local_currency": null, "local_currency_entity": null, "local": null, "local_entity": null, "consolidated_local": null, "consolidated_currency": null, "reasoning": null, "source": null },
      "industry": { "naics": null, "isic": null, "sic": null, "nace": null }
    },
    "parentage": {
      "kernel_id": "6347422643",
      "parent": null,
      "top_parent": {
        "kernel_id": "6347422643",
        "external_id": "stripe-001",
        "trading_name": "Stripe",
        "legal_name": "Stripe, Inc.",
        "website": "https://stripe.com",
        "country": "US",
        "entity_category": "Company",
        "entity_sub_category": "Operating",
        "confidence": "HIGH"
      },
      "top_operating_parent": {
        "kernel_id": "6347422643",
        "external_id": "stripe-001",
        "trading_name": "Stripe",
        "legal_name": "Stripe, Inc.",
        "website": "https://stripe.com",
        "country": "US",
        "entity_category": "Company",
        "entity_sub_category": "Operating",
        "confidence": "HIGH"
      },
      "regional_subsidiary": { "is_regional": false, "regional_scope": null, "reasoning": "Operates globally from its US entity." }
    },
    "alignment": {
      "recommended_action": {
        "action": "Merge",
        "association_type": null,
        "target": { "kernel_id": "6347422643", "external_id": "stripe-002" },
        "reasoning": "Exact duplicate of stripe-002, the group's primary record."
      },
      "duplicates": {
        "is_duplicate": true,
        "type": "EXACT",
        "group_id": "1842",
        "primary": { "kernel_id": "6347422643", "external_id": "stripe-002" },
        "members": [
          { "external_id": "stripe-002", "kernel_id": "6347422643", "type": "PRIMARY" },
          { "external_id": "stripe-001", "kernel_id": "6347422643", "type": "EXACT" }
        ],
        "reasoning": "Same legal entity and website.",
        "checked_at": "2026-10-13T10:05:50Z"
      },
      "previous_kernel_ids": [],
      "drifted_identity_inputs": ["country"],
      "completed_at": "2026-10-13T10:06:10Z"
    }
  }
}
```

## The alignment block

| Field | Description |
| - | - |
| `recommended_action.action` | `Delete`, `Merge`, `Associate`, `Associate (missing parent)`, `Create` or `None` |
| `recommended_action.association_type` | Kind of association when `action` is an `Associate` variant |
| `recommended_action.target` | The merge survivor or the parent to associate with, as `kernel_id` / `external_id`. `null` when there is no target |
| `duplicates.members[].type` | `PRIMARY` for the record the group resolves to, else `EXACT`, `REGIONAL`, `LOCATION`, `TRADING` or `WEBSITE` |
| `previous_kernel_ids` | Kernel IDs this `external_id` carried before the current one, oldest first |
| `drifted_identity_inputs` | Identity fields whose value differs from when the Kernel ID was resolved. Empty when identity was resolved in this job |
| `completed_at` | When the cleaning pass finished |

## Parentage

`parentage` has the same `parent`, `top_parent`, `top_operating_parent` and `regional_subsidiary` fields as [`GET /v1/resolve-parent/{job_id}`](https://dev.kernel.ai/api-reference/endpoint/get-resolve-parent), including the conditional presence of `top_operating_parent`. Each hierarchy entity also carries your `external_id` when that entity exists in your dataset, otherwise `null`.

## No match

If the record is unlinked and resolution finds no entity, the job still completes: `kernel_id` is `null`, the `identity_resolution_*` fields explain the attempt, and every other block is `null`.

## Failed response

| `error_type` | Meaning |
| - | - |
| `not_enabled` | No active tracked-usage contract, or the request came through a partner integration |
| `identity_inputs_missing` | First sight of this `external_id` without `legal_name`, `trading_name` or `website` |
| `alignment_in_progress` | Another job for the same `external_id` is still running. Retry after it completes |


## OpenAPI

````yaml GET /v1/alignment/{job_id}
openapi: 3.1.0
info:
  title: Kernel API
  description: Resolve company identities to canonical entities with a simple async API
  version: 1.0.0
  contact:
    email: support@kernel.ai
  license:
    name: MIT
servers:
  - url: https://api.kernel.ai/rest
    description: Production
security:
  - apiKeyAuth: []
tags:
  - name: Entity Resolution
    description: Resolve a company to a canonical entity
  - name: Firmographics
    description: Retrieve and enrich firmographic data for resolved entities
  - name: Parentage
    description: Look up parent and top-parent entities in a corporate hierarchy
  - name: Combined
    description: Resolve an entity and run a follow-up enrichment in one call
  - name: Alignment
    description: >-
      Link a CRM record to a Kernel entity and run the full cleaning pass in one
      call
  - name: LinkedIn Lookup
    description: Provisional LinkedIn company match jobs (not Kernel-verified)
  - name: Data feedback
    description: Open and manage data feedback tickets for CRM accounts
paths:
  /v1/alignment/{job_id}:
    get:
      tags:
        - Alignment
      summary: Get alignment result
      description: >-
        Returns the status and result of an alignment job. When `status` is
        `completed`, the `record` object has the same top-level shape as a
        combined result plus the `alignment` block.
      operationId: getAlignment
      parameters:
        - name: job_id
          in: path
          description: Job ID returned by the POST endpoint
          required: true
          schema:
            type: string
            example: a1b2c3d4-e5f6-7890-abcd-ef1234567890
      responses:
        '200':
          description: Job status response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AlignmentJobStatus'
        '404':
          description: Job not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                error: Job not found
        '429':
          description: Rate limit exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                error: Rate limit exceeded. Retry after 60 seconds.
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                error: Internal server error
components:
  schemas:
    AlignmentJobStatus:
      type: object
      required:
        - status
      properties:
        id:
          description: >-
            Unique identifier for the job. Present when `status` is `pending`,
            `processing`, or `completed`.
          type: string
          example: a1b2c3d4-e5f6-7890-abcd-ef1234567890
        jobid:
          description: >-
            Unique identifier for the job. Present only when `status` is
            `failed`.
          type: string
          example: a1b2c3d4-e5f6-7890-abcd-ef1234567890
        status:
          description: >-
            Current status of the job. Terminal states are `completed` and
            `failed`.
          type: string
          enum:
            - pending
            - processing
            - completed
            - failed
        created_at:
          description: ISO 8601 timestamp when the job was created.
          type: string
          format: date-time
          example: '2025-06-05T12:00:00Z'
        completed_at:
          description: ISO 8601 timestamp when the job reached a terminal state.
          type: string
          format: date-time
          example: '2025-06-05T12:00:05Z'
        record:
          $ref: '#/components/schemas/AlignmentResult'
          description: Alignment result. Present when `status` is `completed`.
        error_message:
          description: Error message. Present when `status` is `failed`.
          type: string
        error_type:
          description: >-
            Machine-readable error category. Present when `status` is `failed`.
            One of `not_enabled`, `identity_inputs_missing`,
            `alignment_in_progress`, `unknown`.
          type: string
    Error:
      required:
        - error
      type: object
      properties:
        error:
          description: Error description.
          type: string
          example: Entity not found
    AlignmentResult:
      type: object
      required:
        - external_id
        - kernel_id
        - identity_resolution_confidence
        - identity_resolution_reasoning
        - identity_resolution_source
        - legal_info
        - trading_info
        - entity_classification
        - firmographics
        - parentage
        - alignment
      properties:
        external_id:
          description: Your CRM identifier, echoed back from the request.
          type: string
          example: stripe-001
        kernel_id:
          description: >-
            The unique identifier for the resolved entity in Kernel's database.
            `null` when no entity is resolved.
          type:
            - string
            - 'null'
          example: '6347422643'
        identity_resolution_confidence:
          description: Confidence that the resolved identity is correct.
          type: string
          enum:
            - HIGH
            - MEDIUM
            - LOW
        identity_resolution_reasoning:
          description: Explanation of how the identity was resolved.
          type: string
        identity_resolution_source:
          description: >-
            `resolved` when identity resolution ran in this job; `existing_link`
            when the record kept the Kernel ID it already had.
          type: string
          enum:
            - resolved
            - existing_link
        company_registration:
          description: >-
            The company registration number stored for the resolved entity, with
            its issuing country and register. Null when none is stored. Same
            field as entity resolution.
          nullable: true
          allOf:
            - $ref: '#/components/schemas/CompanyRegistration'
        company_registration_number:
          description: >-
            Deprecated. Same value as company_registration.number. Prefer
            company_registration for number, country, and source. Null when
            unknown.
          type:
            - string
            - 'null'
          example: '01234567'
          deprecated: true
        legal_info:
          description: Legal entity information. `null` when no entity is resolved.
          oneOf:
            - type: 'null'
            - $ref: '#/components/schemas/LegalInfo'
        trading_info:
          description: Trading entity information. `null` when no entity is resolved.
          oneOf:
            - type: 'null'
            - $ref: '#/components/schemas/TradingInfo'
        entity_classification:
          description: Classification of the entity. `null` when no entity is resolved.
          oneOf:
            - type: 'null'
            - $ref: '#/components/schemas/EntityClassification'
        linkedin:
          description: >-
            LinkedIn profile match without `reasoning`. Only present when
            `settings.match_to_linkedin` is true. `null` when no profile matched
            or no entity was resolved.
          oneOf:
            - type: 'null'
            - type: object
              properties:
                url:
                  description: Full LinkedIn company profile URL.
                  type:
                    - string
                    - 'null'
                  example: https://www.linkedin.com/company/stripe
                slug:
                  description: Company slug extracted from the LinkedIn URL.
                  type:
                    - string
                    - 'null'
                  example: stripe
                match_type:
                  description: >-
                    How the LinkedIn profile was matched. `actual` is a verified
                    direct match; `indicative` is a best-guess match; `none`
                    when no match was found.
                  type: string
                  enum:
                    - actual
                    - indicative
                    - none
        firmographics:
          description: Firmographic enrichment result. `null` when no entity was resolved.
          oneOf:
            - type: 'null'
            - $ref: '#/components/schemas/FirmographicResult'
        parentage:
          description: Corporate hierarchy. `null` when no entity was resolved.
          oneOf:
            - type: 'null'
            - $ref: '#/components/schemas/AlignmentParentage'
        alignment:
          description: Alignment outcome. `null` when no entity was resolved.
          oneOf:
            - type: 'null'
            - $ref: '#/components/schemas/AlignmentBlock'
    CompanyRegistration:
      type: object
      required:
        - number
        - country
        - source
      properties:
        number:
          description: >-
            Company registration number found in official registers during
            identity resolution, in canonical form (for example HRB775145).
          type:
            - string
            - 'null'
          example: '01234567'
        country:
          description: >-
            ISO 3166-1 alpha-2 code of the country that issued the number. Null
            when unknown.
          type:
            - string
            - 'null'
          example: GB
        source:
          description: >-
            Name of the register that issued the number, for example Companies
            House or Amtsgericht Stuttgart. Infobel when the number comes from
            Infobel data.
          type:
            - string
            - 'null'
          example: Companies House
    LegalInfo:
      type: object
      required:
        - country
        - reasoning
        - trading_name
        - confidence
        - legal_name
        - website
      properties:
        country:
          description: Country of the legal entity.
          type:
            - string
            - 'null'
          example: US
        reasoning:
          description: Explanation of how the legal entity was identified.
          type: string
          example: Confirmed via Stripe terms of service page.
        trading_name:
          description: Trading name associated with the legal entity.
          type:
            - string
            - 'null'
          example: Stripe, Inc.
        confidence:
          description: Confidence in the legal entity info.
          type: string
          enum:
            - HIGH
            - MEDIUM
            - LOW
        legal_name:
          description: Registered legal name.
          type:
            - string
            - 'null'
          example: Stripe, Inc.
        website:
          description: Official URL of the legal entity.
          type:
            - string
            - 'null'
          example: https://stripe.com
    TradingInfo:
      type: object
      required:
        - country
        - website
        - reasoning
        - trading_name
        - confidence
      properties:
        country:
          description: Country of the trading entity's operational region.
          type:
            - string
            - 'null'
          example: US
        website:
          description: Primary trading website URL.
          type:
            - string
            - 'null'
          example: https://stripe.com
        reasoning:
          description: Explanation of how the trading identity was identified.
          type: string
          example: Primary brand site confirmed via domain ownership.
        trading_name:
          description: Primary trading name.
          type:
            - string
            - 'null'
          example: Stripe
        confidence:
          description: Confidence in the trading identity info.
          type: string
          enum:
            - HIGH
            - MEDIUM
            - LOW
    EntityClassification:
      type: object
      required:
        - type
        - subtype
      properties:
        type:
          description: 'Entity category. One of: Company, Government, Education.'
          type: string
          example: Company
        subtype:
          description: >-
            Entity sub-category. E.g. Operating, HoldCo/Investment, Business
            Unit, Establishment.
          type: string
          example: Operating
        reasoning:
          description: Explanation of the classification.
          type:
            - string
            - 'null'
          example: Classified as an operating company based on commercial activity.
    FirmographicResult:
      required:
        - kernel_id
        - op_status
        - location
        - headcount
        - revenue
        - industry
      type: object
      properties:
        kernel_id:
          description: The unique identifier for the entity in Kernel's database.
          type: string
          example: '2532551796'
        requested_kernel_id:
          description: >-
            The `kernel_id` in the request. Present on `/v1/firmographics`
            results only, not inside a combined result.
          type: string
          example: '2532551796'
        remapped:
          description: >-
            `true` when the requested `kernel_id` was retired by a merge, so
            `kernel_id` is the Kernel ID of the surviving entity. Present on
            `/v1/firmographics` results only.
          type: boolean
          example: false
        retired_at:
          description: >-
            When a merge retired the requested `kernel_id`. `null` when
            `remapped` is `false`. Present on `/v1/firmographics` results only.
          type:
            - string
            - 'null'
          format: date-time
          example: null
        op_status:
          description: Operational status of the entity. `null` when not yet determined.
          oneOf:
            - type: 'null'
            - type: object
              properties:
                operational_status:
                  description: Current operational status.
                  type:
                    - string
                    - 'null'
                  enum:
                    - Active
                    - Out of business
                    - Absorbed
                    - Undetermined
                    - null
                  example: Active
                reasoning:
                  description: Explanation of how the operational status was determined.
                  type:
                    - string
                    - 'null'
                  example: Entity is actively operating with no signs of cessation.
        location:
          description: Operating and registered addresses. `null` when not yet determined.
          oneOf:
            - type: 'null'
            - type: object
              properties:
                operating:
                  description: Operating address.
                  oneOf:
                    - type: 'null'
                    - $ref: '#/components/schemas/Address'
                registered:
                  description: Registered/legal address.
                  oneOf:
                    - type: 'null'
                    - $ref: '#/components/schemas/Address'
        headcount:
          description: Headcount data. `null` when not yet determined.
          oneOf:
            - type: 'null'
            - type: object
              properties:
                count:
                  description: >-
                    Recommended (headline) headcount. Kernel automatically picks
                    the entity-direct or consolidated figure based on entity
                    category; equals `count_entity` or `count_consolidated`.
                  type:
                    - number
                    - 'null'
                  example: 5300
                count_entity:
                  description: Entity-direct headcount, excluding subsidiaries.
                  type:
                    - number
                    - 'null'
                  example: 5300
                count_consolidated:
                  description: Consolidated headcount including subsidiaries.
                  type:
                    - number
                    - 'null'
                  example: 8150
                confidence:
                  description: Confidence in the headcount figure.
                  type:
                    - string
                    - 'null'
                  enum:
                    - HIGH
                    - MEDIUM
                    - LOW
                    - null
                reasoning:
                  description: Explanation of how the headcount was determined.
                  type:
                    - string
                    - 'null'
                  example: Headcount derived from annual report figures.
        revenue:
          description: Revenue data. `null` when not yet determined.
          oneOf:
            - type: 'null'
            - type: object
              properties:
                usd:
                  description: >-
                    Recommended (headline) annual revenue in USD. Kernel
                    automatically picks the entity-direct or consolidated figure
                    based on entity category; equals `usd_entity` or
                    `consolidated_usd`.
                  type:
                    - number
                    - 'null'
                  example: 16000000000
                usd_entity:
                  description: Entity-direct annual revenue in USD, excluding subsidiaries.
                  type:
                    - number
                    - 'null'
                  example: 16000000000
                consolidated_usd:
                  description: Consolidated annual revenue in USD including subsidiaries.
                  type:
                    - number
                    - 'null'
                  example: 16000000000
                confidence:
                  description: Confidence in the revenue figure.
                  type:
                    - string
                    - 'null'
                  enum:
                    - HIGH
                    - MEDIUM
                    - LOW
                    - null
                local_currency:
                  description: >-
                    The local currency of the recommended source figure, before
                    USD conversion.
                  type:
                    - string
                    - 'null'
                  example: USD
                local_currency_entity:
                  description: >-
                    The local currency of the entity-direct source figure,
                    before USD conversion.
                  type:
                    - string
                    - 'null'
                  example: USD
                local:
                  description: >-
                    Recommended annual revenue in local currency, matching
                    `usd`.
                  type:
                    - number
                    - 'null'
                  example: 16000000000
                local_entity:
                  description: Entity-direct annual revenue in local currency.
                  type:
                    - number
                    - 'null'
                  example: 16000000000
                consolidated_local:
                  description: Consolidated revenue in local currency.
                  type:
                    - number
                    - 'null'
                  example: 16000000000
                consolidated_currency:
                  description: >-
                    The currency of the consolidated source figure, before USD
                    conversion.
                  type:
                    - string
                    - 'null'
                  example: USD
                reasoning:
                  description: Explanation of how the revenue figure was determined.
                  type:
                    - string
                    - 'null'
                  example: Revenue sourced from audited annual financial statements.
                source:
                  description: >-
                    Source of the revenue data. One of: `identified`,
                    `estimated`.
                  type:
                    - string
                    - 'null'
                  enum:
                    - identified
                    - estimated
                    - null
                  example: identified
        industry:
          $ref: '#/components/schemas/IndustryResult'
        parent_address_operating_street:
          description: >-
            Operating street address of the entity's immediate parent. `null`
            when the entity has no immediate parent or the value is unavailable.
          type:
            - string
            - 'null'
        parent_address_operating_city:
          description: >-
            Operating city of the entity's immediate parent. `null` when the
            entity has no immediate parent or the value is unavailable.
          type:
            - string
            - 'null'
          example: London
        parent_address_operating_state:
          description: >-
            Operating state or province of the entity's immediate parent. `null`
            when the entity has no immediate parent or the value is unavailable.
          type:
            - string
            - 'null'
        parent_address_operating_postcode:
          description: >-
            Operating ZIP or postal code of the entity's immediate parent.
            `null` when the entity has no immediate parent or the value is
            unavailable.
          type:
            - string
            - 'null'
        parent_address_operating_country:
          description: >-
            Operating country of the entity's immediate parent. `null` when the
            entity has no immediate parent or the value is unavailable.
          type:
            - string
            - 'null'
          example: United Kingdom
        parent_address_operating_country_code:
          description: >-
            Operating country as an ISO 3166-1 alpha-2 code of the entity's
            immediate parent. `null` when the entity has no immediate parent or
            the value is unavailable.
          type:
            - string
            - 'null'
          example: GB
        parent_kernel_revenue_effective_usd:
          description: >-
            Recommended annual revenue in USD (the `revenue.usd` figure). For a
            parent this is normally its consolidated group revenue of the
            entity's immediate parent. `null` when the entity has no immediate
            parent or the value is unavailable.
          type:
            - number
            - 'null'
          example: 23000000000
        parent_kernel_headcount_effective:
          description: >-
            Recommended headcount (the `headcount.count` figure). For a parent
            this is normally its consolidated group headcount of the entity's
            immediate parent. `null` when the entity has no immediate parent or
            the value is unavailable.
          type:
            - number
            - 'null'
          example: 59000
        parent_naics_2022_national_industry:
          description: >-
            NAICS 2022 national industry, as `code - label` of the entity's
            immediate parent. `null` when the entity has no immediate parent or
            the value is unavailable.
          type:
            - string
            - 'null'
          example: 522110 - Commercial Banking
        parent_sic_industry_code:
          description: >-
            SIC 1987 industry code of the entity's immediate parent. `null` when
            the entity has no immediate parent or the value is unavailable.
          type:
            - string
            - 'null'
          example: '6021'
        top_parent_address_operating_street:
          description: >-
            Operating street address of the entity's top (ultimate) parent.
            `null` when the entity has no top (ultimate) parent or the value is
            unavailable.
          type:
            - string
            - 'null'
        top_parent_address_operating_city:
          description: >-
            Operating city of the entity's top (ultimate) parent. `null` when
            the entity has no top (ultimate) parent or the value is unavailable.
          type:
            - string
            - 'null'
          example: London
        top_parent_address_operating_state:
          description: >-
            Operating state or province of the entity's top (ultimate) parent.
            `null` when the entity has no top (ultimate) parent or the value is
            unavailable.
          type:
            - string
            - 'null'
        top_parent_address_operating_postcode:
          description: >-
            Operating ZIP or postal code of the entity's top (ultimate) parent.
            `null` when the entity has no top (ultimate) parent or the value is
            unavailable.
          type:
            - string
            - 'null'
        top_parent_address_operating_country:
          description: >-
            Operating country of the entity's top (ultimate) parent. `null` when
            the entity has no top (ultimate) parent or the value is unavailable.
          type:
            - string
            - 'null'
          example: United Kingdom
        top_parent_address_operating_country_code:
          description: >-
            Operating country as an ISO 3166-1 alpha-2 code of the entity's top
            (ultimate) parent. `null` when the entity has no top (ultimate)
            parent or the value is unavailable.
          type:
            - string
            - 'null'
          example: GB
        top_parent_kernel_revenue_effective_usd:
          description: >-
            Recommended annual revenue in USD (the `revenue.usd` figure). For a
            parent this is normally its consolidated group revenue of the
            entity's top (ultimate) parent. `null` when the entity has no top
            (ultimate) parent or the value is unavailable.
          type:
            - number
            - 'null'
          example: 23000000000
        top_parent_kernel_headcount_effective:
          description: >-
            Recommended headcount (the `headcount.count` figure). For a parent
            this is normally its consolidated group headcount of the entity's
            top (ultimate) parent. `null` when the entity has no top (ultimate)
            parent or the value is unavailable.
          type:
            - number
            - 'null'
          example: 59000
        top_parent_naics_2022_national_industry:
          description: >-
            NAICS 2022 national industry, as `code - label` of the entity's top
            (ultimate) parent. `null` when the entity has no top (ultimate)
            parent or the value is unavailable.
          type:
            - string
            - 'null'
          example: 522110 - Commercial Banking
        top_parent_sic_industry_code:
          description: >-
            SIC 1987 industry code of the entity's top (ultimate) parent. `null`
            when the entity has no top (ultimate) parent or the value is
            unavailable.
          type:
            - string
            - 'null'
          example: '6021'
    AlignmentParentage:
      type: object
      description: >-
        Corporate hierarchy for the record, in the shape returned by the
        resolve-parent and combined endpoints.
      properties:
        kernel_id:
          description: Kernel identifier of the aligned entity.
          type: string
          example: '6347422643'
        parent:
          description: Immediate parent. `null` when the entity has none.
          oneOf:
            - type: 'null'
            - $ref: '#/components/schemas/AlignmentParentageEntity'
        top_parent:
          description: >-
            The ultimate parent at the top of the corporate hierarchy. For
            standalone entities, `top_parent` points to the entity itself and
            `parent` is `null`.
          oneOf:
            - type: 'null'
            - $ref: '#/components/schemas/AlignmentParentageEntity'
        top_operating_parent:
          description: >-
            Highest operating (non-holding) parent. Present unless the entity is
            a standalone non-operating company; `null` when no operating company
            exists in the upward chain.
          oneOf:
            - type: 'null'
            - $ref: '#/components/schemas/AlignmentParentageEntity'
        regional_subsidiary:
          $ref: '#/components/schemas/RegionalSubsidiary'
    AlignmentBlock:
      type: object
      description: >-
        The alignment outcome: recommended action, duplicate group, Kernel ID
        history and identity-input drift.
      properties:
        recommended_action:
          $ref: '#/components/schemas/AlignmentAction'
        duplicates:
          $ref: '#/components/schemas/AlignmentDuplicates'
        previous_kernel_ids:
          description: >-
            Kernel IDs this `external_id` carried before the current one, oldest
            first.
          type: array
          items:
            type: string
          example: []
        drifted_identity_inputs:
          description: >-
            Identity fields whose value differs from when the Kernel ID was
            resolved. Empty when identity was resolved in this job.
          type: array
          items:
            type: string
            enum:
              - legal_name
              - trading_name
              - website
              - linkedin_url
              - country
              - state
              - city
              - address
          example:
            - country
        completed_at:
          description: When the cleaning pass finished.
          type:
            - string
            - 'null'
          format: date-time
    Address:
      type: object
      properties:
        street:
          description: Street address.
          type:
            - string
            - 'null'
          example: 354 Oyster Point Blvd
        city:
          description: City.
          type:
            - string
            - 'null'
          example: South San Francisco
        state:
          description: State or province.
          type:
            - string
            - 'null'
          example: California
        country:
          description: Country.
          type:
            - string
            - 'null'
          example: United States
        postcode:
          description: ZIP or postal code.
          type:
            - string
            - 'null'
          example: '94080'
        reasoning:
          description: Explanation of how the address was determined.
          type:
            - string
            - 'null'
          example: Address derived from company registration records.
    IndustryResult:
      type: object
      description: >-
        Industry classification under three standards. Always an object; each
        standard is always an object, with `null` levels where the evidence did
        not support a code.
      required:
        - naics
        - sic
        - nace
      properties:
        naics:
          $ref: '#/components/schemas/NaicsIndustry'
        sic:
          $ref: '#/components/schemas/SicIndustry'
        nace:
          $ref: '#/components/schemas/NaceIndustry'
    AlignmentParentageEntity:
      description: >-
        A hierarchy entity, as returned by the resolve-parent and combined
        endpoints, plus your CRM identifier when the entity exists in your
        dataset.
      allOf:
        - $ref: '#/components/schemas/ParentEntity'
        - type: object
          properties:
            external_id:
              description: >-
                Your CRM identifier for the entity, when it exists in your
                dataset.
              type:
                - string
                - 'null'
              example: stripe-002
    RegionalSubsidiary:
      type: object
      properties:
        is_regional:
          description: >-
            Whether the entity operates as a regional subsidiary. `null` when
            not yet determined.
          type:
            - boolean
            - 'null'
          example: false
        regional_scope:
          description: >-
            The country scope of the regional operation. `null` when not a
            regional subsidiary or not yet determined.
          type:
            - string
            - 'null'
          example: India
        reasoning:
          description: Explanation of the regional subsidiary classification.
          type:
            - string
            - 'null'
          example: Operates as a regional subsidiary focused on the Indian market.
    AlignmentAction:
      type: object
      properties:
        action:
          description: >-
            Recommended CRM action. One of `Delete`, `Merge`, `Associate`,
            `Associate (missing parent)`, `Create`, or `None`.
          type:
            - string
            - 'null'
          example: Merge
        association_type:
          description: >-
            How the account should be associated when `action` is an Associate
            variant. One of `set_initial_parent`, `reparent`, `create_parent`,
            or `remove_parent`.
          type:
            - string
            - 'null'
          example: null
        target:
          description: >-
            The merge survivor or the parent to associate with. `null` when the
            action has no target.
          oneOf:
            - type: 'null'
            - $ref: '#/components/schemas/AlignmentEntityRef'
        reasoning:
          description: Explanation for the recommended action.
          type:
            - string
            - 'null'
    AlignmentDuplicates:
      type: object
      properties:
        is_duplicate:
          description: Whether the aligned record is part of a duplicate group.
          type: boolean
        type:
          description: >-
            How the aligned record itself is linked into the group. `null` when
            it is not a duplicate.
          type:
            - string
            - 'null'
          example: EXACT
        group_id:
          description: Identifier grouping the accounts considered the same duplicate set.
          type:
            - string
            - 'null'
          example: '1842'
        primary:
          description: >-
            The record the group resolves to. `null` when the aligned record is
            not a duplicate.
          oneOf:
            - type: 'null'
            - $ref: '#/components/schemas/AlignmentEntityRef'
        members:
          description: Every member of the duplicate group, including the primary.
          type: array
          items:
            $ref: '#/components/schemas/AlignmentDuplicateMember'
        reasoning:
          description: Explanation of the duplicate match.
          type:
            - string
            - 'null'
        checked_at:
          description: ISO 8601 timestamp of the last duplicate check.
          type:
            - string
            - 'null'
          format: date-time
    NaicsIndustry:
      type: object
      description: >-
        NAICS classification. Every level is `null` when the standard is not
        classified.
      required:
        - version
        - sector
        - subsector
        - industry_group
        - industry
        - national_industry
        - reasoning
      properties:
        version:
          type: string
          description: The edition of the standard the codes come from.
          example: NAICS 2022
        sector:
          description: Two-digit sector.
          oneOf:
            - type: 'null'
            - $ref: '#/components/schemas/IndustryLevel'
        subsector:
          description: Three-digit subsector.
          oneOf:
            - type: 'null'
            - $ref: '#/components/schemas/IndustryLevel'
        industry_group:
          description: Four-digit industry group.
          oneOf:
            - type: 'null'
            - $ref: '#/components/schemas/IndustryLevel'
        industry:
          description: Five-digit industry.
          oneOf:
            - type: 'null'
            - $ref: '#/components/schemas/IndustryLevel'
        national_industry:
          description: Six-digit national industry.
          oneOf:
            - type: 'null'
            - $ref: '#/components/schemas/IndustryLevel'
        reasoning:
          description: >-
            Explanation of how the classification was determined, as hyphen
            bullets. `null` when the standard is not classified or no
            explanation meets the reasoning rules.
          type:
            - string
            - 'null'
          example: >-
            - Payment processing and related financial tools are provided to
            businesses through online and in-person checkout products.

            - The activity is classified under 522320: Financial Transactions
            Processing, Reserve, and Clearinghouse Activities, because
            transaction processing is delivered as a financial service.

            - Reusable software publishing is not established as the principal
            offering, since payment acceptance and financial services are
            emphasized.
    SicIndustry:
      type: object
      description: >-
        SIC classification. Every level is `null` when the standard is not
        classified.
      required:
        - version
        - division
        - major_group
        - industry_group
        - industry
        - reasoning
      properties:
        version:
          type: string
          description: The edition of the standard the codes come from.
          example: SIC 1987
        division:
          description: Division, a letter.
          oneOf:
            - type: 'null'
            - $ref: '#/components/schemas/IndustryLevel'
        major_group:
          description: Two-digit major group.
          oneOf:
            - type: 'null'
            - $ref: '#/components/schemas/IndustryLevel'
        industry_group:
          description: Three-digit industry group.
          oneOf:
            - type: 'null'
            - $ref: '#/components/schemas/IndustryLevel'
        industry:
          description: Four-digit industry.
          oneOf:
            - type: 'null'
            - $ref: '#/components/schemas/IndustryLevel'
        reasoning:
          description: >-
            Explanation of how the classification was determined, as hyphen
            bullets. `null` when the standard is not classified or no
            explanation meets the reasoning rules.
          type:
            - string
            - 'null'
          example: >-
            - Payment processing and financial tools are presented as the
            principal activity, with businesses offered services to accept and
            optimize payments online and in person.

            - The activity is classified under 6099: Functions Related To
            Depository Banking, Not Elsewhere Classified, as payment services
            are delivered to merchants.

            - Computer software is used to support payment services, but
            reusable software is not presented as the principal product sold.
    NaceIndustry:
      type: object
      description: >-
        NACE classification. Every level is `null` when the standard is not
        classified.
      required:
        - version
        - section
        - division
        - group
        - class
        - reasoning
      properties:
        version:
          type: string
          description: The edition of the standard the codes come from.
          example: NACE Rev. 2.1
        section:
          description: Section, a letter.
          oneOf:
            - type: 'null'
            - $ref: '#/components/schemas/IndustryLevel'
        division:
          description: Two-digit division.
          oneOf:
            - type: 'null'
            - $ref: '#/components/schemas/IndustryLevel'
        group:
          description: Group, such as `66.1`.
          oneOf:
            - type: 'null'
            - $ref: '#/components/schemas/IndustryLevel'
        class:
          description: Class, such as `66.19`.
          oneOf:
            - type: 'null'
            - $ref: '#/components/schemas/IndustryLevel'
        reasoning:
          description: >-
            Explanation of how the classification was determined, as hyphen
            bullets. `null` when the standard is not classified or no
            explanation meets the reasoning rules.
          type:
            - string
            - 'null'
          example: >-
            - Payment processing and related financial services are presented as
            Stripe’s principal offerings, enabling businesses to accept payments
            online and in person.

            - These transaction services are classified under 66.19 as
            activities auxiliary to financial services, rather than as monetary
            intermediation.

            - The software-services alternative is less suitable because payment
            acceptance and financial transactions are presented as the
            customer-facing service.
    ParentEntity:
      type: object
      required:
        - kernel_id
      properties:
        kernel_id:
          description: Kernel ID of the parent entity.
          type: string
          example: '7944166432'
        trading_name:
          description: Parent trading name.
          type:
            - string
            - 'null'
          example: Alphabet Inc.
        legal_name:
          description: Parent registered legal name.
          type:
            - string
            - 'null'
          example: Alphabet Inc.
        website:
          description: Parent company website URL.
          type:
            - string
            - 'null'
          example: https://abc.xyz
        country:
          description: Parent country (ISO 3166-1 alpha-2 or full name).
          type:
            - string
            - 'null'
          example: US
        entity_category:
          description: 'Parent entity category. One of: Company, Government, Education.'
          type:
            - string
            - 'null'
          enum:
            - Company
            - Government
            - Education
            - null
        entity_sub_category:
          description: >-
            Parent entity sub-category. E.g. Operating, HoldCo/Investment,
            Business Unit, Establishment.
          type:
            - string
            - 'null'
          example: HoldCo/Investment
        reasoning:
          description: Explanation of why this entity was identified as the parent.
          type:
            - string
            - 'null'
          example: >-
            Google LLC is a wholly-owned subsidiary of Alphabet Inc., its parent
            holding company.
        confidence:
          description: 'Confidence in the parent identification. One of: HIGH, MEDIUM, LOW.'
          type:
            - string
            - 'null'
          enum:
            - HIGH
            - MEDIUM
            - LOW
            - null
    AlignmentEntityRef:
      type: object
      properties:
        kernel_id:
          description: Kernel identifier for the related entity.
          type:
            - string
            - 'null'
          example: '8514783664'
        external_id:
          description: >-
            Your CRM identifier for the related entity, when it exists in your
            dataset.
          type:
            - string
            - 'null'
          example: stripe-002
    AlignmentDuplicateMember:
      type: object
      properties:
        external_id:
          description: CRM identifier of the duplicate group member.
          type:
            - string
            - 'null'
          example: stripe-002
        kernel_id:
          description: Kernel identifier of the duplicate group member.
          type:
            - string
            - 'null'
          example: '6347422643'
        type:
          description: >-
            `PRIMARY` for the record the group resolves to; otherwise the match
            that grouped this member: `EXACT`, `REGIONAL`, `LOCATION`, `TRADING`
            or `WEBSITE`.
          type:
            - string
            - 'null'
          example: EXACT
    IndustryLevel:
      type: object
      description: >-
        One level of a classification hierarchy. `code` is `null` only for the
        top-level `Other` value, and `value` is then the label.
      required:
        - value
        - code
        - label
      properties:
        value:
          type: string
          description: Code and label joined as `code - label`.
          example: 52 - Finance and Insurance
        code:
          type:
            - string
            - 'null'
          description: Classification code. `null` only for the top-level `Other` value.
          example: '52'
        label:
          type: string
          description: Name of the classification at this level.
          example: Finance and Insurance
  securitySchemes:
    apiKeyAuth:
      type: apiKey
      in: header
      name: x-api-key
      description: Include your API key in the x-api-key header.

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.