---
title: "API proxies one application used"
method: GET
path: "/apiops/projects/{projectName}/usage/applications/{applicationKey}/api-proxies"
tags: ["UsageRanking"]
---

# API proxies one application used

`GET /apiops/projects/{projectName}/usage/applications/{applicationKey}/api-proxies`

## Request

- Base URL: `http://167.86.118.166:32080`
- URL: `http://167.86.118.166:32080/apiops/projects/{projectName}/usage/applications/{applicationKey}/api-proxies`
- Auth: none declared
- TypeScript: <https://skmtc.dev/apinizer/apis/apinizer-management-apis/docs/apiops/projects/:projectName/usage/applications/:applicationKey/api-proxies/get.ts> (a function with typed inputs; its response is checked against the schema)

Requests, failures, average gateway time and - where the traffic carried a model - tokens and cost, per API proxy the application called in the period. An application has no rollup scope, so both halves are read from the traffic log and are bounded by its retention; traffic written before 2026.09.2 is attributable only through the application's own credentials.

## Path parameters

- `projectName` string, required
- `applicationKey` string, required

## Query parameters

- `from` string
- `to` string
- `model` string
- `environmentName` string
- `limit` integer

## Response `200`

successful operation!

- ApiOpsUsageProxyBreakdownDTO: Per-API-proxy usage of one consumer or application in a period.
  - `scope` Scope: The subject of the report.
    - `type` 'ORGANIZATION' | 'CONSUMER' | 'APPLICATION' | 'API_CLIENT' | 'API_PROXY'
    - `key` string: The subject's stable key: organization code, consumerKey, applicationKey, apiClientKey or api proxy name.
    - `name` string: Display name of the subject.
  - `period` Period: Requested and effective period, always UTC.
    - `from` string
    - `to` string
    - `effectiveFrom` string: from, rounded down to the UTC day start when a day-grained source was read.
    - `effectiveTo` string: to, rounded up to the end of its UTC day when a day-grained source was read.
    - `timeZone` string
  - `filters` Filters: Applied filters.
    - `model` string: Exact LLM model id the report was narrowed to, or null.
    - `environmentName` string: Environment name the traffic-log blocks were narrowed to, or null for every environment of the project.
    - `environmentApplied` boolean: False when environmentName could not be applied to a block because its source carries no environment dimension.
  - `trafficDataSource` string: Source of the request/latency figures. Always TRAFFIC_LOG.
  - `aiDataSource` string: Source of the token/cost figures: ROLLUP_DAILY for a consumer, TRAFFIC_LOG for an application.
  - `limit` integer: Rows the answer may carry, as applied.
  - `truncated` boolean: True when the subject called more proxies than the answer carries.
  - `items` Row[]: One row per API proxy, most requests first.
    - `key` string: The child's portable key: consumerKey or apiClientKey.
    - `name` string: Display name.
    - `family` 'AI_TOKEN' | 'AI_COST' | 'REQUEST_QUOTA': Which ceiling this row describes.
    - `unit` 'TOKENS' | 'USD' | 'REQUESTS': Unit of limit/consumed/remaining.
    - `window` string: The quota window.
    - `limit` number: The ceiling. Null when the counter has none.
    - `consumed` number: Spent so far in this window.
    - `remaining` number: limit - consumed, never negative. Null when there is no ceiling.
    - `percent` number, double: Percentage of the ceiling used. Null when there is no ceiling.
    - `windowStartsAt` string: When the window opened.
    - `resetsAt` string: When the window resets.
    - `assignmentKey` string: Portable key of the limit assignment behind this counter.
    - `planKey` string: Portable key of the limit plan behind this counter.
    - `source` 'TYPED' | 'LEGACY_BUDGET' | 'POLICY': Where the ceiling comes from.
    - `status` 'OK' | 'WARNING' | 'EXCEEDED' | 'NO_BUDGET': OK, WARNING at 80% or more, EXCEEDED at 100% or more, NO_BUDGET when there is no ceiling.
  - `partial` boolean: True when at least one source could not be read; the answer is still 200 with what was readable.
  - `unavailableEnvironments` string[]: Names of the environments whose traffic log could not be read.
  - `notes` string[]: Machine-readable notes explaining zero or missing numbers.

## Other responses

- `400`: Invalid period, or the platform (admin) project.
- `401`: not authorized for this operation!

## Changes

- **2026-09-12** `90cf59a80235`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/apinizer/apis/apinizer-management-apis/changes/apiops/projects/:projectName/usage/applications/:applicationKey/api-proxies/get.md)

---

[API](https://skmtc.dev/apinizer/apis/apinizer-management-apis.md) - [All operations](https://skmtc.dev/apinizer/apis/apinizer-management-apis/llms.txt) - [OpenAPI document](https://skmtc.dev/apinizer/apis/apinizer-management-apis/revisions/e083046b24cd?raw)
