Resources

Applications

CRUD and Query application resources

Register new server

POST /registry/v2/applications
Description

Registers a server solely using a discovery url. Requires that the onboarding agent service is running and the server can be located by a supervisor in its network using the discovery url.

Parameters
Type Name Description Schema
Query discovererId
optional
Scope the registration to a specific OPC Publisher using the publisher id string
Body body
required
Server registration request ServerRegistrationRequestModel
Responses
HTTP Code Description Schema
200 The operation was successful. No Content
400 The passed in information is invalid ProblemDetails
404 The publisher specified was not found. ProblemDetails
500 An internal error ocurred. ProblemDetails
Consumes
  • application/json
  • application/x-msgpack
Produces
  • application/json
  • application/x-msgpack

Get list of applications

GET /registry/v2/applications
Description

Get all registered applications in paged form. The returned model can contain a continuation token if more results are available. Call this operation again using the token to retrieve more results.

Parameters
Type Name Description Schema
Query continuationToken
optional
Optional Continuation token string
Query pageSize
optional
Optional number of results to return integer (int32)
Responses
HTTP Code Description Schema
200 The operation was successful. ApplicationInfoListModel
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Produces
  • application/json
  • application/x-msgpack

Create new application

PUT /registry/v2/applications
Description

The application is registered using the provided information, but it is not associated with a publisher. This is useful for when you need to register clients or you want to register a server that is located in a network not reachable through a publisher module.

Parameters
Type Name Description Schema
Body body
required
Application registration request ApplicationRegistrationRequestModel
Responses
HTTP Code Description Schema
200 The operation was successful. ApplicationRegistrationResponseModel
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Consumes
  • application/json
  • application/x-msgpack
Produces
  • application/json
  • application/x-msgpack

Purge applications

DELETE /registry/v2/applications
Description

Purges all applications that have not been seen for a specified amount of time.

Parameters
Type Name Description Schema
Query notSeenFor
optional
A duration in milliseconds string (date-span)
Responses
HTTP Code Description Schema
200 The operation was successful. No Content
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Produces
  • application/json
  • application/x-msgpack

Discover servers

POST /registry/v2/applications/discover
Description

Registers servers by running a discovery scan in a supervisor’s network. Requires that the onboarding agent service is running.

Parameters
Type Name Description Schema
Query discovererId
optional
Scope the discovery to a specific OPC Publisher using the publisher id string
Body body
required
Discovery request DiscoveryRequestModel
Responses
HTTP Code Description Schema
200 The operation was successful. No Content
400 The passed in information is invalid ProblemDetails
404 The publisher specified was not found. ProblemDetails
500 An internal error ocurred. ProblemDetails
Consumes
  • application/json
  • application/x-msgpack
Produces
  • application/json
  • application/x-msgpack

Cancel discovery

DELETE /registry/v2/applications/discover/{requestId}
Description

Cancels a discovery request using the request identifier.

Parameters
Type Name Description Schema
Path requestId
required
Discovery request string
Query discovererId
optional
Scope the cancellation to a specific OPC Publisher using the publisher id string
Responses
HTTP Code Description Schema
200 The operation was successful. No Content
400 The passed in information is invalid ProblemDetails
404 The publisher specified was not found. ProblemDetails
500 An internal error ocurred. ProblemDetails
Produces
  • application/json
  • application/x-msgpack

Query applications

POST /registry/v2/applications/query
Description

List applications that match a query model. The returned model can contain a continuation token if more results are available. Call the GetListOfApplications operation using the token to retrieve more results.

Parameters
Type Name Description Schema
Query pageSize
optional
Optional number of results to return integer (int32)
Body body
required
Application query ApplicationRegistrationQueryModel
Responses
HTTP Code Description Schema
200 The operation was successful. ApplicationInfoListModel
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Consumes
  • application/json
  • application/x-msgpack
Produces
  • application/json
  • application/x-msgpack

Get filtered list of applications

GET /registry/v2/applications/query
Description

Get a list of applications filtered using the specified query parameters. The returned model can contain a continuation token if more results are available. Call the GetListOfApplications operation using the token to retrieve more results.

Parameters
Type Name Description Schema
Query pageSize
optional
Number of results to return integer (int32)
Body body
required
Applications Query model ApplicationRegistrationQueryModel
Responses
HTTP Code Description Schema
200 The operation was successful. ApplicationInfoListModel
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Consumes
  • application/json
  • application/x-msgpack
Produces
  • application/json
  • application/x-msgpack

Get list of sites

GET /registry/v2/applications/sites
Description

List all sites applications are registered in.

Parameters
Type Name Description Schema
Query continuationToken
optional
Optional Continuation token string
Query pageSize
optional
Optional number of results to return integer (int32)
Responses
HTTP Code Description Schema
200 The operation was successful. ApplicationSiteListModel
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Produces
  • application/json
  • application/x-msgpack

Get application registration

GET /registry/v2/applications/{applicationId}
Parameters
Type Name Description Schema
Path applicationId
required
Application id for the server string
Responses
HTTP Code Description Schema
200 The operation was successful. ApplicationRegistrationModel
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Produces
  • application/json
  • application/x-msgpack

Unregister application

DELETE /registry/v2/applications/{applicationId}
Description

Unregisters and deletes application and all its associated endpoints.

Parameters
Type Name Description Schema
Path applicationId
required
The identifier of the application string
Responses
HTTP Code Description Schema
200 The operation was successful. No Content
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Produces
  • application/json
  • application/x-msgpack

Update application registration

PATCH /registry/v2/applications/{applicationId}
Description

The application information is updated with new properties. Note that this information might be overridden if the application is re-discovered during a discovery run (recurring or one-time).

Parameters
Type Name Description Schema
Path applicationId
required
The identifier of the application string
Body body
required
Application update request ApplicationRegistrationUpdateModel
Responses
HTTP Code Description Schema
200 The operation was successful. No Content
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Consumes
  • application/json
  • application/x-msgpack
Produces
  • application/json
  • application/x-msgpack

Disable an enabled application.

POST /registry/v2/applications/{applicationId}/disable
Description

A manager can disable an application.

