Skip to content
🎉 Welcome to the new Aptos Docs! Click here to submit feedback!
Build
Indexer API Table Reference

Indexer API Reference

The Indexer API allows you to access rich data about tokens, accounts, transactions, and events on-chain using GraphQL queries.

You can interactively explore the data discussed here using Hasura explorers here:

Or via code at the following endpoints:

  • Mainnet: https://api.mainnet.aptoslabs.com/v1/graphql
  • Testnet: https://api.testnet.aptoslabs.com/v1/graphql
  • Devnet: https://api.devnet.aptoslabs.com/v1/graphql

You can also find a list of the most common queries in the sidebar under example queries.

As you explore, you can refer back to these reference docs to understand the tables you are interested in. You should use Ctrl + F to quickly find the right entry for that table.

At the bottom of this page we list the tables which are deprecated, along with any alternatives which may replace them. Make sure to check the list before building any production infrastructure that relies heavily on specific Indexer tables.

If you are looking up a table with the _by_pk suffix, search for the table name without that suffix. _by_pk tables are automatically generated for convenience to allow querying by primary key.

Indexer Table Reference

Remember to use Ctrl + F to find the table you are interested in! When in doubt, you may also want to query the Hasura tables above to see examples of the data inside.

General

account_transactions

Has an aggregate view for summary data called account_transactions_aggregate

This table maps accounts and transactions that interact with that account.

FieldTypePrimary KeyDescription
coin_activitiesJoinUse the Hasura explorer to see these sub-fields.
coin_activities_aggregateJoinUse the Hasura explorer to see these sub-fields.
delegated_staking_activitiesJoinUse the Hasura explorer to see these sub-fields.
fungible_asset_activitiesJoinReferences fungible_asset_activities.
token_activitiesJoinUse the Hasura explorer to see these sub-fields.
token_activities_aggregateJoinUse the Hasura explorer to see these sub-fields.
token_activities_v2JoinReferences token_activities_v2.
token_activities_v2_aggregateJoinReferences token_activities_v2.
account_addressString!YesThis is an Aptos account address. Ex. “0x50bc83f01d48ab3b9c00048542332201ab9cbbea61bda5f48bf81dc506caa78a”
transaction_versionbigint!YesBlockchain version of the transaction. Ex. 10000000

ledger_infos

This table shares what chain is currently being queried.

FieldTypePrimary KeyDescription
chain_idintYesThe unique identifier for the chain you are accessing. Ex. 1 (for Mainnet), 2 (for Testnet), etc.

processor_status

This table shares how current this processor’s data is.

gives you latest version processed per “processor”

FieldTypePrimary KeyDescription
last_success_versionbigintYesThe version number of the last successful processor run. Ex. 5000000
last_transaction_timestampStringTimestamp of the last processed transaction. Ex. “2024-04-17T02:14:25.68771”
last_updatedStringTimestamp of the last update to this processor’s status. Ex. “2024-04-17T02:14:25.68771”
processorStringYesName of the processor. Ex. “transaction_processor”

NFT

token_activities_v2

Has an aggregate view for summary data called token_activities_v2_aggregate

This table tracks token activities and is especially useful for tracking NFT activity. This includes both v1 and v2 data.

