curl --request GET \
--url 'https://api.novita.ai/openapi/v1/billing/apikey/bill/list?cycleType=Day&category=llm&startTime=1767225600&endTime=1769817599' \
--header 'Authorization: Bearer <API_KEY>'
curl --request GET \
--url 'https://api.novita.ai/openapi/v1/billing/apikey/bill/list?cycleType=Hour&category=llm&startTime=1767225600&endTime=1767830399' \
--header 'Authorization: Bearer <API_KEY>'
{
"bills": [
{
"userId": "<string>",
"startTime": "1767225600",
"endTime": "1767311999",
"billingMethod": 1,
"productName": "<string>",
"category": "llm",
"ownerID": "<api_key_id>",
"billNum0": "1000",
"billNum1": "500",
"basePrice0": "0",
"basePrice1": "0",
"discountPrice0": "0",
"discountPrice1": "0",
"amount": "10000",
"voucherAmount": "0",
"payAmount": "10000",
"payAmountDisplay": 1,
"pricePrecision": 1,
"productId": "<string>",
"apikeyName": "<string>",
"apikeyMask": "sk-****"
}
]
}
Basic
Query API Key Billing
GET
/
openapi
/
v1
/
billing
/
apikey
/
bill
/
list
curl --request GET \
--url 'https://api.novita.ai/openapi/v1/billing/apikey/bill/list?cycleType=Day&category=llm&startTime=1767225600&endTime=1769817599' \
--header 'Authorization: Bearer <API_KEY>'
curl --request GET \
--url 'https://api.novita.ai/openapi/v1/billing/apikey/bill/list?cycleType=Hour&category=llm&startTime=1767225600&endTime=1767830399' \
--header 'Authorization: Bearer <API_KEY>'
{
"bills": [
{
"userId": "<string>",
"startTime": "1767225600",
"endTime": "1767311999",
"billingMethod": 1,
"productName": "<string>",
"category": "llm",
"ownerID": "<api_key_id>",
"billNum0": "1000",
"billNum1": "500",
"basePrice0": "0",
"basePrice1": "0",
"discountPrice0": "0",
"discountPrice1": "0",
"amount": "10000",
"voucherAmount": "0",
"payAmount": "10000",
"payAmountDisplay": 1,
"pricePrecision": 1,
"productId": "<string>",
"apikeyName": "<string>",
"apikeyMask": "sk-****"
}
]
}
Request Headers
string
vereist
Enum:
application/jsonstring
vereist
Bearer authentication format, for example: Bearer {{API Key}}.
Query Parameters
string
vereist
Billing granularity. The maximum query range depends on the granularity you pick:
Hour(up to 7 days per request)Day(up to 31 days per request)Week(up to 31 days per request)Month(up to 31 days per request)
string
Product type or business category. Common values:
llm, gen_api, web_search.string
Product name. Supports fuzzy matching.
integer
vereist
Query start time, Unix timestamp in seconds (int64). Must be greater than or equal to
2026-01-01 00:00:00.integer
vereist
Query end time, Unix timestamp in seconds (int64). Must be greater than
startTime.This endpoint only supports data after
2026-01-01 00:00:00. It does not support pagination. The range between startTime and endTime must stay within the limit for the cycleType you request: 7 days for Hour, 31 days for Day, Week, and Month. To cover a longer period, split it into several requests.The query range limit is now enforced by the API. It used to be applied only in the Novita console, so requests sent directly to this endpoint were never rejected for being too long. If your integration queries more than 31 days at once (or more than 7 days with The message always names the limit and the granularity that was rejected, so you can split the range and retry.
cycleType=Hour), it now fails with HTTP 400 and a message in the form:time range must not exceed 31 days for cycleType "Month"
The API Key billing page in the Novita console offers only hourly and daily granularity. This endpoint still accepts all four values, so
Week and Month remain available to API callers even though they are no longer offered in the console.Response Parameters
object[]
vereist
API Key bill list.
Verbergen properties
Verbergen properties
string
vereist
User account ID.
string
vereist
Bill start time, Unix timestamp in seconds. It marks the first second of the billing period. With
cycleType=Hour, it is the top of that hour, for example 10:00:00.string
vereist
Bill end time, Unix timestamp in seconds. It marks the last second of the billing period. With
cycleType=Hour, it is minute 59 and second 59 of the same hour, for example 10:59:59.int32
vereist
Billing method:
1 (pay-as-you-go), 2 (subscription).string
vereist
Product name.
string
vereist
Product type or subcategory.
string
vereist
API Key ID.
string
vereist
API Key name.
string
vereist
Masked API Key.
string
vereist
Product ID.
string
vereist
Usage field 0. For
llm, this usually means input price per 1M tokens; GPU: price per card per hour; storage: price per GB per day.string
vereist
Usage field 1. For
llm, this usually means output tokens.string
vereist
Usage field 2. For
llm, this usually means read cache price per 1M tokens.string
vereist
Usage field 3. For
llm, this usually means write 5-minute cache price per 1M tokens.string
vereist
Usage field 4. For
llm, this usually means reasoning token price per 1M tokens.string
vereist
Usage field 5. For
llm, this usually means write 1-hour cache price per 1M tokens.string
Usage field 6.
string
Usage field 7.
string
Usage field 8.
string
Usage field 9.
string
Usage field 10.
string
Usage field 11.
string
Usage field 12.
string
Usage field 13.
string
Usage field 14.
string
Usage field 15.
string
vereist
Original price field 0. For
llm: input price per 1M tokens; GPU: price per card per hour; storage: price per GB per day.string
vereist
Original price field 1. For
llm, output price per 1M tokens.string
vereist
Original price field 2. For
llm, read cache price per 1M tokens.string
vereist
Original price field 3. For
llm, write 5-minute cache price per 1M tokens.string
vereist
Original price field 4. For
llm, reasoning token price per 1M tokens.string
vereist
Original price field 5. For
llm, write 1-hour cache price per 1M tokens.string
vereist
Discounted price field 0. For
llm, discounted input token price.string
vereist
Discounted price field 1. For
llm, discounted output token price.string
vereist
Discounted price field 2. For
llm, discounted read cache price per 1M tokens.string
vereist
Discounted price field 3. For
llm, discounted write 5-minute cache price per 1M tokens.string
vereist
Discounted price field 4. For
llm, discounted reasoning token price per 1M tokens.string
vereist
Discounted price field 5. For
llm, discounted write 1-hour cache price per 1M tokens.string
vereist
Total amount, unit is 1/10000 USD.
string
vereist
Amount deducted by vouchers, unit is 1/10000 USD.
string
vereist
Cash payment amount, unit is 1/10000 USD.
float
vereist
Display value of cash payment amount, in USD.
int32
vereist
Price precision. Unit price (USD) = unit price / 10000 /
pricePrecision.string
LLM series.
string
Request count.
object
Multimodal model billing details.
object
Tiered billing configuration.
curl --request GET \
--url 'https://api.novita.ai/openapi/v1/billing/apikey/bill/list?cycleType=Day&category=llm&startTime=1767225600&endTime=1769817599' \
--header 'Authorization: Bearer <API_KEY>'
curl --request GET \
--url 'https://api.novita.ai/openapi/v1/billing/apikey/bill/list?cycleType=Hour&category=llm&startTime=1767225600&endTime=1767830399' \
--header 'Authorization: Bearer <API_KEY>'
{
"bills": [
{
"userId": "<string>",
"startTime": "1767225600",
"endTime": "1767311999",
"billingMethod": 1,
"productName": "<string>",
"category": "llm",
"ownerID": "<api_key_id>",
"billNum0": "1000",
"billNum1": "500",
"basePrice0": "0",
"basePrice1": "0",
"discountPrice0": "0",
"discountPrice1": "0",
"amount": "10000",
"voucherAmount": "0",
"payAmount": "10000",
"payAmountDisplay": 1,
"pricePrecision": 1,
"productId": "<string>",
"apikeyName": "<string>",
"apikeyMask": "sk-****"
}
]
}
Laatst gewijzigd op 10 augustus 2026