Parameters
Type Name Description Schema
Path applicationId
required
The application id string
Responses
HTTP Code Description Schema
200 The operation was successful. No Content
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Produces
  • application/json
  • application/x-msgpack

Re-enable a disabled application.

POST /registry/v2/applications/{applicationId}/enable
Description

A manager can enable an application.

Parameters
Type Name Description Schema
Path applicationId
required
The application id string
Responses
HTTP Code Description Schema
200 The operation was successful. No Content
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Produces
  • application/json
  • application/x-msgpack

Discovery

Discovery

Get list of discoverers

GET /registry/v2/discovery
Description

Get all registered discoverers and therefore twin modules in paged form. The returned model can contain a continuation token if more results are available. Call this operation again using the token to retrieve more results.

Parameters
Type Name Description Schema
Query continuationToken
optional
Optional Continuation token string
Query pageSize
optional
Optional number of results to return integer (int32)
Responses
HTTP Code Description Schema
200 The operation was successful. DiscovererListModel
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Produces
  • application/json
  • application/x-msgpack

Query discoverers

POST /registry/v2/discovery/query
Description

Get all discoverers that match a specified query. The returned model can contain a continuation token if more results are available. Call the GetListOfDiscoverers operation using the token to retrieve more results.

Parameters
Type Name Description Schema
Query pageSize
optional
Number of results to return integer (int32)
Body body
required
Discoverers query model DiscovererQueryModel
Responses
HTTP Code Description Schema
200 The operation was successful. DiscovererListModel
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Consumes
  • application/json
  • application/x-msgpack
Produces
  • application/json
  • application/x-msgpack

Get filtered list of discoverers

GET /registry/v2/discovery/query
Description

Get a list of discoverers filtered using the specified query parameters. The returned model can contain a continuation token if more results are available. Call the GetListOfDiscoverers operation using the token to retrieve more results.

Parameters
Type Name Description Schema
Query connected
optional
Included connected or disconnected boolean
Query discovery
optional
Discovery mode of discoverer enum (Off, Local, Network, Fast, Scan)
Query pageSize
optional
Number of results to return integer (int32)
Query siteId
optional
Site of the discoverer string
Responses
HTTP Code Description Schema
200 The operation was successful. DiscovererListModel
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Produces
  • application/json
  • application/x-msgpack

Get discoverer registration information

GET /registry/v2/discovery/{discovererId}
Description

Returns a discoverer’s registration and connectivity information. A discoverer id corresponds to the twin modules module identity.

Parameters
Type Name Description Schema
Path discovererId
required
Discoverer identifier string
Responses
HTTP Code Description Schema
200 The operation was successful. DiscovererModel
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Produces
  • application/json
  • application/x-msgpack

Update discoverer information

PATCH /registry/v2/discovery/{discovererId}
Description

Allows a caller to configure recurring discovery runs on the twin module identified by the discoverer id or update site information.

Parameters
Type Name Description Schema
Path discovererId
required
discoverer identifier string
Body body
required
Patch request DiscovererUpdateModel
Responses
HTTP Code Description Schema
200 The operation was successful. No Content
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Consumes
  • application/json
  • application/x-msgpack
Produces
  • application/json
  • application/x-msgpack

Endpoints

Activate, Deactivate and Query endpoint resources

Get list of endpoints

GET /registry/v2/endpoints
Description

Get all registered endpoints in paged form. The returned model can contain a continuation token if more results are available. Call this operation again using the token to retrieve more results.

Parameters
Type Name Description Schema
Query continuationToken
optional
Optional Continuation token string
Query onlyServerState
optional
Whether to include only server state, or display current client state of the endpoint if available boolean
Query pageSize
optional
Optional number of results to return integer (int32)
Responses
HTTP Code Description Schema
200 The operation was successful. EndpointInfoListModel
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Produces
  • application/json
  • application/x-msgpack

Register endpoint

PUT /registry/v2/endpoints
Description

Adds an endpoint. This will onboard the endpoint and the associated application but no other endpoints. This call is synchronous and will return successful if endpoint is found. Otherwise the call will fail with error not found.

Parameters
Type Name Description Schema
Query discovererId
optional
Scope the registration to a specific OPC Publisher using the publisher id string
Body body
optional
Query for the endpoint to register. This must have at least the discovery url. If more information is specified it is used to validate that the application has such endpoint and if not the call will fail. ServerEndpointQueryModel
Responses
HTTP Code Description Schema
200 The operation was successful. string
400 The passed in information is invalid ProblemDetails
404 The publisher specified was not found. ProblemDetails
500 An internal error ocurred. ProblemDetails
Consumes
  • application/json
  • application/x-msgpack
Produces
  • application/json
  • application/x-msgpack

Query endpoints

POST /registry/v2/endpoints/query
Description

Return endpoints that match the specified query. The returned model can contain a continuation token if more results are available. Call the GetListOfEndpoints operation using the token to retrieve more results.

Parameters
Type Name Description Schema
Query onlyServerState
optional
Whether to include only server state, or display current client state of the endpoint if available boolean
Query pageSize
optional
Optional number of results to return integer (int32)
Body body
required
Query to match EndpointRegistrationQueryModel
Responses
HTTP Code Description Schema
200 The operation was successful. EndpointInfoListModel
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Consumes
  • application/json
  • application/x-msgpack
Produces
  • application/json
  • application/x-msgpack

Get filtered list of endpoints

GET /registry/v2/endpoints/query
Description

Get a list of endpoints filtered using the specified query parameters. The returned model can contain a continuation token if more results are available. Call the GetListOfEndpoints operation using the token to retrieve more results.

Parameters
Type Name Description Schema
Query applicationId
optional
Application id to filter string
Query certificate
optional
Certificate thumbprint of the endpoint string
Query discovererId
optional
Discoverer id to filter with string
Query endpointState
optional
The last state of the activated endpoint enum (Connecting, NotReachable, Busy, NoTrust, CertificateInvalid, Ready, Error, Disconnected, Unauthorized)
Query includeNotSeenSince
optional
Whether to include endpoints that were soft deleted boolean
Query onlyServerState
optional
Whether to include only server state, or display current client state of the endpoint if available boolean
Query pageSize
optional
Optional number of results to return integer (int32)
Query securityMode
optional
Security mode to use for communication - null = Best enum (Best, Sign, SignAndEncrypt, None, NotNone)
Query securityPolicy
optional
Endpoint security policy to use - null = Best. string
Query siteOrGatewayId
optional
Site or gateway id to filter with string
Query url
optional
Endoint url for direct server access string
Responses
HTTP Code Description Schema
200 The operation was successful. EndpointInfoListModel
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Produces
  • application/json
  • application/x-msgpack

