Skip to main content

API Changes — v1.1.1

API changes from v1.1.0 to v1.1.1 that affect client code, one row per endpoint, grouped by API category. For a narrative summary of this release, see v1.1.1.

  • API paths remain under /api/v1.
  • Client Impact:
    • Breaking — existing integration code must change
    • Additive — new or backward-compatible
  • Change types:
    • Added (new endpoint)
    • Removed (endpoint deleted, no direct replacement path — functionality moved to a different resource)
    • Path changed (same operation, new path)
  • This page lists only endpoints impacted by v1.1.1 API changes. Container Management, Tunnels, Device Management (core CRUD), and Reports/Usage Jobs have no changes in v1.1.1. AI Model Management keeps every path and payload it had in v1.1.0, but the set of accepted deploy actions is narrower — see Improvements.

DataStreams (replaces Data Source + Data Object)

API NameMethodEndpointChangeImpactDetails
Get device data source definitionsGET/devices/{deviceId}/data-sourceRemovedBreakingNo replacement path — a device's sensors are now returned directly in the DataStreams list below
Get device data objectsGET/devices/{deviceId}/data-objectsRemovedBreakingReplaced by List DataStreams
Get data object by IDGET/devices/{deviceId}/data-objects/{dataObjectId}RemovedBreakingReplaced by Get DataStream
Get latest data (all)GET/devices/{deviceId}/data-objects/values/latestRemovedBreakingReplaced by Get Latest Values (all)
Retrieve the latest value of a specific data objectGET/devices/{deviceId}/data-objects/{dataObjectId}/values/latestRemovedBreakingReplaced by Get Latest Value (one)
Get data historyGET/devices/{deviceId}/data-objects/{dataObjectId}/values/historicalRemovedBreakingReplaced by Get Historical Values
Get assigned device binary dataGET/devices/{deviceId}/data-objects/{dataObjectId}/blobs/{blobKey}RemovedBreakingReplaced by Download Blob
List DataStreamsGET/orgs/{orgId}/devices/{deviceId}/data-streamsAddedAdditiveIncludes dataSource lineage (System/User, origin type + ID)
Create DataStreamPOST/orgs/{orgId}/devices/{deviceId}/data-streamsAddedAdditiveNew capability — Data Objects could not be created directly in v1.1.0
Get DataStreamGET/orgs/{orgId}/devices/{deviceId}/data-streams/{dataStreamId}AddedAdditive
Update DataStreamPUT/orgs/{orgId}/devices/{deviceId}/data-streams/{dataStreamId}AddedAdditive
Patch DataStreamPATCH/orgs/{orgId}/devices/{deviceId}/data-streams/{dataStreamId}AddedAdditiveDisplay fields only for System-managed streams
Delete DataStreamDELETE/orgs/{orgId}/devices/{deviceId}/data-streams/{dataStreamId}AddedAdditiveOnly unattached, User-managed streams
Get Latest Values (all)GET/orgs/{orgId}/devices/{deviceId}/data-streams/values/latestAddedAdditive
Get Latest Value (one)GET/orgs/{orgId}/devices/{deviceId}/data-streams/{dataStreamId}/values/latestAddedAdditive
Get Historical ValuesGET/orgs/{orgId}/devices/{deviceId}/data-streams/{dataStreamId}/values/historicalAddedAdditiveCursor-based pagination (new pagination model)
Download BlobGET/orgs/{orgId}/devices/{deviceId}/data-streams/{dataStreamId}/blobs/{blobKey}AddedAdditive

Analyzers (replaces Transfer Functions)

