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 AlarmVersions Name Type Description Required versions array of strings versions collection -
Alarms 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).
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.
ConnectivityProviderType Name Type Description Required ConnectivityProviderType string enum: ioTHub
ConnectivityProviderUpdate Connectivity provider update
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 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
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 EventVersions Name Type Description Required versions array of strings versions collection -
Events 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 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 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 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
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
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 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.
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
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
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
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.
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 deletedReference Name Type Description Required referenceId string (uuid) Yes containedObjectModel objectModelDeleted No
deletedReferenceList extensionVersion Name Type Description Required version number
feedResponseModelDefinition feedResponseTypeDefinition 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 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 objectModelDeleted Name Type Description Required objectId string (uuid) model string No references* object
objectModelList 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 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 objectId string (uuid) model string
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 .
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 VariableVersions Name Type Description Required versions array of strings versions collection -
variables 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