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 useversion
interchangably withblock_number
and omit blocks altogether.to_block
/to_version
: Filters the data by an endingversion
. As Move chains use a per-transaction versioned database, we useversion
interchangably withblock_number
and omit blocks altogether.kind__in
/transaction_type__in
/type__in
: Filters the data bykind
.