Get endpoint information

GET /registry/v2/endpoints/{endpointId}
Description

Gets information about an endpoint.

Parameters
Type Name Description Schema
Path endpointId
required
endpoint identifier string
Query onlyServerState
optional
Whether to include only server state, or display current client state of the endpoint if available boolean
Responses
HTTP Code Description Schema
200 The operation was successful. EndpointInfoModel
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Produces
  • application/json
  • application/x-msgpack

Get endpoint certificate chain

GET /registry/v2/endpoints/{endpointId}/certificate
Description

Gets current certificate of the endpoint.

Parameters
Type Name Description Schema
Path endpointId
required
endpoint identifier string
Responses
HTTP Code Description Schema
200 The operation was successful. X509CertificateChainModel
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Produces
  • application/json
  • application/x-msgpack

Test endpoint is accessible

POST /registry/v2/endpoints/{endpointId}/test
Description

Test an endpoint can be connected to. Returns error information if connecting fails.

Parameters
Type Name Description Schema
Path endpointId
required
endpoint identifier string
Body body
required
  TestConnectionRequestModel
Responses
HTTP Code Description Schema
200 The operation was successful. TestConnectionResponseModel
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Consumes
  • application/json
  • application/x-msgpack
Produces
  • application/json
  • application/x-msgpack

Events

Configure discovery events

Subscribe to discovery progress for a request

PUT /events/v2/discovery/requests/{requestId}/events
Description

Register a client to receive discovery progress events through SignalR for a particular request.

Parameters
Type Name Description Schema
Path requestId
required
The request to monitor string
Body body
optional
The connection that will receive discovery events. string
Responses
HTTP Code Description Schema
200 The operation was successful. No Content
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Consumes
  • application/json
  • application/x-msgpack
Produces
  • application/json
  • application/x-msgpack

Unsubscribe from discovery progress for a request.

DELETE /events/v2/discovery/requests/{requestId}/events/{connectionId}
Description

Unregister a client and stop it from receiving discovery events for a particular request.

Parameters
Type Name Description Schema
Path connectionId
required
The connection that will not receive any more discovery progress string
Path requestId
required
The request to unsubscribe from string
Responses
HTTP Code Description Schema
200 The operation was successful. No Content
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Produces
  • application/json
  • application/x-msgpack

Subscribe to discovery progress from discoverer

PUT /events/v2/discovery/{discovererId}/events
Description

Register a client to receive discovery progress events through SignalR from a particular discoverer.

Parameters
Type Name Description Schema
Path discovererId
required
The discoverer to subscribe to string
Body body
optional
The connection that will receive discovery events. string
Responses
HTTP Code Description Schema
200 The operation was successful. No Content
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Consumes
  • application/json
  • application/x-msgpack
Produces
  • application/json
  • application/x-msgpack

Unsubscribe from discovery progress from discoverer.

DELETE /events/v2/discovery/{discovererId}/events/{connectionId}
Description

Unregister a client and stop it from receiving discovery events.

Parameters
Type Name Description Schema
Path connectionId
required
The connection that will not receive any more discovery progress string
Path discovererId
required
The discoverer to unsubscribe from string
Responses
HTTP Code Description Schema
200 The operation was successful. No Content
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Produces
  • application/json
  • application/x-msgpack

Gateways

Read, Update and Query Gateway resources

Get list of Gateways

GET /registry/v2/gateways
Description

Get all registered Gateways and therefore twin modules in paged form. The returned model can contain a continuation token if more results are available. Call this operation again using the token to retrieve more results.

Parameters
Type Name Description Schema
Query continuationToken
optional
Optional Continuation token string
Query pageSize
optional
Optional number of results to return integer (int32)
Responses
HTTP Code Description Schema
200 The operation was successful. GatewayListModel
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Produces
  • application/json
  • application/x-msgpack

Query Gateways

POST /registry/v2/gateways/query
Description

Get all Gateways that match a specified query. The returned model can contain a continuation token if more results are available. Call the GetListOfGateway operation using the token to retrieve more results.

Parameters
Type Name Description Schema
Query pageSize
optional
Number of results to return integer (int32)
Body body
required
Gateway query model GatewayQueryModel
Responses
HTTP Code Description Schema
200 The operation was successful. GatewayListModel
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Consumes
  • application/json
  • application/x-msgpack
Produces
  • application/json
  • application/x-msgpack

Get filtered list of Gateways

GET /registry/v2/gateways/query
Description

Get a list of Gateways filtered using the specified query parameters. The returned model can contain a continuation token if more results are available. Call the GetListOfGateway operation using the token to retrieve more results.

Parameters
Type Name Description Schema
Query connected
optional
Included connected or disconnected boolean
Query pageSize
optional
Number of results to return integer (int32)
Query siteId
optional
Site of the Gateway string
Responses
HTTP Code Description Schema
200 The operation was successful. GatewayListModel
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Produces
  • application/json
  • application/x-msgpack

Get Gateway registration information

GET /registry/v2/gateways/{GatewayId}
Description

Returns a Gateway’s registration and connectivity information. A Gateway id corresponds to the twin modules module identity.

Parameters
Type Name Description Schema
Path GatewayId
required
Gateway identifier string
Responses
HTTP Code Description Schema
200 The operation was successful. GatewayInfoModel
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Produces
  • application/json
  • application/x-msgpack

Update Gateway configuration

PATCH /registry/v2/gateways/{GatewayId}
Description

Allows a caller to configure operations on the Gateway module identified by the Gateway id.

Parameters
Type Name Description Schema
Path GatewayId
required
Gateway identifier string
Body body
required
Patch request GatewayUpdateModel
Responses
HTTP Code Description Schema
200 The operation was successful. No Content
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Consumes
  • application/json
  • application/x-msgpack
