Feature request: expose per-app storage usage to OAuth2 Web API Clients

Hi Homey / Athom Developer Support,

I’m building a read-only, multi-Homey inventory dashboard for my own account using the OAuth2 Web API (node-homey-api, AthomCloudAPI + per-Homey authenticate()). It lists, per Homey, all installed App Store apps with their properties, plus the devices and Flows that use each app. It works well for everything except one data point, and I’d like to ask whether it can be exposed to Web API Clients.

What’s missing: per-app STORAGE usage (disk footprint), i.e. the same breakdown the Homey app shows under Settings > (Homey) > Storage, where each app’s used space is listed.

What I already get: from HomeyAPI apps.getApps(), each App object includes usage: { cpu, mem } — so per-app CPU and memory (RAM) are available, but there is no storage field.

What I tried: HomeyAPI system.getStorageInfo() and system.getMemoryInfo() (GET /api/manager/system/storage and /memory). Both return “Missing Scopes” for my Web API Client. In the API Client scope list (Developer Tools > My API Clients) there is no system-related scope to enable (e.g. no homey.system.readonly), so these endpoints appear to be ungrantable to OAuth clients entirely.

What I’d like (either option would fully solve it):

  1. Preferred — add a storage field to the App object returned by apps.getApps(), mirroring the existing usage.mem, e.g.:
    app.usage = { cpu: , mem: , storage: }
    This is the cleanest fit, since I already read usage.mem there.

  2. Alternative — introduce a grantable read-only scope (e.g. homey.system.readonly) that allows Web API Clients to call ManagerSystem.getStorageInfo() and getMemoryInfo(), so the per-app storage/memory breakdown becomes accessible over OAuth like the other read-only data.

Why not on-device HomeyScript: I know a HomeyScript running on the Homey (owner session) can likely read this via Homey.system.getStorageInfo(). But my tool is external and multi-Homey (including a Homey behind CGNAT reached only via the cloud), so requiring a per-Homey script that POSTs results back is fragile for a fleet view. A field on the App object, or a read-only system scope, would let the standard cloud OAuth path deliver it directly.

Scopes I currently use (all read-only): homey.app.readonly, homey.device.readonly, homey.flow.readonly, homey.zone.readonly, homey.user.readonly (plus mood/insights readonly). I’m only asking for read access to storage figures — no control.

Is either option feasible, or is there an existing way to obtain per-app storage over the Web API that I’ve missed? Thanks very much for building such a capable API — this is the only gap I’ve hit.

Best regards,
Zoltán Váczi

This is not official Homey support. To contact Athom, click here.

Not going to happen, because Athom has blocked everything other than the scopes listed when creating the API client “for obvious security reasons”

You can reverse engineer the API from the web app though, I use that in some of my (personal) scripts.