> ## Documentation Index
> Fetch the complete documentation index at: https://docs.querying.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# 积分与限制：价格、冻结、并发与速率限制

> 每个任务的费用、积分如何冻结和扣除，以及会返回 429 或 503 的各项限制。

每个任务都有以积分计的价格。提交时冻结价格，任务完成时扣除，失败时释放。你的套餐决定可以同时排队或运行多少任务。

要获取实时的引擎和价格列表，请调用公开的 capabilities 端点。它不需要 API 密钥：

```bash theme={"theme":"css-variables"}
curl https://api.querying.ai/v1/capabilities
```

加上 `?taskType=GEMINI` 可读取单个引擎。也接受 `GOOGLE_AIO` 等别名。参见[获取 capabilities](/zh/api-reference/capabilities.md)。

## 每个任务的积分

| `taskType` | 积分 |
| - | - |
| `CHATGPT` | 每个回答 1。`payload.followUps` 中的每一项都是另一个回答。 |
| `PERPLEXITY`、`BING_COPILOT`、`META_AI` | 1 |
| `GEMINI`、`GOOGLE`（`GOOGLE_AIO`）、`AIMODE`（`GOOGLE_AIMODE`）、`NAVER_AI_BRIEF`、`NAVER_AI_TAB`、`QWEN`、`DOUBAO` | 1.25 |
| `GOOGLE_SERP`、`NAVER_SERP`、`BING_SEARCH`、`REDDIT` | 1 |
| `COMMERCE_SERP` | 3 |
| `COMMERCE_PRODUCT` | 3 |
| `WEB_SCRAPE`、`WEB_MAP` | 1 |
| `WEB_CRAWL` | 每返回一个页面 1。提交时冻结 `maxPages` 积分；无法读取的页面不扣费。 |
| `KEYWORD_VOLUME` | 每个任务 3（最多 100 个关键词） |
| `PROMPT_RESEARCH` | 11 |
| `GEO_SCORE` | 每个页面 10，每读取一张图片中的文字再加 5（`images.read`，最多 12 张）。提交时冻结 70；无法读取的图片不扣费，复用 90 天内读取结果的图片（`images.reused`）每张 2。 |
| `AI_RENDERING`（[AI Rendering](/zh/research/ai-rendering.md)） | 每次渲染 5，每读取一张图片中的文字加 5，复用 90 天内读取结果的图片每张加 2，最多 12 张。提交时冻结 65；重新渲染价格相同。 |
| [Product Lookup](/zh/research/product-lookup.md#价格) 查询的提问 | 每个商品（商品本身和每个竞品）10，每个购物提示词 5，与询问哪些引擎无关。每次提问都是一个引擎任务，按分摊到的份额扣费，不按上面的引擎价格。 |
| Place Lookup（`POST /v1/place-lookup`） | 询问该国全部默认引擎的一次查询为 10：`KR` 每个问题 1，其他国家每个问题 1.25。只问部分引擎的查询按发送的问题计费。参见 [Place Lookup](/zh/research/place-lookup.md)。 |
| `CITATION_ANALYSIS` | 按用量计费，不超过冻结额。见下文。 |

| 附加项 | 积分 |
| - | - |
| `payload.include.analysis` | 在引擎价格之上加 2，仅当 `analysis.status` 为 `ok` 时扣除 |
| `payload.include.html` | 在 `CHATGPT`、`PERPLEXITY` 和 `META_AI` 上为 0.25，仅当 `html.status` 为 `ok` 时扣除。在 `GEMINI`、`GOOGLE` 和 `AIMODE` 上免费。 |
| `payload.include.citationAnalysis` | 单独的 `CITATION_ANALYSIS` 任务，按用量计费 |
| 监测器竞争对手读取 | 每个监测器每 30 天 80 积分，分摊到各次运行。参见 [GEO 监测](/zh/monitors.md#成本与计划)。 |

价格不随套餐变化；变化的是每个积分对应的美元价值。积分可以有两位小数，例如 `1.25`。

### Citation Analysis计量

`CITATION_ANALYSIS` 任务在提交时冻结 `20 + 12 × citations + 80 × ⌈answer characters ÷ 1,000⌉` 积分。完成时扣除 `1 + ⌈input tokens ÷ 500⌉ + ⌈output tokens ÷ 100⌉ + 2 × source fetches`，不超过冻结额，剩余冻结会被释放。参见 [Citation Analysis](/zh/research/citation-analysis.md)。

## 冻结、扣除与释放

**1. 提交：冻结**

任务价格（`WEB_CRAWL`、`GEO_SCORE` 和 `CITATION_ANALYSIS` 为最大值）从可用余额转入冻结。余额不足时，提交返回 `402 INSUFFICIENT_CREDITS`。提交响应中的 `credits` 显示为 `0`。

**2. 完成：扣除**

费用从冻结中扣除。终止状态的轮询和 webhook 在 `creditsCharged` 中显示该费用。

**3. 失败：释放**

冻结返还到余额。失败的任务费用为 `0`。

新账户注册时获得 500 积分。

## 查看余额

`GET /v1/credits` 返回账户的积分。查询不消耗积分，因此程序可以在每次提交批次前检查。参见[积分余额](/zh/api-reference/credits.md)。

```bash theme={"theme":"css-variables"}
curl https://api.querying.ai/v1/credits \
  -H "Authorization: Bearer $QUERYING_API_KEY"
```

```json theme={"theme":"css-variables"}
{
  "success": true,
  "remaining": 1879939,
  "perCycle": 1000000,
  "cycleResetsAt": "2026-11-14T07:37:57.000Z",
  "reserved": 61,
  "plan": "max",
  "topUpBalance": { "credits": 1000000, "nextExpiresAt": "2027-01-19T10:01:57.000Z", "nextCredits": 1000000 }
}
```

* `remaining` 是现在可用的积分。已提交任务的价格冻结在 `reserved` 中，不要再次扣除。
* `perCycle` 是套餐每个周期发放的积分，`cycleResetsAt` 是当前周期结束的时间。没有生效的套餐时两者都为 `null`。
* `topUpBalance` 显示 `remaining` 中的充值积分，以及其中最早失效的日期和数量。没有充值积分时为 `null`。充值积分自购买起有效三个月，续订时保留，并在套餐积分用完后使用。

子账户使用你的积分，因此子账户密钥会收到 `403 SUB_ACCOUNT_FORBIDDEN`。参见[子账户](/zh/sub-accounts.md)。

## 查看用量

`GET /v1/usage` 返回你的账户在一段 UTC 日期范围内被扣除的积分，可按日、引擎和 API 密钥拆分。查询不消耗积分。参见[积分用量](/zh/api-reference/usage.md)。

```bash theme={"theme":"css-variables"}
curl "https://api.querying.ai/v1/usage?from=2026-10-01&to=2026-10-20&groupBy=engine" \
  -H "Authorization: Bearer $QUERYING_API_KEY"
```

```json theme={"theme":"css-variables"}
{
  "success": true,
  "data": {
    "from": "2026-10-01",
    "to": "2026-10-20",
    "groupBy": ["engine"],
    "credits": 66.25,
    "tasks": 65,
    "rows": [
      { "taskType": "CHATGPT", "credits": 49, "tasks": 49 },
      { "taskType": "GEMINI", "credits": 6.25, "tasks": 5 },
      { "taskType": "PERPLEXITY", "credits": 11, "tasks": 11 }
    ]
  }
}
```

* `from` 和 `to` 是 UTC 日期，两天都包含在内。默认值是当前 UTC 月的第一天和今天，范围最长 366 天。
* `groupBy` 接受 `day`、`engine` 和 `key`，用逗号分隔，默认是 `day,engine`。每一行包含你所选拆分方式的字段，没有扣费的组合没有对应的行。顶层的 `credits` 和 `tasks` 是所有行的总和。
* `groupBy=key` 显示是谁花掉了积分。用 API 密钥发送的任务带有 `"source": "api"` 和 `apiKey`，其中有密钥的 `id`、`keyPrefix`、`name` 和 `subAccountId`。没有 API 密钥的消耗，`source` 为 `monitor`（监测器的运行）、`playground` 或 `dashboard`，`apiKey` 为 `null`。
* 用量汇总任务被扣除的积分，失败的任务扣费为 `0`。监测器的竞争对手读取不对应任务而被扣费，因此会减少余额，但不出现在用量中。
* 你的[子账户](/zh/sub-accounts.md)的任务也计入你的用量，`apiKey.subAccountId` 指明密钥所属的子账户。要读取单个子账户，请调用 [`GET /v1/sub-accounts/{id}/usage`](/zh/api-reference/sub-accounts/get-usage)。子账户密钥会收到 `403 SUB_ACCOUNT_FORBIDDEN`。

## 查看队列

`GET /v1/async/status` 返回你排队中和运行中的任务，以及它们计入的并发限制。查询不消耗积分。参见[队列状态](/zh/api-reference/queue-status.md)。

```bash theme={"theme":"css-variables"}
curl https://api.querying.ai/v1/async/status \
  -H "Authorization: Bearer $QUERYING_API_KEY"
```

```json theme={"theme":"css-variables"}
{
  "success": true,
  "queuedTasks": 19,
  "processingTasks": 6,
  "priorityBreakdown": [{ "priority": 8, "count": 3 }, { "priority": 1, "count": 16 }],
  "concurrency": { "used": 25, "max": 200 }
}
```

* `concurrency.used` 是 `queuedTasks` 加 `processingTasks`，即你的套餐[并发](#套餐并发)限制合并计数的两个数。`max` 就是该限制，所以 `max - used` 是还能提交新任务的余量。
* `priorityBreakdown` 按提交时的 `priority` 列出排队中的任务，数值高的在前。
* 计数包含与你共用限制的子账户的任务。子账户密钥会收到 `403 SUB_ACCOUNT_FORBIDDEN`，它的任务数请通过 [`GET /stats`](/zh/api-reference/stats) 读取。

## 套餐

| 套餐 | 月费 | 每月积分 | 并发任务数 |
| - | - | - | - |
| Free | \$0 | 注册时 500 | 2 |
| Basic | \$20 | 8,000 | 50 |
| Pro | \$200 | 170,000 | 200 |
| Scale | \$500 | 480,000 | 500 |
| Max | \$1,000 | 1,000,000 | 1,000 |

请在[定价页面](https://querying.ai/zh/pricing)比较套餐。

### 套餐并发

并发限制把账户中 `QUEUED` 和 `PROCESSING` 的任务合并计数。它不限制提交速度。会超出限制的提交返回 `429 PLAN_CONCURRENCY_LIMIT`，附带 `details.limit`、`details.active` 和 `Retry-After`。合同可以为你的账户设定不同的限制，父账户也可以为[子账户](/zh/sub-accounts.md)设定限制。

## 按密钥和子账户的限制

| 限制 | 设置位置 | 达到时 |
| - | - | - |
| API 密钥的每日积分上限 | 在[控制台](https://querying.ai/dashboard/keys)中管理密钥，0.01 到 20,000,000 积分 | 返回 `429 KEY_DAILY_CREDIT_LIMIT`，直到下一个 UTC 零点。`Retry-After` 给出距离零点的秒数。 |
| 子账户的 `monthlyCreditLimit` | 父账户。参见[子账户](/zh/sub-accounts.md)。 | `429 SUB_ACCOUNT_CREDIT_LIMIT` |

密钥的每日上限计入任务所需的冻结额，因此当 `used + price` 会超过上限时，任务会被拒绝。

## 请求速率与背压

| 限制 | 响应 |
| - | - |
| `/v1/*` 上每个 `Authorization` 凭据每分钟 1,200 个请求 | 边缘层返回 `429` |
| 每个来源 IP 每分钟 6,000 个请求 | 边缘层返回 `429` |
| 某个引擎的队列已满 | `503 QUEUE_BACKPRESSURE`，附带 `Retry-After` |
| 准入已饱和 | `503 SERVER_OVERLOADED`，附带 `Retry-After` |
| 全局任务队列已满 | `503 SERVER_OVERLOADED`，附带 `Retry-After` |
| 某个引擎暂时不接受任务 | `503 ENGINE_UNAVAILABLE`，附带 `Retry-After` |

边缘层的 `429` 发生在 API 之前，不带 JSON 错误信封，也不带 `Retry-After`。收到时请按指数退避。任务提交端点返回的 `429` 或 `503` 都带有以秒为单位的 `Retry-After` 请求头。错误码和重试建议见[错误](/zh/concepts/errors.md)。

## 控制大规模提交的节奏

**1. 用批次代替循环**

一个含 500 项的 `POST /v1/async/task/batch` 只算边缘限制中的一个请求。任务数超过并发限制时，请使用 `POST /v1/batches`：服务器会在有空位时释放项目。参见[批次与网格](/zh/concepts/bulk-submission.md)。

**2. 遵守 Retry-After**

等待 `Retry-After` 中的秒数后再重新提交被拒的任务。复用同一个 `idempotencyKey`，确保重试不会创建重复任务。

**3. 按顺序处理有依赖的工作**

执行顺序不受保证。依赖某个任务结果的工作，请等该任务完成后再提交。

**4. 关注计数**

[`GET /v1/async/status`](/zh/api-reference/queue-status) 返回排队中和运行中的任务以及你的套餐限制，便于你将任务数控制在限制以内。[`GET /stats`](/zh/api-reference/stats) 另外给出过去 24 小时内结束的任务数。


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.