Produces
  • application/json
  • application/x-msgpack

History

History raw access services

Get the history server capabilities

GET /history/v2/capabilities/{endpointId}
Description

Gets the capabilities of the connected historian server. The endpoint must be in the registry and the module client and server must trust each other.

Parameters
Type Name Description Schema
Path endpointId
required
The identifier of the activated endpoint. string
Query namespaceFormat
optional
  enum (Uri, Index, Expanded)
Responses
HTTP Code Description Schema
200 The operation was successful. HistoryServerCapabilitiesModel
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Produces
  • application/json
  • application/x-msgpack

Delete historic events

POST /history/v2/delete/{endpointId}/events
Description

Delete historic events using historic access. The endpoint must be in the registry and the server accessible.

Parameters
Type Name Description Schema
Path endpointId
required
The identifier of the activated endpoint. string
Body body
required
The history update request DeleteEventsDetailsModelHistoryUpdateRequestModel
Responses
HTTP Code Description Schema
200 The operation was successful. HistoryUpdateResponseModel
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Consumes
  • application/json
  • application/x-msgpack
Produces
  • application/json
  • application/x-msgpack

Delete historic values

POST /history/v2/delete/{endpointId}/values
Description

Delete historic values using historic access. The endpoint must be in the registry and the server accessible.

Parameters
Type Name Description Schema
Path endpointId
required
The identifier of the activated endpoint. string
Body body
required
The history update request DeleteValuesDetailsModelHistoryUpdateRequestModel
Responses
HTTP Code Description Schema
200 The operation was successful. HistoryUpdateResponseModel
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Consumes
  • application/json
  • application/x-msgpack
Produces
  • application/json
  • application/x-msgpack

Delete historic values

POST /history/v2/delete/{endpointId}/values/modified
Description

Delete historic values using historic access. The endpoint must be in the registry and the server accessible.

Parameters
Type Name Description Schema
Path endpointId
required
The identifier of the activated endpoint. string
Body body
required
The history update request DeleteValuesDetailsModelHistoryUpdateRequestModel
Responses
HTTP Code Description Schema
200 The operation was successful. HistoryUpdateResponseModel
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Consumes
  • application/json
  • application/x-msgpack
Produces
  • application/json
  • application/x-msgpack

Delete value history at specified times

POST /history/v2/delete/{endpointId}/values/pick
Description

Delete value history using historic access. The endpoint must be in the registry and the server accessible.

Parameters
Type Name Description Schema
Path endpointId
required
The identifier of the activated endpoint. string
Body body
required
The history update request DeleteValuesAtTimesDetailsModelHistoryUpdateRequestModel
Responses
HTTP Code Description Schema
200 The operation was successful. HistoryUpdateResponseModel
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Consumes
  • application/json
  • application/x-msgpack
Produces
  • application/json
  • application/x-msgpack

Read history using json details

POST /history/v2/history/read/{endpointId}
Description

Read node history if available using historic access. The endpoint must be in the registry and the module client and server must trust each other.

Parameters
Type Name Description Schema
Path endpointId
required
The identifier of the activated endpoint. string
Body body
required
The history read request VariantValueHistoryReadRequestModel
Responses
HTTP Code Description Schema
200 The operation was successful. VariantValueHistoryReadResponseModel
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Consumes
  • application/json
  • application/x-msgpack
Produces
  • application/json
  • application/x-msgpack

POST /history/v2/history/read/{endpointId}/next
Description

Read next batch of node history values using historic access. The endpoint must be in the registry and the module client and server must trust each other.

Parameters
Type Name Description Schema
Path endpointId
required
The identifier of the activated endpoint. string
Body body
required
The history read next request HistoryReadNextRequestModel
Responses
HTTP Code Description Schema
200 The operation was successful. VariantValueHistoryReadNextResponseModel
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Consumes
  • application/json
  • application/x-msgpack
Produces
  • application/json
  • application/x-msgpack

Update node history using raw json

POST /history/v2/history/update/{endpointId}
Description

Update node history using historic access. The endpoint must be in the registry and the module client and server must trust each other.

Parameters
Type Name Description Schema
Path endpointId
required
The identifier of the activated endpoint. string
Body body
required
The history update request VariantValueHistoryUpdateRequestModel
Responses
HTTP Code Description Schema
200 The operation was successful. HistoryUpdateResponseModel
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Consumes
  • application/json
  • application/x-msgpack
Produces
  • application/json
  • application/x-msgpack

Insert historic events

POST /history/v2/insert/{endpointId}/events
Description

Insert historic events using historic access. The endpoint must be in the registry and the server accessible.

Parameters
Type Name Description Schema
Path endpointId
required
The identifier of the activated endpoint. string
Body body
required
The history insert request UpdateEventsDetailsModelHistoryUpdateRequestModel
Responses
HTTP Code Description Schema
200 The operation was successful. HistoryUpdateResponseModel
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Consumes
  • application/json
  • application/x-msgpack
Produces
  • application/json
  • application/x-msgpack

Insert historic values

POST /history/v2/insert/{endpointId}/values
Description

Insert historic values using historic access. The endpoint must be in the registry and the server accessible.

Parameters
Type Name Description Schema
Path endpointId
required
The identifier of the activated endpoint. string
Body body
required
The history insert request UpdateValuesDetailsModelHistoryUpdateRequestModel
Responses
HTTP Code Description Schema
200 The operation was successful. HistoryUpdateResponseModel
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Consumes
  • application/json
  • application/x-msgpack
Produces
  • application/json
  • application/x-msgpack

Get history node configuration

POST /history/v2/read/{endpointId}/configuration
Description

Read history node configuration if available. The endpoint must be in the registry and the module client and server must trust each other.

Parameters
Type Name Description Schema
Path endpointId
required
The identifier of the activated endpoint. string
Body body
optional
The history configuration read request HistoryConfigurationRequestModel
Responses
HTTP Code Description Schema
200 The operation was successful. HistoryConfigurationResponseModel
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Consumes
  • application/json
  • application/x-msgpack
Produces
  • application/json
  • application/x-msgpack

