API reference · Platform / Usage
Usage
What you have used, and what it cost.
Usage is measured per resource and rated into cost. GET /usage/by-resource answers "what did each thing cost"; the other endpoints return the measured quantities.
Get an instance's usage
Measured usage for this instance in the current billing period: running hours, storage, memory and network.
Headers
AuthorizationstringrequiredBearerand your API key:Bearer PAN_….
Path parameters
instance_idstringrequiredThe resource's id.
Response 200
Usage.window_startstring or nullStart of the measured window; null when nothing was measured.
window_endstring or nullEnd of the measured window; null when nothing was measured.
totalsobjectrequiredShow 5 child fieldsHide child fields
running_hoursnumberstorage_gb_hoursnumberallocated_memory_mb_hoursnumbernetwork_bytes_sentnumbernetwork_bytes_receivednumber
entriesarray of objectrequiredShow 5 child fieldsHide child fields
resource_idstring or nullusage_typeintegerusagestringperiod_startstring or nullperiod_endstring or null
Errors
- 401
UNAUTHENTICATED: the request has no API key, or the key is mistyped, revoked or expired, or its creator has left the organization. SendAuthorization: Bearer PAN_…with a valid key; create one in the console under Organization › API keys. - 403
INSUFFICIENT_SCOPE: the API key lacks the scope this endpoint needs (readfor GET,writefor changes; an AI app's key also needsdeletefor a destructive call). Use a key with that scope, or reconnect the AI app with "Manage and delete" access.FORBIDDEN: the member who created the key may not do this in the organization. Use a key created by an owner or admin.AI_APPS_DISABLED: the organization has turned AI app access off, and this request was made with an AI app's key or sent by Pantech's MCP server (Pantech-Client: mcp/…). An owner can turn it on in the console under Organization › AI apps. - 404
RESOURCE_NOT_FOUND: no instance with this id in your organization, or the id is not a instance id (vm_…). Check the id. - 429
RATE_LIMITED: this API key, verified user or organization used its request budget for the current window, or this address exceeded an IP/failed-auth limit. WaitRetry-Afterseconds, then retry. For authenticated quota denials,RateLimit-Scopeidentifies the denying quota andRateLimit-Resetreports its remaining window in seconds. - 503
SERVICE_UNAVAILABLE: request quota storage is unavailable. Wait a few seconds, then retry.
Every code is explained in Errors.
curl "https://api.pantechdynamics.com/public/v1/instances/vm_06gk3x9tq7m2v8r4y1c5d0zp8w/usage" \
-H "Authorization: Bearer $PANTECH_API_KEY"{
"window_start": "2026-10-03T09:30:00Z",
"window_end": "2026-10-03T09:30:00Z",
"totals": {
"running_hours": 730,
"storage_gb_hours": 1,
"allocated_memory_mb_hours": 1,
"network_bytes_sent": 1,
"network_bytes_received": 1
},
"entries": [
{
"resource_id": "vm_06gk3x9tq7m2v8r4y1c5d0zp8w",
"usage_type": 1,
"usage": "24 Hrs",
"period_start": "2026-10-03T09:30:00Z",
"period_end": "2026-10-03T09:30:00Z"
}
]
}Get a volume's usage
Measured storage usage for this volume in the current billing period.
Headers
AuthorizationstringrequiredBearerand your API key:Bearer PAN_….
Path parameters
volume_idstringrequiredThe resource's id.
Response 200
Usage.window_startstring or nullStart of the measured window; null when nothing was measured.
window_endstring or nullEnd of the measured window; null when nothing was measured.
totalsobjectrequiredShow 5 child fieldsHide child fields
running_hoursnumberstorage_gb_hoursnumberallocated_memory_mb_hoursnumbernetwork_bytes_sentnumbernetwork_bytes_receivednumber
entriesarray of objectrequiredShow 5 child fieldsHide child fields
resource_idstring or nullusage_typeintegerusagestringperiod_startstring or nullperiod_endstring or null
Errors
- 401
UNAUTHENTICATED: the request has no API key, or the key is mistyped, revoked or expired, or its creator has left the organization. SendAuthorization: Bearer PAN_…with a valid key; create one in the console under Organization › API keys. - 403
INSUFFICIENT_SCOPE: the API key lacks the scope this endpoint needs (readfor GET,writefor changes; an AI app's key also needsdeletefor a destructive call). Use a key with that scope, or reconnect the AI app with "Manage and delete" access.FORBIDDEN: the member who created the key may not do this in the organization. Use a key created by an owner or admin.AI_APPS_DISABLED: the organization has turned AI app access off, and this request was made with an AI app's key or sent by Pantech's MCP server (Pantech-Client: mcp/…). An owner can turn it on in the console under Organization › AI apps. - 404
RESOURCE_NOT_FOUND: no volume with this id in your organization, or the id is not a volume id (vol_…). Check the id. - 429
RATE_LIMITED: this API key, verified user or organization used its request budget for the current window, or this address exceeded an IP/failed-auth limit. WaitRetry-Afterseconds, then retry. For authenticated quota denials,RateLimit-Scopeidentifies the denying quota andRateLimit-Resetreports its remaining window in seconds. - 503
SERVICE_UNAVAILABLE: request quota storage is unavailable. Wait a few seconds, then retry.
Every code is explained in Errors.
curl "https://api.pantechdynamics.com/public/v1/volumes/vol_06gk3x9tq7m2v8r4y1c5d0zp8w/usage" \
-H "Authorization: Bearer $PANTECH_API_KEY"{
"window_start": "2026-10-03T09:30:00Z",
"window_end": "2026-10-03T09:30:00Z",
"totals": {
"running_hours": 730,
"storage_gb_hours": 1,
"allocated_memory_mb_hours": 1,
"network_bytes_sent": 1,
"network_bytes_received": 1
},
"entries": [
{
"resource_id": "vm_06gk3x9tq7m2v8r4y1c5d0zp8w",
"usage_type": 1,
"usage": "24 Hrs",
"period_start": "2026-10-03T09:30:00Z",
"period_end": "2026-10-03T09:30:00Z"
}
]
}Get a snapshot's usage
Measured storage usage for this snapshot in the current billing period.
Headers
AuthorizationstringrequiredBearerand your API key:Bearer PAN_….
Path parameters
snapshot_idstringrequiredThe resource's id.
Response 200
Usage.window_startstring or nullStart of the measured window; null when nothing was measured.
window_endstring or nullEnd of the measured window; null when nothing was measured.
totalsobjectrequiredShow 5 child fieldsHide child fields
running_hoursnumberstorage_gb_hoursnumberallocated_memory_mb_hoursnumbernetwork_bytes_sentnumbernetwork_bytes_receivednumber
entriesarray of objectrequiredShow 5 child fieldsHide child fields
resource_idstring or nullusage_typeintegerusagestringperiod_startstring or nullperiod_endstring or null
Errors
- 401
UNAUTHENTICATED: the request has no API key, or the key is mistyped, revoked or expired, or its creator has left the organization. SendAuthorization: Bearer PAN_…with a valid key; create one in the console under Organization › API keys. - 403
INSUFFICIENT_SCOPE: the API key lacks the scope this endpoint needs (readfor GET,writefor changes; an AI app's key also needsdeletefor a destructive call). Use a key with that scope, or reconnect the AI app with "Manage and delete" access.FORBIDDEN: the member who created the key may not do this in the organization. Use a key created by an owner or admin.AI_APPS_DISABLED: the organization has turned AI app access off, and this request was made with an AI app's key or sent by Pantech's MCP server (Pantech-Client: mcp/…). An owner can turn it on in the console under Organization › AI apps. - 404
RESOURCE_NOT_FOUND: no snapshot with this id in your organization, or the id is not a snapshot id (snap_…). Check the id. - 429
RATE_LIMITED: this API key, verified user or organization used its request budget for the current window, or this address exceeded an IP/failed-auth limit. WaitRetry-Afterseconds, then retry. For authenticated quota denials,RateLimit-Scopeidentifies the denying quota andRateLimit-Resetreports its remaining window in seconds. - 503
SERVICE_UNAVAILABLE: request quota storage is unavailable. Wait a few seconds, then retry.
Every code is explained in Errors.
curl "https://api.pantechdynamics.com/public/v1/snapshots/snap_06gk3x9tq7m2v8r4y1c5d0zp8w/usage" \
-H "Authorization: Bearer $PANTECH_API_KEY"{
"window_start": "2026-10-03T09:30:00Z",
"window_end": "2026-10-03T09:30:00Z",
"totals": {
"running_hours": 730,
"storage_gb_hours": 1,
"allocated_memory_mb_hours": 1,
"network_bytes_sent": 1,
"network_bytes_received": 1
},
"entries": [
{
"resource_id": "vm_06gk3x9tq7m2v8r4y1c5d0zp8w",
"usage_type": 1,
"usage": "24 Hrs",
"period_start": "2026-10-03T09:30:00Z",
"period_end": "2026-10-03T09:30:00Z"
}
]
}Get usage
Measured usage for the whole organization in the current billing period.
Headers
AuthorizationstringrequiredBearerand your API key:Bearer PAN_….
Response 200
Usage.window_startstring or nullStart of the measured window; null when nothing was measured.
window_endstring or nullEnd of the measured window; null when nothing was measured.
totalsobjectrequiredShow 5 child fieldsHide child fields
running_hoursnumberstorage_gb_hoursnumberallocated_memory_mb_hoursnumbernetwork_bytes_sentnumbernetwork_bytes_receivednumber
entriesarray of objectrequiredShow 5 child fieldsHide child fields
resource_idstring or nullusage_typeintegerusagestringperiod_startstring or nullperiod_endstring or null
Errors
- 401
UNAUTHENTICATED: the request has no API key, or the key is mistyped, revoked or expired, or its creator has left the organization. SendAuthorization: Bearer PAN_…with a valid key; create one in the console under Organization › API keys. - 403
INSUFFICIENT_SCOPE: the API key lacks the scope this endpoint needs (readfor GET,writefor changes; an AI app's key also needsdeletefor a destructive call). Use a key with that scope, or reconnect the AI app with "Manage and delete" access.FORBIDDEN: the member who created the key may not do this in the organization. Use a key created by an owner or admin.AI_APPS_DISABLED: the organization has turned AI app access off, and this request was made with an AI app's key or sent by Pantech's MCP server (Pantech-Client: mcp/…). An owner can turn it on in the console under Organization › AI apps. - 429
RATE_LIMITED: this API key, verified user or organization used its request budget for the current window, or this address exceeded an IP/failed-auth limit. WaitRetry-Afterseconds, then retry. For authenticated quota denials,RateLimit-Scopeidentifies the denying quota andRateLimit-Resetreports its remaining window in seconds. - 503
SERVICE_UNAVAILABLE: request quota storage is unavailable. Wait a few seconds, then retry.
Every code is explained in Errors.
curl "https://api.pantechdynamics.com/public/v1/usage" \
-H "Authorization: Bearer $PANTECH_API_KEY"{
"window_start": "2026-10-03T09:30:00Z",
"window_end": "2026-10-03T09:30:00Z",
"totals": {
"running_hours": 730,
"storage_gb_hours": 1,
"allocated_memory_mb_hours": 1,
"network_bytes_sent": 1,
"network_bytes_received": 1
},
"entries": [
{
"resource_id": "vm_06gk3x9tq7m2v8r4y1c5d0zp8w",
"usage_type": 1,
"usage": "24 Hrs",
"period_start": "2026-10-03T09:30:00Z",
"period_end": "2026-10-03T09:30:00Z"
}
]
}Get cost by resource
What each resource cost over period: the last 30d or 7d, this month or last_month.
Headers
AuthorizationstringrequiredBearerand your API key:Bearer PAN_….
Query parameters
periodstringOne of
30d,7d,month,last_month. Defaults to30d.
Response 200
Cost per resource.currencystringrequiredperiod_startstringrequiredperiod_endstringrequireddataarray of objectrequiredShow 9 child fieldsHide child fields
resource_idstringresource_namestringresource_kindstringtypestringdays_activeintegerwindow_daysintegerrate_unitstringrate_unit_price_microsintegercost_minorinteger
Errors
- 401
UNAUTHENTICATED: the request has no API key, or the key is mistyped, revoked or expired, or its creator has left the organization. SendAuthorization: Bearer PAN_…with a valid key; create one in the console under Organization › API keys. - 403
INSUFFICIENT_SCOPE: the API key lacks the scope this endpoint needs (readfor GET,writefor changes; an AI app's key also needsdeletefor a destructive call). Use a key with that scope, or reconnect the AI app with "Manage and delete" access.FORBIDDEN: the member who created the key may not do this in the organization. Use a key created by an owner or admin.AI_APPS_DISABLED: the organization has turned AI app access off, and this request was made with an AI app's key or sent by Pantech's MCP server (Pantech-Client: mcp/…). An owner can turn it on in the console under Organization › AI apps. - 422
VALIDATION_FAILED: a field is invalid. Each entry oferrorsnames thefieldand itscode:periodINVALID_PERIOD: use30d,7d,monthorlast_month. - 429
RATE_LIMITED: this API key, verified user or organization used its request budget for the current window, or this address exceeded an IP/failed-auth limit. WaitRetry-Afterseconds, then retry. For authenticated quota denials,RateLimit-Scopeidentifies the denying quota andRateLimit-Resetreports its remaining window in seconds. - 503
SERVICE_UNAVAILABLE: request quota storage is unavailable. Wait a few seconds, then retry.BILLING_UNAVAILABLE: billing is not answering right now. Wait a few seconds, then retry.
Every code is explained in Errors.
curl "https://api.pantechdynamics.com/public/v1/usage/by-resource" \
-H "Authorization: Bearer $PANTECH_API_KEY"{
"currency": "NGN",
"period_start": "2026-10-03T09:30:00Z",
"period_end": "2026-10-03T09:30:00Z",
"data": [
{
"resource_id": "vm_06gk3x9tq7m2v8r4y1c5d0zp8w",
"resource_name": "web-1",
"resource_kind": "instance",
"type": "compute",
"days_active": 3,
"window_days": 30,
"rate_unit": "hour",
"rate_unit_price_micros": 1232876000,
"cost_minor": 295890
}
]
}