CoinMarketCap API:核同名币、免密钥入口与错误响应
链小知 · 进阶 · 核验 · 依官方文档整理
固定CMC ID和接口范围,避免把HTTP成功、symbol命中或权限失败当成完整行情。
开始前准备
- 准备已有脱敏请求、响应或面板记录及读取时间;本教程按公开官方资料整理,未调用业务API、登录、配置密钥或执行资金操作。
1. 按任务固定完整路径
免密钥根是https://pro-api.coinmarketcap.com/public-api,只支持官方清单中的GET端点,不发送X-CMC_PRO_API_KEY。认证Pro根不含/public-api,使用该header;记录完整版本与路径。
例如行情quotes与DEX token/pool是不同任务;同一host不表示相同参数或覆盖。不能把所有Pro路径直接加前缀当免密钥接口。
检查结果:任务、根路径、版本和官方支持范围对应。
2. 用资产ID避免symbol歧义
从cryptocurrency/map核CMC id、名称与slug。官方约定同symbol多命中时默认最高市值资产,名称相同不能证明查到目标。CMC资产ID、CoinGecko ID、合约地址和网络ID不可互换;DEX还须固定对应链与token或pool地址。
检查结果:资产身份有CMC ID或链+完整合约依据,没有凭symbol补身份。
3. 核HTTP与JSON两层结果
读取实际HTTP状态,以及status.error_code、error_message和data。保留原字段类型和响应形状,不假定每个版本data都为数组:旧版bundling可能返回对象映射。
HTTP成功不替代业务状态与所需资产检查;空data、资产缺项、无法解析、非零错误码分别记录。status.timestamp是服务器执行时点,不自动是每个价格的采样时点。
检查结果:HTTP、业务错误、数据形状及资产缺项分列。
4. 把限流与套餐错误分开
认证入口429需区分1008分钟、1009每日、1010每月和1011 IP限流;403的1005/1006/1007分别涉及需key、套餐不支持和key禁用。免密钥共享IP池没有在本页给统一数值。
等待一分钟不能解决月额度或权限问题。保留原错误,不反复改路径重试或把失败页计成零行情。
检查结果:错误码、入口和限制层级有依据,未取得数据保持未知。
5. 保存时间与用量范围
保留convert、实际资产/池范围、响应时间及可见数据时间;UTC时间与本地日期分开。认证调用的status.credit_count是实际用量线索,不能用请求数量代替credits。
没有完整分页、正确资产或原响应时,只交付已有覆盖范围,不声称全量数据。本文未执行查询、MCP连接或x402付款。
检查结果:身份、时间、用量和待核范围可复查。
怎样确认完成
- 形成入口、身份、两层状态、时点和实际覆盖记录。
常见错误与边界
- Symbol默认最高市值匹配不等于用户目标资产。
- 免密钥、Pro、MCP和x402的认证/费用边界不同。