Jae Wilson @DataCrew
Domo

Update Domo Dataset Schema via Jupyter Notebooks using domolibrary

March 25, 2025

Manually updating 1,800 column descriptions across 120 Domo datasets isn't a workflow — it's a punishment.

When Mark posted this problem in the Domo User Group Slack, the ask was clear: take a CSV of table names, column names, and descriptions, and push them into Domo programmatically. No clicking. No copy-paste. Just a script that runs and finishes.

Why It Matters

The Domo UI gives you no bulk-edit path for dataset column descriptions. Without a scripted approach, this kind of metadata work falls on whoever has the most patience — and it still won't scale the next time schema changes. The domolibrary Python package exposes the dataset schema API in a way that's composable with standard data tooling, meaning you can drive updates from a CSV, a DataFrame, or any structured source. Once this pattern is in place, keeping column-level documentation current becomes a repeatable task instead of a one-time ordeal.

What You'll Learn

  • Authenticate against a Domo instance using account properties stored in a Jupyter-accessible credential object
  • Fetch the current schema for a dataset using domolibrary's dataset routes
  • Map column descriptions from a CSV to the dataset schema structure
  • Push schema updates back to Domo via the API
  • Use debug flags to inspect API calls during development without flooding logs in production