Parameters
DAGs can define named parameters with optional defaults. Parameters are overridable at run time via the CLI or API.
Defining parameters
name: etl-pipeline
params:
- name: department
default: "sales"
- name: date
default: "{{ .Today }}"
- name: output_dirParameters without a default are required – the DAG fails if they’re not provided.
CLI overrides
daggle run etl-pipeline -p department=marketing -p date=2026-01-15The -p / --param flag is repeatable.
API overrides
curl -X POST http://localhost:8787/api/v1/dags/etl-pipeline/run \
-H 'Content-Type: application/json' \
-d '{"params": {"department": "marketing", "date": "2026-01-15"}}'Using parameters in YAML
Parameters are available via { .Params.name } in any string field:
steps:
- id: extract
script: etl/extract.R
args: ["--dept", "{{ .Params.department }}"]
env:
REPORT_DATE: "{{ .Params.date }}"Default expansion
Defaults support template variables:
params:
- name: date
default: "{{ .Today }}" # resolves to current date at run time