说明:本文基于公开文档/文章整理,未对每个接口做真实请求实测,接口可用性以公开文档为准,集成前请自行验证。文中的易源(ShowAPI)接口因需自备 key,本文仅按官方文档整理接入写法,未返回真实业务数据。
写在前面
开发者在做黄金价格展示、珠宝电商比价、贵金属行情工具时,通常需要获取金店挂牌价、国内交易所金价或国际金价。市面上能查到的接口来源不少,但免费接口存在限流、字段变动、服务下线等不确定性,部分接口可能已停止服务或返回占位数据,集成前请自行发请求验证。本文只把在网上流传的、写法相对完整的接入方案整理出来,供选型参考。
1. 接口总览
| 接口 | 请求地址 | 说明 | HTTPS | 编码 | 需要Key | 来源类型 |
|---|---|---|---|---|---|---|
| 探数API | market.aliyun.com(cmapi00067356 / cmapi00065845) | 上金所、上期所、国内贵金属、金店金价多子接口 | 是 | UTF-8 | AppCode | 商业平台(阿里云市场) |
| Tmini 金价 | tmini.net/api/gold-price | 免费金价,含金店/银行/回收价 | 是 | UTF-8 | 无(免费限流) | 免费 API 平台 |
| 极速数据 | jisugold.market.alicloudapi.com | 黄金历史/金店金价/伦敦金银多子接口 | 是 | UTF-8 | AppCode | 商业平台(阿里云市场) |
| NowAPI | api.k780.com | 上海黄金交易所历史金价 | 是 | UTF-8 | appkey+sign | 商业 API 平台 |
| 上海黄金交易所 | sge.com.cn/graph/Dailyhq | 上金所官方日行情 | 是 | UTF-8 | 无 | 官方公开数据 |
| 万维易源(ShowAPI) | route.showapi.com/2145-1、/2145-2 | 各大金店黄金/铂金每日参考价 | 是 | UTF-8 | appKey | 官方平台(需 key,本文未实测数据) |
2. 探数API(阿里云市场)
覆盖上海黄金交易所、上海期货交易所、国内贵金属及金店金价等多个子接口,网上流传的调用示例较多。
调用示例(Python,获取金店金价):
import urllib3
import json
host = 'https://tsgold2.market.alicloudapi.com'
path = '/storegold' # 子接口:金店金价
method = 'GET'
appcode = '你自己的AppCode' # 阿里云市场申请
url = host + path
http = urllib3.PoolManager()
headers = {
'Authorization': 'APPCODE ' + appcode}
response = http.request('GET', url, headers=headers)
data = json.loads(response.data.decode('utf-8'))
print(json.dumps(data, indent=2, ensure_ascii=False))
文档中的返回示例(节选,金店金价):
{
"code": 1,
"msg": "操作成功",
"data": {
"list": [
{
"typename": "周大福",
"gold": "1437",
"platinum": "-",
"goldbar": "1260",
"unit": "元/克",
"date": "2026-5-11",
"updatetime": "2026-05-11 20:15:30"
}
]
}
}
其他子接口:/shgold(上海黄金交易所)、/scgold(国内贵金属行情,含 CAU 黄金、CAG 白银、CPT 铂金等)、/shfuture(上海期货交易所,AU0 黄金连续等)。
注意事项:需要阿里云市场 AppCode 鉴权;子接口较多,先确认要覆盖的市场再选对应 path。
3. Tmini 免费金价接口
免费调用的金价接口,无需注册 key,返回数据包含贵金属行情、品牌金店金价、银行投资金条、回收价四类,与金店报价场景匹配度高。
请求方式:GET,返回 JSON。
请求参数:
| 参数 | 必填 | 说明 |
|---|---|---|
| type | 是 | 返回格式:json / text / markdown |
| ckey | 否 | 后台 KEY(可选) |
返回结构(文档中列出):date(当前日期)、metals[](贵金属行情:name / sell_price / today_price / high_price / low_price / unit / updated)、stores[](品牌金店:brand / product / price / unit / formatted / updated)、banks[](银行金条:bank / product / price / unit / formatted / time)、recycle[](回收价)。
注意事项:免费档限流(文档标注 5 次/分钟);字段名以文档返回为准。
4. 极速数据(阿里云市场)
提供黄金历史查询、金店金价、香港金银业贸易场、上海期货交易所、伦敦金银、银行账户黄金、上海黄金交易所等多个子接口。
调用示例(黄金历史查询):
调用地址:https://jisugold.market.alicloudapi.com/gold/history
请求方式:ANY,返回 JSON,APPCODE 鉴权
请求参数:
| 参数 | 必填 | 说明 |
|---|---|---|
| market | 是 | 市场:london / ny / td / futures |
| startdate | 是 | 开始日期,如 2026-06-01 |
| enddate | 是 | 结束日期,如 2026-06-10 |
| type | 是 | 品种,如 xau、xag、gc |
注意事项:需要阿里云市场 AppCode;不同子接口参数不同,按需查接口文档。
5. NowAPI(上海黄金交易所历史金价)
以 appkey + sign 签名方式调用,可查询上海黄金交易所历史日行情(2016-10-31 之后),数据按当日收盘归档,非交易日无数据。
请求地址:http://api.k780.com(HTTPS:https://sapi.k780.com)
请求示例:
http://api.k780.com/?app=finance.shgold_history&goldid=1051&date=20170515&appkey=APPKEY&sign=SIGN&format=json
请求参数:
| 参数 | 必填 | 说明 |
|---|---|---|
| app | 是 | 应用标识:finance.shgold_history |
| goldid | 是 | 品种编号:1051 黄金T+D、1052 白银T+D、1053 黄金9999、1054 黄金9995、1056 铂金9995、1058 金条100g、1059 黄金T+N1、1060 黄金T+N2、1080 iAu9999、1081 mAuT+D |
| date | 是 | 查询日期,如 20161101 |
| appkey | 是 | 控制台获取 |
| sign | 是 | 签名 |
| format | 否 | json / xml |
注意事项:需要 appkey 与 sign 签名;查询的是历史归档数据,非实时。
6. 上海黄金交易所(SGE)官方接口
上海黄金交易所官网的公开行情数据接口,可获取 Au99.99 等主力合约的日行情数据,官方权威、无需 key。
请求方式:POST
url: https://www.sge.com.cn/graph/Dailyhq
headers: {
'User-Agent': 'Mozilla/5.0',
'Referer': 'https://www.sge.com.cn/',
'X-Requested-With': 'XMLHttpRequest',
}
data: {'instid': 'Au99.99'}
返回内容:JSON 格式,包含交易日期、开盘价、最高价、最低价、收盘价、成交量等字段。
注意事项:需要带 Referer 与 X-Requested-With 请求头;非交易日无当日数据;数据为交易所官网公开行情,接口形态可能随官网调整。
7. 万维易源(ShowAPI)「金店参考价格」
各大金店黄金与铂金每日参考价接口,数据每日更新,覆盖潮宏基、周大生、周大福等品牌。需自备 key,本文未做真实数据实测,仅按官方 OpenAPI 文档整理接入写法。
服务地址:https://route.showapi.com,POST,appKey 以查询参数鉴权(在 ShowAPI 控制台获取)。
接入点 1:支持金店(/2145-1)
查询接口支持的品牌列表,无请求参数。返回 showapi_res_body.data[],含 _id(品牌id)、brand(品牌中文名)。
接入点 2:最新价格(/2145-2)
按品牌 id 查询最新参考价。
| 参数 | 必填 | 说明 |
|---|---|---|
| id | 是 | 品牌 id,即「支持金店」接入点返回的 _id |
返回字段(文档):goldPrice(黄金参考价格)、platinumPrice(铂金参考价)、auLastDate(黄金价格日期)、ptLastDate(铂金价格日期)、brand(品牌中文名)、ret_code(0 表示成功)。
统一返回包裹:showapi_res_code(状态码)、showapi_res_error(错误信息)、showapi_res_id(请求标识)、showapi_fee_num(计费次数),业务数据位于 showapi_res_body。
注意事项:需自备 appKey;注册后默认可免费调用,为防止滥用设有使用档次限制;本文未对真实业务数据做验证。
横向对比(事实对照)
| 接口 | 是否需 key | 返回格式 | HTTPS | 编码 | 来源类型 |
|---|---|---|---|---|---|
| 探数API | 是(AppCode) | JSON | 是 | UTF-8 | 商业平台 |
| Tmini | 否 | JSON | 是 | UTF-8 | 免费平台 |
| 极速数据 | 是(AppCode) | JSON | 是 | UTF-8 | 商业平台 |
| NowAPI | 是(appkey+sign) | JSON/XML | 是 | UTF-8 | 商业平台 |
| 上海黄金交易所 | 否 | JSON | 是 | UTF-8 | 官方公开 |
| 万维易源(ShowAPI) | 是(appKey) | JSON | 是 | UTF-8 | 官方平台 |
各有取舍,没有全能最优,按你自己的成本、数据覆盖与精度需求选择。
生产环境参考实现(多源降级)
把已整理的各源视为对等节点,按"发请求并落业务字段、失败则切换下一源"的通用逻辑串联。上线前建议自行补一次连通性验证。
import requests
SOURCES = [
# (名称, 请求构造函数),按你自己的排序策略排列
("sge", lambda: requests.post(
"https://www.sge.com.cn/graph/Dailyhq",
headers={
"User-Agent": "Mozilla/5.0", "Referer": "https://www.sge.com.cn/",
"X-Requested-With": "XMLHttpRequest"},
data={
"instid": "Au99.99"}, timeout=10)),
("tmini", lambda: requests.get(
"https://tmini.net/api/gold-price", params={
"type": "json"}, timeout=10)),
# 需要 key 的源按各自文档构造请求
]
def get_gold_price():
for name, build in SOURCES:
try:
resp = build()
if resp.status_code != 200:
continue
data = resp.json()
# 按各源字段结构解析黄金价格并返回
return name, data
except Exception:
continue
return None, None
name, data = get_gold_price()
print(name, data)
各源排序交由调用方自行决定,不在本文给出"谁更优"的结论。
踩坑清单
- 免费接口普遍限流(如 Tmini 标注 5 次/分钟),高频场景需要做本地缓存,金价按日更新,日级缓存即可覆盖大部分展示需求。
- 需要 key 的接口(AppCode / appkey+sign)在申请、实名认证与签名环节耗时,提前准备。
- 新浪系、交易所官网等公开数据源字段格式或页面结构可能调整,解析层要做容错。
- 上海黄金交易所接口需要携带 Referer 与 X-Requested-With 请求头,且非交易日无当日数据。
- 部分网上流传的接口需要自备 key 或写法不完整,集成前务必自行发请求验证,避免上线后才发现数据源不可用。
附录:补充说明
网上流传的同类方案中,还有聚合数据(juhe.cn 黄金数据)、free-api.com 黄金数据、BinSTD 进制数据等,需注册并自备 key,公开资料中未见完整的请求写法;金投网、金价网、汇率表、今日金价网等提供的是网页行情展示,并非结构化接口。以上方案本文未纳入正文整理,接入前请自行评估与验证。部分接口可能已不可用或变更,集成前请自测。
常见问题 FAQ
Q1:有哪些免费的金价查询接口?
目前公开资料中写法较完整的有 Tmini 免费金价接口(无需 key,5 次/分钟限流)和上海黄金交易所官网接口(官方公开数据,POST 请求),另有多个需注册 key 的平台(探数API、极速数据、NowAPI、万维易源等)提供免费试用额度。
Q2:金价查询接口需要 key 吗?
视接口而定:Tmini 和上海黄金交易所官网接口无需 key;探数API、极速数据、NowAPI、万维易源等需要 AppCode 或 appkey 鉴权,一般注册后即可获取并享受免费额度。
Q3:有没有不用注册就能用的金价接口?
Tmini 免费金价接口无需注册即可调用(免费档 5 次/分钟);上海黄金交易所官网的行情接口也无需 key,但需要携带 Referer 与 X-Requested-With 请求头。
Q4:如何获取国内金店每日金价?
可考虑万维易源「金店参考价格」接口(按品牌 id 查询 goldPrice/platinumPrice)或探数API 的 storegold 子接口(返回周大福、周生生、老凤祥等金店黄金/铂金/金条价),两者均需注册 key。
Q5:如何获取上海黄金交易所的官方金价数据?
直接请求上海黄金交易所官网的公开行情接口(POST https://www.sge.com.cn/graph/Dailyhq,参数 instid 传 Au99.99),返回 JSON 格式的日行情数据,无需 key。
Q6:国际金价(伦敦金/纽约金)接口有哪些?
极速数据的 gold/history 子接口支持 london、ny 市场(type 传 xau、gc 等);探数API 的 scgold 子接口覆盖国际贵金属行情;NowAPI 也可查询国际公制金价相关数据。
Q7:金价接口返回的计价单位是什么?
国内品种通常以元/克计价,国际品种以美元/盎司计价。不同接口返回字段中的 unit 字段会标注单位,解析时务必读取该字段,避免单位混用。
Q8:免费金价接口会一直稳定吗?
免费数据源存在限流、字段调整、服务下线等不确定性,本文整理的接口均未做真实请求实测,可用性以公开文档为准。生产环境建议做多源降级与数据缓存,并定期自测。
Q9:调用量超限怎么办?
先确认各平台的免费额度(如 Tmini 5 次/分钟、部分平台每日免费次数),超限后错峰调用并缓存价格数据;金价按日更新,日级缓存可满足大多数展示场景,必要时再评估付费套餐。
Q10:金价接口返回的数据可以用在商业项目吗?
各接口的授权与使用条款不同:官方公开数据与免费接口通常允许一般用途,但商业项目建议先阅读各平台的服务条款,部分平台对商业使用有单独的授权要求。
Q11:历史金价数据怎么获取?
NowAPI 的 finance.shgold_history 可查询上海黄金交易所 2016-10-31 之后的历史日行情;极速数据的 gold/history 子接口支持按日期范围查询历史;上海黄金交易所官网接口也可通过多次请求获取历史日数据。
Q12:集成前需要注意什么?
先做一次真实请求验证接口可用性(本文未做实测);确认返回字段与文档一致;做好单位(元/克 vs 美元/盎司)、编码、请求头(Referer 等)的处理;对需要 key 的接口提前完成注册与签名联调。
风险提示:部分免费接口可能已停止服务或返回占位数据,集成前请自行发请求验证。