# Read usage for an owned key

`GET /v1/keys/{keyID}/usage`



Base URL: `https://api.simplellm.eu`. Authenticate using `Authorization: Bearer $SIMPLELLM_API_KEY`.

## Path parameters

| Parameter | Type | Required | Meaning |
| --- | --- | --- | --- |
| `keyID` | `string` | Yes | UUID of an API key belonging to your account. |

## Example request

~~~bash
curl --fail-with-body https://api.simplellm.eu/v1/keys/YOUR_KEY_ID/usage \
  -H "Authorization: Bearer $SIMPLELLM_API_KEY"
~~~

## Responses

### HTTP 200

Successful response

Content-Type: `application/json`

| Field | Type | Required | Meaning |
| --- | --- | --- | --- |
| `total_requests` | `integer` | No |  |
| `total_tokens_in` | `integer` | No |  |
| `total_tokens_out` | `integer` | No |  |
| `total_cost_sc` | `number` | No |  |

Illustrative response shape only; IDs, timestamps and counters below are synthetic, not live limits or customer data.

~~~json
{
  "total_requests": 0,
  "total_tokens_in": 0,
  "total_tokens_out": 0,
  "total_cost_sc": 0
}
~~~

## Error handling

Errors can occur in authentication, billing, routing or the upstream service; not every status applies to every route.

| Status | Meaning |
| --- | --- |
| 400 | Invalid request |
| 401 | Invalid credentials |
| 402 | Insufficient credits |
| 403 | Access denied |
| 404 | Model or resource not found |
| 429 | Rate or capacity limit |
| 500 | Internal error |
| 502 | Routing or upstream error |
| 503 | Temporarily unavailable |
| 504 | Deployment timeout |

See [Troubleshooting](/docs/errors.html) for response examples and [Rate limits & retries](/docs/limits.html) for retry rules.

## Machine-readable schema

[Download OpenAPI JSON](/openapi.json). Operation ID: `getKeyUsage`.