API NameMethodEndpointChangeImpactDetails
List transfer functionsGET/devices/{deviceId}/inputs/data-objects/transfer-functionsRemovedBreakingReplaced by List Analyzers
Create transfer functionPOST/devices/{deviceId}/inputs/data-objects/transfer-functionsRemovedBreakingReplaced by Create Analyzer
Get transfer functionGET/devices/{deviceId}/inputs/data-objects/transfer-functions/{transferFunctionId}RemovedBreakingReplaced by Get Analyzer
Update transfer functionPATCH/devices/{deviceId}/inputs/data-objects/transfer-functions/{transferFunctionId}RemovedBreakingReplaced by Update/Patch Analyzer
Delete transfer functionDELETE/devices/{deviceId}/inputs/data-objects/transfer-functions/{transferFunctionId}RemovedBreakingReplaced by Delete Analyzer
Update transfer function statusPATCH/devices/{deviceId}/inputs/data-objects/transfer-functions/{transferFunctionId}/statusRemovedBreakingReplaced by Enable/Disable Analyzer
Create AnalyzerPOST/orgs/{orgId}/devices/{deviceId}/analyzersAddedAdditivetype accepts only TransferFunction; one input, one output
List AnalyzersGET/orgs/{orgId}/devices/{deviceId}/analyzersAddedAdditive
Get AnalyzerGET/orgs/{orgId}/devices/{deviceId}/analyzers/{analyzerId}AddedAdditive
Update AnalyzerPUT/orgs/{orgId}/devices/{deviceId}/analyzers/{analyzerId}AddedAdditiveMust be disabled first
Patch AnalyzerPATCH/orgs/{orgId}/devices/{deviceId}/analyzers/{analyzerId}AddedAdditiveMust be disabled first
Enable / Disable AnalyzerPOST/orgs/{orgId}/devices/{deviceId}/analyzers/{analyzerId}:{action}AddedAdditiveReplaces the old Update Status endpoint
Delete AnalyzerDELETE/orgs/{orgId}/devices/{deviceId}/analyzers/{analyzerId}AddedAdditiveMust be disabled first; does not release the output DataStream's claim

Alert Policies (replaces Alert Rules)

API NameMethodEndpointChangeImpactDetails
List alert rulesGET/devices/{deviceId}/data-objects/{dataObjectId}/alert-rulesRemovedBreakingReplaced by List Alert Policies (org-scoped, no longer per-DataStream)
Create alert rulePOST/devices/{deviceId}/data-objects/{dataObjectId}/alert-rulesRemovedBreakingReplaced by Create Alert Policy
Get alert rule by IDGET/devices/{deviceId}/data-objects/{dataObjectId}/alert-rules/{alertRuleId}RemovedBreakingReplaced by Get Alert Policy
Update alert rulePATCH/devices/{deviceId}/data-objects/{dataObjectId}/alert-rules/{alertRuleId}RemovedBreakingReplaced by Update Alert Policy
Delete alert ruleDELETE/devices/{deviceId}/data-objects/{dataObjectId}/alert-rules/{alertRuleId}RemovedBreakingReplaced by Delete Alert Policy
Update alert rule statusPUT/devices/{deviceId}/data-objects/{dataObjectId}/alert-rules/{alertRuleId}/statusRemovedBreakingReplaced by Enable/Disable Alert Policy
Create Alert PolicyPOST/orgs/{orgId}/alert-policiesAddedAdditiveIndependent org-scoped resource
List Alert PoliciesGET/orgs/{orgId}/alert-policiesAddedAdditiveFilter by dataStreamId to find policies attached to a stream
Get Alert PolicyGET/orgs/{orgId}/alert-policies/{alertPolicyId}AddedAdditive
Update Alert PolicyPATCH/orgs/{orgId}/alert-policies/{alertPolicyId}AddedAdditiveNo full-replace (PUT) verb on this resource
Delete Alert PolicyDELETE/orgs/{orgId}/alert-policies/{alertPolicyId}AddedAdditiveMust be disabled first
Enable / Disable Alert PolicyPOST/orgs/{orgId}/alert-policies/{alertPolicyId}:{action}AddedAdditive
List Attached DataStreamsGET/orgs/{orgId}/alert-policies/{alertPolicyId}/data-streamsAddedAdditive
Set Attached DataStreamsPUT/orgs/{orgId}/alert-policies/{alertPolicyId}/data-streamsAddedAdditiveFull-replacement semantics, not incremental
List Alert EventsGET/orgs/{orgId}/alert-eventsAddedAdditiveNew capability — no v1.1.0 equivalent

Notifications