FieldTypePrimary KeyDescription
aptos_names_fromJoinUse the Hasura explorer to see these sub-fields.
aptos_names_from_aggregateJoinUse the Hasura explorer to see these sub-fields.
aptos_names_toJoinUse the Hasura explorer to see these sub-fields.
aptos_names_to_aggregateJoinUse the Hasura explorer to see these sub-fields.
current_token_dataJoinUse the Hasura explorer to see these sub-fields.
after_valueStringThe value of a token property after the transaction. Ex. “100”
before_valueStringThe value of a token property before the transaction. Ex. “50”
entry_function_id_strStringThe identifier of the function called in this transaction. Ex. “0x1::aptos_account::transfer”
event_account_addressStringThis is an Aptos account address related to the event. This address must be 66 characters long, and so may be 0 padded. Ex. “0x50bc83f01d48ab3b9c00048542332201ab9cbbea61bda5f48bf81dc506caa78a”
event_indexbigintYesIndex of the event within the transaction. Ex. 1
from_addressStringThis is an Aptos account address from which the token was sent. This address must be 66 characters long, and so may be 0 padded. Ex. “0x50bc83f01d48ab3b9c00048542332201ab9cbbea61bda5f48bf81dc506caa78a”
is_fungible_v2BooleanIndicates whether the token is fungible. Soon to be deprecated. Ex. False for NFTs.
property_version_v1bigintThe version of the token’s properties under schema version 1. This field is only for token standard v1. It is always 0 for v2. Ex. 0
to_addressStringThis is an Aptos account address to which the token was sent. This address must be 66 characters long, and so may be 0 padded. Ex. “0x50bc83f01d48ab3b9c00048542332201ab9cbbea61bda5f48bf81dc506caa78a”
token_amountbigintThe amount of the token transferred in this activity. Ex. 3
token_data_idStringUnique identifier for this particular token’s data. For token standard v1, this is derived from a combination of creator_address, collection_name, and token_name. This ID must be 66 characters long, and so may be 0 padded. Ex. “0x50bc83f01d48ab3b9c00048542332201ab9cbbea61bda5f48bf81dc506caa78a”
token_standardStringAptos standard that the collection adheres to. Ex. “v1”
transaction_timestampStringTimestamp when the transaction occurred. Ex. “2024-04-17T02:14:25.68771”
transaction_versionbigintYesBlockchain version of the transaction. Ex. 10000000
typeStringType of transfer - like “deposit” or “withdrawal”. Ex. “0x3::token::DepositEvent”

nft_metadata_crawler_parsed_asset_uris

This table allows you to look up the cdn and uris for NFT images / content.

FieldTypePrimary KeyDescription
animation_optimizer_retry_countIntNumber of retries to optimize animation. Ex. 3
asset_uriStringYesURI of the asset. Ex. “https://example.com/nft/123
cdn_animation_uriStringContent Delivery Network URI for animation. Ex. “https://cdn.example.com/animations/123
cdn_image_uriStringContent Delivery Network URI for image. Ex. “https://cdn.example.com/images/123
cdn_json_uriStringContent Delivery Network URI for JSON metadata. Ex. “https://cdn.example.com/metadata/123.json
raw_animation_uriStringOriginal URI for animation before CDN optimization. Ex. “https://example.com/raw/animations/123
raw_image_uriStringOriginal URI for image before CDN optimization. Ex. “https://example.com/raw/images/123

current_token_ownerships_v2

Has an aggregate view for summary data called current_token_ownerships_v2_aggregate

This table tracks who owns which NFTs. This includes both v1 and v2 tokens. Fungible tokens are not tracked as consistently.

FieldTypePrimary KeyDescription
composed_nfts_aggregateJoinAggregate information about the composed NFTs, such as count or other statistics.
current_token_dataJoinDetailed information about the token’s current data; structure is defined in a related table.
amountbigintThe amount of the token owned. Example: 1 for an NFT.
composed_nftsArrayAn array containing the IDs of NFTs that compose this token, if applicable.
is_fungible_v2BooleanIndicates whether the token is fungible. Example: true or null
is_soulbound_v2BooleanIndicates whether the token is soulbound (non-transferable once owned). Example: true or null
last_transaction_timestampStringTimestamp of the last transaction involving the token. Example: “2024-04-17T02:14:25.68771”
last_transaction_versionbigintThe version number of the last transaction involving the token. Example: 20747031
non_transferrable_by_ownerBooleanIndicates whether the token is non-transferrable by the owner. Example: true or null
owner_addressStringYesThe Aptos account address that currently owns the token. Addresses must be 66 characters so may be 0 padded. Example: “0xa815a9a09105973084bfc31530e7c8f002846787c2f0521e1e34dc144ad83b89”
property_version_v1bigintYesThe version number of the token’s properties as of the last update. This field is only for token standard v1. It is always 0 for v2. Example: 0
storage_idStringYesA unique identifier used for storage purposes. IDs must be 66 characters long, so may be 0 padded. Ex. “0xd8d41ff9f67d17d7dee061b5b683b92013b420cb6a30c21fc7c287454792d7a8”
table_type_v1StringThe Move function type. Example: “0x3::token::TokenStore”
token_data_idStringYesA unique identifier for the token data, typically a hash or a numeric ID. Ex. “0x3d911af2dc3e47848fbba17b8694cf526942be183b84f8393a6c048232fb976d”
token_properties_mutated_v1ObjectProperties of the token that have been mutated from the original. Often in JSON or similar format. Example:
token_standardStringThe standard used to generate this token. Ex. “v1” or “v2”

