跳到正文
← 使用教程

Birdeye 价格对不上?按网络、地址、时间和单位对照 API

链小知 · 进阶 · 核验 · 依官方文档整理

针对 Solana 代币,比较 Price 与 Token Overview,排除链错误、旧报价和 Token-2022 单位差异。

开始前准备

  • 准备 Solana 目标代币的规范 mint 地址、已获授权的 Birdeye API Key 和对照时间。不要使用钱包账户地址代替 mint。
  • 适用当前 Data API 的 /defi/price 和 /defi/token_overview;本篇限定 Solana,不推定所有网络有相同字段。
  • 请求会消耗 API 配额/CU,套餐和收费查看当前控制台;只读查询不签名、不广播、不产生链上 Gas。

1. 固定代币身份和请求范围

从发行方公开记录核实规范 mint,记录网络 Solana。准备请求头 x-chain: solana 与 X-API-KEY;即使接口默认是 Solana,也显式写链,方便审计和迁移时发现错误。

不把 token account、钱包地址或同名代币填进 address。将 Key 保存在自己的请求环境,不贴到报告、网页公开地址或支持工单;教程中的占位符需由本人在本地替换。

检查结果:保存不含 Key 的网络、mint 和请求路径。

2. 读取当前价格与更新时间

使用 GET https://public-api.birdeye.so/defi/price?address=<mint>&ui_amount_mode=raw,带上述请求头。检查 HTTP 状态,再记录返回 data 中的 value、updateUnixTime 和 updateHumanTime;Unix 时间单位为秒。

响应为 null 或缺字段,可能是地址不受支持、新代币未索引或没有数据,保留未知。不要把缺失价格换算成 0,也不要拿过期更新时间与刚发生的成交比较。

检查结果:得到价格、原始单位与更新时间,或明确返回缺失。

3. 对照 Overview 的身份与市场信息

使用 GET https://public-api.birdeye.so/defi/token_overview?address=<mint>&ui_amount_mode=raw,保持相同网络与请求头。先核对 address、decimals、name/symbol,再读 price、liquidity、marketCap、fdv 和最后成交时间。

名称不能代替地址核验。最后成交时间与价格更新时间不是同一个概念;两个响应在不同时间取得,也可能产生正常价差。市值与 FDV 也不表示自己持有数量或当前可卖出价值。

检查结果:两次查询使用同一 mint、网络和单位,并记录各自时间。

4. 检查 Token-2022 单位差异

若响应出现 isScaledUiToken、multiplier 或 scaledValue 等字段,保留 raw 与 scaled 的区别。官方当前说明中 Price 默认 RAW,而 Overview 默认 SCALED;直接拿两者默认值相比可能产生单位差。

已显式请求 raw 时,仍检查实际字段和接口支持情况,不自行混乘倍率。若某返回未给对应单位或倍率,将单位一致性标成待确认,不能仅按页面显示的小数位强行推断。

检查结果:说明比较的是 raw 还是 scaled;缺倍率时不猜。

5. 按错误类型处理并保存结果

401 先查 Key 是否有效,403 查权限,429 查限流并按当前配额重试;服务端错误保留状态、路径和检查时间。重试时仅发送必要请求,不循环刷接口。

完成时保存去掉 Key 的参数、状态、价格、时间和单位。查询价格不构成可成交报价;真正交换时还要查看路线、滑点、规模和钱包费用,不能把此接口结果当作保证成交金额。

检查结果:形成能重放的脱敏查询记录;未成功的接口保留错误状态。

怎样确认完成

  • 同一 mint 的两份请求参数、状态、单位和时间已记录。
  • 已解释差异或准确保留数据缺失、权限、限流等未解决项。
  • 依据官方文档整理,真实账户/API 返回与资金操作尚待实际验证。

常见错误与边界

  • Price 和 Overview 的默认单位可能不同,特别是 scaled UI token。
  • 缺价格不等于价格为零;流动性、市值和可卖出金额不能互换。
  • 报价时间与最后成交时间不同,实际交换还有滑点和费用。

本教程根据官方资料整理,尚未完成逐步操作验收。界面、支持范围及费用变化时,先核对官方说明。 纯文本版 · 提交纠错依据