Download OpenAPI specification:Download
Use this API to interact with core features of Beacon Tower. I.e. Asset Management, Provider Management etc.
| username | string (User Name) |
| password | string (Password) |
{- "username": "string",
- "password": "string"
}{- "accessToken": "string"
}Get all Providers or filter by type
| type | string Filter by type. Examples are "iothub" and "import" |
[- {
- "id": "myProviderId",
- "type": "iothub",
- "displayName": "My Provider",
- "description": "Description of My Provider"
}
]Create a new provider
Provider
| id | string |
| type required | string |
| displayName required | string |
| description | string |
| organizationId required | string |
{- "id": "myProviderId",
- "type": "iothub",
- "displayName": "My Provider",
- "description": "Description of My Provider",
- "organizationId": "org1"
}Create or update Provider by Id
| providerId required | string Provider id |
Create or update a Provider
| type | string |
| displayName required | string |
| description | string |
{- "type": "iothub",
- "displayName": "My Provider",
- "description": "Description of My Provider"
}Returns a single Provider
| providerId required | string ID of Provider to return |
{- "id": "myProviderId",
- "type": "iothub",
- "displayName": "My Provider",
- "description": "Description of My Provider"
}Get all clients from a Provider
| providerId required | string Requests a list of clients from a Provider |
[- {
- "id": "myClientId",
- "displayName": "My Client",
- "description": "My Provider Client description",
- "templateid": "fc006ddc-e939-4d66-bf6d-4b53b10d812b",
- "enabled": true
}
]Create a new client
| providerId required | string Creates a new Provider Client |
Provider Client
| id required | string |
| displayName required | string |
| description | string |
| enabled | boolean |
| organizationId required | string |
{- "id": "myClientId",
- "displayName": "My Client",
- "description": "My Provider Client description",
- "enabled": true,
- "organizationId": "string"
}Get a client from Provider including Provider Data
| providerId required | string ProviderId |
| clientId required | string ClientId |
| componentId | string Component identifier (module) |
{- "id": "myClientId",
- "displayName": "My Client",
- "description": "My Provider Client description",
- "templateId": "fc006ddc-e939-4d66-bf6d-4b53b10d812b",
- "templateApplied": "2020-02-08 09:30:26.123Z",
- "enabled": true,
- "providerData": {
- "someProviderDataPropertyName": "someProviderDataPropertyValue"
}
}Update properties on a Provider Client
| providerId required | string ProviderId |
| clientId required | string ClientId |
Update a subset of properties on a Provider Client
| displayName | string or null |
| description | string or null |
| enabled | boolean or null Default: true |
{- "displayName": "My Provider Client Display name",
- "description": "My Provider Client Description",
- "enabled": true
}If a template is used, include a refrence to the template using templateId
| providerId required | string ProviderId |
| clientId required | string ClientId |
Provision request body. Defaults: Iot-device, Sas authentication, enabled
| templateId | string Template Id |
| options required | object Controls behaviour for the provision operation. See examples. |
{- "Options": {
- "hub": "someHubName"
}
}Synchronously execute a remote mehod on the Client
| providerId required | string ProviderId |
| clientId required | string ClientId |
Direct mehod request with optional payload
| componentId | string or null |
| method | string |
| payload | object or null |
{- "componentId": "sensehat",
- "method": "lightsOn",
- "payload": {
- "theme": "christmas01"
}
}Get reported properties for a Provider Client
| providerId required | string ProviderId |
| clientId required | string ClientId |
| componentId | string Component identifier (module) |
{- "tempsettings": {
- "hightemp": 20,
- "lowtem": 10
}, - "updatefreq": 20
}Get desired properties for a Provider Client
| providerId required | string ProviderId |
| clientId required | string ClientId |
| componentId | string Component identifier (module) |
{- "tempsettings": {
- "hightemp": 20,
- "lowtemp": 10
}, - "updatefreq": 20
}Set desired properties on a Provider Client
| providerId required | string ProviderId |
| clientId required | string ClientId |
Desired properties body
| componentId | string or null |
object |
{- "componentId": "sensehat",
- "tempsettings": {
- "hightemp": 20,
- "lowtemp": 10,
- "updatefreq": 20
}
}Get all templates for a Provider
| tagFilter | string Example: tagFilter=AssetModel=myModel Only fetch templates with the matching tags. |
[- {
- "id": "e6c27027-6c25-4e81-b6a0-a9bd9af184eb",
- "displayName": "Default iot-hub edge device template",
- "description": "This template is used to provision edge-devices onto iot-hub",
- "enabled": true,
- "options": {
- "hub": "iothub-name",
- "isEdge": true,
- "edgeDeviceTemplateOptions": {
- "manifest": { },
- "deviceDesiredProperties": {
- "test": 1
}, - "modulesDesiredProperties": {
- "sensehat": {
- "test": 1
}
}
}
}
}
]Create a new Provider Template
Create Template body
object | |
| displayName required | string |
| description | string |
| enabled | string Default: true If disabled, no new clients can be created using this template |
| options | object Provider specific options |
| organizationId required | string |
{- "tags": {
- "AssetModel": [
- "model1",
- "model2"
], - "PublishingStatus": [
- "Draft"
]
}, - "displayName": "Default iot-hub device template",
- "description": "This template is used to provision iot-devices onto iot-hub",
- "enabled": false,
- "options": {
- "hub": "iothub-name",
- "isEdge": false,
- "iotDeviceTemplateOptions": {
- "desiredProperties": {
- "test": 1
}
}
}, - "organizationId": "org1"
}{- "id": "e6c27027-6c25-4e81-b6a0-a9bd9af184eb",
- "displayName": "Default iot-hub edge device template",
- "description": "This template is used to provision edge-devices onto iot-hub",
- "enabled": true,
- "options": {
- "hub": "iothub-name",
- "isEdge": true,
- "edgeDeviceTemplateOptions": {
- "manifest": { },
- "deviceDesiredProperties": {
- "test": 1
}, - "modulesDesiredProperties": {
- "sensehat": {
- "test": 1
}
}
}
}
}Get a provider template
| templateId required | string TemplateId |
{- "id": "e6c27027-6c25-4e81-b6a0-a9bd9af184eb",
- "displayName": "Default iot-hub edge device template",
- "description": "This template is used to provision edge-devices onto iot-hub",
- "enabled": true,
- "options": {
- "hub": "iothub-name",
- "isEdge": true,
- "edgeDeviceTemplateOptions": {
- "manifest": { },
- "deviceDesiredProperties": {
- "test": 1
}, - "modulesDesiredProperties": {
- "sensehat": {
- "test": 1
}
}
}
}
}Update an exising Provider Template
| templateId required | string TemplateId |
Update Template body
object | |
| displayName | string |
| description | string |
| enabled | string If disabled, no new clients can be created using this template |
| options | object Provider specific options |
{- "tags": {
- "property1": [
- "string"
], - "property2": [
- "string"
]
}, - "displayName": "Default iot-hub edge device template",
- "description": "This template is used to provision generic edge-devices onto iot-hub",
- "enabled": true,
- "options": {
- "hub": "iothub-name",
- "isEdge": true,
- "edgeDeviceTemplateOptions": {
- "manifest": { },
- "deviceDesiredProperties": {
- "test": 1
}, - "modulesDesiredProperties": {
- "sensehat": {
- "test": 1
}
}
}
}
}Create a new alarm
Alarm object
| name required | string Name of the alarm |
| description | string Description of the alarm |
| severity | integer Severity of the alarm |
| id | string Id of the alarm |
| entityTypeId | string Id of the entity type |
| entityIds | Array of strings |
| type | string Type of the alarm |
| condition | string JSONLogic condition of the alarm |
{- "name": "alarm1",
- "description": "My alarm",
- "severity": 0,
- "id": "alarm1",
- "entityTypeId": "dtmi:com:example:TemperatureController;1",
- "entityIds": [
- "device1"
], - "type": "dtmi:com:example:TemperatureController;1",
- "condition": "string"
}Update an alarm
| alarmId required | string Alarm id |
Alarm object
| name required | string Name of the alarm |
| description | string Description of the alarm |
| severity | integer Severity of the alarm |
| id | string Id of the alarm |
| entityTypeId | string Id of the entity type |
| entityIds | Array of strings |
| type | string Type of the alarm |
| condition | string JSONLogic condition of the alarm |
{- "name": "alarm1",
- "description": "My alarm",
- "severity": 0,
- "id": "alarm1",
- "entityTypeId": "dtmi:com:example:TemperatureController;1",
- "entityIds": [
- "device1"
], - "type": "dtmi:com:example:TemperatureController;1",
- "condition": "string"
}Get Assets that the current user has the view resource permission on.
[- {
- "id": "temperatureDevice1",
- "modelId": "dtmi:series200:tempSensor;1",
- "displayName": "Temperature Sensor 1",
- "description": "Measures temperature in °C at 2 Hz.",
- "contentBindings": [
- {
- "endpointId": "temp",
- "instanceId": "device1"
}, - {
- "endpoint": "pressure",
- "instanceId": "device1"
}
], - "authorizationContext": {
- "viewableByOrganizations": [
- "org1",
- "org2"
]
}
}
]Create Asset requires the asset_management privilege. the current user must also have the view resource permission on the model.
| id required | string Instance BTI |
| modelId required | string Model BTI |
| displayName required | string |
| description | string |
| organizationId required | string |
{- "id": "temperatureDevice1",
- "modelId": "dtmi:series200:tempSensor;1",
- "displayName": "Temperature Sensor 1",
- "description": "Measures temperature in °C at 2 Hz.",
- "organizationId": "myOrg"
}{- "id": "temperatureDevice1",
- "modelId": "dtmi:series200:tempSensor;1",
- "displayName": "Temperature Sensor 1",
- "description": "Measures temperature in °C at 2 Hz."
}Get Asset details. The current user must have the view resource permission on the Asset.
| assetId required | string Instance BTI |
{- "id": "temperatureDevice1",
- "modelId": "dtmi:series200:tempSensor;1",
- "displayName": "Temperature Sensor 1",
- "description": "Measures temperature in °C at 2 Hz.",
- "contentBindings": [
- {
- "endpointId": "temp",
- "instanceId": "device1"
}, - {
- "endpoint": "pressure",
- "instanceId": "device1"
}
], - "authorizationContext": {
- "viewableByOrganizations": [
- "org1",
- "org2"
]
}
}Patch the Asset with new displayName or description. The current user must have the manage resource permission on the Asset.
| assetId required | string Instance BTI |
| displayName | string |
| description | string |
{- "displayName": "Smart fridge",
- "description": "Detects and notifies when you are running out of food."
}| modelId required | string Instance BTI |
{- "id": "temperatureDevice1",
- "modelId": "dtmi:series200:tempSensor;1",
- "displayName": "Temperature Sensor 1",
- "description": "Measures temperature in °C at 2 Hz.",
- "contentBindings": [
- {
- "endpointId": "temp",
- "instanceId": "device1"
}, - {
- "endpoint": "pressure",
- "instanceId": "device1"
}
], - "authorizationContext": {
- "viewableByOrganizations": [
- "org1",
- "org2"
]
}
}The most common case is to just use autobind with a default binding description.
The bind endpoint constructs a set of content bindings by doing the following steps:
contentBindings, if any.So it is possible to specify some content bindings directly and run autobind on the remaining contents.
This functionality takes an endpoint instance ID and a binding description ID and creates a set of content bindings. These content bindings do not overwrite other content bindings binding to the same content.
If autobindBindingDescriptionId is omitted it will assume a default binding description will be used. This binding description ID is constructed from the model or the provider type of the endpoint instance that autobindEndpointInstanceId refers to. The default binding description will be generated if it does not exist.
NOTE: Using autobind with an implicit binding description ID is currently only supported when binding to a provider client.
| assetId required | string Instance BTI |
Array of objects (EndpointBinding) Manually defined endpoint bindings. | |
| ignoreEndpointsIds | Array of strings Local endpoint IDs to not bind with autobind nor binding descriptions. |
Array of objects (BindingDescriptionBindDefinition) Binding descriptions and their remote instance definitions, bound in order specified in this array. | |
| autobindRemoteInstanceIds | Array of strings Instance IDs used for the autobind function, bound in order specified in this array. |
The common and simplest case of binding an asset to a provider client through autobind with a default binding description.
{- "autobindRemoteInstanceIds": [
- "defaultIotHubProvider::device1"
]
}{- "endpointBindings": [
- {
- "localEndpointId": "string",
- "remoteEndpointIds": [
- {
- "name": "string",
- "endpointId": "string"
}
], - "bindingType": "default",
- "transform": { },
- "inverseTransform": { }
}
], - "ignoreEndpointIds": [
- "string"
], - "bindingDescriptions": [
- {
- "bindingDescriptionId": "string",
- "instances": [
- {
- "instanceName": "string",
- "instanceId": "string"
}
], - "localComponentEndpointId": "string"
}
], - "autobindRemoteInstanceIds": [
- "string"
]
}Send a command to an Asset to be executed. If the command endpoint of the Asset is bound, the command will be forwarded to the bound endpoint. The request returns the current status of the executed command.
This operation requires the manage resource permission on the Asset.
| assetId required | string AssetId |
| commandName required | string CommandName |
Asset command payload
null{- "commandId": "myDevice1.start",
- "requestTimestamp": "2024-04-04T04:04:04.000Z",
- "responseTimestamp": "2024-04-04T04:04:06.000Z",
- "status": "running",
- "statusMessage": "Command is running",
- "requestPayload": null,
- "responsePayload": null,
- "correlationId": "CB2886DC-6CFE-4AB3-B3BC-76B51DFE4B1B"
}Get the status of the last executed command.
| assetId required | string AssetId |
| commandName required | string CommandName |
{- "commandId": "myDevice1.start",
- "requestTimestamp": "2024-04-04T04:04:04.000Z",
- "responseTimestamp": "2024-04-04T04:04:06.000Z",
- "status": "running",
- "statusMessage": "Command is running",
- "requestPayload": null,
- "responsePayload": null,
- "correlationId": "CB2886DC-6CFE-4AB3-B3BC-76B51DFE4B1B"
}Update desired properties of an Asset
| assetId required | string AssetId |
Asset desired properties body
{- "assetComponent": {
- "reportInterval": 10,
- "connectionConfigObject": {
- "connectionString": "HostName=iothub-somethingsomething-1234567-1234567-1234567-1234567.azure-devices.net;DeviceId=MyDevice;SharedAccessKey=1234567890123456789012345678901234567890123456789012345678901234="
}
}, - "maxFlowThreshold": 230,
- "location": "somewhere",
- "meterType": "Meter3000"
}Get desired properties of an Asset
| assetId required | string AssetId |
{- "assetComponent": {
- "reportInterval": 10,
- "connectionConfigObject": {
- "connectionString": "HostName=iothub-somethingsomething-1234567-1234567-1234567-1234567.azure-devices.net;DeviceId=MyDevice;SharedAccessKey=1234567890123456789012345678901234567890123456789012345678901234="
}
}, - "maxFlowThreshold": 230,
- "location": "somewhere",
- "meterType": "Meter3000"
}Get reported properties of an Asset
| assetId required | string AssetId |
{- "assetComponent": {
- "reportInterval": 10,
- "connectionConfigObject": {
- "connectionString": "HostName=iothub-somethingsomething-1234567-1234567-1234567-1234567.azure-devices.net;DeviceId=MyDevice;SharedAccessKey=1234567890123456789012345678901234567890123456789012345678901234="
}
}, - "maxFlowThreshold": 230,
- "location": "somewhere",
- "meterType": "Meter3000"
}Migrate an asset to a new model
Migration object
| targetAssetModelId required | string (Target Asset Model Id) |
| assetIds required | Array of strings (Array of Asset Ids) |
{- "targetAssetModelId": "string",
- "assetIds": [
- "string"
]
}Get dashboards that the current user has the view resource permission on.
[- {
- "id": "dashboard1",
- "data": {
- "someDashboardSpecificData": "data"
}, - "displayName": "Temperature Dashboard1",
- "description": "Shows temperatures over time for Assets of model x",
- "authorizationContext": {
- "viewableByOrganizations": [
- "org1",
- "org2"
]
}
}
]Create dashboard requires the dashboard_management privilege.
| data | object |
| displayName required | string |
| description | string |
| organizationId required | string |
{- "displayName": "Temperature Dashboard1",
- "description": "Shows temperatures over time for Assets of model x",
- "organizationId": "myOrg",
- "data": {
- "someDashboardSpecificData": "data"
}
}{- "id": "dashboard1",
- "data": {
- "someDashboardSpecificData": "data"
}, - "displayName": "Temperature Dashboard1",
- "description": "Shows temperatures over time for Assets of model x",
- "authorizationContext": {
- "viewableByOrganizations": [
- "org1",
- "org2"
]
}
}Get dashboard details. The current user must have the view resource permission on the dashboard.
| dashboardId required | string |
{- "id": "dashboard1",
- "data": {
- "someDashboardSpecificData": "data"
}, - "displayName": "Temperature Dashboard1",
- "description": "Shows temperatures over time for Assets of model x",
- "authorizationContext": {
- "viewableByOrganizations": [
- "org1",
- "org2"
]
}
}Patch the Dashboard with new displayName, description or data. The current user must have the manage resource permission on the Dashboard.
| dashboardId required | string |
| displayName | string |
| description | string |
| data | object |
{- "displayName": "Temperature Dashboard1",
- "description": "Shows temperatures over time for Assets of model x"
}Fetches all organizations that the user has read access to
[- {
- "id": "org1",
- "parentOrganizationId": null,
- "displayName": "My Org. name",
- "description": "My root Org. (Privilege restrictions from Tenant)",
- "contacts": {
- "notifications": {
- "userGroups": [
- "string"
], - "users": [
- "string"
]
}
}, - "privileges": [
- "asset_management"
]
}
]| parentOrganizationId | string A sub-organization's privileges are limited to a subset of the parent organization's privileges or if this is a root organization, to the tenant's privileges. Set to null if this is a root organization. |
| displayName required | string |
| description | string |
| privileges | Array of strings (Privilege) Items Enum: "asset_management" "dashboard_management" "user_management" "tree_management" "model_management" "alarm_management" "organization_management" "provider_management" "provider_client_management" "notification_management" "contact_group_management" "resource_item_management" List of privileges that the organization should have. These must be a subset of any parent organization's or the tenant's privileges. |
object (OrgContacts) | |
object (OrgRelations) Describes the relationships that should be set up for this organization. Relationships are used to manage permissions. I.e the permissions to features the organization it self has, who can access the organization and in what capacity, as well as what resources the organization controls and in what capacity. |
{- "parentOrganizationId": null,
- "displayName": "myOrg",
- "description": "My root Org. (Privilege restrictions from Tenant)",
- "privileges": [
- "asset_management"
], - "contacts": {
- "notifications": {
- "userGroups": [
- "string"
], - "users": [
- "string"
]
}
}, - "relations": {
- "GroupToOrgRelations": [
- {
- "groupId": "group1",
- "relation": "owner"
}
], - "UserToOrgRelations": [
- {
- "userId": "user1",
- "relation": "owner"
}
], - "OrgToResourceRelations": [
- {
- "resourceId": "model1",
- "resourceType": "organization",
- "relation": "owner"
}
]
}
}{- "id": "org1",
- "parentOrganizationId": null,
- "displayName": "My Org. name",
- "description": "My root Org. (Privilege restrictions from Tenant)",
- "contacts": {
- "notifications": {
- "userGroups": [
- "string"
], - "users": [
- "string"
]
}
}, - "privileges": [
- "asset_management"
]
}| organizationId required | string Organization identifier |
{- "id": "org1",
- "parentOrganizationId": null,
- "displayName": "My Org. name",
- "description": "My root Org. (Privilege restrictions from Tenant)",
- "contacts": {
- "notifications": {
- "userGroups": [
- "string"
], - "users": [
- "string"
]
}
}, - "privileges": [
- "asset_management"
]
}| organizationId required | string Organization identifier |
| displayName | string |
| description | string |
object (OrgContacts) | |
| privileges | Array of strings (Privilege) Items Enum: "asset_management" "dashboard_management" "user_management" "tree_management" "model_management" "alarm_management" "organization_management" "provider_management" "provider_client_management" "notification_management" "contact_group_management" "resource_item_management" |
{- "displayName": "My new display name",
- "description": "My new description",
- "contacts": {
- "notifications": {
- "userGroups": [
- "string"
], - "users": [
- "string"
]
}
}, - "privileges": [
- "asset_management"
]
}| displayName required | string |
| email required | string |
| password required | string |
{- "displayName": "string",
- "email": "string",
- "password": "string"
}{- "id": "string",
- "displayName": "string",
- "email": "string",
- "phoneNumber": "string"
}| displayName required | string |
| description | string |
{- "displayName": "string",
- "description": "string"
}{- "id": "string",
- "displayName": "string",
- "description": "string"
}| subjectType required | string Enum: "user" "group" "organization" "tenant" "node" |
| subjectId required | string |
| resourceType required | string Enum: "environment" "tenant" "organization" "group" "user" "node" "asset" "model" "binding_description" "alarm" "provider" "provider_client" "provider_template" "dashboard" "notification" "contact_group" "resource_item" |
| resourceId required | string |
| relation required | string Enum: "owner" "member" "manager" "viewer" "user_manager" "asset_manager" "model_manager" "notification_manager" "contact_group_manager" "alarm_manager" "provider_manager" "provider_client_manager" "tree_manager" "organization_manager" "dashboard_manager" "resource_item_manager" "parent" |
[- {
- "subjectType": "user",
- "subjectId": "user1",
- "resourceType": "asset",
- "resourceId": "asset1",
- "relation": "manager"
}
]| resourceType required | string Enum: "organization" "group" "user" "node" "asset" "model" "binding_description" "alarm" "provider" "provider_client" "provider_template" "dashboard" "notification" "contact_group" "resource_item" |
| optionalResourceId | string |
| optionalRelation | string Enum: "owner" "member" "manager" "viewer" "user_manager" "asset_manager" "model_manager" "notification_manager" "contact_group_manager" "alarm_manager" "provider_manager" "provider_client_manager" "tree_manager" "organization_manager" "dashboard_manager" "resource_item_manager" "parent" |
object |
{- "resourceType": "organization",
- "optionalResourceId": "assetModel1",
- "optionalRelation": "owner",
- "optionalSubjectFilter": {
- "subjectType": "organization",
- "optionalSubjectId": "org1"
}
}[- {
- "subjectType": "organization",
- "subjectId": "org1",
- "resourceType": "environment",
- "resourceId": "assetModel1",
- "relation": "owner"
}
]| subjectType required | string Enum: "user" "group" "organization" "tenant" "node" |
| subjectId | string |
| resourceType required | string Enum: "organization" "group" "user" "node" "asset" "model" "binding_description" "alarm" "provider" "provider_client" "provider_template" "dashboard" "notification" "contact_group" "resource_item" |
| resourceId required | string |
| permission required | string Enum: "view" "manage" "delete" "share" |
[- {
- "subjectType": "user",
- "subjectId": "user1",
- "resourceType": "asset",
- "resourceId": "asset1",
- "permission": "manage"
}
][- {
- "subjectType": "user",
- "subject": "user1",
- "resourceType": "asset",
- "resourceId": "user1",
- "permission": "manage",
- "result": false
}
]| subjectType required | string Enum: "user" "group" "organization" "tenant" "node" |
| subjectId required | string |
| resourceType required | string Enum: "organization" "group" "user" "node" "asset" "model" "binding_description" "alarm" "provider" "provider_client" "provider_template" "dashboard" "notification" "contact_group" "resource_item" |
| permission required | string Enum: "view" "manage" "delete" "share" |
{- "subjectType": "user",
- "subjectId": "string",
- "resourceType": "asset",
- "permission": "manage"
}[- "asset1",
- "asset2",
- "asset3"
]| resourceType required | string Enum: "organization" "group" "user" "node" "asset" "model" "binding_description" "alarm" "provider" "provider_client" "provider_template" "dashboard" "notification" "contact_group" "resource_item" |
| resourceId required | string |
| subjectType required | string Enum: "user" "group" "organization" "tenant" "node" |
| permission required | string Enum: "view" "manage" "delete" "share" |
{- "resourceType": "asset",
- "resourceId": "asset1",
- "subjectType": "user",
- "permission": "manage"
}[- "user1",
- "user2",
- "user3"
]| subjectType required | string Enum: "user" "group" "organization" "tenant" |
| subjectId required | string |
| privilege required | string (Privilege) Enum: "asset_management" "dashboard_management" "user_management" "tree_management" "model_management" "alarm_management" "organization_management" "provider_management" "provider_client_management" "notification_management" "contact_group_management" "resource_item_management" |
| organizationId | string Used when subjectType is group or user |
[- {
- "subjectType": "user",
- "subjectId": "user1",
- "privilege": "asset_management",
- "organizationId": "org1"
}
][- {
- "subjectType": "user",
- "subjectId": "user1",
- "organizationId": "org1",
- "privilege": "asset_management",
- "result": false
}
]Create a new node that can be part of a tree or the start node of a tree
Create node body
| displayName required | string |
| description | string |
| parentNodeId | string |
| organizationId required | string |
{- "displayName": "string",
- "description": "string",
- "parentNodeId": "string",
- "organizationId": "string"
}{- "id": "2342345",
- "displayName": "Node1",
- "description": "My Node 1"
}| fromType required | string Enum: "node" "asset" |
| fromId required | string |
| toType required | string Enum: "node" "asset" "dashboard" |
| toId required | string |
| relation required | string Value: "CONTAINS" |
{- "fromType": "node",
- "fromId": 2342352,
- "toType": "asset",
- "toId": 3453453,
- "relation": "CONTAINS"
}| fromId required | string |
| fromType required | string Enum: "node" "asset" "dashboard" |
{- "fromId": 474334,
- "fromType": "node"
}[- {
- "id": 3245342,
- "fromType": "node",
- "fromId": 4743564,
- "toType": "node",
- "toId": 3453435,
- "relation": "CONTAINS"
}
]Get a specific tree
| startNodeId required | string Optional start node Id |
| depth | integer Optional search depth in the graph |
{- "id": "345335",
- "displayName": "Node1",
- "description": "My Node 1",
- "type": "NODE",
- "edge": {
- "id": "2342341",
- "fromType": "NODE",
- "fromId": "2343254",
- "toType": "NODE",
- "toId": "653522",
- "relation": "CONTAINS"
}, - "children": [
- {
- "id": "345335",
- "displayName": "Asset1",
- "description": "Asset1 Description",
- "type": "ASSET",
- "edge": {
- "id": "4332543",
- "fromType": "NODE",
- "fromId": "2342341",
- "toType": "ASSET",
- "toId": "345335",
- "relation": "CONTAINS"
}, - "details": {
- "modelId": "dtmi:myModel;1"
}
}
]
}Get notifications that the current user has the view resource permission on.
[- {
- "id": "notification1",
- "displayName": "Notification1",
- "description": "Description",
- "broadcast": false,
- "trigger": {
- "alarmTrigger": [
- "alarmId1",
- "alarmId2"
]
}, - "channels": {
- "email": {
- "active": true,
- "template": "{{alarmName}} triggered on Asset: {{assetName}}. Click here to acknowledge: {{ackUrl}}",
- "from": "Sender1",
- "subject": "Any subject"
}, - "sms": {
- "active": false,
- "template": "{{alarmName}} triggered on Asset: {{assetName}}. Click here to acknowledge: {{ackUrl}}",
- "from": "Sender2"
}
}, - "workflowId": "workflowID",
- "triggerIdentifier": "trigger-identifier",
- "subscribers": {
- "contactGroups": [
- {
- "contactGroupId": "contact-group-1"
}
]
}
}
]Create notification requires the notification_management privilege.
| displayName required | string |
| description | string or null |
| trigger required | object |
| broadcast required | boolean |
| channels required | object |
| organizationId required | string |
{- "trigger": {
- "alarmTrigger": [
- "alarmId1"
]
}, - "displayName": "Notification1",
- "description": "Description",
- "broadcast": true,
- "channels": {
- "email": {
- "active": true,
- "template": "{{alarmName}} triggered on Asset: {{assetName}}. Click here to acknowledge: {{ackUrl}}",
- "from": "Sender1",
- "subject": "Any subject"
}, - "sms": {
- "active": true,
- "template": "{{alarmName}} triggered on Asset: {{assetName}}. Click here to acknowledge: {{ackUrl}}",
- "from": "Sender2"
}
}, - "organizationId": "organization-1"
}{- "id": "notification1",
- "displayName": "Notification1",
- "description": "Description",
- "broadcast": false,
- "trigger": {
- "alarmTrigger": [
- "alarmId1",
- "alarmId2"
]
}, - "channels": {
- "email": {
- "active": true,
- "template": "{{alarmName}} triggered on Asset: {{assetName}}. Click here to acknowledge: {{ackUrl}}",
- "from": "Sender1",
- "subject": "Any subject"
}, - "sms": {
- "active": false,
- "template": "{{alarmName}} triggered on Asset: {{assetName}}. Click here to acknowledge: {{ackUrl}}",
- "from": "Sender2"
}
}, - "workflowId": "workflowID",
- "triggerIdentifier": "trigger-identifier",
- "subscribers": {
- "contactGroups": [
- {
- "contactGroupId": "contact-group-1"
}
]
}
}Get notification details. The current user must have the view resource permission on the notification.
| notificationId required | string |
{- "id": "notification1",
- "displayName": "Notification1",
- "description": "Description",
- "broadcast": false,
- "trigger": {
- "alarmTrigger": [
- "alarmId1",
- "alarmId2"
]
}, - "channels": {
- "email": {
- "active": true,
- "template": "{{alarmName}} triggered on Asset: {{assetName}}. Click here to acknowledge: {{ackUrl}}",
- "from": "Sender1",
- "subject": "Any subject"
}, - "sms": {
- "active": false,
- "template": "{{alarmName}} triggered on Asset: {{assetName}}. Click here to acknowledge: {{ackUrl}}",
- "from": "Sender2"
}
}, - "workflowId": "workflowID",
- "triggerIdentifier": "trigger-identifier",
- "subscribers": {
- "contactGroups": [
- {
- "contactGroupId": "contact-group-1"
}
]
}
}Change a Notification. The current user must have the manage resource permission on the Notification.
| notificationId required | string |
| displayName | string |
| description | string |
| trigger | object |
| broadcast | boolean |
| channels | object |
| subscribers | object |
{- "trigger": {
- "alarmTrigger": [
- "alarmId1"
]
}, - "displayName": "Notification1",
- "description": "Description",
- "broadcast": true,
- "channels": {
- "email": {
- "active": true,
- "template": "{{alarmName}} triggered on Asset: {{assetName}}. Click here to acknowledge: {{ackUrl}}",
- "from": "Sender1",
- "subject": "Any subject"
}, - "sms": {
- "active": true,
- "template": "{{alarmName}} triggered on Asset: {{assetName}}. Click here to acknowledge: {{ackUrl}}",
- "from": "Sender2"
}
}, - "organizationId": "organization-1",
- "subscribers": {
- "contactGroups": [
- {
- "contactGroupId": "string"
}
]
}
}Any user who has view access on the notification and contact group can add a subscribing contact group.
| notificationId required | string |
| contactGroupId required | string |
{- "contactGroupId": "contact-group1"
}Get time series data. The current user must have the view resource permission on the Assets.
| assetId required | string |
| timeseriesName required | Array of strings |
| whereClause | string The following column names are allowed: 'time', 'assetid', 'componentid', 'timeseries_name', 'timeseries_type', 'modelid', 'messageid', 'value'. |
| searchSpanFrom required | string From timestamp in the ISO 8601 format |
| searchSpanTo required | string To timestamp in the ISO 8601 format |
| aggregationType | string Enum: "avg" "min" "max" "first" "last" "sum" "median" Type of the aggregation operation |
| aggregationInterval | string Enum: "PT1M" "PT5M" "PT15M" "PT1H" "PT12H" "P1M" "P1Y" Aggregation will be calculated based on time interval ('PT1M' = '1 minute'). Also endpoint supports custom time intervals e.g. '12 minutes' |
{- "assetId": "asset1",
- "timeseriesName": [
- "signal1",
- "signal2"
], - "whereClause": "timeseries_type = 'telemetry' AND value > 7",
- "searchSpanFrom": "2024-03-04 19:03:00.39+00",
- "searchSpanTo": "2024-03-10 19:03:00+00",
- "aggregationType": "median",
- "aggregationInterval": "PT5M"
}{- "items": [
- {
- "name": "batterylevel--agg--max",
- "signalId": "batterylevel",
- "items": [
- {
- "value": 244.97301926642587,
- "timestamp": "2024-04-01T19:00:00Z"
}, - {
- "value": 21.97301926642587,
- "timestamp": "2024-05-01T19:00:00Z"
}
], - "queryResultLimitReached": null
}, - {
- "name": "temperature--agg--max",
- "signalId": "temperature",
- "items": [
- {
- "value": 2.97301926642587,
- "timestamp": "2024-04-01T19:00:00Z"
}, - {
- "value": 21.97301926642587,
- "timestamp": "2024-06-01T19:00:00Z"
}
], - "queryResultLimitReached": {
- "resultLimit": 10000
}
}
], - "aggregation": "max",
- "time_bucket": "7 minutes"
}Get last value of specific signal or property. The current user must have the view resource permission on the Assets.
required | Array of objects (TimeseriesGetLastItem) List of TimeseriesGetLastItem entities | ||||||
Array
| |||||||
{- "items": [
- {
- "assetId": "asset1",
- "componentId": "component1",
- "timeseries": [ ]
}, - {
- "assetId": null,
- "componentId": null,
- "timeseries": [
- {
- "name": "temperature",
- "type": "telemetry"
}, - {
- "name": "batterylevel",
- "type": "telemetry"
}
]
}
]
}{- "items": [
- {
- "time": "2024-03-14 10:37:31.614+00",
- "assetId": "asset1",
- "componentId": "component1",
- "timeseriesName": "reportinterval",
- "timeseriesType": "propertyReported",
- "value": 7
}, - {
- "time": "2024-03-14 10:38:31.614+00",
- "assetId": "asset2",
- "componentId": "component2",
- "timeseriesName": "batterylevel",
- "timeseriesType": "telemetry",
- "value": 5.37
}
]
}Create contact group requires the contact_group_management privilege.
| displayName required | string |
| description | string or null |
| users | Array of strings |
| userGroups | Array of strings |
{- "displayName": "ContactGroup1",
- "description": "Description",
- "users": [
- "user1",
- "user2"
], - "userGroups": [
- "group1",
- "group2"
], - "organizationId": "organization-1"
}{- "id": "contactgroup1",
- "displayName": "ContactGroup1",
- "description": "Description",
- "users": [
- "user1",
- "user2"
], - "userGroups": [
- "group1",
- "group2"
]
}Get all contact groups that the current user has the view resource permission on.
[- {
- "id": "contactgroup1",
- "displayName": "ContactGroup1",
- "description": "Description",
- "users": [
- "user1",
- "user2"
], - "userGroups": [
- "group1",
- "group2"
]
}
]Patch the Contact Group with new displayName or description or userGroups or users. The current user must have the manage resource permission on the Contact Group.
| contactGroupId required | string |
| displayName | string |
| description | string or null |
| users | Array of strings |
| userGroups | Array of strings |
{- "displayName": "ContactGroup1",
- "description": "Description",
- "users": [
- "user1",
- "user2"
], - "userGroups": [
- "group1",
- "group2"
]
}Negotiates a signalr connection for the user. Returns a url and access token that can be used to configure the signalr client. The signalR client will need this endpoint.
{- "url": "string",
- "accessToken": "string"
}Adds a subscription for a topic (telemetry , alarm). With an active subscription, updates for the specified assets will be pushed to the signalr service. Subscriptions have a TTL of 600 seconds.
| connectionId | string signalr connection id |
| topic | string Enum: "telemetry" "alarm" |
| assets | Array of strings |
| samplingType | string Enum: "none" "first" Sort order:
|
| sampleIntervalSeconds | integer |
{- "connectionId": "string",
- "topic": "telemetry",
- "assets": [
- "string"
], - "samplingType": "none",
- "sampleIntervalSeconds": 0
}{- "id": "string",
- "connectionId": "string",
- "user": "string",
- "topic": "string",
- "startTimestamp": "string",
- "assets": [
- "string"
], - "samplingType": "none",
- "sampleIntervalSeconds": 0
}| subscriptionId required | string Subscription Identifier |
| connectionId | string signalr connection id |
| topic | string Enum: "telemetry" "alarm" |
| assets | Array of strings |
| samplingType | string Enum: "none" "first" Sort order:
|
| sampleIntervalSeconds | integer |
{- "connectionId": "string",
- "topic": "telemetry",
- "assets": [
- "string"
], - "samplingType": "none",
- "sampleIntervalSeconds": 0
}{- "id": "string",
- "connectionId": "string",
- "user": "string",
- "topic": "string",
- "startTimestamp": "string",
- "assets": [
- "string"
], - "samplingType": "none",
- "sampleIntervalSeconds": 0
}| subscriptionId required | string Subscription Identifier |
{- "id": "string",
- "connectionId": "string",
- "user": "string",
- "topic": "string",
- "startTimestamp": "string",
- "assets": [
- "string"
], - "samplingType": "none",
- "sampleIntervalSeconds": 0
}Upload firmware file. Upload firmware requires the firmware_management privilege.
| organizationId | string |
| file | string <binary> |
{- "resource_type": "string",
- "id": "string",
- "displayName": "string",
- "description": "string",
- "tags": {
- "property1": "string",
- "property2": "string"
}, - "document": { },
- "originalFileName": "string",
- "fileUrl": "string",
- "metadata": { },
- "history": { }
}Сreate release item. Create release requires the firmware_management privilege.
| displayName required | string |
| description | string or null |
Array of objects (StartingModel) | |
Array of objects (PropertyValue) | |
| organizationId required | string |
| fileResourceId | string or null |
| fileName | string |
{- "displayName": "Release1",
- "description": "Description",
- "startingModels": [
- {
- "id": "model1",
- "displayName": "Model1"
}
], - "propertyValues": [
- {
- "key": "key1",
- "value": "value1"
}
], - "fileResourceId": "resource1",
- "organizationId": "organization-1",
- "fileName": "firmware.txt"
}{- "id": "release1",
- "displayName": "Release1",
- "description": "Description",
- "startingModels": [
- {
- "id": "model1",
- "displayName": "Model1"
}
], - "propertyValues": [
- {
- "key": "key1",
- "value": "value1"
}
], - "fileResourceId": "resource1"
}Get all releases that the current user has the view resource permission on.
[- {
- "id": "release1",
- "displayName": "Release1",
- "description": "Description",
- "startingModels": [
- {
- "id": "model1",
- "displayName": "Model1"
}
], - "propertyValues": [
- {
- "key": "key1",
- "value": "value1"
}
], - "fileResourceId": "resource1"
}
]Put the release with new displayName or description or startingModels or propertyValues. The current user must have the manage resource permission on the Release.
| releaseId required | string |
| displayName | string |
| description | string |
Array of objects (StartingModel) | |
Array of objects (PropertyValue) | |
| fileResourceId | string |
| fileName | string |
{- "displayName": "Release1",
- "description": "Description",
- "startingModels": [
- {
- "id": "model1",
- "displayName": "Model1"
}
], - "propertyValues": [
- {
- "key": "key1",
- "value": "value1"
}
], - "fileResourceId": "resource1",
- "fileName": "firmware.txt"
}{- "id": "release1",
- "displayName": "Release1",
- "description": "Description",
- "startingModels": [
- {
- "id": "model1",
- "displayName": "Model1"
}
], - "propertyValues": [
- {
- "key": "key1",
- "value": "value1"
}
], - "fileResourceId": "resource1"
}Get Release. The current user must have the view resource permission on the Release.
| releaseId required | string |
{- "id": "release1",
- "displayName": "Release1",
- "description": "Description",
- "startingModels": [
- {
- "id": "model1",
- "displayName": "Model1"
}
], - "propertyValues": [
- {
- "key": "key1",
- "value": "value1"
}
], - "fileResourceId": "resource1"
}Сreate Deployment method Template. Create deployment template requires the firmware_management privilege.
| displayName | string |
| description | string or null |
| version | string |
Array of objects (TemplateStep) | |
object | |
| organizationId | string |
{- "displayName": "Deployment Template 1",
- "description": "Description",
- "version": "0.0.1",
- "steps": [
- {
- "name": "FirmwareVersion",
- "displayName": "Update Firmware",
- "type": "SetProperty",
- "value": "1.0.5"
}, - {
- "тame": "RebootRequired",
- "displayName": "Reboot Device",
- "type": "SetProperty",
- "value": "234"
}
], - "status": {
- "statusPropertyName": "DeploymentStatus",
- "statusMap": {
- "successStatuses": [
- {
- "value": "Success"
}
], - "failureStatuses": [
- {
- "value": "Failure"
}
], - "rejectStatuses": [
- {
- "value": "Rejected"
}
], - "cancelStatuses": [
- {
- "value": "Canceled"
}
]
}, - "statusType": "ReportedProperty"
}, - "organizationId": "organization-1"
}{- "displayName": "Deployment Template 1",
- "description": "Description",
- "version": "0.0.1",
- "steps": [
- {
- "name": "FirmwareVersion",
- "displayName": "Update Firmware",
- "type": "SetProperty",
- "value": "1.0.5"
}, - {
- "тame": "RebootRequired",
- "displayName": "Reboot Device",
- "type": "SetProperty",
- "value": "234"
}
], - "status": {
- "statusPropertyName": "DeploymentStatus",
- "statusMap": {
- "successStatuses": [
- {
- "value": "Success"
}
], - "failureStatuses": [
- {
- "value": "Failure"
}
], - "rejectStatuses": [
- {
- "value": "Rejected"
}
], - "cancelStatuses": [
- {
- "value": "Canceled"
}
]
}, - "statusType": "ReportedProperty"
}, - "templateId": "template1"
}Get all Deployment method Templates that the current user has the view resource permission on.
[- {
- "displayName": "Deployment Template 1",
- "description": "Description",
- "version": "0.0.1",
- "steps": [
- {
- "name": "FirmwareVersion",
- "displayName": "Update Firmware",
- "type": "SetProperty",
- "value": "1.0.5"
}, - {
- "тame": "RebootRequired",
- "displayName": "Reboot Device",
- "type": "SetProperty",
- "value": "234"
}
], - "status": {
- "statusPropertyName": "DeploymentStatus",
- "statusMap": {
- "successStatuses": [
- {
- "value": "Success"
}
], - "failureStatuses": [
- {
- "value": "Failure"
}
], - "rejectStatuses": [
- {
- "value": "Rejected"
}
], - "cancelStatuses": [
- {
- "value": "Canceled"
}
]
}, - "statusType": "ReportedProperty"
}, - "templateId": "template1"
}
]Get Deployment method Template. The current user has the view resource permission on Deployment method Template.
| deploymentTemplateId required | string |
{- "displayName": "Deployment Template 1",
- "description": "Description",
- "version": "0.0.1",
- "steps": [
- {
- "name": "FirmwareVersion",
- "displayName": "Update Firmware",
- "type": "SetProperty",
- "value": "1.0.5"
}, - {
- "тame": "RebootRequired",
- "displayName": "Reboot Device",
- "type": "SetProperty",
- "value": "234"
}
], - "status": {
- "statusPropertyName": "DeploymentStatus",
- "statusMap": {
- "successStatuses": [
- {
- "value": "Success"
}
], - "failureStatuses": [
- {
- "value": "Failure"
}
], - "rejectStatuses": [
- {
- "value": "Rejected"
}
], - "cancelStatuses": [
- {
- "value": "Canceled"
}
]
}, - "statusType": "ReportedProperty"
}, - "templateId": "template1"
}| providerClientId required | string |
{- "deploymentId": "string",
- "status": "Ready",
- "statusValue": { },
- "currentStep": 0,
- "logs": [
- {
- "timestamp": "string",
- "message": "string",
- "level": "Error",
- "step": 0
}
]
}Get provider client FWU status
| providerClientId required | string |
{- "deploymentId": "string",
- "status": "Ready",
- "statusValue": { },
- "currentStep": 0,
- "logs": [
- {
- "timestamp": "string",
- "message": "string",
- "level": "Error",
- "step": 0
}
]
}Сreate Deployment. Create deployment requires the firmware_management privilege.
| displayName required | string |
| description | string or null |
| deploymentTemplateId required | string |
| releaseId required | string |
| deviceIds required | Array of strings |
| organizationId required | string |
{- "displayName": "Deployment 1",
- "description": "Description",
- "deploymentTemplateId": "deployment-template-1",
- "releaseId": "release-1",
- "deviceIds": [
- "device-1",
- "device-2"
], - "organizationId": "organization-1"
}{- "deploymentId": "deployment-1",
- "displayName": "Deployment 1",
- "description": "Description",
- "deploymentTemplateId": "deployment-template-1",
- "releaseId": "release-1",
- "deviceIds": [
- "device-1",
- "device-2"
]
}Get all Deployments that the current user has the view resource permission on.
[- {
- "deploymentId": "deployment-1",
- "displayName": "Deployment 1",
- "description": "Description",
- "deploymentTemplateId": "deployment-template-1",
- "releaseId": "release-1",
- "deviceIds": [
- "device-1",
- "device-2"
]
}
]Get Deployment. The current user must have the view resource permission on the Deployment.
| deploymentId required | string |
{- "deploymentId": "deployment-1",
- "displayName": "Deployment 1",
- "description": "Description",
- "deploymentTemplateId": "deployment-template-1",
- "releaseId": "release-1",
- "deviceIds": [
- "device-1",
- "device-2"
]
}Patch the deployment with new displayName or description or deploymentTemplateId or releaseId or deviceIds. The current user must have the manage resource permission on the Deployment.
| deploymentId required | string |
| displayName | string |
| description | string or null |
| deploymentTemplateId | string |
| releaseId | string |
| deviceIds | Array of strings |
{- "displayName": "Deployment 1",
- "description": "Description",
- "deploymentTemplateId": "deployment-template-1",
- "releaseId": "release-1",
- "deviceIds": [
- "device-1",
- "device-2"
]
}{- "deploymentId": "deployment-1",
- "displayName": "Deployment 1",
- "description": "Description",
- "deploymentTemplateId": "deployment-template-1",
- "releaseId": "release-1",
- "deviceIds": [
- "device-1",
- "device-2"
]
}Get Deployment status. The current user must have the view resource permission on the Deployment.
| deploymentId required | string |
{- "id": "deployment-12345",
- "aggregateStatus": "Succeeded",
- "fwuStatusCounts": {
- "succeeded": 10,
- "failed": 2,
- "running": 3,
- "rejected": 1,
- "canceled": 0,
- "ready": 5
}, - "startTimestamp": "2025-06-12T09:36:34.7493006+00:00",
- "endTimestamp": "2025-06-12T09:36:34.7941229+00:00",
- "providerClientStatuses": [
- {
- "providerClientId": "client-001",
- "status": "Succeeded",
- "statusValue": {
- "details": "Firmware updated successfully"
}, - "currentStep": 5,
- "currentStepTimestamp": "2025-05-19T08:30:00Z"
}
]
}Get Deployment device status. The current user must have the view resource permission on the Deployment.
| deploymentId required | string |
| deviceId required | string |
{- "deploymentId": "string",
- "status": "Ready",
- "statusValue": { },
- "currentStep": 0,
- "logs": [
- {
- "timestamp": "string",
- "message": "string",
- "level": "Error",
- "step": 0
}
]
}Cancel Deployment device run. The current user must have the view resource permission on the Deployment.
| deploymentId required | string |
| deviceId required | string |
{- "status": "Ready"
}Restart Deployment device run. The current user must have the view resource permission on the Deployment.
| deploymentId required | string |
| deviceId required | string |
{- "status": "Ready"
}Get Deployments statuses
| ids required | Array of strings |
{- "ids": [
- "string"
]
}[- {
- "id": "deployment-12345",
- "aggregateStatus": "Succeeded",
- "fwuStatusCounts": {
- "succeeded": 10,
- "failed": 2,
- "running": 3,
- "rejected": 1,
- "canceled": 0,
- "ready": 5
}, - "startTimestamp": "2025-06-12T09:36:34.7493006+00:00",
- "endTimestamp": "2025-06-12T09:36:34.7941229+00:00",
- "providerClientStatuses": [
- {
- "providerClientId": "client-001",
- "status": "Succeeded",
- "statusValue": {
- "details": "Firmware updated successfully"
}, - "currentStep": 5,
- "currentStepTimestamp": "2025-05-19T08:30:00Z"
}
]
}
]Get all organization templates that the current user has the view resource permission on (Supports filtering by tags).
| limit | integer Number of items to retrieve (max: appsetting {ResponseEntitiesLimit}) |
| tag | Array of strings Examples:
Filter by tags (possible to filter by single tag or multiple using AND and OR conditions) |
{- "items": [
- {
- "resource_type": "string",
- "id": "string",
- "displayName": "string",
- "description": "string",
- "tags": {
- "property1": "string",
- "property2": "string"
}, - "document": { },
- "originalFileName": "string",
- "fileUrl": "string",
- "metadata": { }
}
], - "responseEntitiesLimitReached": {
- "resultLimit": 0
}
}Create resource with JSON document requires the organization_management privilege.
| displayName required | string |
| description | string or null |
object | |
| document required | object |
| organizationId required | string |
| metadata | object or null |
| history | object or null |
{- "displayName": "Project Plan",
- "description": "Detailed project plan for Q4.",
- "tags": {
- "department": "sales",
- "status": "draft"
}, - "document": {
- "sections": [
- {
- "title": "Introduction",
- "content": "This is the introduction section of the project plan."
}, - {
- "title": "Objectives",
- "content": "The objectives of this project are..."
}
]
}, - "organizationId": "organization1",
- "metadata": {
- "category": "template",
- "version": "1.0"
}, - "history": [
- {
- "timestamp": "2025-11-01T10:00:00Z",
- "action": "created",
- "user": "admin@example.com"
}
]
}{- "resource_type": "string",
- "id": "string",
- "displayName": "string",
- "description": "string",
- "tags": {
- "property1": "string",
- "property2": "string"
}, - "document": { },
- "originalFileName": "string",
- "fileUrl": "string",
- "metadata": { },
- "history": { }
}Patch the organization template with new displayName or description or tags or document. The current user must have the manage resource permission on the OrgTemplate.
| orgTemplateId required | string |
| displayName | string or null |
| description | string or null |
object or null | |
| document | object or null |
| metadata | object or null |
| history | object or null |
{- "displayName": "Project Plan",
- "description": "Detailed project plan for Q4.",
- "tags": {
- "department": "sales",
- "status": "draft"
}, - "document": {
- "sections": [
- {
- "title": "Introduction",
- "content": "This is the introduction section of the project plan."
}, - {
- "title": "Objectives",
- "content": "The objectives of this project are..."
}
]
}, - "metadata": {
- "category": "documentation",
- "version": "1.1"
}, - "history": [
- {
- "timestamp": "2025-10-01T10:00:00Z",
- "action": "created",
- "user": "user@example.com"
}, - {
- "timestamp": "2025-10-02T14:30:00Z",
- "action": "updated",
- "user": "admin@example.com"
}
]
}{- "resource_type": "string",
- "id": "string",
- "displayName": "string",
- "description": "string",
- "tags": {
- "property1": "string",
- "property2": "string"
}, - "document": { },
- "originalFileName": "string",
- "fileUrl": "string",
- "metadata": { },
- "history": { }
}Get Organization Template. The current user must have the view resource permission on the OrgTemplate.
| orgTemplateId required | string |
{- "resource_type": "string",
- "id": "string",
- "displayName": "string",
- "description": "string",
- "tags": {
- "property1": "string",
- "property2": "string"
}, - "document": { },
- "originalFileName": "string",
- "fileUrl": "string",
- "metadata": { },
- "history": { }
}Get all resources that the current user has the view resource permission on (Supports filtering by resource_type and tags).
| limit | integer Number of items to retrieve (max: appsetting {ResponseEntitiesLimit}) |
| resource_type | string Filter by resource type. Valid resource types: ['user-resource'] |
| tag | Array of strings Examples:
Filter by tags (possible to filter by single tag or multiple using AND and OR conditions) |
{- "items": [
- {
- "resource_type": "string",
- "id": "string",
- "displayName": "string",
- "description": "string",
- "tags": {
- "property1": "string",
- "property2": "string"
}, - "document": { },
- "originalFileName": "string",
- "fileUrl": "string",
- "metadata": { }
}
], - "responseEntitiesLimitReached": {
- "resultLimit": 0
}
}Create resource with JSON document requires the resource_item_management privilege.
| resource_type required | string Value: "user-resource" |
| displayName required | string |
| description | string or null |
object | |
| document required | object |
| organizationId required | string |
| metadata | object or null |
| history | object or null |
{- "resource_type": "user-resource",
- "displayName": "Project Plan",
- "description": "Detailed project plan for Q4.",
- "tags": {
- "department": "sales",
- "status": "draft"
}, - "document": {
- "sections": [
- {
- "title": "Introduction",
- "content": "This is the introduction section of the project plan."
}, - {
- "title": "Objectives",
- "content": "The objectives of this project are..."
}
]
}, - "organizationId": "organization1",
- "metadata": {
- "category": "documentation",
- "version": "1.0"
}, - "history": [
- {
- "timestamp": "2025-10-01T10:00:00Z",
- "action": "created",
- "user": "user@example.com"
}
]
}{- "resource_type": "string",
- "id": "string",
- "displayName": "string",
- "description": "string",
- "tags": {
- "property1": "string",
- "property2": "string"
}, - "document": { },
- "originalFileName": "string",
- "fileUrl": "string",
- "metadata": { },
- "history": { }
}Patch the resource with new displayName or description or tags or document. The current user must have the manage resource permission on the Resource.
| resourceId required | string |
| displayName | string or null |
| description | string or null |
object or null | |
| document | object or null |
| metadata | object or null |
| history | object or null |
{- "displayName": "Project Plan",
- "description": "Detailed project plan for Q4.",
- "tags": {
- "department": "sales",
- "status": "draft"
}, - "document": {
- "sections": [
- {
- "title": "Introduction",
- "content": "This is the introduction section of the project plan."
}, - {
- "title": "Objectives",
- "content": "The objectives of this project are..."
}
]
}, - "metadata": {
- "category": "documentation",
- "version": "1.1"
}, - "history": [
- {
- "timestamp": "2025-10-01T10:00:00Z",
- "action": "created",
- "user": "user@example.com"
}, - {
- "timestamp": "2025-10-02T14:30:00Z",
- "action": "updated",
- "user": "admin@example.com"
}
]
}{- "resource_type": "string",
- "id": "string",
- "displayName": "string",
- "description": "string",
- "tags": {
- "property1": "string",
- "property2": "string"
}, - "document": { },
- "originalFileName": "string",
- "fileUrl": "string",
- "metadata": { },
- "history": { }
}Get Resource metadata. The current user must have the view resource permission on the Resource.
| resourceId required | string |
{- "resource_type": "string",
- "id": "string",
- "displayName": "string",
- "description": "string",
- "tags": {
- "property1": "string",
- "property2": "string"
}, - "document": { },
- "originalFileName": "string",
- "fileUrl": "string",
- "metadata": { },
- "history": { }
}Create resource with binary file data requires the resource_item_management privilege.
| resource_type required | string Value: "user-resource" |
| displayName required | string |
| description | string or null |
| file required | string <binary> |
| organizationId required | string |
object or null | |
| metadata | object or null |
| history | object or null |
{- "resource_type": "string",
- "id": "string",
- "displayName": "string",
- "description": "string",
- "tags": {
- "property1": "string",
- "property2": "string"
}, - "document": { },
- "originalFileName": "string",
- "fileUrl": "string",
- "metadata": { },
- "history": { }
}Reupload a resource file. The current user must have the manage resource permission on the Resource.
| resourceId required | string |
| file required | string <binary> |
| organizationId required | string |
object or null | |
| metadata | object or null |
| history | object or null |
{- "resource_type": "string",
- "id": "string",
- "displayName": "string",
- "description": "string",
- "tags": {
- "property1": "string",
- "property2": "string"
}, - "document": { },
- "originalFileName": "string",
- "fileUrl": "string",
- "metadata": { },
- "history": { }
}