New to Kestra?
Use blueprints to kickstart your first workflows.
Orchestrate parallel Airbyte Cloud syncs and a dbt Cloud transformation job with Kestra to keep your warehouse fresh and analytics-ready.
Combine Airbyte Cloud ingestion and dbt Cloud transformations into one orchestrated ELT pipeline. This blueprint extracts data from multiple SaaS sources in parallel, lands it in your warehouse, and then runs a dbt Cloud job to model it into analytics-ready tables. It solves the classic timing problem in the modern data stack: making sure transformations only run after every source has finished loading, so your dashboards never read half-loaded data.
data_ingestion task of type io.kestra.plugin.core.flow.Parallel launches three Airbyte Cloud syncs concurrently: salesforce, google_analytics, and facebook_ads, each an io.kestra.plugin.airbyte.cloud.jobs.Sync task identified by its connectionId.token is injected once through pluginDefaults for all Sync tasks, keeping the credential in a single place.dbt_cloud_job task of type io.kestra.plugin.dbt.cloud.TriggerRun triggers dbt Cloud job 396284 with wait: true, so Kestra blocks until the transformation run finishes and reports its real status.wait: true dbt run, so downstream tasks and alerts react to the real outcome.Airbyte Cloud and dbt Cloud each have their own scheduler, but neither can coordinate the other. The gap is cross-tool dependency: dbt Cloud cannot know that all three Airbyte syncs have finished. Kestra closes that gap with declarative YAML, event triggers, automatic retries, and full execution lineage across both tools, so the transformation always fires after ingestion and failures surface in one place.
AIRBYTE_CLOUD_API_TOKEN: API token for Airbyte Cloud syncs.DBT_CLOUD_ACCOUNT_ID: your dbt Cloud account ID.DBT_CLOUD_API_TOKEN: API token for dbt Cloud.AIRBYTE_CLOUD_API_TOKEN, DBT_CLOUD_ACCOUNT_ID, and DBT_CLOUD_API_TOKEN as secrets.connectionId values with those from your Airbyte Cloud workspace.jobId: "396284" with the dbt Cloud job that transforms your ingested data.Sync tasks inside the Parallel block for additional SaaS sources.