接口
扫描
发起代币扫描,或刷新已过期的报告。
POST
/api/v1/scans将代币的完整分析加入队列,并返回其当前状态。该调用可以安全地重复:已有扫描在运行时,绝不会再启动第二次扫描。
参数#
chainbody链 ID。目前仅支持 solana。"solana"默认: "solana"
addressbody必填要扫描的代币 mint 地址。string
请求#
curl -s -X POST "https://app.xca.fun/api/v1/scans" \
-H "Authorization: Bearer $XCA_API_KEY" \
-H "Content-Type: application/json" \
-d '{"chain":"solana","address":"DezXAZ8z7PnrnRJjz3wXBoRgixCa6xjnB7YaB1pPB263"}'在线调试
粘贴你的 API 密钥即可发送真实请求。
响应#
status扫描状态。"NONE" | "QUEUED" | "RUNNING" | "DONE" | "ERROR"
depth该扫描生成或刷新的报告深度。"LIGHT" | "FULL" | null
step当前扫描步骤。string | null
progress进度,取值 0 到 100。number
stale现有报告已超过缓存有效期。boolean
upgradingLIGHT 报告正在升级为 FULL。boolean
limitReached你的每日扫描额度已用完;返回的是旧报告的状态。boolean
响应示例#
{
"status": "QUEUED",
"depth": null,
"step": "queued",
"progress": 0,
"stale": false,
"upgrading": false,
"limitReached": false
}状态码#
200成功
400validation — 某个参数或请求体无效;详见
error.issues。401unauthorized — API 密钥缺失、格式错误或已被吊销。
402
planRequired — 你的套餐不包含 API 访问权限或该功能。429
rateLimited — 每分钟请求过多,或月度配额已用完。503unavailable — 正在维护,或数据提供商容量不足。
行为说明#
- 报告未过期:立即返回
DONE,不消耗扫描额度。 - 扫描进行中:返回
QUEUED或RUNNING,并附带 step 和 progress。 - 其他情况:将新扫描加入队列,并消耗一次每日扫描额度。
- 已达每日上限但存在旧报告:返回该报告的状态,并将
limitReached设为 true。
等待结果#
每 3–5 秒轮询一次 GET /tokens/{chain}/{address},直到状态变为 DONE 或 ERROR。大多数扫描会在一分钟内完成。
扫描步骤#
queued | 在队列中等待。 |
market | 正在获取价格、流动性和 mint 数据。 |
holders | 正在读取持有人列表。 |
trades | 正在读取最早的交易以识别狙击手。 |
profiles | 正在为最大的持有人建立画像:资金来源、钱包年龄、盈亏。 |
classify | 正在分配类别并构建集群。 |
dev | 正在检查创建者此前的发币记录。 |
save | 正在计算 Holder Score 并保存。 |
done | 已完成。 |
error | 失败。 |
当 XCA 正在维护或其数据提供商容量不足时,扫描会返回 503 unavailable。请稍后重试。