Skip to main content

Usage — Python SDK

Query gateway request usage, statistics, and history.

Overview​

The Usage resource exposes the gateway's request-level analytics: paginated serverless usage records, aggregated statistics, full request history with multi-dimension filters, and the gateway provider catalogue used for filtering.

Accessed via client.usage.

Available Operations​

MethodDescription
serverlessList()Query serverless usage list with filters
serverlessStats()Get serverless usage aggregated statistics
history()Query API call history with multi-dimension filters
gatewayProviders()Get the gateway provider list for filtering

serverlessList​

Query serverless usage list with filters.

Example Usage​

from wlt import WltClient
from datetime import datetime

client = WltClient(api_key="your-api-key", base_url="https://console.example.com")

result = client.usage.serverless_list(
start_time=datetime(2026, 4, 1),
end_time=datetime(2026, 4, 21),
page_num=1,
page_size=20,
model_ids=["qwen-turbo"],
)
for record in result.data.list:
print(record.modelName, record.totalTokens)

Parameters​

ParameterTypeRequiredDefaultDescription
start_timedatetimeYes--Query start time
end_timedatetimeYes--Query end time
page_numintNo1Page number (>= 1)
page_sizeintNo10Items per page (>= 1)
api_keystrNoNoneFilter by API Key
inputslist[str]NoNoneInput type filter list
outputslist[str]NoNoneOutput type filter list
model_idslist[str]NoNoneModel ID filter list

Response​

Returns BaseResponse[PageInfo[ServerlessUsageRecord]].

ServerlessUsageRecord fields:

FieldTypeDescription
modelNamestrModel name
apiKeyNamestrAPI Key name
requestsstrRequest count
totalTokensstrTotal token consumption
avgLatencystrAverage latency
successRatestrSuccess rate (%)
errorCountstrError count
totalFeestrTotal fee
throughputstrThroughput (QPS)
usageStatsstrUsage statistics info

Errors​

CodeExceptionWhen
1001ValidationErrorMissing required start_time / end_time or other invalid params
2000 / 2002AuthenticationErrorAPI Key invalid
2007PermissionErrorPermission denied
3001AuthenticationErrorToken expired and refresh failed

serverlessStats​

Get serverless usage aggregated statistics.

Example Usage​

from wlt import WltClient
from datetime import datetime

client = WltClient(api_key="your-api-key", base_url="https://console.example.com")

stats = client.usage.serverless_stats(
start_time=datetime(2026, 4, 1),
end_time=datetime(2026, 4, 21),
model_ids=["qwen-turbo", "qwen-plus"],
)
print(stats.data)

Parameters​

ParameterTypeRequiredDefaultDescription
start_timedatetimeYes--Query start time
end_timedatetimeYes--Query end time
page_numintNo1Page number
page_sizeintNo10Items per page
api_keystrNoNoneFilter by API Key
inputslist[str]NoNoneInput type filter list
outputslist[str]NoNoneOutput type filter list
model_idslist[str]NoNoneModel ID filter list

Response​

Returns BaseResponse[ServerlessStatsResult].

ServerlessStatsResult fields:

FieldTypeDescription
totalRequestsintTotal request count
requestTrendstrRequest trend
totalTokensintTotal token consumption
tokenTrendstrToken trend
totalUseModelintTotal number of models used
totalUseModelTrendstrModel usage trend
avgLatencystrAverage latency
avgLatencyTrendstrAverage latency trend

Errors​

CodeExceptionWhen
1001ValidationErrorInvalid request parameters
2000 / 2002AuthenticationErrorAPI Key invalid
2007PermissionErrorPermission denied
3001AuthenticationErrorToken expired and refresh failed

history​

Query API call history with multi-dimension filters.

Example Usage​

from wlt import WltClient
from datetime import datetime

client = WltClient(api_key="your-api-key", base_url="https://console.example.com")

result = client.usage.history(
start_time=datetime(2026, 4, 1),
end_time=datetime(2026, 4, 21),
provider="dashscope",
page_num=1,
page_size=20,
)
for record in result.data.list:
print(record.modelNameVersion, record.requestType, record.timestamp)

# Search by keyword within a time window (start/end remain required)
result = client.usage.history(
keyword="qwen",
start_time=datetime(2026, 4, 1),
end_time=datetime(2026, 4, 21),
page_num=1,
page_size=10,
)

Parameters​

ParameterTypeRequiredDefaultDescription
providerstrNoNoneProvider filter
featurestrNoNoneFeature module filter
request_typestrNoNoneRequest type filter
start_timedatetimeYes--Query start time (REQUIRED)
end_timedatetimeYes--Query end time (REQUIRED)
keywordstrNoNoneKeyword search
page_numintNoNonePage number
page_sizeintNoNoneItems per page
model_idslist[str]NoNoneModel ID filter list
inputslist[str]NoNoneInput type filter list
outputslist[str]NoNoneOutput type filter list

Response​

Returns BaseResponse[PageInfo[HistoryRecord]].

HistoryRecord fields:

FieldTypeDescription
requestIdstrRequest ID
modelNameVersionstrModel name and version
statusCodeintHTTP status code
latencyfloatGateway latency (ms)
totalTokensintTotal token count
timestampdatetimeRequest time
requestTypestrRequest type
modelTechnologystrModel technology
promptTokensintInput token count
completionTokensintOutput token count
providerTtftfloatTTFT (time to first token, ms)
providerLatencyfloatProvider latency (ms)
providerResponseTypestrResponse type
apiKeyNamestrAPI Key name
gatewayRequestBodySizeintRequest body size (bytes)
errorMsgstrError message

Errors​

CodeExceptionWhen
1001ValidationErrorMissing required start_time / end_time or other invalid params
2000 / 2002AuthenticationErrorAPI Key invalid
2007PermissionErrorPermission denied
3001AuthenticationErrorToken expired and refresh failed

gatewayProviders​

Get gateway provider list for usage filtering.

Example Usage​

from wlt import WltClient

client = WltClient(api_key="your-api-key", base_url="https://console.example.com")

providers = client.usage.gateway_providers()
for p in providers.data:
print(p.id, p.name)

Parameters​

None.

Response​

Returns BaseResponse[list[ProviderVO]].

ProviderVO fields:

FieldTypeDescription
idstrProvider identifier
namestrProvider display name

Errors​

CodeExceptionWhen
2000 / 2002AuthenticationErrorAPI Key invalid
2007PermissionErrorPermission denied
3001AuthenticationErrorToken expired and refresh failed