Skip to content

Get blocks by height

GET
/blocks/by_height/{block_height}
curl 'https://api.mainnet.aptoslabs.com/v1/blocks/by_height/{block_height}'

This endpoint allows you to get the transactions in a block and the corresponding block information.

Transactions are limited by max default transactions size. If not all transactions are present, the user will need to query for the rest of the transactions via the get transactions API.

If the block is pruned, it will return a 410

Parameters

Path Parameters

block_height
required
integer format: uint64

Block height to lookup. Starts at 0

Query Parameters

with_transactions
boolean

If set to true, include all transactions in the block

If not provided, no transactions will be retrieved

Responses

200

A Block with or without transactions

This contains the information about a transactions along with associated transactions if requested

object
block_height
required

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 format: uint64
32425224034
block_hash
required
string
block_timestamp
required

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 format: uint64
32425224034
first_version
required

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 format: uint64
32425224034
last_version
required

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 format: uint64
32425224034
transactions

The transactions in the block in sequential order

Array<object>
One of: discriminator: type

Enum of the different types of transactions in Aptos

object
type
required
string
Allowed values: pending_transaction
pending_transaction
hash
required
string
sender
required

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.

string format: hex
0x88fbd33f54e1126269769780feb24480428179f552e2313fbe571b72e62a1ca1
sequence_number
required

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 format: uint64
32425224034
max_gas_amount
required

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 format: uint64
32425224034
gas_unit_price
required

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 format: uint64
32425224034
expiration_timestamp_secs
required

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 format: uint64
32425224034
payload
required
One of: discriminator: type

An enum of the possible transaction payloads

object
type
required
string
Allowed values: entry_function_payload
entry_function_payload
function
required

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.

string
0x1::aptos_coin::transfer
type_arguments
required

Type arguments of the function

Array<string>
arguments
required

Arguments of the function

Array
signature
One of: discriminator: type

An enum representing the different transaction signatures available

object
type
required
string
Allowed values: ed25519_signature
ed25519_signature
public_key
required

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.

string format: hex
0x88fbd33f54e1126269769780feb24480428179f552e2313fbe571b72e62a1ca1
signature
required

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.

string format: hex
0x88fbd33f54e1126269769780feb24480428179f552e2313fbe571b72e62a1ca1

Headers

X-APTOS-CHAIN-ID
required
integer format: uint8

Chain ID of the current chain

X-APTOS-LEDGER-VERSION
required
integer format: uint64

Current ledger version of the chain

X-APTOS-LEDGER-OLDEST-VERSION
required
integer format: uint64

Oldest non-pruned ledger version of the chain

X-APTOS-LEDGER-TIMESTAMPUSEC
required
integer format: uint64

Current timestamp of the chain

X-APTOS-EPOCH
required
integer format: uint64

Current epoch of the chain

X-APTOS-BLOCK-HEIGHT
required
integer format: uint64

Current block height of the chain

X-APTOS-OLDEST-BLOCK-HEIGHT
required
integer format: uint64

Oldest non-pruned block height of the chain

X-APTOS-GAS-USED
integer format: uint64

The cost of the call in terms of gas

X-APTOS-CURSOR
string

Cursor to be used for endpoints that support cursor-based pagination. Pass this to the start field of the endpoint on the next call to get the next page of results.

400

application/json

This is the generic struct we use for all API errors, it contains a string message and an Aptos API specific error code.

object
message
required

A message describing the error

string
error_code
required

These codes provide more granular error information beyond just the HTTP status code of the response.

string
Allowed values: account_not_found resource_not_found module_not_found struct_field_not_found version_not_found transaction_not_found table_item_not_found block_not_found state_value_not_found version_pruned block_pruned invalid_input invalid_transaction_update sequence_number_too_old vm_error health_check_failed mempool_is_full internal_error web_framework_error bcs_not_supported api_disabled
vm_error_code

A code providing VM error details when submitting transactions to the VM

integer format: uint64

Headers

X-APTOS-CHAIN-ID
integer format: uint8

Chain ID of the current chain

