Domo
Requirements
A Warehouse type integration must already be configured to complete the first ingestion of this integration.
For all Domo clients:
- Domo admin credentials
- Domo Developer Token
- Communication around the use of Domo as a warehouse
If Needed, Whitelist Catalog IP
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 will need to be a Domo admin and provide us with:
- A
Client ID- Domo documentation - A Domo
API token(Client Secret) - Domo documentation - The
Base URLof your Domo instance (https://XXXX.domo.com/) - A
Developer Token- Domo developer token documentation - The
Cloud Idof your external Warehouse (if applicable, remove otherwise)
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"
}
The Catalog account needs to have direct sign on enabled, if SSO is activated on your Domo instance.
apiToken: secret of the Catalog account for the appclientId: id of the Catalog accountbaseUrl: Domo base URL, your API endpoint, usually your Domo URL homepagedeveloperToken: Token to access the Domo private APIcloudId: Id of the external warehouse used within Domo
The account used to log into the developer portal to generate the client id and secret needs to have access to all the dashboards you would like to have in Catalog.
You can go in the Admin > Dashboards section in Domo and share the needed dashboards with that user.
For your first sync, it will take up to 48 h and we will let you know when it is complete.
If you are not comfortable giving us access to your credentials, please continue to Client Managed.
Client Managed
Doing a One Shot Extract
For your trial, you can simply give us a one shot view of your BI tools.
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
-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
-C,--cloud-id: Mandatory if you use an external warehouse (and not Domo as a warehouse)
Scheduling and Push to Catalog
When moving out of trial, you will want to refresh your Domo content in Catalog. Here is how to do it:
The Catalog team will provide you with:
Catalog Identifier(an id for us to match your Domo files with your Catalog instance)Catalog Token- An API Token
You can then use the castor-upload command:
castor-upload [arguments]
Castor-Upload Arguments
-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
To specify the target files, provide one of the following:
-f,--file_path: to push a single file
or
-d,--directory_path: to push several files at once
The tool will upload all files included in the given directory.
Make sure it contains only the extracted files before pushing.
Then you will have to schedule the script run and the push to Catalog. Use your preferred scheduler to create this job.
You are done.