v50

latestOpenAPI 3.0.0Apache 2.0raw.githubusercontent.com2026-06-1829190524.6 KB
Tables

Get raw table item

Get a table item at a specific ledger version from the table identified by {table_handle} in the path and the "key" (RawTableItemRequest) provided in the request body.

The get_raw_table_item requires only a serialized key comparing to the full move type information comparing to the get_table_item api, and can only return the query in the bcs format.

The Aptos nodes prune account state history, via a configurable time window. If the requested ledger version has been pruned, the server responds with a 410.

post/tables/{table_handle}/raw_item

Path parameters

table_handlestring hex 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.

Table handle hex encoded 32-byte string

Query parameters

ledger_versionstring uint64

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.

Example:32425224034

Ledger version to get state of account

If not provided, it will be the latest version

Request body

keystring hex required

All bytes (Vec<u8>) 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.

Response

MoveValue required

This is a JSON representation of some data within an account resource. More specifically, it is a map of strings to arbitrary JSON values / objects, where the keys are top level fields within the given resource.

To clarify, you might query for 0x1::account::Account and see the example data.

Move bool type value is serialized into boolean.

Move u8, u16, u32, i8, i16, and i32 type value is serialized into integer.

Move u64, u128, u256, i64, i128, and i256 type value is serialized into string.

Move address type value (32 byte Aptos account address) is serialized into a HexEncodedBytes string. For example:

  • 0x1
  • 0x1668f6be25668c1a17cd8caf6b8d2f25

Move vector type value is serialized into array, except vector<u8> which is serialized into a HexEncodedBytes string with 0x prefix. For example:

  • vector<u64>{255, 255} => ["255", "255"]
  • vector<u8>{255, 255} => 0xffff

Move struct type value is serialized into object that looks like this (except some Move stdlib types, see the following section):

{
  field1_name: field1_value,
  field2_name: field2_value,
  ......
}

For example: { "created": "0xa550c18", "role_id": "0" }

Special serialization for Move stdlib types:

  • 0x1::string::String is serialized into string. For example, struct value 0x1::string::String{bytes: b"Hello World!"} is serialized as "Hello World!" in JSON.

Example response

{
  "authentication_key": "0x0000000000000000000000000000000000000000000000000000000000000001",
  "coin_register_events": {
    "counter": "0",
    "guid": {
      "id": {
        "addr": "0x1",
        "creation_num": "0"
      }
    }
  },
  "self_address": "0x1",
  "sequence_number": "0"
}