API NameMethodEndpoint (v1.1.0 → v1.1.1)ChangeImpactDetails
Create ChannelPOST/notifications/channels/orgs/{orgId}/notifications/channelsPath changedBreakingFields/behavior unchanged
List ChannelsGET/notifications/channels/orgs/{orgId}/notifications/channelsPath changedBreaking
Get ChannelGET/notifications/channels/{channelId}/orgs/{orgId}/notifications/channels/{channelId}Path changedBreaking
Update ChannelPATCH/notifications/channels/{channelId}/orgs/{orgId}/notifications/channels/{channelId}Path changedBreaking
Delete ChannelDELETE/notifications/channels/{channelId}/orgs/{orgId}/notifications/channels/{channelId}Path changedBreaking
Enable / Disable ChannelPUT/notifications/channels/{channelId}/status/orgs/{orgId}/notifications/channels/{channelId}/statusPath changedBreaking
List Available Channel TypesGET/notifications/channels/registry-info/types/orgs/{orgId}/notifications/channels/registry-info/typesPath changedBreaking
Create TemplatePOST/notifications/templates/orgs/{orgId}/notifications/templatesPath changedBreaking
List TemplatesGET/notifications/templates/orgs/{orgId}/notifications/templatesPath changedBreaking
Get TemplateGET/notifications/templates/{templateId}/orgs/{orgId}/notifications/templates/{templateId}Path changedBreaking
Update TemplatePATCH/notifications/templates/{templateId}/orgs/{orgId}/notifications/templates/{templateId}Path changedBreaking
Delete TemplateDELETE/notifications/templates/{templateId}/orgs/{orgId}/notifications/templates/{templateId}Path changedBreaking
List MessagesGET/notifications/messages/orgs/{orgId}/notifications/messagesPath changedBreaking
Get Message StatusGET/notifications/messages/{messageId}/orgs/{orgId}/notifications/messages/{messageId}Path changedBreaking
Get Channel Type InfoGET/notifications/channels/registry-info/types/{channelType}/orgs/{orgId}/notifications/channels/registry-info/types/{channelType}Path changedBreakingDetailed config schema for one channel type

IAM

API NameMethodEndpointChangeImpactDetails
Update Organization User RolePATCH/orgs/{orgId}/users/{userId}RemovedBreakingNo replacement path

Data Bridges (new — Data Stream Bridge goes live)

Not available in v1.1.0. All endpoints are new.

API NameMethodEndpointChangeImpactDetails
Create BridgePOST/orgs/{orgId}/data-bridgesAddedAdditivebindings[] reference a dataStreamId directly
List BridgesGET/orgs/{orgId}/data-bridgesAddedAdditive
Get BridgeGET/orgs/{orgId}/data-bridges/{bridgeId}AddedAdditive
Update BridgePUT/orgs/{orgId}/data-bridges/{bridgeId}AddedAdditive
Patch BridgePATCH/orgs/{orgId}/data-bridges/{bridgeId}AddedAdditive
Delete BridgeDELETE/orgs/{orgId}/data-bridges/{bridgeId}AddedAdditive
Enable / Disable BridgePOST/orgs/{orgId}/data-bridges/{bridgeId}:{action}AddedAdditiveEnable performs a live broker connection check
Create MQTT Broker ConfigPOST/orgs/{orgId}/data-bridges/mqtt-broker-configsAddedAdditiveauthType currently supports only UsernamePassword
List MQTT Broker ConfigsGET/orgs/{orgId}/data-bridges/mqtt-broker-configsAddedAdditive
Get MQTT Broker ConfigGET/orgs/{orgId}/data-bridges/mqtt-broker-configs/{mqttConfigId}AddedAdditive
Update MQTT Broker ConfigPUT/orgs/{orgId}/data-bridges/mqtt-broker-configs/{mqttConfigId}AddedAdditiveCannot change authType/credentials
Delete MQTT Broker ConfigDELETE/orgs/{orgId}/data-bridges/mqtt-broker-configs/{mqttConfigId}AddedAdditiveBlocked while any bridge references it
Update Broker CredentialsPATCH/orgs/{orgId}/data-bridges/mqtt-broker-configs/{mqttConfigId}/credentialsAddedAdditiveDedicated credential-rotation endpoint
No API contract change

Container Management, Tunnels, core Device Management CRUD, Reports/Usage Jobs, and AI Model Management have no API contract changes in v1.1.1.


  • Narrative summary of this release: v1.1.1

Last updated on Aug-5, 2026 | Version 1.1.1