Skip to content

AptosVM Transactions

Fetch Aptos decoded transaction data for versions 2382400000 to 2382410000 for kind UserTransaction.

Code

Rust
use futures::StreamExt;
use std::{collections::HashSet, sync::Arc};
use pangea_client::{
    core::types::{movement::TransactionType, ChainId}, 
    query::Bound,
    ClientBuilder, Format, WsProvider,
    provider::MoveProvider, requests::movement::GetMoveTxsRequest, 
};
 
#[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 = GetMoveTxsRequest { 
            chains: HashSet::from([ChainId::APTOS]), 
            from_block: Bound::Exact(2382400000), 
            to_block: Bound::Exact(2382410000), 
            transaction_type__in: HashSet::from([TransactionType::UserTransaction]), 
            ..Default::default() 
        }; 
        let stream = match client 
            .get_move_txs_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

[
  ...
  {
    "chain": 2147483643,
    "block_number": "0x8e00b110",
    "block_hash": "0xbe9226a66504b222ce088e053feb54751d225a90660cde3cd303441d13951f3a",
    "transaction_index": 2382410000,
    "hash": "0xbe9226a66504b222ce088e053feb54751d225a90660cde3cd303441d13951f3a",
    "version": 2382410000,
    "parent_transaction_hash": "0x1bd7f670684c5785de48f191589d337687597ba07abfa59b2ad65202dc37cb0d",
    "timestamp": 1739913186953619,
    "kind": "UserTransaction",
    "gas_used": 9,
    "status": "Success",
    "event_root_hash": "0x5162d5aed237bcd3e1439bcf7c9dc2afd90131a91fc1331f71d23f6088bd7d23",
    "state_change_hash": "0x7cb98f76910c88294afc15eb729bf121eeda3af2fdee4d1b338cb9b0be572da4",
    "accumulator_root_hash": "0x6b9fbd4e0d49762a5f6c53dbb63a86d9d9d2feced384bd101cd269da84424f43",
    "authenticator": "0x5472616e73616374696f6e41757468656e74696361746f725b0a09736368656d653a204d756c74694167656e742c200a0973656e6465723a204163636f756e7441757468656e74696361746f725b736368656d652069643a20456432353531392c207075626c6963206b65793a20626461643363663861303366353038363432623862376539343932366138373238306334373430656366613239303965613131613231316665343165653066332c207369676e61747572653a2031376232626537633537386234373034313864313139383065356637386137356464646135303964326364326533613630613862626432623366353066396463376166633231656632396431306636386234646565333930333333366265396636633965653762636139616162626163643434623439383336376435623430345d0a097365636f6e64617279207369676e6572206164647265737365733a200a097365636f6e64617279207369676e6572733a200a0a0a2020202020202020202020202020202020202020202020200966656520706179657220616464726573733a203078383230393331633336643834663866356234346434623337373031633030623239653535663731346565633231363563343735303862663537643138613432630a0a0a20202020202020202020202020202020202020202020202009666565207061796572207369676e65723a204163636f756e7441757468656e74696361746f725b736368656d652069643a20456432353531392c207075626c6963206b65793a20386131643963303333663961353265316135653937656663326536383835613266343437383934346431356163653936316236336136376664663230656133362c207369676e61747572653a2037633637303636353738353634316436656337643535636233353930343261353833393962633635333161633936363863333635356331373365656632653461343139636237376164316633373932353964326365393135663130643032316134333964656636616638663737353032376562633861396439363961393430665d5d",
    "sender": "0xd4343f54aa95f9f85cd5a842ddc4a666a6147dc1bb8f1342e08bccd4f24407f9",
    "sequence_number": 0,
    "max_gas_amount": 2000,
    "gas_unit_price": 100,
    "expiration_timestamp_secs": 1739915582,
    "tx_chain_id": 1,
    "block_metadata_failed_proposer_indices": [],
    "block_metadata_timestamp_usecs": null,
    "payload": {
      "kind": "EntryFunction",
      "script": null,
      "module_bundle": null,
      "entry_function": {
        "module": {
          "address": "0x8d2d7bcde13b2513617df3f98cdd5d0e4b9f714c6308b9204fe18ad900d92609",
          "name": "admin"
        },
        "function": "transfer_multiple_commission",
        "ty_args": "0x01074def3d3dee27308886f0a3611dd161ce34f977a9a5de4e80b237225923492a2a04636f696e015400",
        "args": [
          "0x0100000000000000",
          "0x010c87759db0b58cfa5d43bb06aad91b28b9b639803276c084fd10f6811b7f62f6",
          "0x010000000000000000",
          "0x010000000000000000",
          "0x00",
          "0x427b2274797065223a22696e697469616c697a654c6f67696e53747265616b222c22636f6e7369646572466f7245787465726e616c53796e63223a2266616c7365227d"
        ]
      },
      "multisig": null
    }
  }
]

Query Parameters

  • chains: Filters the data by chain.
  • from_block / from_version: Filters the data by a starting version. As Move chains use a per-transaction versioned database, we use version interchangably with block_number and omit blocks altogether.
  • to_block / to_version: Filters the data by an ending version. As Move chains use a per-transaction versioned database, we use version interchangably with block_number and omit blocks altogether.
  • kind__in / transaction_type__in / type__in: Filters the data by kind.