# Ability Platform API Data Models

This document contains a list of custom models that are present in the APIs. Each API document will link to this page when necessary.

# Disclaimer

All properties marked with an * indicate that they contain additional, potentially complex properties not found in this page. For questions, contact your CST representative.

# AbilityTenant

Name Type Description Required
name string Yes
aadIssuers BaseConfiguration Yes
aadAdminGroupId string Yes

# AccessType

Name Type Description Required
AccessType string Enum values: create, read, modify, delete

# AggregateFirstLast

TIP

Please read the note.

Name Type Description Required
AggregateFirstLast object

# AggregateMinMax

TIP

Please read the note.

Name Type Description Required
AggregateMinMax object

# AggregateSumAvg

TIP

Please read the note.

Name Type Description Required
AggregateSumAvg object

# AggregationFunctions

Name Type Description Required
sum string Returns the sum of property values, only applicable to numeric properties. Currently supports only a single property
avg string Returns the arithmetic mean (average) of property values, only applicable to numeric properties. Currently supports only a single property

# AlarmDefinition

Name Type Description Required
alarmDefinitionId string Unique identifier Yes
version string Version of the definition Yes
isDeleted boolean Is only present and set to true for alarm definitions that have been deleted. This value cannot be set when posting a new or updated alarm definition No
state object Details of the alarm No
state.limitState string limit state No

# AlarmDefinitions

Name Type Description Required
data AlarmDefinition alarm definitions Yes

# AlarmVersions

Name Type Description Required
versions array of strings versions collection -

# Alarms

Name Type Description Required
data All of: QueryResponse, AlarmsSubObject1 Yes
# AlarmsSubObject1
Name Type Description Required
alarm string Alarm name No

# Application

Name Type Description Required
solutionId string Solution that this application is a part of Yes
type ApplicationType No
delegation string Delegation type of this application's permissions No
name string Human readable name, must be unique within a solution Yes
redirectUris [ string ] Redirection URI to which the authorization response will be sent. Must all belong to the same domain No
secret string Client secrets used in OAuth 2.0 requests such as exchanging an authorization code for an id_token No
id string Unique identifier No
tags [ string ] Tags No
grantIds object Grant identifiers per scope No

# ApplicationCreate

Name Type Description Required
tags [ string ] Tags No
solutionId string Solution that this application is a part of Yes
type ApplicationType Yes
delegation string Delegation type of this application's permissions No
name string Human readable name, must be unique within a solution Yes
redirectUris [ string ] Redirection URI to which the authorization response will be sent. Must all belong to the same domain No

# ApplicationSecret

Name Type Description Required
secret string Client secret Yes

# ApplicationType

Name Type Description Required
ApplicationType string Enum values: singlePageApp, native, web, background

# ApplicationUpdate

Name Type Description Required
tags [ string ] Tags
redirectUris [ string ] Redirection URI to which the authorization response will be sent. Must all belong to the same domain

# AuditLogQueryResponse

NOTE

Audit log responses can be complex. Please refer to the audit log documentation or tutorials to see examples and detailed information.

Name Type Description Required
hasMore boolean If true, then there are more entries available. Either increase the limit or create a more restrictive filter. No
data [ object ] Yes

# BaseConfiguration

Name Type Description Required
allowSignUp boolean Whether users from this IDP can sign up (only applicable for IDPs that support user identities).

# CertificateInput

Name Type Description Required
certificate string X509 certificate .pem file content. Yes

# ConnectivityProvider

Name Type Description Required
id string Unique identifier Yes
name string Must uniquely identify a connectivity provider within a type. Yes
type ConnectivityProviderType yes
identityTypes [ IdentityType ] Type of identities that this connectivity provider supports Yes
configuration ConnectivityProviderConfiguration Yes
tags [ string ] Gets or Sets Tags No

# ConnectivityProviderConfiguration

Configuration for this connectivity provider

Name Type Description Required
methodResolver boolean Yes
eventListener boolean Yes

# ConnectivityProviderCreate

Connectivity provider specification, name must be unique within a type.

Name Type Description Required
name string Must uniquely identify a connectivity provider within a type. Yes
type ConnectivityProviderType Yes
identityTypes [ IdentityType ] Type of identities that this connectivity provider supports Yes
configuration ConnectivityProviderConfiguration Yes
tags [ string ] Gets or Sets Tags No

