Kiểm tra chi tiêu (Spend Checking)
GET /key/info
Lấy thông tin chi tiết về API key và mức độ sử dụng hiện tại.
Budget, RPM, TPM và giới hạn từng model được đặt cho đội (team), dùng chung cho mọi key của đội. Vì vậy trong /key/info, max_budget, rpm_limit, tpm_limit là null, metadata không có giới hạn từng model, và spend chỉ là phần chi tiêu của riêng key đó.
Để xem tổng chi tiêu và budget của đội, gọi /team/info với team_id lấy từ /key/info (chỉ xem được đội của chính mình). Khung kết quả bên phải đã tự gọi thêm endpoint này.
curl 'https://api.thucchien.ai/team/info?team_id=<team_id>' -H 'Authorization: Bearer <your_api_key>'
Trong phản hồi, xem team_info.spend, team_info.max_budget, team_info.rpm_limit, team_info.tpm_limit, và giới hạn từng model ở team_info.metadata.model_tpm_limit / team_info.metadata.model_rpm_limit. Danh sách model key gọi được: GET /v1/models. Giải thích các giới hạn: Giới hạn tốc độ.
Headers
AuthorizationstringRequiredBearer token với API key của bạn. Format: Bearer <your_api_key>
acceptstringLoại nội dung phản hồi mong muốn. Mặc định: application/json
Cấu trúc Phản hồi (Response Body)
API sẽ trả về một đối tượng JSON với thông tin chi tiết về API key và mức sử dụng.
Đối tượng Root
keystringMã định danh duy nhất của API key.
infoobjectĐối tượng chứa thông tin chi tiết về API key.
Đối tượng info
key_namestringTên hiển thị của API key (có thể được che một phần).
key_aliasstringTên bí danh của API key để dễ nhận diện.
spendnumberTổng số tiền đã chi tiêu bằng API key này (tính bằng USD).
max_budgetnumberNgân sách tối đa riêng của API key này. null nếu key không có giới hạn riêng (budget đặt ở đội, xem /team/info).
max_parallel_requestsnumberSố lượng yêu cầu đồng thời tối đa được phép cho API key này. Giới hạn này kiểm soát số lượng request có thể xử lý song song cùng một lúc. Trường hợp vượt quá giới hạn này, các yêu cầu bổ sung sẽ bị từ chối trả lỗi 429 (Too Many Requests).
metadataobjectMetadata tùy chỉnh được gán cho API key.
metadata.model_rpm_limitobjectGiới hạn request per minute (RPM) cho từng model. Với key của đội, giới hạn này nằm ở team_info.metadata.model_rpm_limit của /team/info, không nằm trên key.
metadata.model_tpm_limitobjectGiới hạn token per minute (TPM, input + output) cho từng model. Với key của đội, giới hạn này nằm ở team_info.metadata.model_tpm_limit của /team/info, không nằm trên key.
tpm_limitnumberGiới hạn tokens per minute chung cho API Key. null nếu không giới hạn.
rpm_limitnumberGiới hạn requests per minute chung cho API Key. null nếu không giới hạn.
expiresstringThời gian hết hạn của API key. null nếu không hết hạn.
modelsarrayDanh sách model gán riêng cho key. Rỗng với key của đội (key dùng nhóm model của đội). Gọi GET /v1/models để xem model key gọi được.
user_idstringID của người dùng sở hữu API key.
team_idstringID của nhóm sở hữu API key.
blockedbooleanTrạng thái khóa của API key. true nếu bị khóa, null hoặc false nếu hoạt động.
budget_durationstringKhoảng thời gian tính ngân sách (ví dụ: 1d, 1w, 1m). null nếu không có chu kỳ.
budget_reset_atstringThời điểm reset ngân sách tiếp theo (ISO 8601). null nếu không có chu kỳ.
model_spendobjectChi tiêu chi tiết theo từng mô hình.
model_max_budgetobjectNgân sách tối đa theo từng mô hình.
created_atstringThời gian tạo API key (định dạng ISO 8601).
updated_atstringThời gian cập nhật cuối cùng của API key (định dạng ISO 8601).
permissionsobjectCác quyền hạn được cấp cho API key.
curl -X 'GET' \'https://api.thucchien.ai/key/info' \-H 'accept: application/json' \-H 'Authorization: Bearer '{
"key": "b1ba143c164e66c912677762a7a0b0a2d5bd686b59999823e5fd2ccb3c71731f",
"info": {
"key_name": "sk-...gHQK",
"key_alias": "official-01@key",
"soft_budget_cooldown": false,
"spend": 0.5,
"expires": null,
"models": [
"all-team-models"
],
"aliases": {},
"config": {},
"user_id": "f52b3ad4-986e-4c62-9bbd-79e80e221d0b",
"team_id": "5b4c20e9-1ff9-4ac0-bec6-0b00a25a31ab",
"permissions": {},
"max_parallel_requests": 200,
"metadata": {
"model_rpm_limit": {
"gemini-3.8-flash": 2000,
"gemini-3.1-pro-preview": 200,
"gemini-3.1-flash-image": 100,
"gemini-3-pro-image": 50,
"gemini-3.1-flash-tts-preview": 100,
"veo-3.1-generate-001": 5,
"veo-3.1-fast-generate-001": 5,
"veo-3.1-lite-generate-001": 5
},
"model_tpm_limit": {
"gemini-3.8-flash": 8000000,
"gemini-3.1-pro-preview": 2000000,
"gemini-3.1-flash-image": 5000000,
"gemini-3.1-flash-tts-preview": 1000000
}
},
"blocked": null,
"tpm_limit": 800000,
"rpm_limit": 200,
"max_budget": 50,
"budget_duration": null,
"budget_reset_at": null,
"allowed_cache_controls": [],
"allowed_routes": [],
"model_spend": {},
"model_max_budget": {},
"budget_id": null,
"organization_id": null,
"object_permission_id": null,
"created_at": "2025-10-21T07:12:36.122000+00:00",
"created_by": "default_user_id",
"updated_at": "2025-10-21T07:24:39.726000+00:00",
"updated_by": "default_user_id",
"rotation_count": 0,
"auto_rotate": false,
"rotation_interval": null,
"last_rotation_at": null,
"key_rotation_at": null,
"litellm_budget_table": null,
"litellm_organization_table": null,
"object_permission": null
}
}