current_token_datas_v2

This table tracks the metadata associated with each NFT (Ex. URI, supply, etc.). This tracks both v1 and v2 tokens.

FieldTypePrimary KeyDescription
cdn_asset_urisJoinUse the Hasura explorer to see these sub-fields.
current_collectionJoinUse the Hasura explorer to see these sub-fields.
current_token_ownershipsJoinUse the Hasura explorer to see these sub-fields.
current_token_ownerships_aggregateJoinUse the Hasura explorer to see these sub-fields.
aptos_nameStringThis is a name tied to this token using the Aptos Name Service (ANS). Ex. “EpicDragon”
collection_idStringYesIdentifier for the collection that includes this token. Ex. “0x360f6eeabb4d7a9d2fab1f35b01e02831e3b5c4b73c7fd6c98dcc1c301c817c8”
decimalsbigintNumber of decimal places for token value, typically for fungible tokens. Ex. 18
descriptionStringDescription of the token. Ex. “A legendary dragon from the mystical lands.”
is_fungible_v2BooleanWhether the token is fungible. Ex. False for NFTs
largest_property_version_v1bigintThe largest version number of the token’s properties under the first schema. Ex. 1
last_transaction_timestampbigintUnix timestamp of the last transaction involving this token. Ex. 2024-03-27T07:41:58.800893
last_transaction_versionbigintBlockchain version of the last transaction involving this token. Ex. 30000000
maximumbigintMaximum possible quantity of this token, relevant for fungibles. Ex. 1000000
supplybigintCurrent supply of the token in circulation. Ex. 500000
token_data_idStringUnique identifier for the token’s data. Ex. “0xa815a9a09105973084bfc31530e7c8f002846787c2f0521e1e34dc144ad83b89”
token_nameStringThe formal name of the token. Ex. “Mystic Dragon”
token_propertiesObjectUse the Hasura explorer to see these sub-fields.
token_standardStringAptos standard that the collection adheres to. Ex. “v1”
token_uriStringURI linking to further information about the token. Ex. “https://example.com/tokens/987654321

current_collections_v2

This table tracks the metadata associated with each NFT collection (Ex. collection_id, creator_address, etc.). This tracks both v1 and v2 tokens.

FieldTypePrimary KeyDescription
cdn_asset_urisJoinUse the Hasura explorer to see these sub-fields.
collection_idStringYesUnique identifier for the collection. IDs must be 66 characters long, and so may be 0 padded. Ex. “0xa815a9a09105973084bfc31530e7c8f002846787c2f0521e1e34dc144ad83b88”
collection_nameStringThe formal name of the collection. Ex. “Mythic Dragons”
creator_addressStringThis is an Aptos account address that created the collection. Addresses must be 66 characters long, and so may be 0 padded. Ex. “0x50bc83f01d48ab3b9c00048542332201ab9cbbea61bda5f48bf81dc506caa78a”
current_supplybigintCurrent supply of tokens in this collection. Ex. 500
descriptionStringDescription of the collection. Ex. “A collection of rare digital dragons.”
last_transaction_timestampStringTimestamp of the last transaction involving this collection. Ex. “2024-04-17T02:14:25.68771”
last_transaction_versionbigintBlockchain version of the last transaction involving this collection. Ex. 3000000002
max_supplybigintMaximum possible quantity of tokens in this collection. If the max supply is 0, there is no limit on the supply. Ex. 1000
mutable_descriptionStringChangeable description of the collection. Ex. “Updated collection description.”
mutable_uriBooleanTrue if the uri is changeable by the creator. Ex. True
table_handle_v1StringLegacy identifier handle for the collection in earlier schema versions. Ex. “handle_12345”
token_standardStringAptos standard that the collection adheres to. Ex. “v1”
total_minted_v2bigintTotal number of tokens minted in this collection under schema version 2. Ex. 800
uriStringThis is a URI to where the image live. This can also be JSON data. Ex. “https://example.com/collections/9876543210

