---
title: "Join Growth Data Artifacts"
method: POST
path: "/api/data-artifacts/join"
tags: ["growth-artifact-jobs"]
---

# Join Growth Data Artifacts

`POST /api/data-artifacts/join`

## Request

- Base URL: `https://platform.verbiflow.com/api/bridge`
- URL: `https://platform.verbiflow.com/api/bridge/api/data-artifacts/join`
- Auth: one of:
  - HTTP bearer and API key in header `x-flage-org-id`
  - HTTP bearer and API key in header `x-flage-org-slug`

## Request body

- ArtifactJoinRequest
  - `cardinality` 'one_to_one' | 'many_to_one' | 'one_to_many' | 'many_to_many'
  - `contract_version` 'artifact-join.v2'
  - `how` 'inner' | 'left' | 'right' | 'full'
  - `left_artifact_id` string, required
  - `left_on` string, required
  - `normalize_key` 'none' | 'lowercase' | 'domain' | 'linkedin_url'
  - `output_label` string, nullable
  - `right_artifact_id` string, required
  - `right_on` string, required

## Response `202`

Successful Response

- ArtifactJoinStartResponse
  - `accepted_pricing` AcceptedJobPricing, required: Immutable rule used to rate this job; final usage determines the actual charge.
    - `basis` 'none' | 'successful_execution' | 'successful_provider_attempt' | 'requested_record' | 'delivered_record' | 'successful_record' | 'provider_unit' | 'provider_cost_usd' | 'resolver_reported', required
    - `billing_owner` 'none' | 'growth_capability' | 'source_execution' | 'enrichment_reservation', required
    - `credits_per_unit` string, required: Exact Decimal customer-credit rate per unit, encoded as a string. This is not the final charge.
    - `pricing_version` string, required: Immutable published rate-book revision captured when the job was admitted.
    - `unit` string, required: Unit counted by basis, such as a record or execution.
  - `artifact_id` string, required
  - `execution_contract_digest` string, required
  - `execution_id` string, required
  - `failed` boolean, required
  - `finished` boolean, required
  - `generation_id` string, required
  - `job_id` string, required
  - `operation_key` string, required
  - `phase` string, required
  - `progress_current` integer, required
  - `progress_total` integer, required
  - `request_digest` string, required
  - `result_kind` 'artifact_join', required
  - `semantic_fingerprint` string, required
  - `status` 'queued' | 'running' | 'blocked' | 'completed' | 'failed', required
  - `summary` ArtifactPublicMetadata, required: Sanitized producer metadata. Keys vary by tool kind; secret and private storage-coordinate keys are removed recursively.

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/verbiflow/apis/verbiflow-sdk-http-contract.md) - [All operations](https://skmtc.dev/verbiflow/apis/verbiflow-sdk-http-contract/llms.txt) - [OpenAPI document](https://skmtc.dev/verbiflow/apis/verbiflow-sdk-http-contract/revisions/c80e903ef8f3?raw)