Read historic events

POST /history/v2/read/{endpointId}/events
Description

Read historic events of a node if available using historic access. The endpoint must be in the registry and the module client and server must trust each other.

Parameters
Type Name Description Schema
Path endpointId
required
The identifier of the activated endpoint. string
Body body
required
The history read request ReadEventsDetailsModelHistoryReadRequestModel
Responses
HTTP Code Description Schema
200 The operation was successful. HistoricEventModelArrayHistoryReadResponseModel
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Consumes
  • application/json
  • application/x-msgpack
Produces
  • application/json
  • application/x-msgpack

POST /history/v2/read/{endpointId}/events/next
Description

Read next batch of historic events of a node using historic access. The endpoint must be in the registry and the module client and server must trust each other.

Parameters
Type Name Description Schema
Path endpointId
required
The identifier of the activated endpoint. string
Body body
required
The history read next request HistoryReadNextRequestModel
Responses
HTTP Code Description Schema
200 The operation was successful. HistoricEventModelArrayHistoryReadNextResponseModel
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Consumes
  • application/json
  • application/x-msgpack
Produces
  • application/json
  • application/x-msgpack

Read historic processed values at specified times

POST /history/v2/read/{endpointId}/values
Description

Read processed history values of a node if available using historic access. The endpoint must be in the registry and the module client and server must trust each other.

Parameters
Type Name Description Schema
Path endpointId
required
The identifier of the activated endpoint. string
Body body
required
The history read request ReadValuesDetailsModelHistoryReadRequestModel
Responses
HTTP Code Description Schema
200 The operation was successful. HistoricValueModelArrayHistoryReadResponseModel
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Consumes
  • application/json
  • application/x-msgpack
Produces
  • application/json
  • application/x-msgpack

Read historic modified values at specified times

POST /history/v2/read/{endpointId}/values/modified
Description

Read processed history values of a node if available using historic access. The endpoint must be in the registry and the module client and server must trust each other.

Parameters
Type Name Description Schema
Path endpointId
required
The identifier of the activated endpoint. string
Body body
required
The history read request ReadModifiedValuesDetailsModelHistoryReadRequestModel
Responses
HTTP Code Description Schema
200 The operation was successful. HistoricValueModelArrayHistoryReadResponseModel
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Consumes
  • application/json
  • application/x-msgpack
Produces
  • application/json
  • application/x-msgpack

POST /history/v2/read/{endpointId}/values/next
Description

Read next batch of historic values of a node using historic access. The endpoint must be in the registry and the module client and server must trust each other.

Parameters
Type Name Description Schema
Path endpointId
required
The identifier of the activated endpoint. string
Body body
required
The history read next request HistoryReadNextRequestModel
Responses
HTTP Code Description Schema
200 The operation was successful. HistoricValueModelArrayHistoryReadNextResponseModel
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Consumes
  • application/json
  • application/x-msgpack
Produces
  • application/json
  • application/x-msgpack

Read historic values at specified times

POST /history/v2/read/{endpointId}/values/pick
Description

Read historic values of a node if available using historic access. The endpoint must be in the registry and the module client and server must trust each other.

Parameters
Type Name Description Schema
Path endpointId
required
The identifier of the activated endpoint. string
Body body
required
The history read request ReadValuesAtTimesDetailsModelHistoryReadRequestModel
Responses
HTTP Code Description Schema
200 The operation was successful. HistoricValueModelArrayHistoryReadResponseModel
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Consumes
  • application/json
  • application/x-msgpack
Produces
  • application/json
  • application/x-msgpack

Read historic processed values at specified times

POST /history/v2/read/{endpointId}/values/processed
Description

Read processed history values of a node if available using historic access. The endpoint must be in the registry and the module client and server must trust each other.

Parameters
Type Name Description Schema
Path endpointId
required
The identifier of the activated endpoint. string
Body body
required
The history read request ReadProcessedValuesDetailsModelHistoryReadRequestModel
Responses
HTTP Code Description Schema
200 The operation was successful. HistoricValueModelArrayHistoryReadResponseModel
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Consumes
  • application/json
  • application/x-msgpack
Produces
  • application/json
  • application/x-msgpack

Replace historic events

POST /history/v2/replace/{endpointId}/events
Description

Replace historic events using historic access. The endpoint must be in the registry and the server accessible.

Parameters
Type Name Description Schema
Path endpointId
required
The identifier of the activated endpoint. string
Body body
required
The history replace request UpdateEventsDetailsModelHistoryUpdateRequestModel
Responses
HTTP Code Description Schema
200 The operation was successful. HistoryUpdateResponseModel
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Consumes
  • application/json
  • application/x-msgpack
Produces
  • application/json
  • application/x-msgpack

Replace historic values

POST /history/v2/replace/{endpointId}/values
Description

Replace historic values using historic access. The endpoint must be in the registry and the server accessible.

Parameters
Type Name Description Schema
Path endpointId
required
The identifier of the activated endpoint. string
Body body
required
The history replace request UpdateValuesDetailsModelHistoryUpdateRequestModel
Responses
HTTP Code Description Schema
200 The operation was successful. HistoryUpdateResponseModel
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Consumes
  • application/json
  • application/x-msgpack
Produces
  • application/json
  • application/x-msgpack

Upsert historic events

POST /history/v2/upsert/{endpointId}/events
Description

Upsert historic events using historic access. The endpoint must be in the registry and the server accessible.

Parameters
Type Name Description Schema
Path endpointId
required
The identifier of the activated endpoint. string
Body body
required
The history upsert request UpdateEventsDetailsModelHistoryUpdateRequestModel
Responses
HTTP Code Description Schema
200 The operation was successful. HistoryUpdateResponseModel
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Consumes
  • application/json
  • application/x-msgpack
Produces
  • application/json
  • application/x-msgpack

Upsert historic values

POST /history/v2/upsert/{endpointId}/values
Description

Upsert historic values using historic access. The endpoint must be in the registry and the server accessible.

Parameters
Type Name Description Schema
Path endpointId
required
The identifier of the activated endpoint. string
Body body
required
The history upsert request UpdateValuesDetailsModelHistoryUpdateRequestModel
Responses
HTTP Code Description Schema
200 The operation was successful. HistoryUpdateResponseModel
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Consumes
  • application/json
  • application/x-msgpack
