Skip to main content

Exposure properties

Overview

Exposures are defined in properties.yml files nested under an exposures: key. You may define exposures in YAML files that also define sources or models. Exposure properties are "special properties" in that you can't configure them in the dbt_project.yml file or using config() blocks. Refer to Configs and properties for more info.

You can name these files whatever_you_want.yml, and nest them arbitrarily deeply in subfolders within the models/ directory.

Example

models/jaffle/exposures.yml
version: 2

exposures:

- name: weekly_jaffle_metrics
label: Jaffles by the Week # optional, new in dbt Core v1.3
type: dashboard # required
maturity: high # optional
url: https://bi.tool/dashboards/1 # optional
description: > # optional
Did someone say "exponential growth"?

depends_on: # expected
- ref('fct_orders')
- ref('dim_customers')
- source('gsheets', 'goals')
- metric('count_orders')

owner:
name: Callum McData
email: data@jaffleshop.com



- name: jaffle_recommender
maturity: medium
type: ml
url: https://jupyter.org/mycoolalg
description: >
Deep learning to power personalized "Discover Sandwiches Weekly"

depends_on:
- ref('fct_orders')

owner:
name: Data Science Drew
email: data@jaffleshop.com


- name: jaffle_wrapped
type: application
description: Tell users about their favorite jaffles of the year
depends_on: [ ref('fct_orders') ]
owner: { email: summer-intern@jaffleshop.com }
0