# ConnectivityProviderType

Name Type Description Required
ConnectivityProviderType string enum: ioTHub

# ConnectivityProviderUpdate

Connectivity provider update

Name Type Description Required
configuration ConnectivityProviderConfiguration Yes
tags [ string ] Gets or Sets Tags No

# Contract

Name Type Description Required
id string No
deviceGroupId string No
name string Yes
tags [ string ] No
solutionId string Yes
tenantId string Yes
errorPage string No
signInPage string No

# ContractCreate

Name Type Description Required
name string Yes
tags [ string ] No
solutionId string Yes
tenantId string Yes
errorPage string No
signInPage string No

# ContractUpdate

Name Type Description Required
name string Yes
tags [ string ] No
errorPage string No
signInPage string No

# Count

Name Type Description Required
count string Returns a total count of all values matching the filter in the specified time window (not the number of non-null values for a specific property)

# DateTime

Date time in ISO 8601 date time format

Name Type Description Required
DateTime string Date time in ISO 8601 date time format

# Device

Name Type Description Required
connectivityProviderId string Connectivity provider identifier No
parentId string For principals without an external identity - an identifier of a parent that will be used to authenticate this principal No
identityProviderId string Identity provider identifier No
identity string Identity, must be unique within an identity provider or a parent Yes
tenantId string Tenant identifier No
solutionId string Solution that this device belongs to No
id string Unique identifier No
tags [ string ] Tags No
grantIds object Grant identifiers per scope No

# DeviceConnectivity

Name Type Description Required
connectivityProvider ConnectivityProvider Yes
path string Path to the directly connected device Yes

# DeviceCreate

Name Type Description Required
tags [ string ] Tags No
parentId string For principals without an external identity - an identifier of a parent that will be used to authenticate this principal No
identityProviderId string Identity provider identifier No
identity string Identity, must be unique within an identity provider or a parent Yes
tenantId string Tenant identifier No
solutionId string Solution that this device belongs to No

# DeviceUpdate

Name Type Description Required
tenantId string Tenant identifier
solutionId string Solution that this device belongs to
tags [ string ] Tags

# ErrorCode

Error code indicating the error such as validation_error, authorization error etc

Name Type Description Required
ErrorCode string Error code indicating the error such as validation_error, authorization error etc

# Errors

Name Type Description Required
Errors [ ErrorsSubObject1 ]
# ErrorsSubObject1
Name Type Description Required
code string An application-specific error code, expressed as a string
title string A short, human-readable summary of hte problem that SHOULD NOT change from occurrence to occurrence of the problem, except for the purpose of localization
detail string A human-readable explanation to this occurrence of the problem. Like title, this field's value can be localized
id string
status string
source ErrorsSubObject1SubObject1
meta object
# ErrorsSubObject1SubObject1
Name Type Description Required
pointer string
parameter string

# EventDefinition

Name Type Description Required
eventDefinitionId string Unique identifier Yes
version string Version of the definition Yes
isDeleted boolean Is only present and set to true for event definitions that have been deleted. This value cannot be set when posting a new or updated event definition No
fields object Details of the event No
fields.start string No
fields.start.isAcknowledged boolean Is the event acknowledged No

# EventDefinitions

Name Type Description Required
data EventDefinition event definitions Yes

# EventVersions

Name Type Description Required
versions array of strings versions collection -

# Events

Name Type Description Required
data [ All of: QueryResponse, EventsSubObject1 ] Yes
# EventsSubObject1
Name Type Description Required
event string Event name No

# ExternalIdentity

Name Type Description Required
identityProviderName string Yes
identityProviderType IdentityProviderType Yes
identity string Yes

# File

Name Type Description Required
path string
timestamp dateTime
size number File size in kb

# FileDownload

Name Type Description Required
path string Yes
objectId string Yes
model string Yes

# FilePath

Name Type Description Required
path string Yes

# FilePostRequest

Name Type Description Required
ListRequest ListRequest
limit LimitClause Yes

# FileServiceResponse

