Reference
Job configuration reference
Reference for job_config form and field-mapping schemas, defaults, option sources, stored values, API editing, and run snapshots.
job_config is a runtime-editable schema declared by a job template and copied to each created job. Every run snapshots the current values and exposes them to task JSONata as job_config.<key>.
Only form and field_mapping entries are supported.
Key rules
job_config:
migration_options:
type: form
title: Migration options
fields: []The map key is both the stored configuration key and JSONata key. It must contain letters, numbers, underscores, or hyphens. Do not add id or config_key inside the entry.
form
job_config:
migration_options:
type: form
title: Migration options
description: Applied to the next run
fields:
- key: stage
label: Stage
type: select
required: true
default: validate
options:
- { label: Validate, value: validate }
- { label: Migrate, value: migrate }
- key: notify
label: Send notification
type: boolean
default: falseForm field types:
text;number;boolean;select;multi_select.
Fields can use required, default, format, depends_on, and hide_if_expr. Text formats include validated email and URL values.
Select fields use inline options or a read-only options_source.
The stored value is one object keyed by field key.
Option sources
options_source:
connector: source
method: proxy_list
args:
resource: pipelines
label_expr: $.label
value_expr: $.id
search:
param: qOption sources support:
label_expr,value_expr, andsubtext_expr;- a server search argument through
search.param; search.on_frontend: trueonly for a bounded one-page result;transform_expr;depends_on.
Options are returned one page at a time with next_cursor.
field_mapping
job_config:
contact_fields:
type: field_mapping
title: Contact fields
allow_transform: true
default:
- { source_field: email, target_field: email }
source:
options_source:
connector: source
method: list_fields
label_expr: $.label
value_expr: $.name
target:
options_source:
connector: destination
method: list_fields
label_expr: $.label
value_expr: $.nameThe stored value is an array of:
{
"source_field": "email",
"target_field": "email",
"transform": null
}allow_transform: true enables operator-authored JSONata per row. Use it only for trusted authors. validation_expr can enforce mapping-level rules.
API
GET /api/jobs/{id}/configreturns schema and current values.PUT /api/jobs/{id}/config/{key}saves{ "value": ... }.PUT /api/jobs/{id}/configreplaces the complete config object for an authorized admin.POST /api/jobs/{id}/config/{key}/optionsresolves pageable options.
Read the schema before writing. Values are validated on save.
Snapshot behavior
Saving job configuration affects future runs. Active and historical runs retain their own snapshot.
See Configure a job between runs and Dashboard input widgets.