current_collection_ownership_v2_view

Has an aggregate view for summary data called current_collection_ownership_v2_view_aggregate

This table maps collections to who owns them and helps count how much of a collection is owned by other accounts.

FieldTypePrimary KeyDescription
current_collectionJoinUse the Hasura explorer to see these sub-fields.
collection_idStringYesUnique identifier for the collection. IDs must be 66 characters long, and so may be 0 padded. Ex. “0xa815a9a09105973084bfc31530e7c8f002846787c2f0521e1e34dc144ad83b89”
collection_nameStringThe formal name of the collection. Ex. “Mythic Dragons”
collection_uriStringURI linking to further information about the collection. Ex. “https://example.com/collections/9876543210
creator_addressStringThis is an Aptos account address that created the collection. Addresses must be 66 characters long, and so may be 0 padded. Ex. “0x50bc83f01d48ab3b9c00048542332201ab9cbbea61bda5f48bf81dc506caa78a”
distinct_tokensbigintThe count of distinct tokens owned within this collection. Ex. 150
last_transaction_versionbigintThe version number of the last transaction involving this collection. Ex. 3000000002
owner_addressStringYesThis is an Aptos account address that currently owns the token. Addresses must be 66 characters long, and so may be 0 padded. Ex. “0x50bc83f01d48ab3b9c00048542332201ab9cbbea61bda5f48bf81dc506caa78a”
single_token_uriStringURI linking to information about a specific token within the collection. Ex. “https://example.com/tokens/9876543210
token_standardStringAptos standard that the collection adheres to. Ex. “v1”

Fungible Assets

fungible_asset_metadata

This tracks the metadata tied to each fungible asset (ex. decimals of precision). It includes v1 token data.

FieldTypePrimary KeyDescription
asset_typeStringYesThe type of the asset, described by a Move resource. Ex. “0x1::aptos_coin::AptosCoin”
creator_addressStringThis is an Aptos account address that created the asset. Addresses must be 66 characters long, and so may be 0 padded. Ex. “0x50bc83f01d48ab3b9c00048542332201ab9cbbea61bda5f48bf81dc506caa78a”
decimalsbigintNumber of decimal places for token value, typically for fungible tokens. Ex. 18
icon_uriStringURI for the icon of the asset. Ex. “https://cdn.example.com/icons/123
last_transaction_timestampStringTimestamp of the last transaction involving this asset. Ex. “2024-04-17T02:14:25.68771”
last_transaction_versionbigintBlockchain version of the last transaction involving this asset. Ex. 10000000
nameStringThe formal name of the asset. Ex. “Digital Gold”
project_uriStringURI linking to the project information associated with this asset. Ex. “https://www.example.com/project_name/
supply_aggregator_table_handle_v1StringLegacy handle for the supply aggregator table from an earlier schema version. Ex. “handle_67890”
supply_aggregator_table_key_v1StringLegacy key for accessing the supply aggregator table in earlier schema versions. Ex. “key_12345”
symbolStringThe trading symbol of the asset. Ex. “DGOLD”
token_standardStringStandard that the asset adheres to. Ex. “v1”

fungible_asset_activities

This tracks the activity of fungible assets. It includes v1 token data.