Name Type Description Required
hasMore boolean If true, then there are more entries available. Either increase the limit or create a more restrictive filter. No
data [ ObjectFiles ] Yes

# FileUpload

Name Type Description Required
path string Yes
file binary Yes

# Functions

Name Type Description Required
Count Count
SelectorFunctions selector-functions
AggregationFunctions aggregation-functions

# FunctionDefinition

Name Type Description Required
functionDefinitionId string Unique identifier Yes
version string Version of the definition Yes
isDeleted boolean Is only present and set to true for function definitions that have been deleted. This value cannot be set when posting a new or updated function definition No
location.docker.image string Container image of the function No
inputs object Definition of the inputs No
outputs object Definition of the outputs No

# FunctionDefinitions

Name Type Description Required
data FunctionDefinition function definitions Yes

# FunctionVersions

Name Type Description Required
versions array of strings versions collection -

# GlobalFileServiceResponse

Name Type Description Required
hasMore boolean If true, then there are more entries available. Either increase the limit or create a more restrictive filter. No
data [ File ] Yes

# Grant

Name Type Description Required
id string Unique identifier No
scope Scope No
name string Gets or Sets Name Yes
tags [ string ] Gets or Sets Tags No
roleId string Gets or Sets RoleId Yes
solutionId string Solution identifier No
rules [ Rule ] List of rules for this grant. Permissions referenced by the rules MUST be included in the role No

# GrantDetails

Name Type Description Required
rules [ Rule ] No
name string Yes
tags [ string ] No
permissions [ string ] Yes

# GrantUpdate

Name Type Description Required
name string Gets or Sets Name Yes
tags [ string ] Gets or Sets Tags No
roleId string Gets or Sets RoleId Yes
solutionId string Solution identifier No
rules [ Rule ] List of rules for this grant. Permissions referenced by the rules MUST be included in the role No

# GraphRepresentation

Name Type Description Required
resourceStep string Each resource is expected to be accessible by a single globally scoped DSL step which does not take any arguments, i.e. models(), references() All conditions and traversals must be in the context of this step Yes
propertySteps object Map of a property name to a corresponding DSL step. DSL step must take a single argument, which is a value of that property Yes

# Group

Name Type Description Required
name string Yes
tenantId string Tenant identifier Yes
users [ string ] List of user members of this group No
devices [ string ] List of device members of this group No
id string Unique identifier No
tags [ string ] Tags No
grantIds object Grant identifiers per scope No

# GroupByClause

Name Type Description Required
time string (duration) Group by a user-specified time interval
properties string Group by values of specified properties, supports comma-separated list of property names. All properties for a given event type are supported.

# GroupCreate

Name Type Description Required
name string Yes
tenantId string Tenant identifier Yes
tags [ string ] Tags No

# GroupUpdate

Name Type Description Required
name string Name, must be unique within this tenant Yes
tags [ string ] Tags No

# IDPConfiguration

Multi tenant IDP configuration

Name Type Description Required
issuers object For multitenant openID connect IDPs, allows to restrict and configure each issuer separately
groups object Mapping of a group identifier in this identity provider to an Ability group identifier
allowSignUp boolean Whether users from this IDP can sign up (only applicable for IDPs that support user identities).

# IdentityProvider

Name Type Description Required
id string Unique identifier Yes
name string Uniquely identifies an identity provider within a type. Each provider type must have a deterministic way to get this name from the authentication token/certificate. I.e. this can be a common name of an issuer for a certificate authority, or an issuer in JWT token for an openIdConnect identity provider. Yes
type IdentityProviderType Yes
configuration IdentityProviderConfiguration Yes
displayName string Display name Yes
tags [ string ] Gets or Sets Tags No

# IdentityProviderConfiguration

Configuration for each entity supported by this provider

Name Type Description Required
user IdpUserSpec
app IdentityProviderSpec
groups IdentityProviderSpec
device IdentityProviderSpec

# IdentityProviderCreate

Identity provider specification, identifier must be unique within a type. May include other type specific properties, i.e. a root CA for certificate authority validation. Supported identity types are indicated by a presence of a correspondingly names property in a configuration

Name Type Description Required
type IdentityProviderType Yes
configuration IdentityProviderConfiguration Yes
displayName string Display name Yes
tags [ string ] Gets or Sets Tags No

