You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何获取特定时间点的代币及Hbar账户余额?

问题翻译

我在一个项目中需要获取代币余额及账户余额,想了解是否可以获取昨日或任意时间点的代币及HBAR(账户余额)?截至目前,我尝试拉取特定时间戳的所有交易以查看是否包含该时间点的余额,但API未返回相关信息。以下是我尝试的两个查询:

交易请求:https://testnet.mirrornode.hedera.com/api/v1/transactions/0.0.10918-1680795651-328812066
交易前的代币查询请求:https://testnet.mirrornode.hedera.com/api/v1/tokens/0.0.3332842?timestamp=1680795000

请告知我如何获取特定时间点的余额?


获取Hedera特定时间点的HBAR及代币余额

针对你的需求,Hedera Mirror Node API提供了精准的接口来获取指定时间点的余额数据,以下是具体方案:

一、获取特定时间点的HBAR账户余额

使用账户余额历史接口,通过timestamp参数定位目标时间点的余额:

GET /api/v1/accounts/{accountId}/balances?timestamp={targetTimestamp}
  • 示例:查询账户0.0.10918在1680795000时间点的HBAR余额
GET /api/v1/accounts/0.0.10918/balances?timestamp=1680795000

接口会返回截至指定时间戳时账户的HBAR余额,以及余额变更的历史记录。

二、获取特定时间点的代币余额

对于自定义代币,需使用账户代币余额历史接口,通过timestamp参数筛选:

GET /api/v1/accounts/{accountId}/tokens/{tokenId}/balances?timestamp={targetTimestamp}
  • 示例:查询账户0.0.10918持有代币0.0.3332842在1680795000时间点的余额
GET /api/v1/accounts/0.0.10918/tokens/0.0.3332842/balances?timestamp=1680795000

若需批量查询某账户的所有代币历史余额,可省略tokenId:

GET /api/v1/accounts/{accountId}/tokens/balances?timestamp={targetTimestamp}

三、你之前尝试的问题说明

你调用的/api/v1/tokens/{tokenId}接口仅返回代币本身的属性(如名称、总供应量),而非账户持有该代币的余额;交易接口仅输出交易详情,不会直接返回时间点余额快照,因此无法得到目标数据。

四、额外注意事项

  • 时间戳参数支持精确到纳秒的格式(如1680795000.000000000),也支持相对时间表达式(如now-24h代表昨日此时)。
  • 若指定时间点无余额变更记录,接口会返回该时间点之前最近一次的余额数据,这符合“特定时间点余额”的实际业务逻辑(即截至该时间点的最终余额)。

内容的提问来源于stack exchange,提问作者Mulders Michiel

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.25 09:52:21