|
|
2026.9
✨ Features
- Operations API — start or cancel durable operations, list and filter them, page through their ordered steps, and inspect partial outcomes reported as degraded.
- Expanded Graph and OpenAPI coverage — new public contracts cover device state, raw device commands, gateway registration, pairing, routing, configuration convergence, and real-time device updates.
- Device and gateway management — pair or unpair devices with named gateways, synchronize pairings, reconcile gateway inventories, and track configuration ownership and revision status.
- Configuration delivery — desired device configurations are delivered to reachable gateways and tracked through desired, applied, and reported revisions; an offline gateway can converge after reconnecting.
- Site management — create and delete entities in bulk, link devices explicitly, find devices not yet linked to an entity, remove attributes, and preview site schema updates with dry-run validation.
- Safer concurrent editing — site schemas, templates, and tenant properties now expose revision checks so conflicting updates can be detected instead of silently overwriting changes.
- Consistent pagination — device-register entries and operation steps support cursor paging, while list queries provide deterministic ordering and result counts.
- Hub administration — hub user assignments and restart or reboot operations are available through the public Graph API, with richer hub metadata for management views.
- More resilient live updates — per-session push subscriptions recover after reconnects and support both site and device-register views.
🛠️ Fixes
- Authentication and validation responses now use stable error codes and consistent field names; expired sessions are distinguished from invalid tokens.
- Device pairing, routing, and configuration delivery are more reliable across multiple gateways and roaming devices.
- Roaming devices retain their identity and report full state across gateways, including when they last reported.
- Existing identifiers that use legacy casing or underscores remain readable after the stricter naming rules.
- Site and device-register reads tolerate legacy identifiers and malformed stored paths without making an entire view unavailable.
- Paged queries now use stable ordering and reject invalid offsets consistently.
⚠️ Deprecations
- Inline device routing is deprecated in favor of dedicated routing operations.
2026.7
✨ Features
- Currency exchange rates — new service providing EUR-based currency conversion rates.
- Spot prices — new public
ListSpotPricesQuery to fetch prices by area over a start/stop time range.
- Device configuration revisions — configuration changes are now versioned, with revision tracking and monitoring.
- Site egress health & latency — new schemas exposing egress health status and latency statistics.
- Leaf entity types in site schemas — site schemas now support leaf entity types.
- Key vault key limits — per-target cap on the number of keys, returning
E_RESOURCE_LIMIT_REACHED when exceeded; list filters aligned with the standard conventions.
- Device register columns —
GetDeviceRegisterEntryColumnsQuery is now served directly by the grain.
- More consistent validation & identity handling across graph commands and queries.
🛠️ Fixes
- Event egress consumer: added fault handling and a configurable message-size limit.
- Improved egress consumer maintenance and heartbeat handling.
- More robust Kafka producer error handling and a cleaner shutdown process.
⚠️ Deprecations
- OneAPI 1.0 is deprecated and scheduled for sunset on 31 December 2026. It remains available until then; migrate integrations to the Graph query and command endpoints in OneAPI 3.0.
- The five legacy OneAPI 3.0 hub and device-register command/query operations are deprecated with the same sunset date. Use
/graph/query and /graph/command instead.
- The legacy column-params device register query is deprecated — use
GetDeviceRegisterEntryColumnsQuery.
2026.4
✨ Features
- KeyVault for storing secrets with rolling updates, supporting Tenant and Device Register.
- Add DeleteTenantCommand for tenant deletion functionality.
- Add GetCurrentTenant and SetCurrentTenant commands with corresponding query and result schemas.
- Egress: Optional lock for HttpClient per domain to avoid concurrent calls to the same domain.
🛠️ Fixes
- Reduce site entity device mapping update frequency to avoid excessive updates, plausible duplicates, and improve performance.
- Unwrap ROAMING device events to avoid unnecessary nesting and improve event handling.
- Reduce query context on GetCurrentTenantCommand to avoid unnecessary data fetching and improve performance.
🚀 Performance
- Remove OpenAPI generated code for deprecated methods.
- Updated internal methods to accept CancellationToken for improved cancellation support.
- Optimize database query indexes for large dataset retrieval.
2026.1
|
|
|
|
|
|