Ingest Exposures from dbt | Downstream Lineage Guide
Ingest dbt exposures to extend lineage from your dbt models to the dashboards, ML models, and API endpoints that consume them.
Ingest Exposures from dbt
Collate reads dbt exposures from your manifest.json file and uses them to extend lineage from your dbt models to the dashboards, ML models, and API endpoints that consume them.
Tip: The downstream entity referenced by an exposure must already exist in Collate before the dbt ingestion runs. Collate matches it by Fully Qualified Name (FQN). If Collate can’t find a match, it logs a warning and skips the exposure.
Supported Exposure Types
Collate maps each dbt exposure to a Collate entity based on its type field. Any other type value is skipped during ingestion.
dbt Exposure type
Collate Entity
dashboard
Dashboard
ml
ML Model
application
API Endpoint
How to Ingest dbt Exposures
Follow these steps to link a dbt exposure to an existing Collate entity.
Step 1: Define the Exposure in Your dbt Project
Add the exposure definition to your dbt project and set the FQN of the matching Collate entity.Define the exposure in your dbt project (for example in models/exposures.yml) and set meta.open_metadata_fqn to the Fully Qualified Name of the corresponding entity already ingested in Collate.For more information on defining exposures, see Add Exposures to your DAG.
exposures: - name: orders_dashboard label: orders type: dashboard maturity: high url: http://localhost:8080/looker/dashboard/8/ description: > Orders dashboard built on top of the orders model. depends_on: - ref('fact_sales') meta: open_metadata_fqn: sample_looker.orders # Collate entity Fully Qualified Name
After adding the exposure, run your dbt workflow (dbt compile or dbt run). The generated manifest.json will include the exposure under the exposures key, with upstream models listed under depends_on → nodes:
Confirm the linked entity appears as a downstream node in the lineage graph after ingestion completes.Once ingested, the linked dashboard, ML model, or API endpoint appears as a downstream node in the Lineage tab of the upstream dbt table listed under depends_on.
Validation and Error Handling
What Collate does when an exposure can’t be linked to a Collate entity.
Scenario
Behavior
Exposure type not one of dashboard, ml, application
Warning logged, exposure skipped
meta.open_metadata_fqn missing from exposure spec
Warning logged, exposure skipped
Entity referenced by open_metadata_fqn not found in Collate
Warning logged, exposure skipped
Upstream model not yet ingested as a Collate table