FieldTypePrimary KeyDescription
owner_aptos_namesJoinReferences owner_aptos_names.
owner_aptos_names_aggregateJoinReferences owner_aptos_names.
amountbigintThe amount of the asset involved in the activity. Ex. 1000
asset_typeStringYesThe type of the asset, described by a Move resource. For fungible assets, this will be the address of the metadata object. Ex. “0x1::aptos_coin::AptosCoin”
block_heightbigintThe blockchain id at which this activity occurred. Ex. 1500000
entry_function_id_strStringThe identifier of the function called in this transaction. Ex. “0x1::aptos_account::transfer”
event_indexbigintIndex of the event within the transaction. Ex. 1
gas_fee_payer_addressStringThis is an Aptos account address that paid the gas fee for the transaction. Addresses must be 66 characters long, and so may be 0 padded. Ex. “0x50bc83f01d48ab3b9c00048542332201ab9cbbea61bda5f48bf81dc506caa78a”
is_frozenBooleanTrue if this activity is a freeze asset activity. Ex. null
is_gas_feeBooleanIndicates whether this activity involved a gas fee. Ex. True
is_transaction_successBooleanIndicates whether the transaction was successful. Ex. True
metadataObjectUse the Hasura explorer to see fields for metadata in this table.
owner_addressStringThis is an Aptos account address that owns the asset. Addresses must be 66 characters long, and so may be 0 padded. Ex. “0xa815a9a09105973084bfc31530e7c8f002846787c2f0521e1e34dc144ad83b89”
storage_idStringIdentifier for the storage used in the transaction. IDs must be 66 characters long, and so may be 0 padded. Ex. “0xa815a9a09105973084bfc31530e7c8f002846787c2f0521e1e34dc144ad83b89”
storage_refund_amountbigintAmount refunded for storage after the transaction. This is always in APT octas. Ex. 50
token_standardStringAptos standard that the collection adheres to. Ex. “v1”
transaction_timestampStringTimestamp when the transaction occurred. Ex. “2024-04-17T02:14:25.68771”
transaction_versionbigintBlockchain version of the transaction. Ex. 2
typeStringType of the transaction, described by a Move entry function. Ex. “0x1::coin::WithdrawEvent”

current_fungible_asset_balances

Has an aggregate view for summary data called current_fungible_asset_balances_aggregate

This tracks the asset balances of each account on-chain. It includes v1 token data.

FieldTypePrimary KeyDescription
amountbigintThe amount of the asset owned. Ex. 2000
asset_typeStringThe type of the asset, described by a Move resource. For v2 tokens this is the address of the fungible asset metadata object. For v1 it’s the fully qualified path of the move resource. Ex. “0x1::aptos_coin::AptosCoin”
is_frozenBooleanIndicates whether the account is frozen. Ex. False
is_primaryBooleanIndicates whether this is the primary balance of the owner. Ex. True
last_transaction_timestampStringTimestamp of the last transaction involving this balance. Ex. “2024-04-17T02:14:25.68771”
last_transaction_versionbigintBlockchain version of the last transaction involving this balance. Ex. 30000000
metadataObjectUse the Hasura explorer to see fields for metadata in current_fungible_asset_balances.
owner_addressStringThis is an Aptos account address that owns the asset. Addresses must be 66 characters long, and so may be 0 padded. Ex. “0xa815a9a09105973084bfc31530e7c8f002846787c2f0521e1e34dc144ad83b89”
storage_idStringYesIdentifier for the storage associated with this balance. IDs must be 66 characters long, and so may be 0 padded. Ex. “0xa815a9a09105973084bfc31530e7c8f002846787c2f0521e1e34dc144ad83b89”
token_standardStringAptos standard that the collection adheres to. Ex. “v1”

Aptos Naming Service (ANS)

current_aptos_names

Has an aggregate view for summary data called current_aptos_names_aggregate

This view of current_ans_lookup_v2 helps query by name instead of account.

