付费端点 · 付费

自然语言问答(带内联引用 · 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());

参数

qstring是
自然语言问题
scopestring
数据源范围(可选;不传=按问句自动选通道)
max_resultsinteger
取证据条数上限
recencystring
时效窗口,如 7d / 24h

返回字段

下表由线上真实调用采集(非文档推断):每行是响应里的字段名、类型和一条真实样例值,用来对齐解析代码。

所在位置: data统一信封: ok / endpoint / tier / elapsed_ms / source / degraded取样日: 2026-10-20
字段类型真实样例值
idstrref_1
source_endpointstr/quote
params—
field_pathstrdata[0].last
valuestr227.90
value_hashstrb5d3bf596061dad3
as_ofstr2026-10-21
返回

统一返回信封: { ok, endpoint, tier, elapsed_ms, source, data }

数据在 data 字段;上游为空时 ok:false 且不扣次数。

限流与额度

免费端点无需 Key(匿名 5 次/分,解一次 PoW 可到 15 次/分;每次最多 250 根 K 线、每天最多 10 万条)。付费端点按档位限流:体验 30 · 标准 120 · 专业 300 · 不限量 600 次/分;买断档按总量计(不用完不过期)。

看错误码对照表 →

常见问题

通用问题(所有端点通用)

这些端点需要 API Key 吗?

免费端点不需要:health、challenge、quote、kline、hot、market-overview、changedist 匿名即可调用。付费端点需要:在请求头带 Authorization: Bearer <你的 Key>。⚠️ 匿名额度按调用者类型分级:浏览器(真人)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 个工具,覆盖行情 / 财务 / 选股 / 板块 / 宏观。

要把它接进 AI Agent?

配一次 MCP,之后问 AI「查一下……」它自己调。

← 返回完整端点清单