Datasource management endpoints for the Wallboard digital signage platform.
Datasources provide dynamic data for content widgets. They can pull data from external APIs, databases, spreadsheets, calendars, and other integrations.
| Concept | Description |
|---|---|
| Datasource | A connection to external or internal data |
| Source Type | How data is obtained (External URL, Internal, System) |
| Structure Type | Data format (Table, Key-Value, Feed, List, Custom) |
| Refresh Mode | How data updates (Poll at intervals, Callback on change) |
| Global Datasource | Shared across all customers (admin-created) |
| Type | Description |
|---|---|
EXTERNAL |
Data from external URL (REST API, RSS, etc.) |
INTERNAL |
Manually entered or uploaded data |
SYSTEM |
System-generated data (files, devices, screenshots, AI, calendar merge) |
| Type | Description |
|---|---|
TABLE |
Tabular data with rows and columns |
KEY_VALUE |
Simple key-value pairs |
FEED |
RSS/Atom feed format |
LIST |
Simple list of items |
CUSTOM |
Free-form JSON structure |
WAY_FINDING |
Wayfinding/directory data |
When creating datasources, the type field determines which additional fields are required.
| type | Required Fields | Description |
|---|---|---|
JSON |
remoteUrl | Generic JSON API |
XML |
remoteUrl | XML API → JSON |
RSS |
remoteUrl | RSS/Atom feeds |
ICAL |
remoteUrl, dateFormat, timeFormat | iCalendar |
GOOGLESHEET_API |
credentialId, spreadSheetId, sheetId, driveFolderId | Google Sheets |
CALENDAR |
calendarId, credentialId, credentialType | Calendars |
JDBC |
remoteUrl, jdbcQuery | Database |
SHAREPOINT_LISTS |
credentialId, siteId, listId | SharePoint lists |
MICROSOFT_WORKBOOK |
credentialId, workBookId | Excel v1 |
MICROSOFT_WORKBOOK_V2 |
credentialId | Excel v2 |
WEATHER |
weatherParameters | Weather API |
TOAST |
toastParameters | Toast POS |
CAP |
capParameters | Emergency alerts (CAP) |
SCREENSHOT |
screenshotParameters | Web screenshots |
CUSTOM_INTEGRATION |
functionIdentifier, dynamicParameters | Custom plugins |
WEBSITE_CONTENT |
webScraperParameters | Web scraping |
USER_ACTIVE_DIRECTORY |
userActiveDirectoryParameters | Azure AD |
FACEBOOK_PAGE_FEED |
facebookPageFeedParameters | |
INSTAGRAM_PAGE_FEED |
instagramPageFeedParameters | |
SHAREPOINT_NEWS |
sharepointNewsParameters | SharePoint news |
FILE_FROM_URL |
fileFromUrlParameters | File download |
| systemDatasourceType | Required Fields | Description |
|---|---|---|
FILES |
quickFilterId | File metadata via Quick Filter |
DEVICES |
quickFilterId | Device info via Quick Filter |
SCREENSHOT |
screenshotParameters | System screenshots |
AI_DATASOURCE |
aiParameters | AI-powered |
CALENDAR_MERGE |
calendarMergeParameters | Merged calendars |
Datasource endpoints also support API Key authentication for simpler M2M integrations. API keys are created via the webhook API key management endpoints.
Available Scopes:
| Scope | Description |
|---|---|
DATASOURCE_DATA_READ |
Can read datasource data |
INTERNAL_DATASOURCE_WRITE |
Can write to internal datasources |
Usage:
GET /api/datasource/{id}/data
Authorization: Bearer <api-key>
API keys are HMAC-signed JWTs (HS256/HS384/HS512). See the Webhooks documentation for API key management.
Internal datasources (sourceType: INTERNAL) can be read and updated via dedicated data endpoints.
This is commonly used by AI assistants and M2M integrations to manage dynamic display data.
GET /api/datasource/{id}/data?parseData=true — returns data as parsed JSON objectPUT /api/datasource/{id}/data — accepts JSON object directly in the data fielddata field in PUT accepts both a JSON object and a stringified JSON string (backward compatible)INTERNAL datasources can be updated — external and system types are read-onlyUse WBQL in the search parameter. Key fields:
| Filter Type | Field | Example |
|---|---|---|
| Team | teamAssignments.team.id |
search=teamAssignments.team.id=team1 |
| Source type | sourceType |
search=sourceType=EXTERNAL |
| Structure type | structureType |
search=structureType=TABLE |
| Name | name |
search=name:weather |
See Getting Started for full WBQL syntax.
Retrieve a paginated list of datasources with flexible field selection.
Minimum role: VIEWER
| customerId | integer Customer/tenant ID for multi-tenant filtering.
|
| page | integer >= 0 Default: 0 Page index (0-based) |
| size | integer [ 1 .. 1000 ] Default: 20 Number of elements per page (max 1000) |
| sort | string Example: sort=name,asc Sort expression. Format:
|
| search | string WBQL filter expression. Operators: |
| select | string Field projection. |
| includeAdHocDatasources | boolean Default: false Include ad-hoc (temporary) datasources in results |
{- "first": true,
- "last": true,
- "number": 0,
- "numberOfElements": 0,
- "totalElements": 0,
- "totalPages": 0,
- "size": 0,
- "content": [
- {
- "id": "string",
- "name": "string",
- "comment": "string",
- "customerId": 0,
- "global": true,
- "sourceType": "EXTERNAL",
- "structureType": "CUSTOM",
- "refreshMode": "POLL",
- "type": "XML",
- "remoteUrl": "string",
- "refreshFrequency": 0,
- "cronExpressionParameters": {
- "cronExpression": "string",
- "timeZone": "string"
}, - "data": "string",
- "hash": "string",
- "cacheResources": true,
- "removeUrlIfCacheFailed": true,
- "rotateCacheOnEveryUpdate": true,
- "exchangeInternalResourceReferences": true,
- "downloadResourceOnEveryUpdate": true,
- "deactivated": true,
- "autoDeactivated": true,
- "ignoreAutoDeactivate": true,
- "editableByDisplay": true,
- "creationType": "NORMAL",
- "credentialType": "GOOGLE",
- "credentialId": "string",
- "dateFormat": "string",
- "timeFormat": "string",
- "timeZone": "string",
- "generateCalendarForDays": 0,
- "firstDayOfWeek": "Monday",
- "microsoftCalendarDatasourceType": "USER_CALENDAR",
- "calendarId": "string",
- "microsoftUserPrincipalIdOrName": "string",
- "sharepointGroupId": "string",
- "flowId": "string",
- "siteId": "string",
- "listId": "string",
- "driveId": "string",
- "workBookId": "string",
- "microsoftWorkBookParameters": {
- "workSheetId": "string",
- "range": "string",
- "fetchCharts": true,
- "firstRowIsHeader": true
}, - "microsoftWorkbookV2Parameters": {
- "options": [
- {
- "siteId": "string",
- "driveId": "string",
- "workBookId": "string",
- "workSheetId": "string",
- "range": "string",
- "fetchCharts": true,
- "firstRowIsHeader": true,
- "allSheet": true,
- "sameWorkbookParams": true
}
]
}, - "spreadSheetId": "string",
- "sheetId": "string",
- "sheetRange": "string",
- "driveFolderId": "string",
- "spreadSheetLegacyFormat": true,
- "firstRowIsHeader": true,
- "jdbcUserName": "string",
- "jdbcPassword": "string",
- "jdbcQuery": "string",
- "standardTableFormat": true,
- "keepLastXDays": 0,
- "keepLastXItem": 0,
- "maxElementCount": 0,
- "quickFilterId": "string",
- "systemDatasourceType": "FILES",
- "requestSettings": {
- "httpMethod": "GET",
- "customHeaders": {
- "property1": "string",
- "property2": "string"
}, - "basicAuth": {
- "username": "string",
- "password": "string"
}, - "body": "string",
- "jsonBody": true
}, - "respectCacheControl": true,
- "aiParameters": {
- "prompt": "string",
- "jsonSchemaOutput": { },
- "exampleJson": { },
- "sourceDatasourceIds": [
- "string"
]
}, - "calendarMergeParameters": {
- "calendarDatasourceIds": [
- "string"
]
}, - "webScraperParameters": {
- "prompt": "string",
- "url": "string",
- "waitTime": 0,
- "jsonSchemaOutput": { },
- "exampleJson": { }
}, - "weatherParameters": {
- "locations": [
- {
- "location": "string",
- "displayName": "string"
}
], - "geoPositions": [
- {
- "lat": 0.1,
- "lon": 0.1,
- "displayName": "string"
}
]
}, - "capParameters": {
- "capFeedURL": "string",
- "parserRule": {
- "capItemURLSelector": "string"
}, - "cacheRule": {
- "capFeedUpdatedSelector": "string",
- "capItemLastModifiedSelector": "string"
}, - "deviceIdentificationRule": {
- "tagBasedRule": {
- "deviceTagSelector": "ADDRESSES",
- "deviceTagSeparator": "string",
- "deviceTagOperator": "AND"
}, - "locationBasedRule": {
- "resolveLocation": true
}
}, - "emergencyStatusAutoUpdaterRule": {
- "includeDevicesByTag": "string"
}, - "mapperRule": {
- "defaultExpire": 0
}
}, - "toastParameters": {
- "externalGroupRef": "string",
- "externalRestaurantRef": "string",
- "method": "MENU",
- "filterMenuGuids": [
- "string"
]
}, - "toastRestaurantGuid": "string",
- "screenshotParameters": {
- "screenshotConfigs": [
- { }
]
}, - "fileFromUrlParameters": {
- "urls": [
- {
- "url": "string"
}
]
}, - "userActiveDirectoryParameters": {
- "fetchProfilePictures": true,
- "profilePictureSize": "SIZE_48x48",
- "members": "ONLY_INTERNAL",
- "filter": "string",
- "filterBy": "NAME",
- "format": "LIST"
}, - "facebookPageFeedParameters": {
- "pageId": "string"
}, - "instagramPageFeedParameters": {
- "pageId": "string"
}, - "sharepointNewsParameters": {
- "siteId": "string"
}, - "sharepointHeaders": {
- "headers": [
- "string"
]
}, - "powerBiExportParameters": {
- "groupId": "string",
- "reportId": "string",
- "pageNames": [
- "string"
], - "width": 1920,
- "height": 1080
}, - "dynamicParameters": {
- "parameters": { }
}, - "functionIdentifierType": "string",
- "functionIdentifierVersion": "string",
- "datasourceTransformation": {
- "transformations": [
- { }
]
}, - "lastAccessed": 0,
- "lastError": 0,
- "lastModified": 0,
- "lastUpdated": 0,
- "lastChanged": 0,
- "createdAt": 0,
- "nextRefreshTime": 0,
- "lastActiveSubscription": 0,
- "errorCounter": 0,
- "refreshCounter": 0,
- "ignoreErrorCounter": true,
- "customer": {
- "id": 0,
- "name": "string"
}, - "readOnly": true,
- "resourceDetails": { },
- "usedStorage": 0,
- "configMetadata": { }
}
]
}Retrieve global datasources shared across all customers. Global datasources are created by administrators.
Minimum role: VIEWER
| customerId | integer Customer/tenant ID for multi-tenant filtering.
|
| page | integer >= 0 Default: 0 Page index (0-based) |
| size | integer [ 1 .. 1000 ] Default: 20 Number of elements per page (max 1000) |
| sort | string Example: sort=name,asc Sort expression. Format:
|
| search | string WBQL filter expression. Operators: |
| select | string Field projection. |
| includeAdHocDatasources | boolean Default: false Include ad-hoc (temporary) datasources in results |
{- "first": true,
- "last": true,
- "number": 0,
- "numberOfElements": 0,
- "totalElements": 0,
- "totalPages": 0,
- "size": 0,
- "content": [
- {
- "id": "string",
- "name": "string",
- "comment": "string",
- "customerId": 0,
- "global": true,
- "sourceType": "EXTERNAL",
- "structureType": "CUSTOM",
- "refreshMode": "POLL",
- "type": "XML",
- "remoteUrl": "string",
- "refreshFrequency": 0,
- "cronExpressionParameters": {
- "cronExpression": "string",
- "timeZone": "string"
}, - "data": "string",
- "hash": "string",
- "cacheResources": true,
- "removeUrlIfCacheFailed": true,
- "rotateCacheOnEveryUpdate": true,
- "exchangeInternalResourceReferences": true,
- "downloadResourceOnEveryUpdate": true,
- "deactivated": true,
- "autoDeactivated": true,
- "ignoreAutoDeactivate": true,
- "editableByDisplay": true,
- "creationType": "NORMAL",
- "credentialType": "GOOGLE",
- "credentialId": "string",
- "dateFormat": "string",
- "timeFormat": "string",
- "timeZone": "string",
- "generateCalendarForDays": 0,
- "firstDayOfWeek": "Monday",
- "microsoftCalendarDatasourceType": "USER_CALENDAR",
- "calendarId": "string",
- "microsoftUserPrincipalIdOrName": "string",
- "sharepointGroupId": "string",
- "flowId": "string",
- "siteId": "string",
- "listId": "string",
- "driveId": "string",
- "workBookId": "string",
- "microsoftWorkBookParameters": {
- "workSheetId": "string",
- "range": "string",
- "fetchCharts": true,
- "firstRowIsHeader": true
}, - "microsoftWorkbookV2Parameters": {
- "options": [
- {
- "siteId": "string",
- "driveId": "string",
- "workBookId": "string",
- "workSheetId": "string",
- "range": "string",
- "fetchCharts": true,
- "firstRowIsHeader": true,
- "allSheet": true,
- "sameWorkbookParams": true
}
]
}, - "spreadSheetId": "string",
- "sheetId": "string",
- "sheetRange": "string",
- "driveFolderId": "string",
- "spreadSheetLegacyFormat": true,
- "firstRowIsHeader": true,
- "jdbcUserName": "string",
- "jdbcPassword": "string",
- "jdbcQuery": "string",
- "standardTableFormat": true,
- "keepLastXDays": 0,
- "keepLastXItem": 0,
- "maxElementCount": 0,
- "quickFilterId": "string",
- "systemDatasourceType": "FILES",
- "requestSettings": {
- "httpMethod": "GET",
- "customHeaders": {
- "property1": "string",
- "property2": "string"
}, - "basicAuth": {
- "username": "string",
- "password": "string"
}, - "body": "string",
- "jsonBody": true
}, - "respectCacheControl": true,
- "aiParameters": {
- "prompt": "string",
- "jsonSchemaOutput": { },
- "exampleJson": { },
- "sourceDatasourceIds": [
- "string"
]
}, - "calendarMergeParameters": {
- "calendarDatasourceIds": [
- "string"
]
}, - "webScraperParameters": {
- "prompt": "string",
- "url": "string",
- "waitTime": 0,
- "jsonSchemaOutput": { },
- "exampleJson": { }
}, - "weatherParameters": {
- "locations": [
- {
- "location": "string",
- "displayName": "string"
}
], - "geoPositions": [
- {
- "lat": 0.1,
- "lon": 0.1,
- "displayName": "string"
}
]
}, - "capParameters": {
- "capFeedURL": "string",
- "parserRule": {
- "capItemURLSelector": "string"
}, - "cacheRule": {
- "capFeedUpdatedSelector": "string",
- "capItemLastModifiedSelector": "string"
}, - "deviceIdentificationRule": {
- "tagBasedRule": {
- "deviceTagSelector": "ADDRESSES",
- "deviceTagSeparator": "string",
- "deviceTagOperator": "AND"
}, - "locationBasedRule": {
- "resolveLocation": true
}
}, - "emergencyStatusAutoUpdaterRule": {
- "includeDevicesByTag": "string"
}, - "mapperRule": {
- "defaultExpire": 0
}
}, - "toastParameters": {
- "externalGroupRef": "string",
- "externalRestaurantRef": "string",
- "method": "MENU",
- "filterMenuGuids": [
- "string"
]
}, - "toastRestaurantGuid": "string",
- "screenshotParameters": {
- "screenshotConfigs": [
- { }
]
}, - "fileFromUrlParameters": {
- "urls": [
- {
- "url": "string"
}
]
}, - "userActiveDirectoryParameters": {
- "fetchProfilePictures": true,
- "profilePictureSize": "SIZE_48x48",
- "members": "ONLY_INTERNAL",
- "filter": "string",
- "filterBy": "NAME",
- "format": "LIST"
}, - "facebookPageFeedParameters": {
- "pageId": "string"
}, - "instagramPageFeedParameters": {
- "pageId": "string"
}, - "sharepointNewsParameters": {
- "siteId": "string"
}, - "sharepointHeaders": {
- "headers": [
- "string"
]
}, - "powerBiExportParameters": {
- "groupId": "string",
- "reportId": "string",
- "pageNames": [
- "string"
], - "width": 1920,
- "height": 1080
}, - "dynamicParameters": {
- "parameters": { }
}, - "functionIdentifierType": "string",
- "functionIdentifierVersion": "string",
- "datasourceTransformation": {
- "transformations": [
- { }
]
}, - "lastAccessed": 0,
- "lastError": 0,
- "lastModified": 0,
- "lastUpdated": 0,
- "lastChanged": 0,
- "createdAt": 0,
- "nextRefreshTime": 0,
- "lastActiveSubscription": 0,
- "errorCounter": 0,
- "refreshCounter": 0,
- "ignoreErrorCounter": true,
- "customer": {
- "id": 0,
- "name": "string"
}, - "readOnly": true,
- "resourceDetails": { },
- "usedStorage": 0,
- "configMetadata": { }
}
]
}Create a temporary ad-hoc datasource. Ad-hoc datasources have a shorter lifespan (15 minutes) and are typically used for temporary data needs.
Minimum role: EDITOR
| customerId | integer Customer/tenant ID for multi-tenant filtering.
|
| name required | string |
| comment | string |
| global | boolean Default: false |
| sourceType | string (DatasourceType) Enum: "EXTERNAL" "INTERNAL" "SYSTEM" How the datasource obtains data |
| structureType | string (DatasourceStructureType) Enum: "CUSTOM" "TABLE" "KEY_VALUE" "FEED" "LIST" "WAY_FINDING" Data structure format |
| type | string (IncomingDataFormatType) Enum: "XML" "JSON" "ICAL" "GOOGLESHEET" "GOOGLESHEET_API" "NODEJS" "CALENDAR" "CALENDAR_LEGACY" "RSS" "JDBC" "DATABASE" "SHAREPOINT_LISTS" "CAP" "MICROSOFT_WORKBOOK" "FILE_FROM_URL" "TOAST" "SCREENSHOT" "CUSTOM_INTEGRATION" "USER_ACTIVE_DIRECTORY" "WEATHER" "MICROSOFT_WORKBOOK_V2" "WEBSITE_CONTENT" "FACEBOOK_USER_FEED" "FACEBOOK_PAGE_FEED" "INSTAGRAM_PAGE_FEED" "SHAREPOINT_NEWS" "USER_ACTIVE_DIRECTORY_V2" "POWER_BI_EXPORT" Format of incoming data |
| refreshMode | string (RefreshMode) Enum: "POLL" "CALLBACK" How datasource refreshes |
| remoteUrl | string URL for EXTERNAL datasources |
| refreshFrequency | integer Refresh interval in seconds |
object (CronExpressionParameters) Cron-based scheduling parameters (JSON) | |
| data | string Initial data for INTERNAL datasources |
| cacheResources | boolean Default: false |
| removeUrlIfCacheFailed | boolean Default: false |
| rotateCacheOnEveryUpdate | boolean Default: false |
| exchangeInternalResourceReferences | boolean Default: false |
| editableByDisplay | boolean Default: false |
| ignoreErrorCounter | boolean Default: false |
| deactivated | boolean Default: false |
| ignoreAutoDeactivate | boolean Default: false |
| respectCacheControl | boolean Default: true |
| dateFormat | string |
| timeFormat | string |
| timeZone | string |
| generateCalendarForDays | integer Days to generate for calendar data |
| firstDayOfWeek | string (FirstDayOfWeek) Enum: "Monday" "Sunday" "Saturday" First day of week for calendar data |
| credentialId | string |
| credentialType | string (AuthenticatedCredentialType) Enum: "GOOGLE" "O365" "CUSTOM" Type of credential for authenticated datasources |
| spreadSheetId | string |
| sheetId | string |
| sheetRange | string |
| driveFolderId | string |
| spreadSheetLegacyFormat | boolean Default: false |
| firstRowIsHeader | boolean Default: true |
| microsoftCalendarDatasourceType | string (MicrosoftCalendarDatasourceType) Enum: "USER_CALENDAR" "USER_PRINCIPAL_CALENDAR" "GROUP_CALENDAR" Microsoft calendar source type |
| calendarId | string |
| microsoftUserPrincipalIdOrName | string |
| sharepointGroupId | string |
| siteId | string |
| listId | string |
| driveId | string |
| workBookId | string |
| jdbcUserName | string |
| jdbcPassword | string |
| jdbcQuery | string |
| standardTableFormat | boolean Default: false |
| keepLastXDays | integer |
| keepLastXItem | integer |
| maxElementCount | integer |
| quickFilterId | string |
| systemDatasourceType | string (SystemDatasourceType) Enum: "FILES" "DEVICES" "SCREENSHOT" "AI_DATASOURCE" "CALENDAR_MERGE" Type of system-generated datasource |
object (DatasourceHttpRequestSettings) HTTP request configuration for external datasources (JSON) | |
object (AIParameters) AI-powered datasource parameters | |
object (CalendarMergeParameters) Calendar merge parameters for combining multiple calendars | |
object (WebSiteContentParameters) Website content scraping parameters | |
object (WeatherParameters) Weather API parameters | |
object (CapParameters) Common Alerting Protocol (CAP) parameters | |
object (ToastParameters) Toast POS integration parameters | |
object (ScreenshotParameters) Screenshot capture parameters | |
object (FileFromUrlParameters) File from URL download parameters | |
object (UserActiveDirectoryParameters) Azure Active Directory user parameters | |
object (FacebookPageFeedParameters) Facebook page feed parameters | |
object (InstagramPageFeedParameters) Instagram page feed parameters | |
object (SharepointNewsParameters) SharePoint news parameters | |
object (SharepointHeaders) SharePoint list headers configuration | |
object (MicrosoftWorkBookParameters) Microsoft Excel workbook V1 parameters | |
object (MicrosoftWorkbookV2Parameters) Microsoft Excel workbook V2 parameters (multi-sheet support) | |
object (PowerBiExportParameters) Power BI report export parameters | |
object (DynamicParameters) Dynamic parameters for custom integrations | |
object (FunctionIdentifier) Custom integration function identifier | |
object (DatasourceTransformation) Data transformation pipeline | |
| resourceDetails | object Resource details (JSON, can be large) |
object (ConfigMetadata) Configuration metadata for the datasource (JSON) |
{- "name": "string",
- "comment": "string",
- "global": false,
- "sourceType": "EXTERNAL",
- "structureType": "CUSTOM",
- "type": "XML",
- "refreshMode": "POLL",
- "remoteUrl": "string",
- "refreshFrequency": 0,
- "cronExpressionParameters": {
- "cronExpression": "string",
- "timeZone": "string"
}, - "data": "string",
- "cacheResources": false,
- "removeUrlIfCacheFailed": false,
- "rotateCacheOnEveryUpdate": false,
- "exchangeInternalResourceReferences": false,
- "editableByDisplay": false,
- "ignoreErrorCounter": false,
- "deactivated": false,
- "ignoreAutoDeactivate": false,
- "respectCacheControl": true,
- "dateFormat": "string",
- "timeFormat": "string",
- "timeZone": "string",
- "generateCalendarForDays": 0,
- "firstDayOfWeek": "Monday",
- "credentialId": "string",
- "credentialType": "GOOGLE",
- "spreadSheetId": "string",
- "sheetId": "string",
- "sheetRange": "string",
- "driveFolderId": "string",
- "spreadSheetLegacyFormat": false,
- "firstRowIsHeader": true,
- "microsoftCalendarDatasourceType": "USER_CALENDAR",
- "calendarId": "string",
- "microsoftUserPrincipalIdOrName": "string",
- "sharepointGroupId": "string",
- "siteId": "string",
- "listId": "string",
- "driveId": "string",
- "workBookId": "string",
- "jdbcUserName": "string",
- "jdbcPassword": "string",
- "jdbcQuery": "string",
- "standardTableFormat": false,
- "keepLastXDays": 0,
- "keepLastXItem": 0,
- "maxElementCount": 0,
- "quickFilterId": "string",
- "systemDatasourceType": "FILES",
- "requestSettings": {
- "httpMethod": "GET",
- "customHeaders": {
- "property1": "string",
- "property2": "string"
}, - "basicAuth": {
- "username": "string",
- "password": "string"
}, - "body": "string",
- "jsonBody": true
}, - "aiParameters": {
- "prompt": "string",
- "jsonSchemaOutput": { },
- "exampleJson": { },
- "sourceDatasourceIds": [
- "string"
]
}, - "calendarMergeParameters": {
- "calendarDatasourceIds": [
- "string"
]
}, - "webScraperParameters": {
- "prompt": "string",
- "url": "string",
- "waitTime": 0,
- "jsonSchemaOutput": { },
- "exampleJson": { }
}, - "weatherParameters": {
- "locations": [
- {
- "location": "string",
- "displayName": "string"
}
], - "geoPositions": [
- {
- "lat": 0.1,
- "lon": 0.1,
- "displayName": "string"
}
]
}, - "capParameters": {
- "capFeedURL": "string",
- "parserRule": {
- "capItemURLSelector": "string"
}, - "cacheRule": {
- "capFeedUpdatedSelector": "string",
- "capItemLastModifiedSelector": "string"
}, - "deviceIdentificationRule": {
- "tagBasedRule": {
- "deviceTagSelector": "ADDRESSES",
- "deviceTagSeparator": "string",
- "deviceTagOperator": "AND"
}, - "locationBasedRule": {
- "resolveLocation": true
}
}, - "emergencyStatusAutoUpdaterRule": {
- "includeDevicesByTag": "string"
}, - "mapperRule": {
- "defaultExpire": 0
}
}, - "toastParameters": {
- "externalGroupRef": "string",
- "externalRestaurantRef": "string",
- "method": "MENU",
- "filterMenuGuids": [
- "string"
]
}, - "screenshotParameters": {
- "screenshotConfigs": [
- { }
]
}, - "fileFromUrlParameters": {
- "urls": [
- {
- "url": "string"
}
]
}, - "userActiveDirectoryParameters": {
- "fetchProfilePictures": true,
- "profilePictureSize": "SIZE_48x48",
- "members": "ONLY_INTERNAL",
- "filter": "string",
- "filterBy": "NAME",
- "format": "LIST"
}, - "facebookPageFeedParameters": {
- "pageId": "string"
}, - "instagramPageFeedParameters": {
- "pageId": "string"
}, - "sharepointNewsParameters": {
- "siteId": "string"
}, - "sharepointHeaders": {
- "headers": [
- "string"
]
}, - "microsoftWorkBookParameters": {
- "workSheetId": "string",
- "range": "string",
- "fetchCharts": true,
- "firstRowIsHeader": true
}, - "microsoftWorkbookV2Parameters": {
- "options": [
- {
- "siteId": "string",
- "driveId": "string",
- "workBookId": "string",
- "workSheetId": "string",
- "range": "string",
- "fetchCharts": true,
- "firstRowIsHeader": true,
- "allSheet": true,
- "sameWorkbookParams": true
}
]
}, - "powerBiExportParameters": {
- "groupId": "string",
- "reportId": "string",
- "pageNames": [
- "string"
], - "width": 1920,
- "height": 1080
}, - "dynamicParameters": {
- "parameters": { }
}, - "functionIdentifier": {
- "type": "string",
- "version": "string"
}, - "datasourceTransformation": {
- "transformations": [
- { }
]
}, - "resourceDetails": { },
- "configMetadata": { }
}{- "id": "string"
}Retrieve a paginated list of datasources with usage statistics.
Minimum role: VIEWER
| customerId | integer Customer/tenant ID for multi-tenant filtering.
|
| page | integer >= 0 Default: 0 Page index (0-based) |
| size | integer [ 1 .. 1000 ] Default: 20 Number of elements per page (max 1000) |
| sort | string Example: sort=name,asc Sort expression. Format:
|
| search | string WBQL filter expression. Operators: |
| includeAdHocDatasources | boolean Default: false Include ad-hoc (temporary) datasources in results |
{- "data": {
- "first": true,
- "last": true,
- "number": 0,
- "numberOfElements": 0,
- "totalElements": 0,
- "totalPages": 0,
- "size": 0,
- "content": [
- {
- "id": "string",
- "name": "string",
- "comment": "string",
- "customerId": 0,
- "global": true,
- "sourceType": "EXTERNAL",
- "structureType": "CUSTOM",
- "refreshMode": "POLL",
- "type": "XML",
- "remoteUrl": "string",
- "refreshFrequency": 0,
- "cronExpressionParameters": {
- "cronExpression": "string",
- "timeZone": "string"
}, - "data": "string",
- "hash": "string",
- "cacheResources": true,
- "removeUrlIfCacheFailed": true,
- "rotateCacheOnEveryUpdate": true,
- "exchangeInternalResourceReferences": true,
- "downloadResourceOnEveryUpdate": true,
- "deactivated": true,
- "autoDeactivated": true,
- "ignoreAutoDeactivate": true,
- "editableByDisplay": true,
- "creationType": "NORMAL",
- "credentialType": "GOOGLE",
- "credentialId": "string",
- "dateFormat": "string",
- "timeFormat": "string",
- "timeZone": "string",
- "generateCalendarForDays": 0,
- "firstDayOfWeek": "Monday",
- "microsoftCalendarDatasourceType": "USER_CALENDAR",
- "calendarId": "string",
- "microsoftUserPrincipalIdOrName": "string",
- "sharepointGroupId": "string",
- "flowId": "string",
- "siteId": "string",
- "listId": "string",
- "driveId": "string",
- "workBookId": "string",
- "microsoftWorkBookParameters": {
- "workSheetId": "string",
- "range": "string",
- "fetchCharts": true,
- "firstRowIsHeader": true
}, - "microsoftWorkbookV2Parameters": {
- "options": [
- {
- "siteId": "string",
- "driveId": "string",
- "workBookId": "string",
- "workSheetId": "string",
- "range": "string",
- "fetchCharts": true,
- "firstRowIsHeader": true,
- "allSheet": true,
- "sameWorkbookParams": true
}
]
}, - "spreadSheetId": "string",
- "sheetId": "string",
- "sheetRange": "string",
- "driveFolderId": "string",
- "spreadSheetLegacyFormat": true,
- "firstRowIsHeader": true,
- "jdbcUserName": "string",
- "jdbcPassword": "string",
- "jdbcQuery": "string",
- "standardTableFormat": true,
- "keepLastXDays": 0,
- "keepLastXItem": 0,
- "maxElementCount": 0,
- "quickFilterId": "string",
- "systemDatasourceType": "FILES",
- "requestSettings": {
- "httpMethod": "GET",
- "customHeaders": {
- "property1": "string",
- "property2": "string"
}, - "basicAuth": {
- "username": "string",
- "password": "string"
}, - "body": "string",
- "jsonBody": true
}, - "respectCacheControl": true,
- "aiParameters": {
- "prompt": "string",
- "jsonSchemaOutput": { },
- "exampleJson": { },
- "sourceDatasourceIds": [
- "string"
]
}, - "calendarMergeParameters": {
- "calendarDatasourceIds": [
- "string"
]
}, - "webScraperParameters": {
- "prompt": "string",
- "url": "string",
- "waitTime": 0,
- "jsonSchemaOutput": { },
- "exampleJson": { }
}, - "weatherParameters": {
- "locations": [
- {
- "location": "string",
- "displayName": "string"
}
], - "geoPositions": [
- {
- "lat": 0.1,
- "lon": 0.1,
- "displayName": "string"
}
]
}, - "capParameters": {
- "capFeedURL": "string",
- "parserRule": {
- "capItemURLSelector": "string"
}, - "cacheRule": {
- "capFeedUpdatedSelector": "string",
- "capItemLastModifiedSelector": "string"
}, - "deviceIdentificationRule": {
- "tagBasedRule": {
- "deviceTagSelector": "ADDRESSES",
- "deviceTagSeparator": "string",
- "deviceTagOperator": "AND"
}, - "locationBasedRule": {
- "resolveLocation": true
}
}, - "emergencyStatusAutoUpdaterRule": {
- "includeDevicesByTag": "string"
}, - "mapperRule": {
- "defaultExpire": 0
}
}, - "toastParameters": {
- "externalGroupRef": "string",
- "externalRestaurantRef": "string",
- "method": "MENU",
- "filterMenuGuids": [
- "string"
]
}, - "toastRestaurantGuid": "string",
- "screenshotParameters": {
- "screenshotConfigs": [
- { }
]
}, - "fileFromUrlParameters": {
- "urls": [
- {
- "url": "string"
}
]
}, - "userActiveDirectoryParameters": {
- "fetchProfilePictures": true,
- "profilePictureSize": "SIZE_48x48",
- "members": "ONLY_INTERNAL",
- "filter": "string",
- "filterBy": "NAME",
- "format": "LIST"
}, - "facebookPageFeedParameters": {
- "pageId": "string"
}, - "instagramPageFeedParameters": {
- "pageId": "string"
}, - "sharepointNewsParameters": {
- "siteId": "string"
}, - "sharepointHeaders": {
- "headers": [
- "string"
]
}, - "powerBiExportParameters": {
- "groupId": "string",
- "reportId": "string",
- "pageNames": [
- "string"
], - "width": 1920,
- "height": 1080
}, - "dynamicParameters": {
- "parameters": { }
}, - "functionIdentifierType": "string",
- "functionIdentifierVersion": "string",
- "datasourceTransformation": {
- "transformations": [
- { }
]
}, - "lastAccessed": 0,
- "lastError": 0,
- "lastModified": 0,
- "lastUpdated": 0,
- "lastChanged": 0,
- "createdAt": 0,
- "nextRefreshTime": 0,
- "lastActiveSubscription": 0,
- "errorCounter": 0,
- "refreshCounter": 0,
- "ignoreErrorCounter": true,
- "customer": {
- "id": 0,
- "name": "string"
}, - "readOnly": true,
- "resourceDetails": { },
- "usedStorage": 0,
- "configMetadata": { }
}
]
}, - "details": {
- "accessedLastWeek": 0,
- "modifiedLastWeek": 0
}
}Create a new datasource.
Minimum role: TECHNICIAN
Note: Creating global datasources requires ADMIN role and cannot
specify a customerId.
| customerId | integer Customer/tenant ID for multi-tenant filtering.
|
| teamIds | string Example: teamIds=000c08d294df48efb1b0f5aa754d7ef9:true,00a22e86602c4a88914614aa9516a481:false Team assignment filter. Format: |
| name required | string |
| comment | string |
| global | boolean Default: false |
| sourceType | string (DatasourceType) Enum: "EXTERNAL" "INTERNAL" "SYSTEM" How the datasource obtains data |
| structureType | string (DatasourceStructureType) Enum: "CUSTOM" "TABLE" "KEY_VALUE" "FEED" "LIST" "WAY_FINDING" Data structure format |
| type | string (IncomingDataFormatType) Enum: "XML" "JSON" "ICAL" "GOOGLESHEET" "GOOGLESHEET_API" "NODEJS" "CALENDAR" "CALENDAR_LEGACY" "RSS" "JDBC" "DATABASE" "SHAREPOINT_LISTS" "CAP" "MICROSOFT_WORKBOOK" "FILE_FROM_URL" "TOAST" "SCREENSHOT" "CUSTOM_INTEGRATION" "USER_ACTIVE_DIRECTORY" "WEATHER" "MICROSOFT_WORKBOOK_V2" "WEBSITE_CONTENT" "FACEBOOK_USER_FEED" "FACEBOOK_PAGE_FEED" "INSTAGRAM_PAGE_FEED" "SHAREPOINT_NEWS" "USER_ACTIVE_DIRECTORY_V2" "POWER_BI_EXPORT" Format of incoming data |
| refreshMode | string (RefreshMode) Enum: "POLL" "CALLBACK" How datasource refreshes |
| remoteUrl | string URL for EXTERNAL datasources |
| refreshFrequency | integer Refresh interval in seconds |
object (CronExpressionParameters) Cron-based scheduling parameters (JSON) | |
| data | string Initial data for INTERNAL datasources |
| cacheResources | boolean Default: false |
| removeUrlIfCacheFailed | boolean Default: false |
| rotateCacheOnEveryUpdate | boolean Default: false |
| exchangeInternalResourceReferences | boolean Default: false |
| editableByDisplay | boolean Default: false |
| ignoreErrorCounter | boolean Default: false |
| deactivated | boolean Default: false |
| ignoreAutoDeactivate | boolean Default: false |
| respectCacheControl | boolean Default: true |
| dateFormat | string |
| timeFormat | string |
| timeZone | string |
| generateCalendarForDays | integer Days to generate for calendar data |
| firstDayOfWeek | string (FirstDayOfWeek) Enum: "Monday" "Sunday" "Saturday" First day of week for calendar data |
| credentialId | string |
| credentialType | string (AuthenticatedCredentialType) Enum: "GOOGLE" "O365" "CUSTOM" Type of credential for authenticated datasources |
| spreadSheetId | string |
| sheetId | string |
| sheetRange | string |
| driveFolderId | string |
| spreadSheetLegacyFormat | boolean Default: false |
| firstRowIsHeader | boolean Default: true |
| microsoftCalendarDatasourceType | string (MicrosoftCalendarDatasourceType) Enum: "USER_CALENDAR" "USER_PRINCIPAL_CALENDAR" "GROUP_CALENDAR" Microsoft calendar source type |
| calendarId | string |
| microsoftUserPrincipalIdOrName | string |
| sharepointGroupId | string |
| siteId | string |
| listId | string |
| driveId | string |
| workBookId | string |
| jdbcUserName | string |
| jdbcPassword | string |
| jdbcQuery | string |
| standardTableFormat | boolean Default: false |
| keepLastXDays | integer |
| keepLastXItem | integer |
| maxElementCount | integer |
| quickFilterId | string |
| systemDatasourceType | string (SystemDatasourceType) Enum: "FILES" "DEVICES" "SCREENSHOT" "AI_DATASOURCE" "CALENDAR_MERGE" Type of system-generated datasource |
object (DatasourceHttpRequestSettings) HTTP request configuration for external datasources (JSON) | |
object (AIParameters) AI-powered datasource parameters | |
object (CalendarMergeParameters) Calendar merge parameters for combining multiple calendars | |
object (WebSiteContentParameters) Website content scraping parameters | |
object (WeatherParameters) Weather API parameters | |
object (CapParameters) Common Alerting Protocol (CAP) parameters | |
object (ToastParameters) Toast POS integration parameters | |
object (ScreenshotParameters) Screenshot capture parameters | |
object (FileFromUrlParameters) File from URL download parameters | |
object (UserActiveDirectoryParameters) Azure Active Directory user parameters | |
object (FacebookPageFeedParameters) Facebook page feed parameters | |
object (InstagramPageFeedParameters) Instagram page feed parameters | |
object (SharepointNewsParameters) SharePoint news parameters | |
object (SharepointHeaders) SharePoint list headers configuration | |
object (MicrosoftWorkBookParameters) Microsoft Excel workbook V1 parameters | |
object (MicrosoftWorkbookV2Parameters) Microsoft Excel workbook V2 parameters (multi-sheet support) | |
object (PowerBiExportParameters) Power BI report export parameters | |
object (DynamicParameters) Dynamic parameters for custom integrations | |
object (FunctionIdentifier) Custom integration function identifier | |
object (DatasourceTransformation) Data transformation pipeline | |
| resourceDetails | object Resource details (JSON, can be large) |
object (ConfigMetadata) Configuration metadata for the datasource (JSON) |
{- "name": "string",
- "comment": "string",
- "global": false,
- "sourceType": "EXTERNAL",
- "structureType": "CUSTOM",
- "type": "XML",
- "refreshMode": "POLL",
- "remoteUrl": "string",
- "refreshFrequency": 0,
- "cronExpressionParameters": {
- "cronExpression": "string",
- "timeZone": "string"
}, - "data": "string",
- "cacheResources": false,
- "removeUrlIfCacheFailed": false,
- "rotateCacheOnEveryUpdate": false,
- "exchangeInternalResourceReferences": false,
- "editableByDisplay": false,
- "ignoreErrorCounter": false,
- "deactivated": false,
- "ignoreAutoDeactivate": false,
- "respectCacheControl": true,
- "dateFormat": "string",
- "timeFormat": "string",
- "timeZone": "string",
- "generateCalendarForDays": 0,
- "firstDayOfWeek": "Monday",
- "credentialId": "string",
- "credentialType": "GOOGLE",
- "spreadSheetId": "string",
- "sheetId": "string",
- "sheetRange": "string",
- "driveFolderId": "string",
- "spreadSheetLegacyFormat": false,
- "firstRowIsHeader": true,
- "microsoftCalendarDatasourceType": "USER_CALENDAR",
- "calendarId": "string",
- "microsoftUserPrincipalIdOrName": "string",
- "sharepointGroupId": "string",
- "siteId": "string",
- "listId": "string",
- "driveId": "string",
- "workBookId": "string",
- "jdbcUserName": "string",
- "jdbcPassword": "string",
- "jdbcQuery": "string",
- "standardTableFormat": false,
- "keepLastXDays": 0,
- "keepLastXItem": 0,
- "maxElementCount": 0,
- "quickFilterId": "string",
- "systemDatasourceType": "FILES",
- "requestSettings": {
- "httpMethod": "GET",
- "customHeaders": {
- "property1": "string",
- "property2": "string"
}, - "basicAuth": {
- "username": "string",
- "password": "string"
}, - "body": "string",
- "jsonBody": true
}, - "aiParameters": {
- "prompt": "string",
- "jsonSchemaOutput": { },
- "exampleJson": { },
- "sourceDatasourceIds": [
- "string"
]
}, - "calendarMergeParameters": {
- "calendarDatasourceIds": [
- "string"
]
}, - "webScraperParameters": {
- "prompt": "string",
- "url": "string",
- "waitTime": 0,
- "jsonSchemaOutput": { },
- "exampleJson": { }
}, - "weatherParameters": {
- "locations": [
- {
- "location": "string",
- "displayName": "string"
}
], - "geoPositions": [
- {
- "lat": 0.1,
- "lon": 0.1,
- "displayName": "string"
}
]
}, - "capParameters": {
- "capFeedURL": "string",
- "parserRule": {
- "capItemURLSelector": "string"
}, - "cacheRule": {
- "capFeedUpdatedSelector": "string",
- "capItemLastModifiedSelector": "string"
}, - "deviceIdentificationRule": {
- "tagBasedRule": {
- "deviceTagSelector": "ADDRESSES",
- "deviceTagSeparator": "string",
- "deviceTagOperator": "AND"
}, - "locationBasedRule": {
- "resolveLocation": true
}
}, - "emergencyStatusAutoUpdaterRule": {
- "includeDevicesByTag": "string"
}, - "mapperRule": {
- "defaultExpire": 0
}
}, - "toastParameters": {
- "externalGroupRef": "string",
- "externalRestaurantRef": "string",
- "method": "MENU",
- "filterMenuGuids": [
- "string"
]
}, - "screenshotParameters": {
- "screenshotConfigs": [
- { }
]
}, - "fileFromUrlParameters": {
- "urls": [
- {
- "url": "string"
}
]
}, - "userActiveDirectoryParameters": {
- "fetchProfilePictures": true,
- "profilePictureSize": "SIZE_48x48",
- "members": "ONLY_INTERNAL",
- "filter": "string",
- "filterBy": "NAME",
- "format": "LIST"
}, - "facebookPageFeedParameters": {
- "pageId": "string"
}, - "instagramPageFeedParameters": {
- "pageId": "string"
}, - "sharepointNewsParameters": {
- "siteId": "string"
}, - "sharepointHeaders": {
- "headers": [
- "string"
]
}, - "microsoftWorkBookParameters": {
- "workSheetId": "string",
- "range": "string",
- "fetchCharts": true,
- "firstRowIsHeader": true
}, - "microsoftWorkbookV2Parameters": {
- "options": [
- {
- "siteId": "string",
- "driveId": "string",
- "workBookId": "string",
- "workSheetId": "string",
- "range": "string",
- "fetchCharts": true,
- "firstRowIsHeader": true,
- "allSheet": true,
- "sameWorkbookParams": true
}
]
}, - "powerBiExportParameters": {
- "groupId": "string",
- "reportId": "string",
- "pageNames": [
- "string"
], - "width": 1920,
- "height": 1080
}, - "dynamicParameters": {
- "parameters": { }
}, - "functionIdentifier": {
- "type": "string",
- "version": "string"
}, - "datasourceTransformation": {
- "transformations": [
- { }
]
}, - "resourceDetails": { },
- "configMetadata": { }
}{- "id": "string",
- "name": "string",
- "comment": "string",
- "customerId": 0,
- "global": true,
- "sourceType": "EXTERNAL",
- "structureType": "CUSTOM",
- "refreshMode": "POLL",
- "type": "XML",
- "remoteUrl": "string",
- "refreshFrequency": 0,
- "cronExpressionParameters": {
- "cronExpression": "string",
- "timeZone": "string"
}, - "data": "string",
- "hash": "string",
- "cacheResources": true,
- "removeUrlIfCacheFailed": true,
- "rotateCacheOnEveryUpdate": true,
- "exchangeInternalResourceReferences": true,
- "downloadResourceOnEveryUpdate": true,
- "deactivated": true,
- "autoDeactivated": true,
- "ignoreAutoDeactivate": true,
- "editableByDisplay": true,
- "creationType": "NORMAL",
- "credentialType": "GOOGLE",
- "credentialId": "string",
- "dateFormat": "string",
- "timeFormat": "string",
- "timeZone": "string",
- "generateCalendarForDays": 0,
- "firstDayOfWeek": "Monday",
- "microsoftCalendarDatasourceType": "USER_CALENDAR",
- "calendarId": "string",
- "microsoftUserPrincipalIdOrName": "string",
- "sharepointGroupId": "string",
- "flowId": "string",
- "siteId": "string",
- "listId": "string",
- "driveId": "string",
- "workBookId": "string",
- "microsoftWorkBookParameters": {
- "workSheetId": "string",
- "range": "string",
- "fetchCharts": true,
- "firstRowIsHeader": true
}, - "microsoftWorkbookV2Parameters": {
- "options": [
- {
- "siteId": "string",
- "driveId": "string",
- "workBookId": "string",
- "workSheetId": "string",
- "range": "string",
- "fetchCharts": true,
- "firstRowIsHeader": true,
- "allSheet": true,
- "sameWorkbookParams": true
}
]
}, - "spreadSheetId": "string",
- "sheetId": "string",
- "sheetRange": "string",
- "driveFolderId": "string",
- "spreadSheetLegacyFormat": true,
- "firstRowIsHeader": true,
- "jdbcUserName": "string",
- "jdbcPassword": "string",
- "jdbcQuery": "string",
- "standardTableFormat": true,
- "keepLastXDays": 0,
- "keepLastXItem": 0,
- "maxElementCount": 0,
- "quickFilterId": "string",
- "systemDatasourceType": "FILES",
- "requestSettings": {
- "httpMethod": "GET",
- "customHeaders": {
- "property1": "string",
- "property2": "string"
}, - "basicAuth": {
- "username": "string",
- "password": "string"
}, - "body": "string",
- "jsonBody": true
}, - "respectCacheControl": true,
- "aiParameters": {
- "prompt": "string",
- "jsonSchemaOutput": { },
- "exampleJson": { },
- "sourceDatasourceIds": [
- "string"
]
}, - "calendarMergeParameters": {
- "calendarDatasourceIds": [
- "string"
]
}, - "webScraperParameters": {
- "prompt": "string",
- "url": "string",
- "waitTime": 0,
- "jsonSchemaOutput": { },
- "exampleJson": { }
}, - "weatherParameters": {
- "locations": [
- {
- "location": "string",
- "displayName": "string"
}
], - "geoPositions": [
- {
- "lat": 0.1,
- "lon": 0.1,
- "displayName": "string"
}
]
}, - "capParameters": {
- "capFeedURL": "string",
- "parserRule": {
- "capItemURLSelector": "string"
}, - "cacheRule": {
- "capFeedUpdatedSelector": "string",
- "capItemLastModifiedSelector": "string"
}, - "deviceIdentificationRule": {
- "tagBasedRule": {
- "deviceTagSelector": "ADDRESSES",
- "deviceTagSeparator": "string",
- "deviceTagOperator": "AND"
}, - "locationBasedRule": {
- "resolveLocation": true
}
}, - "emergencyStatusAutoUpdaterRule": {
- "includeDevicesByTag": "string"
}, - "mapperRule": {
- "defaultExpire": 0
}
}, - "toastParameters": {
- "externalGroupRef": "string",
- "externalRestaurantRef": "string",
- "method": "MENU",
- "filterMenuGuids": [
- "string"
]
}, - "toastRestaurantGuid": "string",
- "screenshotParameters": {
- "screenshotConfigs": [
- { }
]
}, - "fileFromUrlParameters": {
- "urls": [
- {
- "url": "string"
}
]
}, - "userActiveDirectoryParameters": {
- "fetchProfilePictures": true,
- "profilePictureSize": "SIZE_48x48",
- "members": "ONLY_INTERNAL",
- "filter": "string",
- "filterBy": "NAME",
- "format": "LIST"
}, - "facebookPageFeedParameters": {
- "pageId": "string"
}, - "instagramPageFeedParameters": {
- "pageId": "string"
}, - "sharepointNewsParameters": {
- "siteId": "string"
}, - "sharepointHeaders": {
- "headers": [
- "string"
]
}, - "powerBiExportParameters": {
- "groupId": "string",
- "reportId": "string",
- "pageNames": [
- "string"
], - "width": 1920,
- "height": 1080
}, - "dynamicParameters": {
- "parameters": { }
}, - "functionIdentifierType": "string",
- "functionIdentifierVersion": "string",
- "datasourceTransformation": {
- "transformations": [
- { }
]
}, - "lastAccessed": 0,
- "lastError": 0,
- "lastModified": 0,
- "lastUpdated": 0,
- "lastChanged": 0,
- "createdAt": 0,
- "nextRefreshTime": 0,
- "lastActiveSubscription": 0,
- "errorCounter": 0,
- "refreshCounter": 0,
- "ignoreErrorCounter": true,
- "customer": {
- "id": 0,
- "name": "string"
}, - "readOnly": true,
- "resourceDetails": { },
- "usedStorage": 0,
- "configMetadata": { }
}Update an existing datasource.
Minimum role: TECHNICIAN
| datasourceId required | string Datasource ID |
| name | string |
| comment | string |
| refreshFrequency | integer |
object (CronExpressionParameters) Cron-based scheduling parameters (JSON) | |
| refreshMode | string (RefreshMode) Enum: "POLL" "CALLBACK" How datasource refreshes |
| remoteUrl | string |
| cacheResources | boolean |
| removeUrlIfCacheFailed | boolean |
| rotateCacheOnEveryUpdate | boolean |
| exchangeInternalResourceReferences | boolean |
| editableByDisplay | boolean |
| deactivated | boolean |
| ignoreErrorCounter | boolean |
| ignoreAutoDeactivate | boolean |
| respectCacheControl | boolean |
| dateFormat | string |
| timeFormat | string |
| timeZone | string |
| generateCalendarForDays | integer |
| firstDayOfWeek | string (FirstDayOfWeek) Enum: "Monday" "Sunday" "Saturday" First day of week for calendar data |
| credentialId | string |
| credentialType | string (AuthenticatedCredentialType) Enum: "GOOGLE" "O365" "CUSTOM" Type of credential for authenticated datasources |
| calendarId | string |
| microsoftUserPrincipalIdOrName | string |
| sharepointGroupId | string |
| flowId | string |
| jdbcUserName | string |
| resetJdbcUserName | boolean Set to true to clear the JDBC username |
| jdbcPassword | string |
| resetJdbcPassword | boolean Set to true to clear the JDBC password |
| jdbcQuery | string |
| standardTableFormat | boolean |
| keepLastXDays | integer |
| keepLastXItem | integer |
| maxElementCount | integer |
| quickFilterId | string |
| spreadSheetLegacyFormat | boolean |
| spreadSheetId | string |
| sheetId | string |
| sheetRange | string |
| driveFolderId | string |
| firstRowIsHeader | boolean |
| listId | string |
| siteId | string |
| workBookId | string |
| driveId | string |
object (DatasourceHttpRequestSettings) HTTP request configuration for external datasources (JSON) | |
object (AIParameters) AI-powered datasource parameters | |
object (CalendarMergeParameters) Calendar merge parameters for combining multiple calendars | |
object (WebSiteContentParameters) Website content scraping parameters | |
object (WeatherParameters) Weather API parameters | |
object (CapParameters) Common Alerting Protocol (CAP) parameters | |
object (ToastParameters) Toast POS integration parameters | |
object (ScreenshotParameters) Screenshot capture parameters | |
object (FileFromUrlParameters) File from URL download parameters | |
object (UserActiveDirectoryParameters) Azure Active Directory user parameters | |
object (FacebookPageFeedParameters) Facebook page feed parameters | |
object (InstagramPageFeedParameters) Instagram page feed parameters | |
object (SharepointNewsParameters) SharePoint news parameters | |
object (SharepointHeaders) SharePoint list headers configuration | |
| resetHeaders | boolean Set to true to clear SharePoint headers |
object (MicrosoftWorkBookParameters) Microsoft Excel workbook V1 parameters | |
object (MicrosoftWorkbookV2Parameters) Microsoft Excel workbook V2 parameters (multi-sheet support) | |
object (PowerBiExportParameters) Power BI report export parameters | |
object (DynamicParameters) Dynamic parameters for custom integrations | |
object (DatasourceTransformation) Data transformation pipeline | |
object (ConfigMetadata) Configuration metadata for the datasource (JSON) | |
object Customer to transfer the datasource to |
{- "name": "string",
- "comment": "string",
- "refreshFrequency": 0,
- "cronExpressionParameters": {
- "cronExpression": "string",
- "timeZone": "string"
}, - "refreshMode": "POLL",
- "remoteUrl": "string",
- "cacheResources": true,
- "removeUrlIfCacheFailed": true,
- "rotateCacheOnEveryUpdate": true,
- "exchangeInternalResourceReferences": true,
- "editableByDisplay": true,
- "deactivated": true,
- "ignoreErrorCounter": true,
- "ignoreAutoDeactivate": true,
- "respectCacheControl": true,
- "dateFormat": "string",
- "timeFormat": "string",
- "timeZone": "string",
- "generateCalendarForDays": 0,
- "firstDayOfWeek": "Monday",
- "credentialId": "string",
- "credentialType": "GOOGLE",
- "calendarId": "string",
- "microsoftUserPrincipalIdOrName": "string",
- "sharepointGroupId": "string",
- "flowId": "string",
- "jdbcUserName": "string",
- "resetJdbcUserName": true,
- "jdbcPassword": "string",
- "resetJdbcPassword": true,
- "jdbcQuery": "string",
- "standardTableFormat": true,
- "keepLastXDays": 0,
- "keepLastXItem": 0,
- "maxElementCount": 0,
- "quickFilterId": "string",
- "spreadSheetLegacyFormat": true,
- "spreadSheetId": "string",
- "sheetId": "string",
- "sheetRange": "string",
- "driveFolderId": "string",
- "firstRowIsHeader": true,
- "listId": "string",
- "siteId": "string",
- "workBookId": "string",
- "driveId": "string",
- "requestSettings": {
- "httpMethod": "GET",
- "customHeaders": {
- "property1": "string",
- "property2": "string"
}, - "basicAuth": {
- "username": "string",
- "password": "string"
}, - "body": "string",
- "jsonBody": true
}, - "aiParameters": {
- "prompt": "string",
- "jsonSchemaOutput": { },
- "exampleJson": { },
- "sourceDatasourceIds": [
- "string"
]
}, - "calendarMergeParameters": {
- "calendarDatasourceIds": [
- "string"
]
}, - "webScraperParameters": {
- "prompt": "string",
- "url": "string",
- "waitTime": 0,
- "jsonSchemaOutput": { },
- "exampleJson": { }
}, - "weatherParameters": {
- "locations": [
- {
- "location": "string",
- "displayName": "string"
}
], - "geoPositions": [
- {
- "lat": 0.1,
- "lon": 0.1,
- "displayName": "string"
}
]
}, - "capParameters": {
- "capFeedURL": "string",
- "parserRule": {
- "capItemURLSelector": "string"
}, - "cacheRule": {
- "capFeedUpdatedSelector": "string",
- "capItemLastModifiedSelector": "string"
}, - "deviceIdentificationRule": {
- "tagBasedRule": {
- "deviceTagSelector": "ADDRESSES",
- "deviceTagSeparator": "string",
- "deviceTagOperator": "AND"
}, - "locationBasedRule": {
- "resolveLocation": true
}
}, - "emergencyStatusAutoUpdaterRule": {
- "includeDevicesByTag": "string"
}, - "mapperRule": {
- "defaultExpire": 0
}
}, - "toastParameters": {
- "externalGroupRef": "string",
- "externalRestaurantRef": "string",
- "method": "MENU",
- "filterMenuGuids": [
- "string"
]
}, - "screenshotParameters": {
- "screenshotConfigs": [
- { }
]
}, - "fileFromUrlParameters": {
- "urls": [
- {
- "url": "string"
}
]
}, - "userActiveDirectoryParameters": {
- "fetchProfilePictures": true,
- "profilePictureSize": "SIZE_48x48",
- "members": "ONLY_INTERNAL",
- "filter": "string",
- "filterBy": "NAME",
- "format": "LIST"
}, - "facebookPageFeedParameters": {
- "pageId": "string"
}, - "instagramPageFeedParameters": {
- "pageId": "string"
}, - "sharepointNewsParameters": {
- "siteId": "string"
}, - "sharepointHeaders": {
- "headers": [
- "string"
]
}, - "resetHeaders": true,
- "microsoftWorkBookParameters": {
- "workSheetId": "string",
- "range": "string",
- "fetchCharts": true,
- "firstRowIsHeader": true
}, - "microsoftWorkbookV2Parameters": {
- "options": [
- {
- "siteId": "string",
- "driveId": "string",
- "workBookId": "string",
- "workSheetId": "string",
- "range": "string",
- "fetchCharts": true,
- "firstRowIsHeader": true,
- "allSheet": true,
- "sameWorkbookParams": true
}
]
}, - "powerBiExportParameters": {
- "groupId": "string",
- "reportId": "string",
- "pageNames": [
- "string"
], - "width": 1920,
- "height": 1080
}, - "dynamicParameters": {
- "parameters": { }
}, - "datasourceTransformation": {
- "transformations": [
- { }
]
}, - "configMetadata": { },
- "customer": {
- "id": 0
}
}Retrieve the current data content of a datasource.
Use parseData=true to get the data field as a parsed JSON object instead of a stringified JSON string.
Authentication options:
VIEWER)DATASOURCE_DATA_READ scope| datasourceId required | string Datasource ID (UUID) |
| parseData | boolean Default: false When true, returns the |
curl -X GET \ 'https://{server}/api/datasource/ds-uuid-123/data?parseData=true' \ -H 'Authorization: Bearer <oauth-token>'
{- "name": "string",
- "data": null,
- "configMetadata": { }
}Update the data content of an INTERNAL datasource.
Only works for datasources with sourceType: INTERNAL.
The data field accepts both a JSON object (preferred) and a stringified JSON string (backward compatible).
Authentication options:
EDITOR)INTERNAL_DATASOURCE_WRITE scope| datasourceId required | string Datasource ID (UUID) |
required | object or string Data content. Accepts JSON object directly (preferred) or stringified JSON string. |
One of object JSON data object (preferred) | |
{- "data": {
- "visitors": 150,
- "lastUpdate": "2026-01-26"
}
}{- "timestamp": 0,
- "status": 0,
- "error": "string",
- "message": "string",
- "path": "string",
- "exception": "string",
- "details": { },
- "key": "string"
}Retrieve global datasources shared across all customers. Global datasources are created by administrators.
Minimum role: VIEWER
| page | integer >= 0 Default: 0 Page index (0-based) |
| size | integer [ 1 .. 1000 ] Default: 20 Number of elements per page (max 1000) |
| sort | string Example: sort=name,asc Sort expression. Format:
|
| search | string WBQL filter expression. Operators: |
| includeAdHocDatasources | boolean Default: false Include ad-hoc (temporary) datasources in results |
{- "first": true,
- "last": true,
- "number": 0,
- "numberOfElements": 0,
- "totalElements": 0,
- "totalPages": 0,
- "size": 0,
- "content": [
- {
- "id": "string",
- "name": "string",
- "comment": "string",
- "customerId": 0,
- "global": true,
- "sourceType": "EXTERNAL",
- "structureType": "CUSTOM",
- "refreshMode": "POLL",
- "type": "XML",
- "remoteUrl": "string",
- "refreshFrequency": 0,
- "cronExpressionParameters": {
- "cronExpression": "string",
- "timeZone": "string"
}, - "data": "string",
- "hash": "string",
- "cacheResources": true,
- "removeUrlIfCacheFailed": true,
- "rotateCacheOnEveryUpdate": true,
- "exchangeInternalResourceReferences": true,
- "downloadResourceOnEveryUpdate": true,
- "deactivated": true,
- "autoDeactivated": true,
- "ignoreAutoDeactivate": true,
- "editableByDisplay": true,
- "creationType": "NORMAL",
- "credentialType": "GOOGLE",
- "credentialId": "string",
- "dateFormat": "string",
- "timeFormat": "string",
- "timeZone": "string",
- "generateCalendarForDays": 0,
- "firstDayOfWeek": "Monday",
- "microsoftCalendarDatasourceType": "USER_CALENDAR",
- "calendarId": "string",
- "microsoftUserPrincipalIdOrName": "string",
- "sharepointGroupId": "string",
- "flowId": "string",
- "siteId": "string",
- "listId": "string",
- "driveId": "string",
- "workBookId": "string",
- "microsoftWorkBookParameters": {
- "workSheetId": "string",
- "range": "string",
- "fetchCharts": true,
- "firstRowIsHeader": true
}, - "microsoftWorkbookV2Parameters": {
- "options": [
- {
- "siteId": "string",
- "driveId": "string",
- "workBookId": "string",
- "workSheetId": "string",
- "range": "string",
- "fetchCharts": true,
- "firstRowIsHeader": true,
- "allSheet": true,
- "sameWorkbookParams": true
}
]
}, - "spreadSheetId": "string",
- "sheetId": "string",
- "sheetRange": "string",
- "driveFolderId": "string",
- "spreadSheetLegacyFormat": true,
- "firstRowIsHeader": true,
- "jdbcUserName": "string",
- "jdbcPassword": "string",
- "jdbcQuery": "string",
- "standardTableFormat": true,
- "keepLastXDays": 0,
- "keepLastXItem": 0,
- "maxElementCount": 0,
- "quickFilterId": "string",
- "systemDatasourceType": "FILES",
- "requestSettings": {
- "httpMethod": "GET",
- "customHeaders": {
- "property1": "string",
- "property2": "string"
}, - "basicAuth": {
- "username": "string",
- "password": "string"
}, - "body": "string",
- "jsonBody": true
}, - "respectCacheControl": true,
- "aiParameters": {
- "prompt": "string",
- "jsonSchemaOutput": { },
- "exampleJson": { },
- "sourceDatasourceIds": [
- "string"
]
}, - "calendarMergeParameters": {
- "calendarDatasourceIds": [
- "string"
]
}, - "webScraperParameters": {
- "prompt": "string",
- "url": "string",
- "waitTime": 0,
- "jsonSchemaOutput": { },
- "exampleJson": { }
}, - "weatherParameters": {
- "locations": [
- {
- "location": "string",
- "displayName": "string"
}
], - "geoPositions": [
- {
- "lat": 0.1,
- "lon": 0.1,
- "displayName": "string"
}
]
}, - "capParameters": {
- "capFeedURL": "string",
- "parserRule": {
- "capItemURLSelector": "string"
}, - "cacheRule": {
- "capFeedUpdatedSelector": "string",
- "capItemLastModifiedSelector": "string"
}, - "deviceIdentificationRule": {
- "tagBasedRule": {
- "deviceTagSelector": "ADDRESSES",
- "deviceTagSeparator": "string",
- "deviceTagOperator": "AND"
}, - "locationBasedRule": {
- "resolveLocation": true
}
}, - "emergencyStatusAutoUpdaterRule": {
- "includeDevicesByTag": "string"
}, - "mapperRule": {
- "defaultExpire": 0
}
}, - "toastParameters": {
- "externalGroupRef": "string",
- "externalRestaurantRef": "string",
- "method": "MENU",
- "filterMenuGuids": [
- "string"
]
}, - "toastRestaurantGuid": "string",
- "screenshotParameters": {
- "screenshotConfigs": [
- { }
]
}, - "fileFromUrlParameters": {
- "urls": [
- {
- "url": "string"
}
]
}, - "userActiveDirectoryParameters": {
- "fetchProfilePictures": true,
- "profilePictureSize": "SIZE_48x48",
- "members": "ONLY_INTERNAL",
- "filter": "string",
- "filterBy": "NAME",
- "format": "LIST"
}, - "facebookPageFeedParameters": {
- "pageId": "string"
}, - "instagramPageFeedParameters": {
- "pageId": "string"
}, - "sharepointNewsParameters": {
- "siteId": "string"
}, - "sharepointHeaders": {
- "headers": [
- "string"
]
}, - "powerBiExportParameters": {
- "groupId": "string",
- "reportId": "string",
- "pageNames": [
- "string"
], - "width": 1920,
- "height": 1080
}, - "dynamicParameters": {
- "parameters": { }
}, - "functionIdentifierType": "string",
- "functionIdentifierVersion": "string",
- "datasourceTransformation": {
- "transformations": [
- { }
]
}, - "lastAccessed": 0,
- "lastError": 0,
- "lastModified": 0,
- "lastUpdated": 0,
- "lastChanged": 0,
- "createdAt": 0,
- "nextRefreshTime": 0,
- "lastActiveSubscription": 0,
- "errorCounter": 0,
- "refreshCounter": 0,
- "ignoreErrorCounter": true,
- "customer": {
- "id": 0,
- "name": "string"
}, - "readOnly": true,
- "resourceDetails": { },
- "usedStorage": 0,
- "configMetadata": { }
}
]
}Retrieve usage information showing which content uses each datasource.
Minimum role: VIEWER
| customerId | integer Customer/tenant ID for multi-tenant filtering.
|
| page | integer >= 0 Default: 0 Page index (0-based) |
| size | integer [ 1 .. 1000 ] Default: 20 Number of elements per page (max 1000) |
| sort | string Example: sort=name,asc Sort expression. Format:
|
| search | string WBQL filter expression. Operators: |
{- "first": true,
- "last": true,
- "number": 0,
- "numberOfElements": 0,
- "totalElements": 0,
- "totalPages": 0,
- "size": 0,
- "content": [
- {
- "datasourceId": "string",
- "contentUsage": [
- {
- "id": "string",
- "name": "string",
- "deviceContentType": "string"
}
]
}
]
}Export datasource list as CSV file.
Minimum role: VIEWER
| customerId | integer Customer/tenant ID for multi-tenant filtering.
|
| search | string WBQL filter expression. Operators: |
Update team assignments for a datasource.
Minimum role: OWNER
| customerId | integer Customer/tenant ID for multi-tenant filtering.
|
| datasourceId required | string Datasource ID |
Array of objects Teams to assign the resource to | |
| removeFromTeamIds | Array of strings Team IDs to remove the resource from |
{- "assignToTeams": [
- {
- "teamId": "string",
- "readOnly": true
}
], - "removeFromTeamIds": [
- "string"
]
}Set datasource data from a display device.
Used for interactive displays that can update datasources.
Only works for INTERNAL datasources with editableByDisplay: true.
| datasourceId required | string Datasource ID |
JSON data to set
{ }Merge data into a datasource from a display device. Preserves existing data while adding/updating specific keys.
| datasourceId required | string Datasource ID |
JSON data to merge
{ }Increase a numeric value in the datasource by 1. Optionally specify a maximum value to cap the increase.
| datasourceId required | string Datasource ID |
| selector required | string JSON path selector for the numeric value |
| maximumValue | integer <int64> Maximum allowed value (will not increase beyond this) |
Decrease a numeric value in the datasource by 1. Optionally specify a minimum value to cap the decrease.
| datasourceId required | string Datasource ID |
| selector required | string JSON path selector for the numeric value |
| minimumValue | integer <int64> Minimum allowed value (will not decrease below this) |
Insert an element into an array in the datasource. Can specify position, max elements, and rotation behavior.
| datasourceId required | string Datasource ID |
| selector required | string JSON path selector for the array |
| index | integer <int64> Index to insert at (appends if not specified) |
| maxElementCount | integer <int64> Maximum number of elements to keep in array |
| rotateEnabled | boolean Enable rotation when max elements reached |
Element to insert
{ }Remove an element from an array in the datasource by index.
| datasourceId required | string Datasource ID |
| selector required | string JSON path selector for the array |
| index | integer <int64> Index of element to remove (removes last if not specified) |
Rotate elements in an array, optionally removing elements older than a specified threshold based on a date attribute.
| datasourceId required | string Datasource ID |
| arraySelector required | string JSON path selector for the array |
| dateAttributeSelector | string JSON path selector for date attribute within array elements |
| keepThresholdMilliseconds | integer <int64> Keep elements newer than this threshold (milliseconds) |
Find an element in an array and either merge data into it or replace it entirely. Elements can be found by index or by matching a selector value.
| datasourceId required | string Datasource ID |
| keySelector required | string JSON path selector for the array |
| itemSelectorIndex | integer Find element by array index |
| itemSelector | string JSON path selector for matching attribute within elements |
| itemSelectorValue | string Value to match against itemSelector |
| replace | boolean Default: true If true, replace element entirely; if false, merge data |
Data to merge or replace with
{ }