FieldTypePrimary KeyDescription
domainStringThe domain associated with this Aptos name. Ex. “example.crypto”
domain_with_suffixStringThe full domain name including any suffix. Ex. “example.crypto.aptos”
expiration_timestampStringTimestamp when the domain registration expires. Ex. “2024-04-17T02:14:25.68771”
is_activeBooleanIndicates whether the domain is currently active. Ex. True
is_domain_ownerBooleanIndicates whether the registered address is the owner of the domain. Ex. False
is_primaryBooleanIndicates whether this is the primary domain for the registered address. Ex. True
last_transaction_versionbigintThe version number of the last transaction involving this domain. Ex. 5000000
owner_addressStringThis is an Aptos account address that owns the domain. Addresses must be 66 characters long, and so may be 0 padded. Ex. “0x123abc456def7890abcdef1234567890abcdef1234”
registered_addressStringThis is an Aptos account address registered to the domain. Addresses must be 66 characters long, and so may be 0 padded. Ex. “0x50bc83f01d48ab3b9c00048542332201ab9cbbea61bda5f48bf81dc506caa78a”
subdomainStringAny subdomain part of the domain name. Ex. “sub.example”
token_nameStringThe name of the token associated with this domain. Ex. “ExampleToken”
token_standardStringAptos standard that the collection adheres to. Ex. “v1”

current_ans_lookup_v2

This table maps tokens, standards, and addresses to human readable names.

FieldTypePrimary KeyDescription
domainStringYesThe domain associated with this Aptos name. Ex. “example.crypto”
expiration_timestampStringTimestamp when the domain registration expires. Ex. “2024-04-17T02:14:25.68771”
is_deletedBooleanIndicates whether the domain registration has been deleted. Ex. False
last_transaction_versionbigintThe version number of the last transaction involving this domain. Ex. 5000000
registered_addressStringThis is an Aptos account address registered to the domain. Addresses must be 66 characters long, and so may be 0 padded. Ex. “0x50bc83f01d48ab3b9c00048542332201ab9cbbea61bda5f48bf81dc506caa78a”
subdomainStringYesAny subdomain part of the domain name. Ex. “sub.example”
token_nameStringThe name of the token associated with this domain. Ex. “ExampleToken”
token_standardStringYesAptos standard that the collection adheres to. Ex. “v1”

Deprecated Tables

The following tables are planned for deprecation, or are already deprecated. See the notes section for any direct replacements or notes on how to migrate if you currently depend on one of these tables. Please do not use any of the below tables for production services.

TableDeprecation DateNotes
address_version_from_move_resources6/7The move_resources table has been replaced with legacy_migration_v1.move_resources, which uses account_transactions in a view. To use the migrated view, you will need to backfill and run account_transactions processor.
address_version_from_move_resources_aggregate6/7The move_resources table has been replaced with legacy_migration_v1.move_resources, which uses account_transactions in a view. To use the migrated view, you will need to backfill and run account_transactions processor.
coin_activitiesTBDWe will replace with fungible_asset_activities
coin_activities_aggregateTBDWe will replace with fungible_asset_activities
coin_balancesTBDReplace with fungible_asset_balances
collection_datasTBDReplace with collection_v2
current_coin_balancesTBDReplace with current_fungible_asset_balances
current_token_ownershipsTBDReplace with current_token_ownerships_v2
current_token_ownerships_aggregateTBDReplace with current_token_ownerships_v2
move_resources6/7Replace with account_transactions
move_resources_aggregate6/7Replace with account_transactions
nft_marketplace_v2_current_nft_marketplace_auctionsTBDWe’re deprecating nft_marketplace processor so all the nft_marketplace tables should be deleted
nft_marketplace_v2_current_nft_marketplace_collection_offersTBDWe’re deprecating nft_marketplace processor so all the nft_marketplace tables should be deleted
nft_marketplace_v2_current_nft_marketplace_listingsTBDWe’re deprecating nft_marketplace processor so all the nft_marketplace tables should be deleted
nft_marketplace_v2_current_nft_marketplace_listings_aggregateTBDWe’re deprecating nft_marketplace processor so all the nft_marketplace tables should be deleted
nft_marketplace_v2_current_nft_marketplace_token_offersTBDWe’re deprecating nft_marketplace processor so all the nft_marketplace tables should be deleted
nft_marketplace_v2_nft_marketplace_activitiesTBDWe’re deprecating nft_marketplace processor so all the nft_marketplace tables should be deleted
signatures6/21
token_activitiesTBDReplace with token_activities_v2
token_activities_aggregateTBDReplace with token_activities_v2
token_datasTBD
token_ownershipsTBDReplace with token_ownerships_v2
tokensTBDReplaced with v2 tables