# IdentityProviderSpec

Name Type Description Required
id string Name of the property to extract a given identity identifier, i.e. for a certificate authority it's a name of the certificate field, while for OpenID connect - it's a name of a claim in a JWT token Yes

# IdentityProviderType

Name Type Description Required
IdentityProviderType string Enum values: certificateAuthority, openIdConnect

# IdentityProviderUpdate

Identity provider specification, identifier must be unique within a type. May include other type specific properties, i.e. a root CA for certificate authority validation. Supported identity types are indicated by a presence of a correspondingly names property in a configuration

Name Type Description Required
configuration IdentityProviderConfiguration Yes
displayName string Display name Yes
tags [ string ] Gets or Sets Tags No

# IdentityType

Name Type Description Required
IdentityType string Enum values: device, app, user

# IdpUserSpec

Name Type Description Required
name string Name of the property to extract a display name for a user Yes
email string Name of the property to extract an email address for a user Yes
id string Name of the property to extract a given identity identifier, i.e. for a certificate authority it's a name of the certificate field, while for OpenID connect - it's a name of a claim in a JWT token Yes

# InlineResponse201

Name Type Description Required
id string Unique identifier

# LimitClause

Limit the number of returned values. Defaults to 100 if not specified

Name Type Description Required
LimitClause integer limit the number of returned values. Defaults to 100 if not specified

# ListRequest

Name Type Description Required
date* ListRequestSubObject1 If 'to' is not specified, default to current server time at the time of query execution No
filter WhereClause No
# ListRequestSubObject1
Name Type Description Required
from DateTime Yes
to DateTime No

# ObjectFileUpload

Name Type Description Required
FileUpload FileUpload
objectId string (uuid) Yes
model string Yes

# ObjectFiles

Name Type Description Required
File File
objectId string (uuid)
model string

# Operation

Name Type Description Required
scope Scope Yes
id string Unique identifier of this operation Yes
solutionId string Solution identifier Yes
tags [ string ] Tags No
permissions [ string ] Required permissions Yes
mapping object Mapping of resource type to path parameters to keys that comprise a unique identifier for a resource. Only applicable for operations on a single resource. If not declared, it is expected that path parameter names match declared No
isGraphCapable boolean Whether the service implementing this operation is graph capable No

# OperationUpdate

Name Type Description Required
solutionId string Solution identifier Yes
tags [ string ] Tags No
permissions [ string ] Required permissions Yes
mapping object Mapping of resource type to path parameters to keys that comprise a unique identifier for a resource. Only applicable for operations on a single resource. If not declared, it is expected that path parameter names match declared No
isGraphCapable boolean Whether the service implementing this operation is graph capable No

# OrderByClause

Specifies a property and order for the sort. Currenly ordering is only supported by a timestamp. By default, all results are in ascending time order, order = desc reverses that order so that events with the most recent timestamps are returned first

Name Type Description Required
property string Yes
order string Enum values: asc, desc Yes

# Permission

Name Type Description Required
scope Scope Yes
name string Unique name of this permission Yes
resource Resource Yes
solutionId string Solution identifier Yes
tags [ string ] Gets or Sets Tags No
resourceType string Accessed resource type No
access AccessType Yes
conditions object Default conditions per identity type for this permission, if any If specifiied, these conditions are always enforced before any custom rules No

# PermissionUpdate

Name Type Description Required
solutionId string Solution identifier Yes
tags [ string ] Gets or Sets Tags No
resourceType string Accessed resource type No
access AccessType Yes
conditions object Default conditions per identity type for this permission, if any If specifiied, these conditions are always enforced before any custom rules No

# PrincipalPermissions

Name Type Description Required
id string
type IdentityType
delegation string
path string
isNew boolean
tenantId string
roles [ string ]
permissions [ string ]
conditions [ string ]
traversals [ string ]

# PropertyDefinition

Name Type Description Required
type PropertyType Yes
grantAccessible boolean Whether this property can be used in grant rules No

# PropertySelector

Name Type Description Required
properties string Yes

# PropertyType

Name Type Description Required
PropertyType string Enum values: stringArray, string, number, integer, boolean

