黑马天启 · 多模型 Token 平台

模型清单 GET /v1/models

确认这把 Key 能用哪些模型;写代码时不要硬编码模型清单。

请求

字段 必填 说明
Authorization 是 Bearer <你的 API Key>
curl https://api.token.heimatianqi.com/v1/models \
  -H "Authorization: Bearer sk-heima-xxxxxxxx"

计费口径

不产生费用。

错误

状态 典型原因
401 Key 无效或被禁用

错误响应里会带 request id,排查与对账时请保留(见错误码与限流)。

契约验证

python3 -c "
import json,os,urllib.request
base=os.environ.get('HEIMA_BASE_URL','https://api.token.heimatianqi.com/v1')
key=os.environ['HEIMA_API_KEY']
req=urllib.request.Request(base+'/models',headers={'Authorization':'Bearer '+key})
data=json.load(urllib.request.urlopen(req,timeout=15))
assert data.get('data'), 'empty model list'
print('models for this key:', len(data['data']))
"

端点可达性验证

下面这段由文档验收套件真实执行:向本机网关发起一次未带 Key 的请求, 必须得到 401 与结构化 JSON 错误——证明该路径已被网关注册、且受鉴权中间件保护。

python3 -c "
import os,urllib.error,urllib.request
base=(os.environ.get('HEIMA_PROBE_BASE') or os.environ.get('HEIMA_BASE_URL','http://127.0.0.1:3000/v1')).split('/v1')[0]
req=urllib.request.Request(base+'/v1/models',data=None,method='GET',headers={'Content-Type':'application/json'})
try:
    urllib.request.urlopen(req,timeout=15)
    raise SystemExit('expected 401 for unauthenticated request')
except urllib.error.HTTPError as e:
    body=e.read().decode('utf-8','ignore')
    assert e.code==401, 'unexpected status %s: %s'%(e.code,body[:160])
    assert 'error' in body or 'message' in body, 'non-JSON error body: %s'%body[:160]
print('endpoint reachable & auth-guarded: /v1/models')
"

说明:探针只证明"路由存在 + 鉴权生效",不产生任何上游调用与费用。

常见问题

  • 这个端点要额外开通吗? 取决于模型与上游:模型详情页会标注支持的端点;未开放时会返回明确错误, 不会静默降级到别的接口。
  • 并发/限流如何? 平台有三层保护(模型 RPM、渠道容量、临时黑名单), 拒绝时返回 429/403 且不消耗上游。

相关端点