Domo
Connect Catalog to Domo to sync Pages, Cards, data sets, and relationships between them. This guide describes what Catalog extracts, how Cards appear as tile-style dashboards when you browse and search, credential options for Catalog-managed or client-managed sync, IP allowlisting, and the extractor package.
Requirements
You need a Warehouse-type integration configured before the first ingestion for this integration can complete.
For all Domo clients:
- Domo admin credentials
- Domo Developer Token
- Internal alignment if you use Domo as a warehouse
What Catalog Extracts from Domo
Catalog extracts Domo Pages, Cards, and data sets, along with metadata Domo exposes through its APIs, for example names, descriptions where available, links to the asset in Domo, and ownership or editing context when present.
- Pages - Domo dashboards and stories appear in Catalog as dashboard assets so you can browse and document the containers your teams use for reporting.
- Cards - In Domo, Cards are the visualizations you add to Pages, such as KPIs and charts. Catalog syncs Cards alongside Pages and data sets so you can document and govern each visualization, not only the Page that contains it. Each Card is stored as a dashboard asset with dashboard type TILE, the same tile-style type used in other BI integrations, and appears under the /Cards path in the asset tree next to Page-level dashboards.
- Data sets - Domo data sets are cataloged as data assets so you can relate Domo content back to the data that powers it.
- Lineage - Catalog records asset-level relationships among Domo data sets, Cards, and Pages. The lineage graph reflects how those Domo objects connect; it is not a substitute for field-level or expression-level detail inside a Card.
- Search and governance - Card and Page metadata is available in Catalog search, stewardship workflows, and the AI Assistant alongside other dashboard assets. For the fields used in AI Search, see AI Assistant Context.
When you validate warehouse-to-BI lineage and a Card sits in the path, open the Card in Catalog to see how it connects to upstream data sets and related Pages.
If Needed, Allowlist Catalog IPs
Here are our fixed IPs:
- For instances on app.us.castordoc.com:
34.42.92.72 - For instances on app.castordoc.com:
35.246.176.138
Catalog Managed
To get things started with Domo in Catalog, you'll need to be a Domo admin and provide us with:
- A
Client ID- Domo documentation - A Domo
API token, which Domo calls the Client Secret - Domo documentation - The
Base URLof your Domo instance ashttps://XXXX.domo.com/ - A
Developer Token- Domo developer token documentation - The
Cloud Idof your external Warehouse. Omit this field when it does not apply.
For more information on how to retrieve those values, see the Domo API quickstart.
You can input your credentials directly into your Catalog account under the following format:
{
"apiToken": "*****",
"clientId": "*****",
"baseUrl": "https://XXXX.domo.com/",
"developerToken": "*****",
"cloudId": "my-external-warehouse-cloud-id"
}
If your Domo instance uses SSO, the Catalog integration account must have direct sign-on enabled. The Domo account that creates the client ID and secret in the developer portal must reach every dashboard you want in Catalog. In Domo, go to Admin > Dashboards and share those dashboards with that account.
apiToken: secret for the Catalog Domo integration connectionclientId: client ID for the Catalog Domo integration connectionbaseUrl: Domo base URL and API endpoint, usually your Domo homepage URLdeveloperToken: Token to access the Domo private APIcloudId: ID of the external warehouse used within Domo
For your first sync, allow up to 48 hours. The Catalog team notifies you when it completes.
If you are not comfortable giving us access to your credentials, continue to Client Managed.
Client Managed
For your trial, you can supply a one-time extract view of your Domo BI assets. Use the Catalog package workflow below when you manage sync yourself.
Running the Catalog Package
Install the PyPI Package
pip install castor-extractor
For further details, see the castor-extractor PyPI page.
Run the Package
Once the package has been installed, you should be able to run the following command in your terminal:
castor-extract-domo [arguments]
Arguments
The Domo extractor accepts the following flags:
-c,--client-id: Domo client ID-a,--api-token: Domo access token-d,--developer-token: Domo developer token-b,--base-url: Domo base URL-o,--output: target folder to store the extracted files
Optional Arguments
Use this flag when you rely on an external warehouse instead of Domo as the warehouse:
-C,--cloud-id: Required when you use an external warehouse and not Domo as a warehouse
Scheduling and Push to Catalog
When moving out of trial, you'll want to refresh your Domo content in Catalog. Follow these steps:
The Catalog team will provide you with:
Catalog Identifier, an ID the Catalog team uses to match your Domo files to your Catalog instanceCatalog Token, an API token
You can then use the castor-upload command:
castor-upload [arguments]
Castor-Upload Arguments
castor-upload supports these flags:
-k,--token: Token provided by Catalog-s,--source_id: Account ID provided by Catalog-t,--file_type: source type to upload. Currently supported areDBT,VIZ, orWAREHOUSE
Target Files
Choose one upload target:
-f,--file_path: Push a single file.-d,--directory_path: Push every file in a folder at once.
When you use --directory_path, castor-upload sends every file in that folder. Limit the folder to extracted Domo files only before you run the command.
Then schedule the extract script and the upload to Catalog using your preferred scheduler.
What's Next?
- Explore other BI Tools integrations and onboarding options.
- Read AI Assistant Context for technical detail on which dashboard fields power AI Search.
- For Domo as a warehouse source, follow Domo Data.