The authors share their recipe for enriching customer data at Census using the Clearbit API, Snowflake External Functions, and dbt. They discuss the challenges of integrating a data enrichment process into an existing ELT pipeline, including maintaining freshness, ensuring consistency, limiting resource usage, and handling different types of enrichment pipelines (using datasets vs APIs). The authors then dive into their implementation using Snowflake's external functions, which allow them to call external handlers, such as Clearbit's API, from within SQL queries. They also discuss caching for performance and execution time savings. Finally, they outline the model definitions used in dbt to compute email values for users that aren't represented in user_clearbit_data, including views to filter freshest data and join users with enriched records. The authors note that this process provides a worthy replacement for external workers running enrichment jobs against the data warehouse and are exploring ways to make it more turnkey for customers.