Appearance
如何配置 CC-Switch 用量查询
CC-Switch 支持自定义用量查询,配置后可在界面上实时查看 CodexZH 的额度消耗,包括今日用量、本周用量、消费金额等。
效果图

步骤 1:打开用量查询设置
在 CC-Switch 中找到用量查询入口,点击进入设置页面。

步骤 2:填写请求地址和访问令牌
- 请求地址:留空,图中内容已过时
- 访问令牌:留空,图中内容已过时,API 令牌直接填写到代码中,注意看请求地址上的参数

步骤 3:填写提取器代码
将下方代码完整粘贴到提取器输入框中:

javascript
({
request: {
url: "https://codexzh.com/api/v1/usage/stats?key=把你自己的 apikey,sk-开头的粘贴到这里,注意删除中括号",
method: "GET",
headers: {
"Content-Type": "application/json",
},
},
extractor: function (response) {
const data = response?.success ? response.data : null;
if (!data) {
return {
isValid: false,
invalidMessage: response?.message || response?.error || "查询失败",
};
}
const TOKEN_PER_USD = 500000;
const toNumberOrNull = (value) => {
if (value === null || value === undefined || value === "") return null;
if (typeof value === "number") return Number.isFinite(value) ? value : null;
if (typeof value === "string") {
const normalized = value.replace(/[$,\s]/g, "");
if (!normalized) return null;
const parsed = Number(normalized);
return Number.isFinite(parsed) ? parsed : null;
}
return null;
};
const toNumber = (value, fallback = 0) => {
const parsed = toNumberOrNull(value);
return parsed === null ? fallback : parsed;
};
const quotaPointsToUsd = (points) => toNumber(points) / TOKEN_PER_USD;
const formatUsd = (value) => `$${toNumber(value).toFixed(2)}`;
const formatUsdFromApi = (formattedValue, rawValue) => {
if (typeof formattedValue === "string" && formattedValue.trim()) {
return formattedValue.trim().startsWith("$")
? formattedValue.trim()
: `$${formattedValue.trim()}`;
}
return formatUsd(rawValue);
};
const formatCount = (value) => Math.round(toNumber(value)).toLocaleString("zh-CN");
const dailyBudgetUsd = toNumberOrNull(data.dailyBudget) ?? quotaPointsToUsd(data.dailyQuota);
const weeklyBudgetUsd = toNumberOrNull(data.weeklyBudget) ?? quotaPointsToUsd(data.weeklyQuota);
const todayUsedUsd = toNumber(data.todayUsed);
const weekUsedUsd = toNumber(data.weekUsed);
const totalUsedUsd = toNumberOrNull(data.analyticsTotalUsed) ?? toNumber(data.totalUsed);
const todayRemainingUsd = Math.max(dailyBudgetUsd - todayUsedUsd, 0);
const realtimeRemainingUsd = toNumberOrNull(data.remainQuota);
const weekRemainingUsd = realtimeRemainingUsd ?? Math.max(weeklyBudgetUsd - weekUsedUsd, 0);
return {
isValid: true,
planName: "Usage Stats",
unit: "USD",
// 主指标改为本周口径:周限额度 / 本周消费 / 实时剩余
total: weeklyBudgetUsd,
used: weekUsedUsd,
remaining: weekRemainingUsd,
extra: [
`今日调用:${formatCount(data.todayCalls)}`,
`今日消费:${formatUsdFromApi(data.todayUsedFormatted, todayUsedUsd)}`,
`今日 Token:${formatCount(data.todayTokens)}`,
`日限额度:${formatUsd(dailyBudgetUsd)}`,
`今日剩余:${formatUsd(todayRemainingUsd)}`,
`本周调用:${formatCount(data.weekCalls ?? data.totalCalls)}`,
`本周消费:${formatUsdFromApi(data.weekUsedFormatted, weekUsedUsd)}`,
`周限额度:${formatUsd(weeklyBudgetUsd)}`,
`实时剩余:${formatUsd(weekRemainingUsd)}`,
`总请求次数:${formatCount(data.totalRequests ?? data.totalCalls)}`,
`总使用额度:${formatUsdFromApi(data.analyticsTotalUsedFormatted ?? data.totalUsedFormatted, totalUsedUsd)}`,
`总使用 Token:${formatCount(data.totalTokens)}`,
`RPM:${formatCount(data.rpm)}`,
`TPM:${formatCount(data.tpm)}`,
`订阅开始:${data.subscriptionStart ?? "-"}`,
`订阅到期:${data.subscriptionEnd ?? "-"}`,
].join("\n"),
};
},
});步骤 4:保存配置
点击右下角"保存"按钮,配置立即生效。
配置成功后,CC-Switch 会自动查询并展示:
- 今日/本周调用次数
- 今日/本周/总消费金额
- 今日剩余额度、本周剩余额度
- 当前 RPM / TPM 限速情况
- 订阅有效期