X-APTOS-LEDGER-VERSION
integer format: uint64

Current ledger version of the chain

X-APTOS-LEDGER-OLDEST-VERSION
integer format: uint64

Oldest non-pruned ledger version of the chain

X-APTOS-LEDGER-TIMESTAMPUSEC
integer format: uint64

Current timestamp of the chain

X-APTOS-EPOCH
integer format: uint64

Current epoch of the chain

X-APTOS-BLOCK-HEIGHT
integer format: uint64

Current block height of the chain

X-APTOS-OLDEST-BLOCK-HEIGHT
integer format: uint64

Oldest non-pruned block height of the chain

X-APTOS-GAS-USED
integer format: uint64

The cost of the call in terms of gas

403

application/json

This is the generic struct we use for all API errors, it contains a string message and an Aptos API specific error code.

object
message
required

A message describing the error

string
error_code
required

These codes provide more granular error information beyond just the HTTP status code of the response.

string
Allowed values: account_not_found resource_not_found module_not_found struct_field_not_found version_not_found transaction_not_found table_item_not_found block_not_found state_value_not_found version_pruned block_pruned invalid_input invalid_transaction_update sequence_number_too_old vm_error health_check_failed mempool_is_full internal_error web_framework_error bcs_not_supported api_disabled
vm_error_code

A code providing VM error details when submitting transactions to the VM

integer format: uint64

Headers

X-APTOS-CHAIN-ID
integer format: uint8

Chain ID of the current chain

X-APTOS-LEDGER-VERSION
integer format: uint64

Current ledger version of the chain

X-APTOS-LEDGER-OLDEST-VERSION
integer format: uint64

Oldest non-pruned ledger version of the chain

X-APTOS-LEDGER-TIMESTAMPUSEC
integer format: uint64

Current timestamp of the chain

X-APTOS-EPOCH
integer format: uint64

Current epoch of the chain

X-APTOS-BLOCK-HEIGHT
integer format: uint64

Current block height of the chain

X-APTOS-OLDEST-BLOCK-HEIGHT
integer format: uint64

Oldest non-pruned block height of the chain

X-APTOS-GAS-USED
integer format: uint64

The cost of the call in terms of gas

404

application/json

This is the generic struct we use for all API errors, it contains a string message and an Aptos API specific error code.

object
message
required

A message describing the error

string
error_code
required

These codes provide more granular error information beyond just the HTTP status code of the response.

string
Allowed values: account_not_found resource_not_found module_not_found struct_field_not_found version_not_found transaction_not_found table_item_not_found block_not_found state_value_not_found version_pruned block_pruned invalid_input invalid_transaction_update sequence_number_too_old vm_error health_check_failed mempool_is_full internal_error web_framework_error bcs_not_supported api_disabled
vm_error_code

A code providing VM error details when submitting transactions to the VM

integer format: uint64

Headers

X-APTOS-CHAIN-ID
integer format: uint8

Chain ID of the current chain

X-APTOS-LEDGER-VERSION
integer format: uint64

Current ledger version of the chain

X-APTOS-LEDGER-OLDEST-VERSION
integer format: uint64

Oldest non-pruned ledger version of the chain

X-APTOS-LEDGER-TIMESTAMPUSEC
integer format: uint64

Current timestamp of the chain

X-APTOS-EPOCH
integer format: uint64

Current epoch of the chain

X-APTOS-BLOCK-HEIGHT
integer format: uint64

Current block height of the chain

X-APTOS-OLDEST-BLOCK-HEIGHT
integer format: uint64

Oldest non-pruned block height of the chain

X-APTOS-GAS-USED
integer format: uint64

The cost of the call in terms of gas

410

application/json

This is the generic struct we use for all API errors, it contains a string message and an Aptos API specific error code.

object
message
required

A message describing the error

string
error_code
required

These codes provide more granular error information beyond just the HTTP status code of the response.

