Skip to main content
POST
Create PyAirbyte ingestion job

Authorizations

Authorization
string
header
required

The access token received from the authorization server in the OAuth 2.0 flow.

Body

application/json

Request model for creating an Airbyte ingestion job.

name
string
required

Name of the ingestion job.

source_name
string
required

PyAirbyte source identifier. For example, 'source-github'.

source_config
Source Config · object
required

Source configuration key-value pairs, including secrets.

schema_name
string
required

Target Iceberg schema where the job creates tables.

mode
enum<string>
required

Write mode.

Available options:
append,
overwrite,
merge
streams
string[] | null

Optional list of streams to sync. If empty, NexusOne syncs all streams.

merge
string | null

Comma-separated merge key columns. Defaults to Airbyte primary keys in merge mode.

schedule
string | null

Cron expression for scheduled runs.

domain
string | null

DataHub domain to assign to ingested tables.

tags
string[] | null

DataHub tags to assign to ingested tables.

owner_id
string | null

Owner user ID.

column_transformations
ColumnTransformation · object[] | null

Optional per-stream column transformations. Use the 'stream' field on each transformation to target a specific stream.

archive_staging
boolean
default:true

Archive staging files to archive/{run_id}/ instead of deleting them after ingestion.

add_ingestion_metadata
boolean
default:true

Add ingestion metadata columns to output tables: ingestion_time, ingestion_run_id, ingestion_mode, and dag_job_id.

Response

Ingestion job created successfully.

flow_url
string
required

Airflow URL to access the ingestion flow.

job_id
string<uuid> | null

A unique ID of the created ingestion job.

error
string | null

Error message if the ingestion fails due to any issue.