> Source: https://ashareapi.com/docs/endpoints/agent-ask/  ·  Markdown version for LLMs / AI agents

付费端点 · 付费

# 自然语言问答（带内联引用 · BYOK：用你自己的模型 key） API
 ⭐ 开箱即用问答：我们取数 + 生成一段带引用的答案，你不用自己编排。

和 /v1/agent-search 的区别：那个只给「结构化候选 + 证据」，我们不出答案；这个在它之上再生成答案。

🔑 BYOK（自带模型 key）：在请求头里带
· X-LLM-Provider：deepseek / openai / moonshot
· X-LLM-Key：你的模型 key
· X-LLM-Model（可选）：指定模型名

⚠️ 我们怎么处理你的 key：只在这一次请求的内存里用，不落库、不写日志；出错信息一律脱敏。
⚠️ 不带头也能用：会降级为「只取证、不生成答案」（answer: null + degraded: "no_llm_key"），证据与裁决照常返回 —— 「不配 key 也能用，配了 key 就更强」。

响应：answer（带 [ref_N] 内联引用）+ citations[]（每个 ref 的来源/取值/value_hash）+ verification（逐条断言的裁决日志）+ citation_check（⭐ 机械校验答案有没有编造引用）+ usage（⭐ 你的 token 用量，便于核对）。

⚠️ 模型费用与输出责任在调用方；我们只做数据编排与引用挂接。
 付费 `POST /v1/agent-ask`
 接口签名
```
POST /v1/agent-ask?q=%E5%A4%AA%E6%9E%81%E5%AE%9E%E4%B8%9A&scope=
```
 一行可跑

```
curl "https://api.ashareapi.com/v1/agent-ask?q=%E5%A4%AA%E6%9E%81%E5%AE%9E%E4%B8%9A&scope=&key=YOUR_KEY"
```
 参数：`q * · scope · max_results · recency` 带 * 为必填

## 快速开始
 把下面的代码里的 Key 换成你的（免费端点无需 Key，直接调）：
 curl

```
# 注：q 的值已做 URL 编码（含 [ ] 空格 等）
# 推荐：Authorization 头（密钥不进日志）
curl -H "Authorization: Bearer YOUR_KEY" \
 "https://api.ashareapi.com/v1/agent-ask?q=%E5%A4%AA%E6%9E%81%E5%AE%9E%E4%B8%9A&scope="

# 快速测试：直接浏览器打开（?key= 会留在日志/历史里，别用于生产）
curl "https://api.ashareapi.com/v1/agent-ask?q=%E5%A4%AA%E6%9E%81%E5%AE%9E%E4%B8%9A&scope=&key=YOUR_KEY"
```
 Python

```
import requests

r = requests.get(
 "https://api.ashareapi.com/v1/agent-ask",
 headers={"Authorization": "Bearer YOUR_KEY"},
 params={"q": "太极实业"},
 timeout=30,
)
print(r.json())
```
 JavaScript

```
const r = await fetch("https://api.ashareapi.com/v1/agent-ask?q=%E5%A4%AA%E6%9E%81%E5%AE%9E%E4%B8%9A&scope=", {
 headers: { Authorization: "Bearer YOUR_KEY" },
});
console.log(await r.json());
```

## 参数
 |
| | 参数 | 类型 | 必填 | 说明

| | q | string | 是 | 自然语言问题

| | scope | string | 否 | 数据源范围（可选；不传=按问句自动选通道）

| | max_results | integer | 否 | 取证据条数上限

| | recency | string | 否 | 时效窗口，如 7d / 24h

 `q` string 是
 自然语言问题

 `scope` string
 数据源范围（可选；不传=按问句自动选通道）

 `max_results` integer
 取证据条数上限

 `recency` string
 时效窗口，如 7d / 24h

## 返回字段
 下表由**线上真实调用**采集（非文档推断）：每行是响应里的字段名、类型和一条真实样例值，用来对齐解析代码。
 所在位置: `data` 统一信封: `ok / endpoint / tier / elapsed_ms / source / degraded` 取样日: `2026-10-20`
 |
| | 字段 | 类型 | 真实样例值

| | id | str | ref_1

| | source_endpoint | str | /quote

| | params | | —

| | field_path | str | data[0].last

| | value | str | 227.90

| | value_hash | str | b5d3bf596061dad3

| | as_of | str | 2026-10-21

 返回
 统一返回信封： `{ ok, endpoint, tier, elapsed_ms, source, data }`
 数据在 `data` 字段；上游为空时 `ok:false` 且**不扣次数**。

 限流与额度
 免费端点无需 Key（匿名 5 次/分，解一次 PoW 可到 15 次/分；每次最多 250 根 K 线、每天最多 10 万条）。付费端点按档位限流：体验 30 · 标准 120 · 专业 300 · 不限量 600 次/分；买断档按总量计（不用完不过期）。
[看错误码对照表 →](/docs/errors)

## 常见问题

### 通用问题（所有端点通用）
 这些端点需要 API Key 吗？
 **免费端点不需要**：health、challenge、quote、kline、hot、market-overview、changedist 匿名即可调用。**付费端点需要**：在请求头带 `Authorization: Bearer `。⚠️ 匿名额度**按调用者类型分级**：浏览器（真人）**5 次/分**；脚本 / SDK / AI Agent（curl、requests、axios、openai 等 UA）**2 次/分** —— 自动化流量更易被滥用。解一次 PoW 挑战（`GET /v1/challenge`，再带 `X-PoW` 头）可提到 **15 次/分**，与类型无关。⚠️ 另外，匿名调用**单次最多取 250 根 K 线、每天最多 10 万条** —— 要一次拿满 1212 根或不限日量，请用 API Key。

 返回为空或上游报错时，会扣我的调用次数吗？
 **不会**。上游失败或空结果时返回 `ok:false`，并**自动退回**本次计费（total_calls / usage_log / ep_log 三处同时回滚）。只有真正取到数据的请求才计入用量。

 数据多久更新一次？
 行情类（quote / kline / orderbook / changedist）为**实时或当日**；财务、股东、分红、事件等为**上游披露后 T+1 内**。响应里的 `source` 字段标明本次实际命中的数据通道。

 一次请求能批量拿多只股票吗？
 **不能**。`code` 是单值参数，一次一只；批量请并发调用（注意各自档位的每分钟限流）。

 怎么在 Claude / Cursor / ChatGPT 里直接调用？
 配一次 MCP 即可，之后直接问 AI「查一下……」它会自己调。MCP 暴露 65 个工具，覆盖行情 / 财务 / 选股 / 板块 / 宏观。

## 相关端点
 [自然语言受控检索（带证据链 · 供开发者编排）](/docs/endpoints/agent-search)[异步研究任务（提交 · 带引用报告 · BYOK）](/docs/endpoints/agent-research)[全历史 K线（10 年日线 · 原始价 + 复权因子）](/docs/endpoints/kline-full)[全市场单日 K 线（一次拿全 A 股某日行情）](/docs/endpoints/market-kline)[量化回测（策略回测 · 单标的实时 / 组合预计算）](/docs/endpoints/backtest)[量化策略清单（单标的 20 + 组合 9 · 含实测表现）](/docs/endpoints/strategies)[查 IP 白名单（Unlimited）](/docs/endpoints/ip-whitelist)[批量回测（多标的 × 多策略对比）](/docs/endpoints/backtest-batch)

 要把它接进 AI Agent？
 配一次 MCP，之后问 AI「查一下……」它自己调。

 [MCP 接入说明](/mcp)[查看定价](/pricing)

 [← 返回完整端点清单](/endpoints)