# PublisherDetails

Name Type Description Required
connectionURL string Event hub URL for this publisher Yes
isRevoked boolean whether this publisher is allowed to send data Yes
reason string If revoked, must contain a reason code. TODO define finite list of possible revocation limits No

# QueryRequest

groupBy is only supported in conjunction with functions selector. orderBy is only supported in conjunction with properties selector. If select is not specified, assumes a property selector for all property names.

Name Type Description Required
ListRequest ListRequest
select One of: Functions, PropertySelector
groupBy GroupByClause
orderBy OrderByClause
limit LimitClause

# QueryResponse

TIP

Please read the note.

Properties will include everything specified in the group by clause, and each requested function in 'select' statement will contain the calculated value in the same named property

Name Type Description Required
objectId string
model string
timestamp dateTime
count integer
sum AggregateSumAvg
avg AggregateSumAvg
min AggregateMinMax
max AggregateMinMax
first AggregateFirstLast
last AggregateFirstLast

# ReingestionToken

Name Type Description Required
sasToken string SAS token to use for authentication to this event hub Yes

# Resource

Name Type Description Required
type string Unique resource type Yes
scope Scope Yes
solutionId string Solution identifier Yes
tags [ string ] Tags No
unique [ string ] Names of properties which uniquely identifies this resource. Must be declared in properties. Yes
properties object Filterable properties of this resource. These properties will be used to restrict what conditions can filter by Yes
graph GraphRepresentation No

# ResourceUpdate

Name Type Description Required
solutionId string Solution identifier Yes
tags [ string ] Tags No
unique [ string ] Names of properties which uniquely identifies this resource. Must be declared in properties. Yes
properties object Filterable properties of this resource. These properties will be used to restrict what conditions can filter by Yes
graph GraphRepresentation No

# Role

Name Type Description Required
id string Gets or Sets Id No
scope Scope No
version integer Gets or Sets Version No
name string Name of this role Yes
tags [ string ] Gets or Sets Tags No
permissions [ string ] Gets or Sets Permissions Yes
solutionId string Solution identifier Yes

# RoleUpdate

Name Type Description Required
name string Name of this role Yes
tags [ string ] Gets or Sets Tags No
permissions [ string ] Gets or Sets Permissions Yes
solutionId string Solution identifier Yes

# Rule

Name Type Description Required
name string Name of this rule No
permissions [ string ] Gets Permissions Yes
condition string Filter condition for this rule, expressed in QEL. For traversal rules, denotes a set of roots (starting points) for that traversal. Must only contain properties supported by ALL accessed resources Yes
traversal string DSL query denoting a traversal for this rule, only applicable for resources with graph representation If not present, only resources that match an above condition will be accessible No

# Scope

Name Type Description Required
Scope string Enum value: instance, region

# SelectorFunctions

Name Type Description Required
min string Minimum value, only applicable to numeric and date time properties. Currently supports only a single property
max string Maximum value, only applicable to numeric and date time properties. Currently supports only a single property
first string Returns the property value with the oldest timestamp. Currently supports only a single property
last string Returns the property value with the most recent timestamp. Currently supports only a single property

# ServiceError

Name Type Description Required
code ErrorCode
title string A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization
detail string A human-readable explanation specific to this occurrence of the problem. Like title, this field’s value can be localized

# ServiceErrors

WARNING

ServiceErrors has two potential implementations, depending on the API call

First implementation:

Name Type Description Required
errors Errors Yes

Second implementation:

Name Type Description Required
errors ServiceError Gets or Sets Errors Yes

# Solution

Name Type Description Required
id string Unique identifier Yes
adminGrantId string Solution admin grant identifier No
deviceGrantId string Solution device grant identifier No
scope Scope Yes
name string Human readable solution name Yes
namespace string Namespace for solution definitions, must be unique across all solutions Yes
tags [ string ] Tags No
definitions object Definitions that belong to this solution No

# SolutionCreate

Name Type Description Required
scope Scope Yes
name string Human readable solution name Yes
namespace string Namespace for solution definitions, must be unique across all solutions Yes
tags [ string ] Tags No
definitions object Definitions that belong to this solution No

# SolutionUpdate

