Skip to main content
Fold your dbt™ runs into a pipeline you already orchestrate elsewhere by triggering Bolt schedules from outside Paradime. In this guide you’ll prepare a schedule for external control and hand off to the Bolt API, Airflow, or Dagster to run it.
Prerequisites
  • A Bolt schedule you can edit.
  • A Paradime API key with the Bolt schedules admin capability, plus its secret and the API endpoint.
  • For Airflow or Dagster: a working install of that orchestrator.
Estimated time: 15 minutes.

Steps

1

Give the schedule the Off trigger

So the schedule only runs when you call it, give it the Off trigger. Build it either way:
  • In the UI: create or edit the schedule and select the Off trigger type.
  • As code: set schedule: "OFF" in the schedule’s YAML.
paradime_schedules.yml (as-code option)
Note the schedule’s slug, it’s the stable identifier your external system uses to trigger the run.
2

Generate an API key

Bolt API calls authenticate with a Paradime API key that has the Bolt schedules admin capability. Paradime supports two key types:
  • Account API keys (recommended), a Bearer token that can access multiple workspaces.
  • Workspace API keys (legacy), an API Key and API Secret scoped to a single workspace.
See API keys to generate one, and Authentication for how to pass credentials and the API endpoint.
3

Pick your trigger method

Choose how the schedule gets called, then follow the matching reference page:
  • Bolt API: call it directly with GraphQL, cURL, the Python SDK, the CLI, or webhooks. Best when you trigger from a custom system, Prefect, or Azure Data Factory. See the Bolt API reference.
  • Airflow: use the Paradime dbt provider to trigger the schedule from a DAG, wait for it to finish, and download artifacts. See Trigger Bolt schedules from Airflow.
  • Dagster: run the schedule as Dagster assets with Paradime’s dagster-dbt fork. See Trigger Bolt schedules from Dagster.
4

Trigger the schedule and poll its status

Call the schedule from your orchestrator, then poll the run’s status so downstream steps wait for it to finish.For Airflow, the provider gives you an operator to run the schedule and a sensor to wait on it:
For Dagster, load_assets_from_paradime_schedule executes the schedule and retrieves its artifacts through the Dagster asset model:
ParadimeBoltDbtScheduleRunOperator identifies the schedule with either slug (stable) or schedule_name, and also accepts commands, branch, and retry_from_failure, so you can override the dbt™ commands at runtime.
Trigger the schedule from your external system and confirm the run appears in Bolt with a run id. Your orchestrator should block on the run’s status until it completes. If the call is rejected, check that the API key has the Bolt schedules admin capability and that the schedule slug matches.

Next steps

Bolt API reference

Trigger, monitor, retry, and cancel runs via API, SDK, CLI, or webhooks.

Airflow reference

Trigger schedules from DAGs and download dbt™ artifacts.

Dagster reference

Run schedules as Dagster assets with the dagster-dbt fork.

Bolt reference

Every schedule, trigger type, and run setting.