三步发出第一个请求
从创建密钥到收到第一个 JSON 响应,通常不超过两分钟。
1
创建 API 密钥
登录 QuickFind 账号,进入「账号设置 → 开放平台 → API 密钥」。创建时按需勾选作用域(如 read:orders),密钥只在创建时完整显示一次,请立即妥善保存。
2
用 Authorization 头携带密钥
每个请求都必须带 Authorization: Bearer qf_live_…。缺失与无效故意返回同一种 401,避免密钥被试探。
3
读取统一结构的响应
成功响应带 ok: true;失败带 ok: false、机器可判的 error 码与人类可读的 message。先调用 /api/v1/me 确认密钥与配额。
第一个请求(任选语言)
# 把示例密钥换成你自己的 qf_live_… 密钥
curl https://api.quickfindapp.com/api/v1/me \
-H "Authorization: Bearer qf_live_xxxxxxxx"
# pip install requests
import requests
resp = requests.get(
"https://api.quickfindapp.com/api/v1/me",
headers={"Authorization": "Bearer qf_live_xxxxxxxx"},
timeout=10,
)
resp.raise_for_status()
print(resp.json()["key"])
// Node 18+ 内置 fetch,无需安装依赖
const resp = await fetch(
"https://api.quickfindapp.com/api/v1/me",
{ headers: { Authorization: "Bearer qf_live_xxxxxxxx" } },
);
if (!resp.ok) throw new Error(`HTTP ${resp.status}`);
const data = await resp.json();
console.log(data.key);
// go run main.go
req, _ := http.NewRequest("GET",
"https://api.quickfindapp.com/api/v1/me", nil)
req.Header.Set("Authorization", "Bearer qf_live_xxxxxxxx")
resp, err := http.DefaultClient.Do(req)
// …读取 resp.Body 并 json.Unmarshal
响应与响应头
密钥身份端点不需要任何作用域,是拿到密钥后最合适的第一个调用。
# 200 OK
{
"ok": true,
"key": {
"prefix": "qf_live_",
"scopes": ["read:orders", "read:favorites"]
},
"quota": {
"per_minute": { "limit": 60, "used": 1 },
"per_day": { "limit": 10000, "used": 1 }
}
}
# 关键响应头
RateLimit-Scope: apikey
RateLimit-Limit: 60
RateLimit-Window-Seconds: 60
Cache-Control: no-store, must-revalidate
Access-Control-Allow-Origin: *
接入自检清单
① 调通 /api/health(免鉴权)确认网络可达;② 调 /api/v1/me 确认密钥有效且作用域齐全;③ 记录每次响应的 RateLimit-* 头,别等 429 才处理限流。