Name Type Description Required
name string Human readable solution name Yes
tags [ string ] Tags No
definitions object Definitions that belong to this solution No

# SubscriptionDetails

Name Type Description Required
subscriptionId string The identifier of the created subscription that can be used to refresh a token
connectionURL string Fully qualified servis bus URL

# SubscriptionQueryResponse

Name Type Description Required
hasMore boolean If true, then there are more entries available. Either increase the limit or create a more restrictive filter. No
data [ SubscriptionDetails ] Yes

# SubscriptionRequest

Name Type Description Required
SubscriptionUpdateRequest SubscriptionUpdateRequest
subscriptionTTL integer Time to live of the service bus subscription, in minutes. The time to live is measured in idle client connections, which means that if this subscription has no client connections for this amount of time, it will be deleted Yes
filter WhereClause

# SubscriptionResponse

Name Type Description Required
SubscriptionDetails SubscriptionDetails
sasToken string SAS token to use for authentication for this subscription Yes

# SubscriptionTypes

Name Type Description Required
SubscriptionTypes string Enum: variables, alarms, events, platformEvents

# SubscriptionUpdateRequest

Name Type Description Required
sasTokenTTL integer SAS token time to live, in minutes. The SAS token will expire after this value has been exceeded Yes

# SubscriptionUpdatedResponse

Name Type Description Required
sasToken string SAS token to use for authentication for this subscription Yes

# TagsUpdate

Name Type Description Required
tags [ string ] Tags

# Tenant

Name Type Description Required
id string Unique identifier Yes
adminGrantId string Tenant admin grant identifier Yes
name string Gets or Sets Name Yes
tags [ string ] Gets or Sets Tags No
identityProviders object Configuration for authorized identity providers No

# B2C Tenant

Name Type Description Required
tenantId string Unique identifier Yes
openIdConfig string OpenId Configuration URL Yes

# TenantUpdate

Name Type Description Required
name string Gets or Sets Name Yes
tags [ string ] Gets or Sets Tags No
identityProviders object Configuration for authorized identity providers No

# User

Name Type Description Required
tenantId string Tenant identifier
identityProviderId string Identity provider identifier
identity string Identity, must be unique within an identity provider
name string Display name of this user
emails [ string ] Emails of this user
id string Unique identifier
tags [ string ] Tags
grantIds object Grant identifiers per scope

# UserCreate

Name Type Description Required
tags [ string ] Tags No
tenantId string Tenant identifier Yes
identityProviderId string Identity provider identifier Yes
identity string Identity, must be unique within an identity provider Yes
name string Display name of this user No
emails [ string ] Emails of this user No

# UserInformation

Name Type Description Required
isFirstTimeSignIn boolean

# Variables

Will contain either all properties specified in the 'select' clause or all properties specified in the 'group by' clause plus each function in 'select' statement will contain the calculated value in the same named property.

Name Type Description Required
data All of: QueryResponse, VariablesSubObject1 Yes
# VariablesSubObject1
Name Type Description Required
variable string Fully qualified variable name
value One of: boolean, string, number, integer
quality integer

# WhereClause

Name Type Description Required
WhereClause string

# attributeValue

Name Type Description Required
value scalarValue Yes

# deletedReference

Name Type Description Required
referenceId string (uuid) Yes
containedObjectModel objectModelDeleted No

# deletedReferenceList

Name Type Description Required
deletedReferenceList deletedReference

# extensionVersion

Name Type Description Required
version number

# feedResponseModelDefinition

Name Type Description Required
data [ modelDefinition ]

# feedResponseTypeDefinition

Name Type Description Required
data [ typeDefinition ]

# fullReference

Name Type Description Required
referenceId string Unique reference identifier Yes
from source Yes
name string Yes
to target Yes
attributes object Yes

# methodRequest

Name Type Description Required
callbackUrl string (uri) If not provided, method invocation will be synchronous, and the response for this operation will include an output for this method.
timeout integer Limit how long to wait for this method invocation to respond. After the limit is exceeded - the callback URL will be called with a timeout error
input object

# methodResponse

Name Type Description Required
success boolean Determines if a method invocation was successful. Note that this only means that the method was actually processed by the target, and it replied with either success or error
error object If success is false, the response should contain additional details about the error that prevented this method invocation from being delivered, i.e. timeout. However, there are cases when no details are available.
result object

