This API reference documents the endpoints for managing FileSets and Files in Domo from within a Domo app.
Note: All code examples below are tested and match the working Domo app
UI. Use domo.* methods for all API calls except File upload/download, which
require fetch for binary or FormData support.
Get File by Path
Method: GET
Endpoint: /domo/files/v1/filesets/{filesetId}/path?path={filePath}
Path Parameters:
| Parameter | Type | Required | Description |
|---|
| filesetId | String | Yes | The ID of the FileSet |
| path | String | Yes | The path to the File within the FileSet |
Javascript (domo.get)
Javascript (fetch)
Response:
Get File by Id
Method: GET
Endpoint: /domo/files/v1/filesets/{filesetId}/files/{fileId}
Path Parameters:
| Parameter | Type | Required | Description |
|---|
| filesetId | String | Yes | The ID of the FileSet |
| fileId | String | Yes | The ID of the File |
Javascript (domo.get)
Javascript (fetch)
Response:
Download File by Id
Method: GET
Endpoint: /domo/files/v1/filesets/{filesetId}/files/{fileId}/download
Path Parameters:
| Parameter | Type | Required | Description |
|---|
| filesetId | String | Yes | The ID of the FileSet |
| fileId | String | Yes | The ID of the File |
Note: Use fetch for File downloads. domo.get does not support binary downloads.
Response:
- Returns the File contents as a download (binary/text stream).
Query Files
Method: POST
Endpoint: /domo/files/v1/filesets/{filesetId}/query
Path Parameters:
| Parameter | Type | Required | Description |
|---|
| filesetId | String | Yes | The ID of the FileSet |
Request Body Parameters:
| Parameter | Type | Required | Description |
|---|
| query | String | Yes | Text to search for in Files |
| directoryPath | String | No | Limit search to a specific directory |
| topK | Integer | No | Maximum number of results to return |
Javascript (domo.post)
Javascript (fetch)
Response:
Upload File
Method: POST
Endpoint: /domo/files/v1/filesets/{filesetId}/files
Path Parameters:
| Parameter | Type | Required | Description |
|---|
| filesetId | String | Yes | The ID of the FileSet |
Note: Use fetch for file uploads. Always set the file content type to text/plain for text files, as in the app code.
Response:
Search Files in FileSet
Method: POST
Endpoint: /domo/files/v1/filesets/{filesetId}/files/search
Path Parameters:
| Parameter | Type | Required | Description |
|---|
| filesetId | String | Yes | The ID of the FileSet |
Query Parameters:
| Parameter | Type | Required | Description |
|---|
| directoryPath | String | No | Filter Files by specific directory path |
| immediateChildren | Boolean | No | If true, returns only immediate children of directory (default: false) |
| limit | Integer | No | Maximum number of results (default: 100) |
| next | String | No | Pagination token for fetching next set of results |
Request Body Parameters:
| Parameter | Type | Required | Description |
|---|
| fieldSort | Array | No | Sort options for results. Array of FieldSort Objects. |
| filters | Array | No | Filter criteria for the search. Array of Filter Objects. |
| dateFilters | Array | No | Date-based filter criteria. Array of DateFilter Objects. |
Filter Object Properties:
| Property | Type | Description |
|---|
| field | String | Field name to filter on (e.g., ‘name’, ‘description’) |
| value | Array | Values to match against |
| not | Boolean | If true, inverts the filter match |
| operator | String | Operation type: ‘EQUALS’, ‘GREATER_THAN’, ‘LESS_THAN’, ‘IN’, ‘LIKE’, etc. |
FieldSort Object Properties:
| Property | Type | Description |
|---|
| field | String | Field name to sort by |
| order | String | Sort direction: ‘ASC’ or ‘DESC’ |
DateFilter Object Properties:
| Property | Type | Description |
|---|
| field | String | Field name for date filter (e.g., ‘created’) |
| start | String | Start timestamp as ISO string |
| end | String | End timestamp as ISO string |
| not | Boolean | If true, inverts the date filter match |
Javascript (domo.post)
Javascript (fetch)
Response:
Delete Files by Path
Method: DELETE
Endpoint: /domo/files/v1/filesets/{filesetId}/path?path={filePath}
Path Parameters:
| Parameter | Type | Required | Description |
|---|
| filesetId | String | Yes | The ID of the FileSet |
| filePath | String | Yes | The path to the File within the FileSet |
Javascript (domo.delete)
Javascript (fetch)
Response:
Delete File by Id
Method: DELETE
Endpoint: /domo/files/v1/filesets/{filesetId}/files/{fileId}
Path Parameters:
| Parameter | Type | Required | Description |
|---|
| filesetId | String | Yes | The ID of the FileSet |
| fileId | String | Yes | The ID of the File |
Javascript (domo.delete)
Javascript (fetch)
Response:
Search FileSets
Method: POST
Endpoint: /domo/files/v1/filesets/search
Query Parameters:
| Parameter | Type | Required | Description |
|---|
| limit | Integer | No | Maximum number of results (default: 100) |
| offset | Integer | No | Pagination offset (default: 0) |
Note: To list all FileSets, send an empty object as the body. To filter, provide filter parameters in the body.
Request Body Parameters:
| Parameter | Type | Required | Description |
|---|
| fieldSort | Array | No | Sort options for results. Array of FieldSort Objects. |
| filters | Array | No | Filter criteria for the search. Array of Filter Objects. |
| dateFilters | Array | No | Date-based filter criteria. Array of DateFilter Objects. |
Filter Object Properties:
| Property | Type | Description |
|---|
| field | String | Field name to filter on (e.g., ‘name’, ‘description’) |
| value | Array | Values to match against |
| not | Boolean | If true, inverts the filter match |
| operator | String | Operation type: ‘EQUALS’, ‘GREATER_THAN’, ‘LESS_THAN’, ‘IN’, ‘LIKE’, etc. |
FieldSort Object Properties:
| Property | Type | Description |
|---|
| field | String | Field name to sort by |
| order | String | Sort direction: ‘ASC’ or ‘DESC’ |
DateFilter Object Properties:
| Property | Type | Description |
|---|
| field | String | Field name for date filter (e.g., ‘created’) |
| start | String | Start timestamp as ISO string |
| end | String | End timestamp as ISO string |
| not | Boolean | If true, inverts the date filter match |
Javascript (domo.post)
Javascript (fetch)
Response:
Create FileSet
Method: POST
Endpoint: /domo/files/v1/filesets
Request Body Parameters:
| Parameter | Type | Required | Description |
|---|
| name | String | Yes | The name of the FileSet |
| accountId | Integer | No | The account ID to associate (nullable) |
| connectorContext | Object | No | Connector context for the FileSet (nullable). ConnectorContext Object. |
| description | String | No | Description for the FileSet |
ConnectorContext Object Properties:
| Property | Type | Required | Description |
|---|
| connector | String | Yes | The connector key |
| relativePath | String | No | Relative path for the connector (nullable) |
Javascript (domo.post)
Javascript (fetch)
Response:
Get FileSet by Id
Method: GET
Endpoint: /domo/files/v1/filesets/{filesetId}
Path Parameters:
| Parameter | Type | Required | Description |
|---|
| filesetId | String | Yes | The ID of the FileSet |
Javascript (domo.get)
Javascript (fetch)
Response:
Update FileSet by Id
Method: POST
Endpoint: /domo/files/v1/filesets/{filesetId}
Path Parameters:
| Parameter | Type | Required | Description |
|---|
| filesetId | String | Yes | The ID of the FileSet |
Request Body Parameters:
| Parameter | Type | Required | Description |
|---|
| name | String | No | The new name for the FileSet |
| description | String | No | The new description for the FileSet |
Javascript (domo.post)
Javascript (fetch)
Response:
Delete FileSet by Id
Method: DELETE
Endpoint: /domo/files/v1/filesets/{filesetId}
Path Parameters:
| Parameter | Type | Required | Description |
|---|
| filesetId | String | Yes | The ID of the FileSet |
Javascript (domo.delete)
Javascript (fetch)
Response: