July 15, 2026 - Explicit withChildren parameter for Inventory API calls

Context


Change Type: Announcement
Product area: Application enablement & solutions
Component: Web SDK
Deployed at: eu.latest.cumulocity.com, apj.cumulocity.com, jp.cumulocity.com, cumulocity.com, us.cumulocity.com

Technical details

Build artifact: ui-c8y (1024.0.0)
Internal ID: MTM-64714

Description


The Cumulocity platform will soon change the server-side default of the
withChildren query parameter on /inventory/managedObjects GET endpoints from true to false
for performance optimization; relying on the current true default is deprecated. Once the new
default takes effect, responses no longer include the childAssets, childDevices, and
childAdditions reference arrays unless withChildren=true is set explicitly.

This is a server-side change. The Web SDK’s InventoryService is unchanged — it passes
withChildren straight through and never set a default. The UI codebase has been adapted:

  • AngularJS (legacy modules): A new HTTP interceptor c8yInventoryWithChildrenInterceptor
    appends withChildren=true to /inventory/managedObjects GET requests when the parameter is
    not already set, preserving existing behavior without call-site changes.
  • Angular (@c8y/ngx-components): Inventory call sites now pass withChildren explicitly.
    Shipped components behave correctly under the new default; no action is required.

Migration

If your custom code reads childAssets, childDevices, or childAdditions from an
InventoryService.detail(), .list(), or .listQuery() response, add withChildren: true to
those calls. Otherwise those references will be missing once the new default is active for the
tenant.