string
Allowed values: account_not_found resource_not_found module_not_found struct_field_not_found version_not_found transaction_not_found table_item_not_found block_not_found state_value_not_found version_pruned block_pruned invalid_input invalid_transaction_update sequence_number_too_old vm_error health_check_failed mempool_is_full internal_error web_framework_error bcs_not_supported api_disabled
vm_error_code

A code providing VM error details when submitting transactions to the VM

integer format: uint64

Headers

X-APTOS-CHAIN-ID
integer format: uint8

Chain ID of the current chain

X-APTOS-LEDGER-VERSION
integer format: uint64

Current ledger version of the chain

X-APTOS-LEDGER-OLDEST-VERSION
integer format: uint64

Oldest non-pruned ledger version of the chain

X-APTOS-LEDGER-TIMESTAMPUSEC
integer format: uint64

Current timestamp of the chain

X-APTOS-EPOCH
integer format: uint64

Current epoch of the chain

X-APTOS-BLOCK-HEIGHT
integer format: uint64

Current block height of the chain

X-APTOS-OLDEST-BLOCK-HEIGHT
integer format: uint64

Oldest non-pruned block height of the chain

X-APTOS-GAS-USED
integer format: uint64

The cost of the call in terms of gas

500

application/json

This is the generic struct we use for all API errors, it contains a string message and an Aptos API specific error code.

object
message
required

A message describing the error

string
error_code
required

These codes provide more granular error information beyond just the HTTP status code of the response.

string
Allowed values: account_not_found resource_not_found module_not_found struct_field_not_found version_not_found transaction_not_found table_item_not_found block_not_found state_value_not_found version_pruned block_pruned invalid_input invalid_transaction_update sequence_number_too_old vm_error health_check_failed mempool_is_full internal_error web_framework_error bcs_not_supported api_disabled
vm_error_code

A code providing VM error details when submitting transactions to the VM

integer format: uint64

Headers

X-APTOS-CHAIN-ID
integer format: uint8

Chain ID of the current chain

X-APTOS-LEDGER-VERSION
integer format: uint64

Current ledger version of the chain

X-APTOS-LEDGER-OLDEST-VERSION
integer format: uint64

Oldest non-pruned ledger version of the chain

X-APTOS-LEDGER-TIMESTAMPUSEC
integer format: uint64

Current timestamp of the chain

X-APTOS-EPOCH
integer format: uint64

Current epoch of the chain

X-APTOS-BLOCK-HEIGHT
integer format: uint64

Current block height of the chain

X-APTOS-OLDEST-BLOCK-HEIGHT
integer format: uint64

Oldest non-pruned block height of the chain

X-APTOS-GAS-USED
integer format: uint64

The cost of the call in terms of gas

503

application/json

This is the generic struct we use for all API errors, it contains a string message and an Aptos API specific error code.

object
message
required

A message describing the error

string
error_code
required

These codes provide more granular error information beyond just the HTTP status code of the response.

string
Allowed values: account_not_found resource_not_found module_not_found struct_field_not_found version_not_found transaction_not_found table_item_not_found block_not_found state_value_not_found version_pruned block_pruned invalid_input invalid_transaction_update sequence_number_too_old vm_error health_check_failed mempool_is_full internal_error web_framework_error bcs_not_supported api_disabled
vm_error_code

A code providing VM error details when submitting transactions to the VM

integer format: uint64

Headers

X-APTOS-CHAIN-ID
integer format: uint8

Chain ID of the current chain

X-APTOS-LEDGER-VERSION
integer format: uint64

Current ledger version of the chain

X-APTOS-LEDGER-OLDEST-VERSION
integer format: uint64

Oldest non-pruned ledger version of the chain

X-APTOS-LEDGER-TIMESTAMPUSEC
integer format: uint64

Current timestamp of the chain

X-APTOS-EPOCH
integer format: uint64

Current epoch of the chain

X-APTOS-BLOCK-HEIGHT
integer format: uint64

Current block height of the chain

X-APTOS-OLDEST-BLOCK-HEIGHT
integer format: uint64

Oldest non-pruned block height of the chain

X-APTOS-GAS-USED
integer format: uint64

The cost of the call in terms of gas