Produces
  • application/json
  • application/x-msgpack

Publish

Value and Event publishing services

Get currently published nodes

POST /publisher/v2/publish/{endpointId}
Description

Returns currently published node ids for an endpoint. The endpoint must be in the registry and the module client and server must trust each other.

Parameters
Type Name Description Schema
Path endpointId
required
The identifier of the activated endpoint. string
Body body
required
The list request PublishedItemListRequestModel
Responses
HTTP Code Description Schema
200 The operation was successful. PublishedItemListResponseModel
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Consumes
  • application/json
  • application/x-msgpack
Produces
  • application/json
  • application/x-msgpack

Get next set of published nodes

GET /publisher/v2/publish/{endpointId}
Description

Returns next set of currently published node ids for an endpoint. The endpoint must be in the registry and the module client and server must trust each other.

Parameters
Type Name Description Schema
Path endpointId
required
The identifier of the activated endpoint. string
Query continuationToken
required
The continuation token to continue with string
Responses
HTTP Code Description Schema
200 The operation was successful. PublishedItemListResponseModel
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Produces
  • application/json
  • application/x-msgpack

Bulk publish node values

POST /publisher/v2/publish/{endpointId}/bulk
Description

Adds or removes in bulk values that should be published from a particular endpoint.

Parameters
Type Name Description Schema
Path endpointId
required
The identifier of a registered endpoint. string
Body body
required
The bulk publish request PublishBulkRequestModel
Responses
HTTP Code Description Schema
200 The operation was successful. PublishBulkResponseModel
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Consumes
  • application/json
  • application/x-msgpack
Produces
  • application/json
  • application/x-msgpack

Start publishing node values

POST /publisher/v2/publish/{endpointId}/start
Description

Start publishing variable node values to IoT Hub. The endpoint must be in the registry and the module client and server must trust each other.

Parameters
Type Name Description Schema
Path endpointId
required
The identifier of the activated endpoint. string
Body body
required
The publish request PublishStartRequestModel
Responses
HTTP Code Description Schema
200 The operation was successful. PublishStartResponseModel
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Consumes
  • application/json
  • application/x-msgpack
Produces
  • application/json
  • application/x-msgpack

Stop publishing node values

POST /publisher/v2/publish/{endpointId}/stop
Description

Stop publishing variable node values to IoT Hub. The endpoint must be in the registry and the module client and server must trust each other.

Parameters
Type Name Description Schema
Path endpointId
required
The identifier of the activated endpoint. string
Body body
required
The unpublish request PublishStopRequestModel
Responses
HTTP Code Description Schema
200 The operation was successful. PublishStopResponseModel
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Consumes
  • application/json
  • application/x-msgpack
Produces
  • application/json
  • application/x-msgpack

Publishers

Read, Update and Query publisher resources

Get list of publishers

GET /registry/v2/publishers
Description

Get all registered publishers and therefore twin modules in paged form. The returned model can contain a continuation token if more results are available. Call this operation again using the token to retrieve more results.

Parameters
Type Name Description Schema
Query continuationToken
optional
Optional Continuation token string
Query onlyServerState
optional
Whether to include only server state, or display current client state of the endpoint if available boolean
Query pageSize
optional
Optional number of results to return integer (int32)
Responses
HTTP Code Description Schema
200 The operation was successful. PublisherListModel
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Produces
  • application/json
  • application/x-msgpack

Query publishers

POST /registry/v2/publishers/query
Description

Get all publishers that match a specified query. The returned model can contain a continuation token if more results are available. Call the GetListOfPublisher operation using the token to retrieve more results.

Parameters
Type Name Description Schema
Query onlyServerState
optional
Whether to include only server state, or display current client state of the endpoint if available boolean
Query pageSize
optional
Number of results to return integer (int32)
Body body
required
Publisher query model PublisherQueryModel
Responses
HTTP Code Description Schema
200 The operation was successful. PublisherListModel
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Consumes
  • application/json
  • application/x-msgpack
Produces
  • application/json
  • application/x-msgpack

Get filtered list of publishers

GET /registry/v2/publishers/query
Description

Get a list of publishers filtered using the specified query parameters. The returned model can contain a continuation token if more results are available. Call the GetListOfPublisher operation using the token to retrieve more results.

Parameters
Type Name Description Schema
Query connected
optional
Included connected or disconnected boolean
Query onlyServerState
optional
Whether to include only server state, or display current client state of the endpoint if available boolean
Query pageSize
optional
Number of results to return integer (int32)
Query siteId
optional
Site for the supervisors string
Responses
HTTP Code Description Schema
200 The operation was successful. PublisherListModel
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Produces
  • application/json
  • application/x-msgpack

Get publisher registration information

GET /registry/v2/publishers/{publisherId}
Description

Returns a publisher’s registration and connectivity information. A publisher id corresponds to the twin modules module identity.

Parameters
Type Name Description Schema
Path publisherId
required
Publisher identifier string
Query onlyServerState
optional
Whether to include only server state, or display current client state of the endpoint if available boolean
Responses
HTTP Code Description Schema
200 The operation was successful. PublisherModel
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Produces
  • application/json
  • application/x-msgpack

Update publisher configuration

PATCH /registry/v2/publishers/{publisherId}
Description

Allows a caller to configure operations on the publisher module identified by the publisher id.

Parameters
Type Name Description Schema
Path publisherId
required
Publisher identifier string
Body body
required
Patch request PublisherUpdateModel
Responses
HTTP Code Description Schema
200 The operation was successful. No Content
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Consumes
  • application/json
  • application/x-msgpack
Produces
  • application/json
  • application/x-msgpack

Get configured endpoints

GET /registry/v2/publishers/{publisherId}/endpoints
Description

Get all configured endpoints on the publisher. These are the ones configured in the local storage of the publisher.

Parameters
Type Name Description Schema
Path publisherId
required
  string
Query IncludeNodes
optional
Include nodes that make up the configuration boolean
Responses
HTTP Code Description Schema
200 The operation was successful. PublishedNodesEntryModelIAsyncEnumerable
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Produces
  • application/json
  • application/x-msgpack

