How to Check Storage Account Usage via the Partner API
Query storage consumption for all or individual accounts using the ICMC Partner API
Overview
The Impossible Cloud Management Console (ICMC) supports two types of partner accounts: Distributor and Channel Partner. This article is intended for channel partners who manage end customers (storage accounts) and want to query usage data programmatically.
The Impossible Cloud Management Console (ICMC) Partner API provides endpoints to query storage usage data programmatically. You can retrieve daily usage for all storage accounts at once or for a single account, filtered by a date range you specify.
This is useful for building custom billing dashboards, generating usage reports, or monitoring consumption from scripts and automation tools.
To check usage through the web interface instead, see How to Check Storage Account Usage in the Management Console.
Prerequisites
You need a Partner API key to authenticate requests. API keys are available on the API Keys page in the Management Console at partner.impossiblecloud.com/api_keys. Team members with Admin or Staff roles can access this page.
The API base URL is:
https://api.partner.eu-central-2.impossiblecloud.com/v1
All requests require the API key in the Authorization header as a Bearer token.
Get usage for all storage accounts
To retrieve usage data across all accounts in your partner, call:
GET /v1/storage-accounts/usage?from={start_date}&to={end_date}
Both from and to are required, in YYYY-MM-DD format.
Example: Get usage for all accounts today
curl -s "https://api.partner.eu-central-2.impossiblecloud.com/v1/storage-accounts/usage?from=2026-03-20&to=2026-03-20" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Accept: application/json"
Response:
[
{
"name": "my-storage-account",
"client_id": "817117562511",
"allocated_capacity": 0,
"daily_usage": [
{
"date": "2026-03-20",
"usage": 1610612736,
"allocated_capacity": 0
}
]
},
{
"name": "another-account",
"client_id": "365120202796",
"allocated_capacity": 0,
"daily_usage": [
{
"date": "2026-03-20",
"usage": 524288000,
"allocated_capacity": 0
}
]
}
]
The response is a JSON array where each element represents one storage account. The daily_usage array contains one entry per day in the requested range, with usage expressed in bytes.
Get usage for a single storage account
To retrieve usage for one specific account, include the account ID in the path:
GET /v1/storage-account/{account_id}/usage?from={start_date}&to={end_date}
Example: Get usage for account 817117562511 over the last 7 days
curl -s "https://api.partner.eu-central-2.impossiblecloud.com/v1/storage-account/817117562511/usage?from=2026-03-14&to=2026-03-20" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Accept: application/json"
Response:
{
"name": "my-storage-account",
"client_id": "817117562511",
"allocated_capacity": 0,
"daily_usage": [
{
"date": "2026-03-14",
"usage": 1500000000,
"allocated_capacity": 0
},
{
"date": "2026-03-15",
"usage": 1550000000,
"allocated_capacity": 0
},
{
"date": "2026-03-20",
"usage": 1610612736,
"allocated_capacity": 0
}
]
}
For a single account, the response is a JSON object (not an array). When querying multiple days, the daily_usage array contains one entry per day, allowing you to track how consumption changed over time.
Understand the response fields
| Field | Type | Description |
|---|---|---|
name |
string | The display name of the storage account. |
client_id |
string | The unique account ID (numeric string). |
allocated_capacity |
integer | The allocated storage in bytes, or 0 for pay-per-use accounts. |
daily_usage |
array | One entry per day in the requested date range. |
daily_usage[].date |
string | The date in YYYY-MM-DD format. |
daily_usage[].usage |
integer | Storage consumption in bytes for that day. |
daily_usage[].allocated_capacity |
integer | The allocated capacity on that date, in bytes. |
Note: The
usagevalue is in bytes. Divide by1073741824(1024^3) to convert to GB, or by1099511627776(1024^4) to convert to TB.
Check billing-relevant usage
To check the current storage consumption for an account, query a single day (set from and to to the same date). The usage value returned for that day represents the storage consumption recorded for that day. Each day's usage value reflects the maximum storage used during that day.
curl -s "https://api.partner.eu-central-2.impossiblecloud.com/v1/storage-account/817117562511/usage?from=2026-03-20&to=2026-03-20" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Accept: application/json"
When you query a single day, the returned usage value is equivalent to both the "Daily usage" and "Max usage" views in the Management Console. Over multi-day ranges, the API returns per-day values in the daily_usage array, so you can compute the average, maximum, or any other aggregate yourself.
Note: For billing purposes, use the daily
usagevalue. The Management Console's "Max usage" and "Daily usage" modes both show this same value when the date range covers a single day. The daily usage report uses the maximum usage recorded during each day to provide transparency into peak consumption.
To check usage through the web interface instead, see How to Check Storage Account Usage in the Management Console.
Usage data sync timing
Storage usage data is updated in a regular cycle, so a slight delay in the latest usage value is expected. If you uploaded data to a storage account recently, the current usage values will be updated when the next sync cycle completes.
For the most recent data available, query a date range that includes both yesterday and today.
Find account IDs
To find the client_id (account ID) for the single-account endpoint, call the storage account list endpoint:
curl -s "https://api.partner.eu-central-2.impossiblecloud.com/v1/storage-account/list" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Accept: application/json"
Each account in the response includes a clientAccountId field. Use this numeric string value as the {account_id} parameter in the single-account usage endpoint.
API reference
Full API documentation is available at the Partner API Swagger UI. The table below summarizes the endpoints covered in this article.
| Endpoint | Method | Description |
|---|---|---|
/v1/storage-accounts/usage?from=&to= |
GET | Usage for all accounts. |
/v1/storage-account/{account_id}/usage?from=&to= |
GET | Usage for a single account. |
/v1/storage-account/list |
GET | List all storage accounts (to find account IDs). |