# modelDefinition

Name Type Description Required
modelDefinitionPost modelDefinitionPost
version integer
isDeleted boolean Is only present and set to true for model definitions that have been deleted. This value cannot be set when posting a new or updated model definition

# modelDefinitionPost

Declaration of a model definition picking components from the generic meta-model as well as providing common properties

Name Type Description Required
modelId string Yes
name string No
description string No
tags [ string ] No
components* object No

# modelList

Name Type Description Required
data [ string ]

# modelProperty

TIP

Please read the note.

Name Type Description Required
modelProperty object

# objectModel

Name Type Description Required
objectModelUpdateRequest objectModelUpdateRequest
objectModelSubObject1 objectModelSubObject1
# objectModelSubObject1
Name Type Description Required
lastModified string Last modified timestamp Yes
version integer The version of the model (incremented on each update) Yes
tenantId string (uuid) Tenant identifier Yes
ownerId string (uuid) Owner identifier - device identity that owns this object model No
path string If an owner is an indirectly connected device, this property will contain a path to this device from the connected device identity No

# objectModelCreateRequest

Name Type Description Required
model string
type string
name string
properties* object
variables* object

# objectModelCreated

Name Type Description Required
objectId string (uuid)
model string
relatedModels [ One of: relatedModelCreated, relatedModelErrors ]

# objectModelDeleted

Name Type Description Required
objectId string (uuid)
model string No
references* object

# objectModelList

Name Type Description Required
data [ objectModel ]

# objectModelUpdateRequest

Name Type Description Required
objectId string (uuid) Object unique identifier
objectModelCreateRequest objectModelCreateRequest
version integer The version of the model (incremented on each update)

# queryRequest

Name Type Description Required
query string Yes

# queryResult

Name Type Description Required
data [ One of: objectModel, fullReference ]

# reference

Name Type Description Required
name string Yes
to target Yes
attributes* object No

# referenceAttributes

TIP

Please read the note.

Name Type Description Required
referenceAttributes object

# referenceList

Name Type Description Required
data [ fullReference ]

# relatedModelCreated

Name Type Description Required
objectId string (uuid)
model string

# relatedModelErrors

Name Type Description Required
errors Errors
model string

# scalarValue

Name Type Description Required
scalarValue Any of: string, boolean, integer, number

# simpleProperty

TIP

Please read the note.

Name Type Description Required
value scalarValue

# source

Name Type Description Required
objectId string (uuid) Yes
model string No

# syncMethodResponse

Name Type Description Required
output Output of this method invocation, whether successful or not is determined by the 'error' key
error string Error name - should be defined in the errors of this method definition. If this property is present, indicates that an error has occured and more details of this error may be provided in the output

# target

Name Type Description Required
objectId string (uuid) Yes
model string No

# typeDefinition

Name Type Description Required
typeDefinitionPost typeDefinitionPost
isDeleted boolean Is only present and set to true for type definitions that have been deleted. This value cannot be set when posting a new or updated type definition

# typeDefinitionPost

Declaration of a type definition.

Name Type Description Required
model string Yes
typeId string Yes
version string Yes
name string No
tags [ string ] No
properties object No
variables object No
attributes object No
references object No
methods object No

# typeExtensionResponse

Type extension payload

Name Type Description Required
typeExtensionResponse object Type extension payload

# VariableDefinition

Name Type Description Required
variableDefinitionId string Unique identifier Yes
version string Version of the definition Yes
isDeleted boolean Is only present and set to true for variable definitions that have been deleted. This value cannot be set when posting a new or updated variable definition No
dataType string datatype of variable Yes

# VariableDefinitions

Name Type Description Required
data VariableDefinition variable definitions Yes

# VariableVersions

Name Type Description Required
versions array of strings versions collection -

# variables

Name Type Description Required
data All of: QueryResponse, VariablesSubObject1 Yes
# VariablesSubObject1
Name Type Description Required
variable string Variable name No

# versionsList

Name Type Description Required
model string
typeId string
versions [ string ]
Last updated: 11/9/2022, 9:20:43 AM
Feedback