Set configured endpoints

PUT /registry/v2/publishers/{publisherId}/endpoints
Description

Set all configured endpoints on the publisher. These are the ones that will be written to local storage of the publisher.

Parameters
Type Name Schema
Path publisherId
required
string
Body body
required
SetConfiguredEndpointsRequestModel
Responses
HTTP Code Description Schema
200 The operation was successful. No Content
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Consumes
  • application/json
  • application/x-msgpack
Produces
  • application/json
  • application/x-msgpack

Supervisors

Read, Update and Query publisher resources

Get list of supervisors

GET /registry/v2/supervisors
Description

Get all registered supervisors and therefore twin modules in paged form. The returned model can contain a continuation token if more results are available. Call this operation again using the token to retrieve more results.

Parameters
Type Name Description Schema
Query continuationToken
optional
Optional Continuation token string
Query onlyServerState
optional
Whether to include only server state, or display current client state of the endpoint if available boolean
Query pageSize
optional
Optional number of results to return integer (int32)
Responses
HTTP Code Description Schema
200 The operation was successful. SupervisorListModel
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Produces
  • application/json
  • application/x-msgpack

Query supervisors

POST /registry/v2/supervisors/query
Description

Get all supervisors that match a specified query. The returned model can contain a continuation token if more results are available. Call the GetListOfSupervisors operation using the token to retrieve more results.

Parameters
Type Name Description Schema
Query onlyServerState
optional
Whether to include only server state, or display current client state of the endpoint if available boolean
Query pageSize
optional
Number of results to return integer (int32)
Body body
required
Supervisors query model SupervisorQueryModel
Responses
HTTP Code Description Schema
200 The operation was successful. SupervisorListModel
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Consumes
  • application/json
  • application/x-msgpack
Produces
  • application/json
  • application/x-msgpack

Get filtered list of supervisors

GET /registry/v2/supervisors/query
Description

Get a list of supervisors filtered using the specified query parameters. The returned model can contain a continuation token if more results are available. Call the GetListOfSupervisors operation using the token to retrieve more results.

Parameters
Type Name Description Schema
Query connected
optional
Included connected or disconnected boolean
Query endpointId
optional
Managing provided endpoint twin string
Query onlyServerState
optional
Whether to include only server state, or display current client state of the endpoint if available boolean
Query pageSize
optional
Number of results to return integer (int32)
Query siteId
optional
Site for the supervisors string
Responses
HTTP Code Description Schema
200 The operation was successful. SupervisorListModel
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Produces
  • application/json
  • application/x-msgpack

Get supervisor registration information

GET /registry/v2/supervisors/{supervisorId}
Description

Returns a supervisor’s registration and connectivity information. A supervisor id corresponds to the twin modules module identity.

Parameters
Type Name Description Schema
Path supervisorId
required
Supervisor identifier string
Query onlyServerState
optional
Whether to include only server state, or display current client state of the endpoint if available boolean
Responses
HTTP Code Description Schema
200 The operation was successful. SupervisorModel
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Produces
  • application/json
  • application/x-msgpack

Update supervisor information

PATCH /registry/v2/supervisors/{supervisorId}
Description

Allows a caller to configure recurring discovery runs on the twin module identified by the supervisor id or update site information.

Parameters
Type Name Description Schema
Path supervisorId
required
supervisor identifier string
Body body
required
Patch request SupervisorUpdateModel
Responses
HTTP Code Description Schema
200 The operation was successful. No Content
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Consumes
  • application/json
  • application/x-msgpack
Produces
  • application/json
  • application/x-msgpack

Telemetry

Value and Event monitoring services

Subscribe to receive samples

PUT /events/v2/telemetry/{endpointId}/samples
Description

Register a client to receive publisher samples through SignalR.

Parameters
Type Name Description Schema
Path endpointId
required
The endpoint to subscribe to string
Body body
optional
The connection that will receive publisher samples. string
Responses
HTTP Code Description Schema
200 The operation was successful. No Content
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Consumes
  • application/json
  • application/x-msgpack
Produces
  • application/json
  • application/x-msgpack

Unsubscribe from receiving samples.

DELETE /events/v2/telemetry/{endpointId}/samples/{connectionId}
Description

Unregister a client and stop it from receiving samples.

Parameters
Type Name Description Schema
Path connectionId
required
The connection that will not receive any more published samples string
Path endpointId
required
The endpoint to unsubscribe from string
Responses
HTTP Code Description Schema
200 The operation was successful. No Content
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Produces
  • application/json
  • application/x-msgpack

Twin

Node access read services

Browse node references

POST /twin/v2/browse/{endpointId}
Description

Browse a node on the specified endpoint. The endpoint must be in the registry and the server accessible.

Parameters
Type Name Description Schema
Path endpointId
required
The identifier of the activated endpoint. string
Body body
required
The browse request BrowseFirstRequestModel
Responses
HTTP Code Description Schema
200 The operation was successful. BrowseFirstResponseModel
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Consumes
  • application/json
  • application/x-msgpack
Produces
  • application/json
  • application/x-msgpack

Browse set of unique target nodes

GET /twin/v2/browse/{endpointId}
Description

Browse the set of unique hierarchically referenced target nodes on the endpoint. The endpoint must be in the registry and the server accessible. The root node id to browse from can be provided as part of the query parameters. If it is not provided, the RootFolder node is browsed. Note that this is the same as the POST method with the model containing the node id and the targetNodesOnly flag set to true.

Parameters
Type Name Description Schema
Path endpointId
required
The identifier of the activated endpoint. string
Query nodeId
optional
The node to browse or omit to browse the root node (i=84) string
Responses
HTTP Code Description Schema
200 The operation was successful. BrowseFirstResponseModel
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Produces
  • application/json
  • application/x-msgpack

Browse next set of references

POST /twin/v2/browse/{endpointId}/next
Description

Browse next set of references on the endpoint. The endpoint must be in the registry and the server accessible.

