Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
This endpoint accepts transaction submissions in two formats.
Retrieve on-chain committed transactions.
Look up a transaction by its hash.
Retrieves on-chain committed transactions from an account.
Retrieves a transaction by a given version.
The output of the transaction will have the exact transaction outputs and events that running an actual signed transaction would have.
This allows you to submit multiple transactions.
This endpoint accepts an EncodeSubmissionRequest, which internally is a UserTransactionRequestInner encoded as JSON, validates the request format, and then returns t
Currently, the gas estimation is handled by taking the median of the last 100,000 transactions.
Currently, the gas estimation is handled by taking the median of the last 100,000 transactions If a user wants to prioritize their transaction and is willing to pay, they can pay more than the gas price. If they're willing to wait longer, they can pay less. Note that the gas price moves with the fee market, and should only increase when demand outweighs supply.
If there have been no transactions in the last 100,000 transactions, the price will be 1.
The deprioritized estimate for the gas unit price
The current estimate for the gas unit price
The prioritized estimate for the gas unit price
This endpoint accepts an EncodeSubmissionRequest, which internally is a UserTransactionRequestInner (and optionally secondary signers) encoded as JSON, validates the request format, and then returns that request encoded in BCS. The client can then use this to create a transaction signature to be used in a SubmitTransactionRequest, which it then passes to the /transactions POST endpoint.
To be clear, this endpoint makes it possible to submit transaction requests to the API from languages that do not have library support for BCS. If you are using an SDK that has BCS support, such as the official Rust, TypeScript, or Python SDKs, you do not need to use this endpoint.
To sign a message using the response from this endpoint:
A hex encoded 32 byte Aptos account address.
This is represented in a string as a 64 character hex string, sometimes shortened by stripping leading 0s, and adding a 0x.
For example, address 0x0000000000000000000000000000000000000000000000000000000000000001 is represented as 0x1.
A string containing a 64-bit unsigned integer.
We represent u64 values as a string to ensure compatibility with languages such as JavaScript that do not parse u64s in JSON natively.
A string containing a 64-bit unsigned integer.
We represent u64 values as a string to ensure compatibility with languages such as JavaScript that do not parse u64s in JSON natively.
A string containing a 64-bit unsigned integer.
We represent u64 values as a string to ensure compatibility with languages such as JavaScript that do not parse u64s in JSON natively.
A string containing a 64-bit unsigned integer.
We represent u64 values as a string to ensure compatibility with languages such as JavaScript that do not parse u64s in JSON natively.
An enum of the possible transaction payloads
Entry function id is string representation of a entry function defined on-chain.
Format: {address}::{module name}::{function name}
Both module name
and function name
are case-sensitive.
Type arguments of the function
String representation of an on-chain Move type tag that is exposed in transaction payload.
Values:
- bool
- u8
- u16
- u32
- u64
- u128
- u256
- address
- signer
- vector: vector<{non-reference MoveTypeId}>
- struct: {address}::{module_name}::{struct_name}::<{generic types}>
Vector type value examples:
- `vector<u8>`
- `vector<vector<u64>>`
- `vector<0x1::coin::CoinStore<0x1::aptos_coin::AptosCoin>>`
Struct type value examples:
- `0x1::coin::CoinStore<0x1::aptos_coin::AptosCoin>
- `0x1::account::Account`
Note:
1. Empty chars should be ignored when comparing 2 struct tag ids.
2. When used in an URL path, should be encoded by url-encoding (AKA percent-encoding).
Arguments of the function
Secondary signer accounts of the request for Multi-agent
A hex encoded 32 byte Aptos account address.
This is represented in a string as a 64 character hex string, sometimes shortened by stripping leading 0s, and adding a 0x.
For example, address 0x0000000000000000000000000000000000000000000000000000000000000001 is represented as 0x1.
All bytes (Vec) data is represented as hex-encoded string prefixed with 0x
and fulfilled with
two hex digits per byte.
Unlike the Address
type, HexEncodedBytes will not trim any zeros.
Retrieves a transaction by a given version. If the version has been pruned, a 410 will be returned.
A string containing a 64-bit unsigned integer.
We represent u64 values as a string to ensure compatibility with languages such as JavaScript that do not parse u64s in JSON natively.
Enum of the different types of transactions in Aptos
A hex encoded 32 byte Aptos account address.
This is represented in a string as a 64 character hex string, sometimes shortened by stripping leading 0s, and adding a 0x.
For example, address 0x0000000000000000000000000000000000000000000000000000000000000001 is represented as 0x1.
A string containing a 64-bit unsigned integer.
We represent u64 values as a string to ensure compatibility with languages such as JavaScript that do not parse u64s in JSON natively.
A string containing a 64-bit unsigned integer.
We represent u64 values as a string to ensure compatibility with languages such as JavaScript that do not parse u64s in JSON natively.
A string containing a 64-bit unsigned integer.
We represent u64 values as a string to ensure compatibility with languages such as JavaScript that do not parse u64s in JSON natively.
A string containing a 64-bit unsigned integer.
We represent u64 values as a string to ensure compatibility with languages such as JavaScript that do not parse u64s in JSON natively.
An enum of the possible transaction payloads
Entry function id is string representation of a entry function defined on-chain.
Format: {address}::{module name}::{function name}
Both module name
and function name
are case-sensitive.
Type arguments of the function
String representation of an on-chain Move type tag that is exposed in transaction payload.
Values:
- bool
- u8
- u16
- u32
- u64
- u128
- u256
- address
- signer
- vector: vector<{non-reference MoveTypeId}>
- struct: {address}::{module_name}::{struct_name}::<{generic types}>
Vector type value examples:
- `vector<u8>`
- `vector<vector<u64>>`
- `vector<0x1::coin::CoinStore<0x1::aptos_coin::AptosCoin>>`
Struct type value examples:
- `0x1::coin::CoinStore<0x1::aptos_coin::AptosCoin>
- `0x1::account::Account`
Note:
1. Empty chars should be ignored when comparing 2 struct tag ids.
2. When used in an URL path, should be encoded by url-encoding (AKA percent-encoding).
Arguments of the function
An enum representing the different transaction signatures available
All bytes (Vec) data is represented as hex-encoded string prefixed with 0x
and fulfilled with
two hex digits per byte.
Unlike the Address
type, HexEncodedBytes will not trim any zeros.
All bytes (Vec) data is represented as hex-encoded string prefixed with 0x
and fulfilled with
two hex digits per byte.
Unlike the Address
type, HexEncodedBytes will not trim any zeros.
Retrieve on-chain committed transactions. The page size and start ledger version can be provided to get a specific sequence of transactions.
If the version has been pruned, then a 410 will be returned.
To retrieve a pending transaction, use /transactions/by_hash.
A string containing a 64-bit unsigned integer.
We represent u64 values as a string to ensure compatibility with languages such as JavaScript that do not parse u64s in JSON natively.
Max number of transactions to retrieve.
If not provided, defaults to default page size
Retrieves on-chain committed transactions from an account. If the start version is too far in the past, a 410 will be returned.
If no start version is given, it will start at version 0.
To retrieve a pending transaction, use /transactions/by_hash.
A hex encoded 32 byte Aptos account address.
This is represented in a string as a 64 character hex string, sometimes shortened by stripping leading 0s, and adding a 0x.
For example, address 0x0000000000000000000000000000000000000000000000000000000000000001 is represented as 0x1.
A string containing a 64-bit unsigned integer.
We represent u64 values as a string to ensure compatibility with languages such as JavaScript that do not parse u64s in JSON natively.
Max number of transactions to retrieve.
If not provided, defaults to default page size
The output of the transaction will have the exact transaction outputs and events that running an actual signed transaction would have. However, it will not have the associated state hashes, as they are not updated in storage. This can be used to estimate the maximum gas units for a submitted transaction.
To use this, you must:
To use this endpoint with BCS, you must submit a SignedTransaction encoded as BCS. See SignedTransaction in types/src/transaction/mod.rs.
If set to true, the max gas value in the transaction will be ignored and the maximum possible gas will be used
If set to true, the gas unit price in the transaction will be ignored and the estimated value will be used
If set to true, the transaction will use a higher price than the original estimate.
A hex encoded 32 byte Aptos account address.
This is represented in a string as a 64 character hex string, sometimes shortened by stripping leading 0s, and adding a 0x.
For example, address 0x0000000000000000000000000000000000000000000000000000000000000001 is represented as 0x1.
A string containing a 64-bit unsigned integer.
We represent u64 values as a string to ensure compatibility with languages such as JavaScript that do not parse u64s in JSON natively.
A string containing a 64-bit unsigned integer.
We represent u64 values as a string to ensure compatibility with languages such as JavaScript that do not parse u64s in JSON natively.
A string containing a 64-bit unsigned integer.
We represent u64 values as a string to ensure compatibility with languages such as JavaScript that do not parse u64s in JSON natively.
A string containing a 64-bit unsigned integer.
We represent u64 values as a string to ensure compatibility with languages such as JavaScript that do not parse u64s in JSON natively.
An enum of the possible transaction payloads
Entry function id is string representation of a entry function defined on-chain.
Format: {address}::{module name}::{function name}
Both module name
and function name
are case-sensitive.
Type arguments of the function
String representation of an on-chain Move type tag that is exposed in transaction payload.
Values:
- bool
- u8
- u16
- u32
- u64
- u128
- u256
- address
- signer
- vector: vector<{non-reference MoveTypeId}>
- struct: {address}::{module_name}::{struct_name}::<{generic types}>
Vector type value examples:
- `vector<u8>`
- `vector<vector<u64>>`
- `vector<0x1::coin::CoinStore<0x1::aptos_coin::AptosCoin>>`
Struct type value examples:
- `0x1::coin::CoinStore<0x1::aptos_coin::AptosCoin>
- `0x1::account::Account`
Note:
1. Empty chars should be ignored when comparing 2 struct tag ids.
2. When used in an URL path, should be encoded by url-encoding (AKA percent-encoding).
Arguments of the function
An enum representing the different transaction signatures available
All bytes (Vec) data is represented as hex-encoded string prefixed with 0x
and fulfilled with
two hex digits per byte.
Unlike the Address
type, HexEncodedBytes will not trim any zeros.
All bytes (Vec) data is represented as hex-encoded string prefixed with 0x
and fulfilled with
two hex digits per byte.
Unlike the Address
type, HexEncodedBytes will not trim any zeros.
A string containing a 64-bit unsigned integer.
We represent u64 values as a string to ensure compatibility with languages such as JavaScript that do not parse u64s in JSON natively.
A string containing a 64-bit unsigned integer.
We represent u64 values as a string to ensure compatibility with languages such as JavaScript that do not parse u64s in JSON natively.
Whether the transaction was successful
The VM status of the transaction, can tell useful information in a failure
Final state of resources changed by the transaction
A hex encoded 32 byte Aptos account address.
This is represented in a string as a 64 character hex string, sometimes shortened by stripping leading 0s, and adding a 0x.
For example, address 0x0000000000000000000000000000000000000000000000000000000000000001 is represented as 0x1.
A string containing a 64-bit unsigned integer.
We represent u64 values as a string to ensure compatibility with languages such as JavaScript that do not parse u64s in JSON natively.
A string containing a 64-bit unsigned integer.
We represent u64 values as a string to ensure compatibility with languages such as JavaScript that do not parse u64s in JSON natively.
A string containing a 64-bit unsigned integer.
We represent u64 values as a string to ensure compatibility with languages such as JavaScript that do not parse u64s in JSON natively.
A string containing a 64-bit unsigned integer.
We represent u64 values as a string to ensure compatibility with languages such as JavaScript that do not parse u64s in JSON natively.
An enum of the possible transaction payloads
Entry function id is string representation of a entry function defined on-chain.
Format: {address}::{module name}::{function name}
Both module name
and function name
are case-sensitive.
Type arguments of the function
String representation of an on-chain Move type tag that is exposed in transaction payload.
Values:
- bool
- u8
- u16
- u32
- u64
- u128
- u256
- address
- signer
- vector: vector<{non-reference MoveTypeId}>
- struct: {address}::{module_name}::{struct_name}::<{generic types}>
Vector type value examples:
- `vector<u8>`
- `vector<vector<u64>>`
- `vector<0x1::coin::CoinStore<0x1::aptos_coin::AptosCoin>>`
Struct type value examples:
- `0x1::coin::CoinStore<0x1::aptos_coin::AptosCoin>
- `0x1::account::Account`
Note:
1. Empty chars should be ignored when comparing 2 struct tag ids.
2. When used in an URL path, should be encoded by url-encoding (AKA percent-encoding).
Arguments of the function
An enum representing the different transaction signatures available
All bytes (Vec) data is represented as hex-encoded string prefixed with 0x
and fulfilled with
two hex digits per byte.
Unlike the Address
type, HexEncodedBytes will not trim any zeros.
All bytes (Vec) data is represented as hex-encoded string prefixed with 0x
and fulfilled with
two hex digits per byte.
Unlike the Address
type, HexEncodedBytes will not trim any zeros.
Events generated by the transaction
A string containing a 64-bit unsigned integer.
We represent u64 values as a string to ensure compatibility with languages such as JavaScript that do not parse u64s in JSON natively.
A hex encoded 32 byte Aptos account address.
This is represented in a string as a 64 character hex string, sometimes shortened by stripping leading 0s, and adding a 0x.
For example, address 0x0000000000000000000000000000000000000000000000000000000000000001 is represented as 0x1.
A string containing a 64-bit unsigned integer.
We represent u64 values as a string to ensure compatibility with languages such as JavaScript that do not parse u64s in JSON natively.
String representation of an on-chain Move type tag that is exposed in transaction payload.
Values:
- bool
- u8
- u16
- u32
- u64
- u128
- u256
- address
- signer
- vector: vector<{non-reference MoveTypeId}>
- struct: {address}::{module_name}::{struct_name}::<{generic types}>
Vector type value examples:
- `vector<u8>`
- `vector<vector<u64>>`
- `vector<0x1::coin::CoinStore<0x1::aptos_coin::AptosCoin>>`
Struct type value examples:
- `0x1::coin::CoinStore<0x1::aptos_coin::AptosCoin>
- `0x1::account::Account`
Note:
1. Empty chars should be ignored when comparing 2 struct tag ids.
2. When used in an URL path, should be encoded by url-encoding (AKA percent-encoding).
The JSON representation of the event
A string containing a 64-bit unsigned integer.
We represent u64 values as a string to ensure compatibility with languages such as JavaScript that do not parse u64s in JSON natively.
Look up a transaction by its hash. This is the same hash that is returned by the API when submitting a transaction (see PendingTransaction).
When given a transaction hash, the server first looks for the transaction in storage (on-chain, committed). If no on-chain transaction is found, it looks the transaction up by hash in the mempool (pending, not yet committed).
To create a transaction hash by yourself, do the following:
SHA3-256
to the hash message bytes.0x
prefix.Hash of transaction to retrieve
Enum of the different types of transactions in Aptos
A hex encoded 32 byte Aptos account address.
This is represented in a string as a 64 character hex string, sometimes shortened by stripping leading 0s, and adding a 0x.
For example, address 0x0000000000000000000000000000000000000000000000000000000000000001 is represented as 0x1.
A string containing a 64-bit unsigned integer.
We represent u64 values as a string to ensure compatibility with languages such as JavaScript that do not parse u64s in JSON natively.
A string containing a 64-bit unsigned integer.
We represent u64 values as a string to ensure compatibility with languages such as JavaScript that do not parse u64s in JSON natively.
A string containing a 64-bit unsigned integer.
We represent u64 values as a string to ensure compatibility with languages such as JavaScript that do not parse u64s in JSON natively.
A string containing a 64-bit unsigned integer.
We represent u64 values as a string to ensure compatibility with languages such as JavaScript that do not parse u64s in JSON natively.
An enum of the possible transaction payloads
Entry function id is string representation of a entry function defined on-chain.
Format: {address}::{module name}::{function name}
Both module name
and function name
are case-sensitive.
Type arguments of the function
String representation of an on-chain Move type tag that is exposed in transaction payload.
Values:
- bool
- u8
- u16
- u32
- u64
- u128
- u256
- address
- signer
- vector: vector<{non-reference MoveTypeId}>
- struct: {address}::{module_name}::{struct_name}::<{generic types}>
Vector type value examples:
- `vector<u8>`
- `vector<vector<u64>>`
- `vector<0x1::coin::CoinStore<0x1::aptos_coin::AptosCoin>>`
Struct type value examples:
- `0x1::coin::CoinStore<0x1::aptos_coin::AptosCoin>
- `0x1::account::Account`
Note:
1. Empty chars should be ignored when comparing 2 struct tag ids.
2. When used in an URL path, should be encoded by url-encoding (AKA percent-encoding).
Arguments of the function
An enum representing the different transaction signatures available
All bytes (Vec) data is represented as hex-encoded string prefixed with 0x
and fulfilled with
two hex digits per byte.
Unlike the Address
type, HexEncodedBytes will not trim any zeros.
All bytes (Vec) data is represented as hex-encoded string prefixed with 0x
and fulfilled with
two hex digits per byte.
Unlike the Address
type, HexEncodedBytes will not trim any zeros.
This allows you to submit multiple transactions. The response has three outcomes:
To submit a transaction as JSON, you must submit a SubmitTransactionRequest. To build this request, do the following:
To submit a transaction as BCS, you must submit a SignedTransaction
encoded as BCS. See SignedTransaction in types/src/transaction/mod.rs.
Make sure to use the application/x.aptos.signed_transaction+bcs
Content-Type.
A hex encoded 32 byte Aptos account address.
This is represented in a string as a 64 character hex string, sometimes shortened by stripping leading 0s, and adding a 0x.
For example, address 0x0000000000000000000000000000000000000000000000000000000000000001 is represented as 0x1.
A string containing a 64-bit unsigned integer.
We represent u64 values as a string to ensure compatibility with languages such as JavaScript that do not parse u64s in JSON natively.
A string containing a 64-bit unsigned integer.
We represent u64 values as a string to ensure compatibility with languages such as JavaScript that do not parse u64s in JSON natively.
A string containing a 64-bit unsigned integer.
We represent u64 values as a string to ensure compatibility with languages such as JavaScript that do not parse u64s in JSON natively.
A string containing a 64-bit unsigned integer.
We represent u64 values as a string to ensure compatibility with languages such as JavaScript that do not parse u64s in JSON natively.
An enum of the possible transaction payloads
Entry function id is string representation of a entry function defined on-chain.
Format: {address}::{module name}::{function name}
Both module name
and function name
are case-sensitive.
Type arguments of the function
String representation of an on-chain Move type tag that is exposed in transaction payload.
Values:
- bool
- u8
- u16
- u32
- u64
- u128
- u256
- address
- signer
- vector: vector<{non-reference MoveTypeId}>
- struct: {address}::{module_name}::{struct_name}::<{generic types}>
Vector type value examples:
- `vector<u8>`
- `vector<vector<u64>>`
- `vector<0x1::coin::CoinStore<0x1::aptos_coin::AptosCoin>>`
Struct type value examples:
- `0x1::coin::CoinStore<0x1::aptos_coin::AptosCoin>
- `0x1::account::Account`
Note:
1. Empty chars should be ignored when comparing 2 struct tag ids.
2. When used in an URL path, should be encoded by url-encoding (AKA percent-encoding).
Arguments of the function
An enum representing the different transaction signatures available
All bytes (Vec) data is represented as hex-encoded string prefixed with 0x
and fulfilled with
two hex digits per byte.
Unlike the Address
type, HexEncodedBytes will not trim any zeros.
All bytes (Vec) data is represented as hex-encoded string prefixed with 0x
and fulfilled with
two hex digits per byte.
Unlike the Address
type, HexEncodedBytes will not trim any zeros.
Summary of the failed transactions
This is the generic struct we use for all API errors, it contains a string message and an Aptos API specific error code.
A message describing the error
These codes provide more granular error information beyond just the HTTP status code of the response.
A code providing VM error details when submitting transactions to the VM
The index of which transaction failed, same as submission order
This endpoint accepts transaction submissions in two formats.
To submit a transaction as JSON, you must submit a SubmitTransactionRequest. To build this request, do the following:
To submit a transaction as BCS, you must submit a SignedTransaction
encoded as BCS. See SignedTransaction in types/src/transaction/mod.rs.
Make sure to use the application/x.aptos.signed_transaction+bcs
Content-Type.
A hex encoded 32 byte Aptos account address.
This is represented in a string as a 64 character hex string, sometimes shortened by stripping leading 0s, and adding a 0x.
For example, address 0x0000000000000000000000000000000000000000000000000000000000000001 is represented as 0x1.
A string containing a 64-bit unsigned integer.
We represent u64 values as a string to ensure compatibility with languages such as JavaScript that do not parse u64s in JSON natively.
A string containing a 64-bit unsigned integer.
We represent u64 values as a string to ensure compatibility with languages such as JavaScript that do not parse u64s in JSON natively.
A string containing a 64-bit unsigned integer.
We represent u64 values as a string to ensure compatibility with languages such as JavaScript that do not parse u64s in JSON natively.
A string containing a 64-bit unsigned integer.
We represent u64 values as a string to ensure compatibility with languages such as JavaScript that do not parse u64s in JSON natively.
An enum of the possible transaction payloads
Entry function id is string representation of a entry function defined on-chain.
Format: {address}::{module name}::{function name}
Both module name
and function name
are case-sensitive.
Type arguments of the function
String representation of an on-chain Move type tag that is exposed in transaction payload.
Values:
- bool
- u8
- u16
- u32
- u64
- u128
- u256
- address
- signer
- vector: vector<{non-reference MoveTypeId}>
- struct: {address}::{module_name}::{struct_name}::<{generic types}>
Vector type value examples:
- `vector<u8>`
- `vector<vector<u64>>`
- `vector<0x1::coin::CoinStore<0x1::aptos_coin::AptosCoin>>`
Struct type value examples:
- `0x1::coin::CoinStore<0x1::aptos_coin::AptosCoin>
- `0x1::account::Account`
Note:
1. Empty chars should be ignored when comparing 2 struct tag ids.
2. When used in an URL path, should be encoded by url-encoding (AKA percent-encoding).
Arguments of the function
An enum representing the different transaction signatures available
All bytes (Vec) data is represented as hex-encoded string prefixed with 0x
and fulfilled with
two hex digits per byte.
Unlike the Address
type, HexEncodedBytes will not trim any zeros.
All bytes (Vec) data is represented as hex-encoded string prefixed with 0x
and fulfilled with
two hex digits per byte.
Unlike the Address
type, HexEncodedBytes will not trim any zeros.
A hex encoded 32 byte Aptos account address.
This is represented in a string as a 64 character hex string, sometimes shortened by stripping leading 0s, and adding a 0x.
For example, address 0x0000000000000000000000000000000000000000000000000000000000000001 is represented as 0x1.
A string containing a 64-bit unsigned integer.
We represent u64 values as a string to ensure compatibility with languages such as JavaScript that do not parse u64s in JSON natively.
A string containing a 64-bit unsigned integer.
We represent u64 values as a string to ensure compatibility with languages such as JavaScript that do not parse u64s in JSON natively.
A string containing a 64-bit unsigned integer.
We represent u64 values as a string to ensure compatibility with languages such as JavaScript that do not parse u64s in JSON natively.
A string containing a 64-bit unsigned integer.
We represent u64 values as a string to ensure compatibility with languages such as JavaScript that do not parse u64s in JSON natively.
An enum of the possible transaction payloads
Entry function id is string representation of a entry function defined on-chain.
Format: {address}::{module name}::{function name}
Both module name
and function name
are case-sensitive.
Type arguments of the function
String representation of an on-chain Move type tag that is exposed in transaction payload.
Values:
- bool
- u8
- u16
- u32
- u64
- u128
- u256
- address
- signer
- vector: vector<{non-reference MoveTypeId}>
- struct: {address}::{module_name}::{struct_name}::<{generic types}>
Vector type value examples:
- `vector<u8>`
- `vector<vector<u64>>`
- `vector<0x1::coin::CoinStore<0x1::aptos_coin::AptosCoin>>`
Struct type value examples:
- `0x1::coin::CoinStore<0x1::aptos_coin::AptosCoin>
- `0x1::account::Account`
Note:
1. Empty chars should be ignored when comparing 2 struct tag ids.
2. When used in an URL path, should be encoded by url-encoding (AKA percent-encoding).
Arguments of the function
An enum representing the different transaction signatures available
All bytes (Vec) data is represented as hex-encoded string prefixed with 0x
and fulfilled with
two hex digits per byte.
Unlike the Address
type, HexEncodedBytes will not trim any zeros.
All bytes (Vec) data is represented as hex-encoded string prefixed with 0x
and fulfilled with
two hex digits per byte.
Unlike the Address
type, HexEncodedBytes will not trim any zeros.