Coins Metadata
Fetch Aptos coin metadata for versions 2382400000 to 2382410000.
Code
Rust
use futures::StreamExt;
use std::{collections::HashSet, sync::Arc};
use pangea_client::{
core::types::ChainId, query::Bound,
ClientBuilder, Format, WsProvider,
provider::MoveProvider, requests::movement::GetTokensRequest,
};
#[tokio::main]
async fn main() {
dotenvy::dotenv_override().ok();
let client = match ClientBuilder::default()
.endpoint("aptos.app.pangea.foundation")
.build::<WsProvider>()
.await
{
Ok(client) => Arc::new(client),
Err(e) => {
eprintln!("Client failed to initialize:\n{e}");
return;
}
};
{
let request = GetTokensRequest {
chains: HashSet::from([ChainId::APTOS]),
from_block: Bound::Exact(2382400000),
to_block: Bound::Exact(2382410000),
..Default::default()
};
let stream = match client
.get_move_coins_by_format(request, Format::JsonStream, false)
.await
{
Ok(stream) => stream,
Err(e) => {
eprintln!("Request failed\n{e}");
return;
}
};
futures::pin_mut!(stream);
while let Some(chunk) = stream.next().await {
let chunk = String::from_utf8(chunk.unwrap()).unwrap();
println!("{chunk}");
}
}
}Response
[
...
{
"block_number": 2382409323,
"transaction_hash": "0x9b909280adb16ee21f6594d6783330873839d37e2b598c5070c04f5c1305d252",
"receipt_index": 2,
"timestamp": 1739913169166717,
"address": "0x9770fa9c725cbd97eb50b2be5f7416efdfd1f1554beb0750d4dae4c64e860da3::reserve::LP",
"name": "Aries Aptos Coin LP Token",
"symbol": "AAPT",
"decimals": 8
}
]Query Parameters
chains: Filters the data bychain.from_block/from_version: Filters the data by a startingversion. As Move chains use a per-transaction versioned database, we useversioninterchangably withblock_numberand omit blocks altogether.to_block/to_version: Filters the data by an endingversion. As Move chains use a per-transaction versioned database, we useversioninterchangably withblock_numberand omit blocks altogether.kind__in/transaction_type__in/type__in: Filters the data bykind.