Логируется только технический факт: запрос к модели прошёл успешно или с ошибкой, и метаданные (модель, число токенов, длительность). Промпты не публикуются. Отказ ничего не меняет: вы просто не участвуете в публичной ленте на странице статуса, качество ключа не зависит от выбора. Only a technical fact is logged: whether a model request succeeded or failed, plus metadata (model, token counts, duration). Prompts are never published. Declining changes nothing: you simply don't join the public feed on the status page; key quality does not depend on your choice.
каждый столбец - один деньeach bar represents one day
Эта же страница получает данные из публичного эндпоинта - вы можете вызывать его сами из своих скриптов и приложений. Авторизация - вашим ключом sk-... в заголовке Authorization: Bearer. Данные строго ваши: чужой баланс по ключу не увидеть.This page gets its data from a public endpoint - you can call it yourself from your scripts and apps. Authenticate with your sk-... key in the Authorization: Bearer header. The data is strictly yours: another key's balance is not visible.
GET https://ai.xdnew.space/api/public/usage
# curl
curl -s https://ai.xdnew.space/api/public/usage \
-H "Authorization: Bearer ***"
# Python
import requests
r = requests.get("https://ai.xdnew.space/api/public/usage",
headers={"Authorization": "***"}, timeout=10)
d = r.json()
k = d["key"]
if k["mode"] == "tokens":
left = k["tokens_total"] - k["tokens_used"]
print(f"{k['name']}: {left:,} токенов осталось")
else:
print(f"{k['name']}: безлимит")
| ПолеField | ЗначениеMeaning |
|---|---|
key.name | имя ключаkey name |
key.status | ok / expired / exhausted / inactive |
key.mode | tokens (пакет токеновtoken package) | unlimited |
key.tokens_total, key.tokens_used | всего и потрачено токенов; остаток = total - usedtotal and spent tokens; remaining = total - used |
key.expires_at | UNIX-время (сек) окончания срокаexpiry as UNIX seconds |
key.unlim_until | UNIX-время временного безлимита (0 = нет); пока длится - токены не списываютсяtemporary-unlimited window as UNIX seconds (0 = none); tokens are not consumed while it lasts |
key.rpm, key.parallel | лимиты: запросов в минуту / параллельныхlimits: requests per minute / parallel |
key.models | массив доступных моделейarray of available models |
usage | статистика за 30 дней: requests, токены (input/output/cache), charged, daily (по дням), by_model30-day stats: requests, tokens (input/output/cache), charged, daily, by_model |
recent | последние 100 запросов (модель, токены, charged, latency, status; без промптов)last 100 requests (model, tokens, charged, latency, status; no prompts) |
Ошибки: 401 - ключ не передан или неверен. Эндпоинт лёгкий, но не опрашивайте его чаще раза в минуту.Errors: 401 - key missing or invalid. The endpoint is lightweight, but don't poll it more than once a minute.
Промпты и ответы никогда не отображаются. «Стоимость» - в единицах баланса: тяжёлые модели списывают больше за тот же объём токенов, веса - на странице тарифов. Колонка Cache - это часть Input, пришедшая из кеша: такие токены стоят 10% входной цены, поэтому запрос с кешом заметно дешевле.Prompts and responses are never displayed. "Cost" is in balance units: heavy models charge more for the same token volume, weights are on the pricing page. The Cache column is the part of Input served from cache: those tokens cost 10% of the input price, so a cached request is noticeably cheaper.
| ВремяTime | МодельModel | Input | Cache | Output | СтоимостьCost | ЗадержкаLatency | СтатусStatus |
|---|