Parameters
Type Name Description Schema
Path endpointId
required
The identifier of the activated endpoint. string
Body body
required
The request body with continuation token. BrowseNextRequestModel
Responses
HTTP Code Description Schema
200 The operation was successful. BrowseNextResponseModel
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Consumes
  • application/json
  • application/x-msgpack
Produces
  • application/json
  • application/x-msgpack

Browse next set of unique target nodes

GET /twin/v2/browse/{endpointId}/next
Description

Browse the next set of unique hierarchically referenced target nodes on the endpoint. The endpoint must be in the registry and the server accessible. Note that this is the same as the POST method with the model containing the continuation token and the targetNodesOnly flag set to true.

Parameters
Type Name Description Schema
Path endpointId
required
The identifier of the activated endpoint. string
Query continuationToken
required
Continuation token from GetSetOfUniqueNodes operation string
Responses
HTTP Code Description Schema
200 The operation was successful. BrowseNextResponseModel
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Produces
  • application/json
  • application/x-msgpack

Browse using a browse path

POST /twin/v2/browse/{endpointId}/path
Description

Browse using a path from the specified node id. This call uses TranslateBrowsePathsToNodeIds service under the hood. The endpoint must be in the registry and the server accessible.

Parameters
Type Name Description Schema
Path endpointId
required
The identifier of the activated endpoint. string
Body body
required
The browse path request BrowsePathRequestModel
Responses
HTTP Code Description Schema
200 The operation was successful. BrowsePathResponseModel
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Consumes
  • application/json
  • application/x-msgpack
Produces
  • application/json
  • application/x-msgpack

Call a method

POST /twin/v2/call/{endpointId}
Description

Invoke method node with specified input arguments. The endpoint must be in the registry and the server accessible.

Parameters
Type Name Description Schema
Path endpointId
required
The identifier of the activated endpoint. string
Body body
required
The method call request MethodCallRequestModel
Responses
HTTP Code Description Schema
200 The operation was successful. MethodCallResponseModel
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Consumes
  • application/json
  • application/x-msgpack
Produces
  • application/json
  • application/x-msgpack

Get method meta data

POST /twin/v2/call/{endpointId}/metadata
Description

(Obsolete - use GetMetadata API) Return method meta data to support a user interface displaying forms to input and output arguments. The endpoint must be in the registry and the server accessible.

Parameters
Type Name Description Schema
Path endpointId
required
The identifier of the activated endpoint. string
Body body
required
The method metadata request MethodMetadataRequestModel
Responses
HTTP Code Description Schema
200 The operation was successful. MethodMetadataResponseModel
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Consumes
  • application/json
  • application/x-msgpack
Produces
  • application/json
  • application/x-msgpack

Get the server capabilities

GET /twin/v2/capabilities/{endpointId}
Description

Gets the capabilities of the connected server. The endpoint must be in the registry and the module client and server must trust each other.

Parameters
Type Name Description Schema
Path endpointId
required
The identifier of the activated endpoint. string
Query namespaceFormat
optional
  enum (Uri, Index, Expanded)
Responses
HTTP Code Description Schema
200 The operation was successful. ServerCapabilitiesModel
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Produces
  • application/json
  • application/x-msgpack

Get metadata of a node

POST /twin/v2/metadata/{endpointId}/node
Description

Get the node metadata which includes the fields and meta data of the type and can be used when constructing event filters or calling methods to pass the correct arguments. The endpoint must be in the registry and the server accessible.

Parameters
Type Name Description Schema
Path endpointId
required
The identifier of the activated endpoint. string
Body body
required
The metadata request NodeMetadataRequestModel
Responses
HTTP Code Description Schema
200 The operation was successful. NodeMetadataResponseModel
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Consumes
  • application/json
  • application/x-msgpack
Produces
  • application/json
  • application/x-msgpack

Read variable value

POST /twin/v2/read/{endpointId}
Description

Read a variable node’s value. The endpoint must be in the registry and the server accessible.

Parameters
Type Name Description Schema
Path endpointId
required
The identifier of the activated endpoint. string
Body body
required
The read value request ValueReadRequestModel
Responses
HTTP Code Description Schema
200 The operation was successful. ValueReadResponseModel
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Consumes
  • application/json
  • application/x-msgpack
Produces
  • application/json
  • application/x-msgpack

Get variable value

GET /twin/v2/read/{endpointId}
Description

Get a variable node’s value using its node id. The endpoint must be in the registry and the server accessible.

Parameters
Type Name Description Schema
Path endpointId
required
The identifier of the activated endpoint. string
Query nodeId
required
The node to read string
Responses
HTTP Code Description Schema
200 The operation was successful. ValueReadResponseModel
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Produces
  • application/json
  • application/x-msgpack

Read node attributes

POST /twin/v2/read/{endpointId}/attributes
Description

Read attributes of a node. The endpoint must be in the registry and the server accessible.

Parameters
Type Name Description Schema
Path endpointId
required
The identifier of the activated endpoint. string
Body body
required
The read request ReadRequestModel
Responses
HTTP Code Description Schema
200 The operation was successful. ReadResponseModel
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Consumes
  • application/json
  • application/x-msgpack
Produces
  • application/json
  • application/x-msgpack

Write variable value

POST /twin/v2/write/{endpointId}
Description

Write variable node’s value. The endpoint must be in the registry and the server accessible.

Parameters
Type Name Description Schema
Path endpointId
required
The identifier of the activated endpoint. string
Body body
required
The write value request ValueWriteRequestModel
Responses
HTTP Code Description Schema
200 The operation was successful. ValueWriteResponseModel
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Consumes
  • application/json
  • application/x-msgpack
Produces
  • application/json
  • application/x-msgpack

Write node attributes

POST /twin/v2/write/{endpointId}/attributes
Description

Write any attribute of a node. The endpoint must be in the registry and the server accessible.

Parameters
Type Name Description Schema
Path endpointId
required
The identifier of the activated endpoint. string
Body body
required
The batch write request WriteRequestModel
Responses
HTTP Code Description Schema
200 The operation was successful. WriteResponseModel
400 The passed in information is invalid ProblemDetails
500 An internal error ocurred. ProblemDetails
Consumes
  • application/json
  • application/x-msgpack
Produces
  • application/json
  • application/x-msgpack