Skip to main content

Domo

Domo SDK allows you to automate your Domo instance significantly reducing your written code

TagsdatasetSaas

Credential configuration​

To configure this credential you need the clientId and the clientSecret of your Domo instance. You can see how to obtain them here.

You also need to specify the scopes and the hostname of the API you are connecting.

Here you have an example of a filled credential configuration form in YepCode:

Domo snippets available in editor​

note

The title is the triggering text for YepCode to autocomplete the script

Integration​

New integration from credential
const domoClient = yepcode.integration.domo("credential-slug");
New integration from plain authentication data
const { DomoClient } = require("domo-sdk");

const domoClient = new DomoClient("clientId", "clientSecret", [scopes], "host");

Create a dataset​

Create a dataset
const dataset = {
name: 'datasetName',
description: 'datasetDescription',
rows: 0,
schema: {
columns: [
{ type: 'columnType', name: 'columnName' }
]
}
};

let datasetId;
console.log('Creating dataset...');
await domoClient.datasets
.create(dataset)
.then((response) => {
console.log('Dataset Created', response.id);
datasetId = response.id;

const data = [
['dataset data']
];

const csv = data.map((row) => row.join(',')).join('\n');
console.log('Importing data...');
return domoClient.datasets.importData(datasetId, csv);
})
.then(() => {
console.log('Data Imported: ', datasetId);
})
.catch(console.warn);

Delete a dataset​

Delete a dataset
await domoClient.datasets
.delete(datasetId)
.then(() => {
console.log(`Dataset deleted: datasetId`);
})
.catch(console.error);

Get a dataset​

Get a dataset
await domoClient.datasets.get("datasetId")
.then((response)=>{
console.log(response)
})