{
"id": "757a1a2a-8d97-4c7e-875d-1bb5909df783",
"datastoreId": "a7363c9d-77ad-4ffa-8926-8295c8464f51",
"defaultPermissions": null,
"requiredAuthorities": null,
"owner": 540824222,
"name": "Students",
"datasourceId": null,
"schema": {
"columns": [
{
"type": "STRING",
"name": "name"
},
{
"type": "STRING",
"name": "house"
},
{
"type": "DATE",
"name": "enrolledOn"
},
{
"type": "DATETIME",
"name": "lastDetention"
}
]
},
"filters": null,
"syncEnabled": true,
"syncRequired": true,
"cdcEnabled": false,
"fullReplaceRequired": false,
"lastSync": null,
"createdOn": "2026-08-01T00:10:52.952Z",
"updatedOn": "2026-08-01T00:10:52.952Z",
"updatedBy": 540824222
}Create Collection
To create a Collection programmatically, provide as the body of the request the same JSON value that you would have provided in your manifest for a Collection when creating a custom app. Once created, the Collection can be retrieved by the name you provided as usual.
Setting syncEnabled: true causes the Collection’s documents to be converted into rows in a Domo DataSet every 15 minutes. The schema you define controls which fields appear as DataSet columns — only the listed properties are synced. If you plan to use sync, note the following:
Date formatting: Documents containing DATE or DATETIME data must use the format YYYY-MM-DD or YYYY-MM-DDTHH:MM:SSZ to sync correctly.
Only top-level fields can be synced. Column names must be top-level keys in the document’s content object; dot notation does not traverse nested objects during sync. To include a nested object, use the top-level key name (e.g., wand) — the synced value will be the JSON string representation of that object (e.g., {"wood":"holly","core":"phoenix feather","length":11}).
Incorrect schema types prevent DataSet creation. The accepted column types are STRING · LONG · DECIMAL · DOUBLE · DATE · DATETIME. If your AppDB DataSet doesn’t appear after 15 minutes, verify your schema uses only these values — common mistakes include NUMBER or INTEGER.
Collections won’t sync if the collection owner lacks permissions on the target DataSet. If that user is removed from Domo, syncing stops. The new owner must have both Collection ownership and Admin Permissions.
{
"id": "757a1a2a-8d97-4c7e-875d-1bb5909df783",
"datastoreId": "a7363c9d-77ad-4ffa-8926-8295c8464f51",
"defaultPermissions": null,
"requiredAuthorities": null,
"owner": 540824222,
"name": "Students",
"datasourceId": null,
"schema": {
"columns": [
{
"type": "STRING",
"name": "name"
},
{
"type": "STRING",
"name": "house"
},
{
"type": "DATE",
"name": "enrolledOn"
},
{
"type": "DATETIME",
"name": "lastDetention"
}
]
},
"filters": null,
"syncEnabled": true,
"syncRequired": true,
"cdcEnabled": false,
"fullReplaceRequired": false,
"lastSync": null,
"createdOn": "2026-08-01T00:10:52.952Z",
"updatedOn": "2026-08-01T00:10:52.952Z",
"updatedBy": 540824222
}Body
Name of the collection
Show child attributes
Show child attributes
Turning this property on causes the documents in your collection to be converted into rows in a DataSet every 15 minutes. Only the properties defined in the schema are synced. Requires schema to be provided — returns a 400 if syncEnabled: true is passed without a schema.
Response
Collection created successfully
Unique identifier for the collection.
User ID of the collection owner.
ID of the datastore this collection belongs to.
Name of the collection.
ID of the linked Domo DataSet, or null if not yet linked.
Comma-separated default permission set for new app grants on this collection, or null if not set.
Maps CollectionOperation names to required authority strings, or null if not set.
Array of document-level filter predicates applied to read operations, or null if not set.
Show child attributes
Show child attributes
Whether documents are periodically synced to the linked DataSet.
Whether a sync is pending.
Whether change data capture is enabled for this collection.