Accounts
Overview
The Account endpoints in the Hedera Mirror Node REST API provides endpoints to retrieve account details, crypto allowances, token relationships, NFTs owned by accounts, and staking reward payouts. These endpoints are crucial for tracking account balances, permissions, and historical activity.
Endpoints
The following endpoints are available for the Accounts object:
GET /api/v1/accounts
Retrieves a list of accounts on the network.
GET /api/v1/accounts/{id}
Fetches details of a specific account by ID, alias, or EVM address.
GET /api/v1/accounts/{id}/cryptoallowances
Retrieves crypto allowances granted by an account.
GET /api/v1/accounts/{id}/tokenrelationships
Lists token relationships for an account.
GET /api/v1/accounts/{id}/nfts
Retrieves NFTs owned by an account.
GET /api/v1/accounts/{id}/fungibletokenallowances
Fetches fungible token allowances for an account.
GET /api/v1/accounts/{id}/staking/rewards
Gets past staking reward payouts for an account.
Accounts
The accounts object represents the information associated with an account and returns a list of account information.
Account IDs take the following format: 0.0.<account number>.
Example: 0.0.1000
Account IDs can also take the account number as an input value. For example, for account ID 0.0.1000, the number 1000 can be specified in the request.
List account entities on network
Returns a list of all account entity items on the network.
/api/v1/accounts
The optional balance value to compare against
^((gte?|lte?|eq|ne)\:)?\d{1,10}$
The ID of the account to return information for
^((gte?|lte?|eq|ne)\:)?(\d{1,10}\.\d{1,10}\.)?\d{1,10}$
The account's public key to compare against
3c3d546321ff6f63d701d2ec5c277095874e19f4a235bee1e6bb19258bf362be
Whether to include balance information or not. If included, token balances are limited to at most 50 per account as outlined in HIP-367. If multiple values are provided the last value will be the only value used.
true
The maximum number of items to return
2
The order in which items are listed
desc
asc
, desc
Response Details
account
The ID of the account
allowances
The allowances granted to this account
alias
RFC4648 no-padding base32 encoded account alias
auto_renew_period
The period in which the account will auto renew
balance
The timestamp and account balance of the account
created_timestamp
The timestamp for the creation of that account
decline_reward
Whether or not the account has opted to decline a staking reward
deleted
Whether the account was deleted or not
ethereum_nonce
The ethereum transaction nonce associated with this account
evm_address
A network entity encoded as an EVM encoded hex
expiry_timestamp
The expiry date for the entity as set by a create or update transaction
key
The public key associated with the account
links.next
Hyperlink to the next page of results
max_automatic_token_associations
The number of automatic token associations, if any
memo
The account memo, if any
nfts
List of nfts informations belonging to this account
pending_reward
The account's pending staking reward that has not been transferred to the account
receiver_sig_required
Whether or not the account requires a signature to receive a transfer into the account
rewards
List of rewards which of the account
staked_account_id
The account ID the account is staked to, if set
staked_node_id
The node ID the account is staked to, if set
stake_period_start
The start of the staking period
tokens
The tokens and their balances associated to the specified account
Optional Filtering
lt
(less than)
/api/v1/accounts?account.id=lt:0.0.1000
Returns account IDs less then 1000
lte
(less than or equal to)
/api/v1/accounts?account.id=lte:0.0.1000
Returns account IDs less than or equal to 1000
gt
(greater than)
/api/v1/accounts?account.id=gt:0.0.1000
Returns account IDs greater than 1000
gte
(greater than or equal to)
/api/v1/accounts?account.id=gte:0.0.1000
Returns account IDs greater than or equal to 1000
order
(order asc
or desc
values)
/api/v1/accounts?order=asc
/api/v1/accounts?order=desc
Returns account information in ascending order
Returns account information in descending order
Additional Examples
/api/v1/accounts?account.id=0.0.1001
Returns the account information of account 1001
/api/v1/accounts?account.balance=gt:1000
Returns all account information that have a balance greater than 1000 tinybars
/api/v1/accounts?account.publickey=2b60955bcbf0cf5e9ea880b52e5b63f664b08edf6ed 15e301049517438d61864
Returns all account information for 2b60955bcbf0cf5e9ea880b52e5b63f664b08edf6ed15e301049517438d61864 public key
/api/v1/accounts/2?transactionType=cryptotransfer
Returns the crypto transfer transactions for account 2.
Get account by alias, id, or evm address
Return the account transactions and balance information given an account alias, an account id, or an evm address. The information will be limited to at most 1000 token balances for the account as outlined in HIP-367. When the timestamp parameter is supplied, we will return transactions and account state for the relevant timestamp query. Balance information will be accurate to within 15 minutes of the provided timestamp query. Historical ethereum nonce information is currently not available and may not be the exact value at a provided timestamp.
/api/v1/accounts/{idOrAliasOrEvmAddress}
Account alias or account id or evm address
^(\d{1,10}\.){0,2}(\d{1,10}|(0x)?[A-Fa-f0-9]{40}|(?:[A-Z2-7]{8})*(?:[A-Z2-7]{2}|[A-Z2-7]{4,5}|[A-Z2-7]{7,8}))$
The maximum number of items to return
2
The order in which items are listed
asc
asc
, desc
The consensus timestamp as a Unix timestamp in seconds.nanoseconds format with an optional comparison operator. See unixtimestamp.com for a simple way to convert a date to the 'seconds' part of the Unix time.
cryptotransfer
CONSENSUSCREATETOPIC
, CONSENSUSDELETETOPIC
, CONSENSUSSUBMITMESSAGE
, CONSENSUSUPDATETOPIC
, CONTRACTCALL
, CONTRACTCREATEINSTANCE
, CONTRACTDELETEINSTANCE
, CONTRACTUPDATEINSTANCE
, CRYPTOADDLIVEHASH
, CRYPTOAPPROVEALLOWANCE
, CRYPTOCREATEACCOUNT
, CRYPTODELETE
, CRYPTODELETEALLOWANCE
, CRYPTODELETELIVEHASH
, CRYPTOTRANSFER
, CRYPTOUPDATEACCOUNT
, ETHEREUMTRANSACTION
, FILEAPPEND
, FILECREATE
, FILEDELETE
, FILEUPDATE
, FREEZE
, NODE
, NODECREATE
, NODEDELETE
, NODESTAKEUPDATE
, NODEUPDATE
, SCHEDULECREATE
, SCHEDULEDELETE
, SCHEDULESIGN
, SYSTEMDELETE
, SYSTEMUNDELETE
, TOKENAIRDROP
, TOKENASSOCIATE
, TOKENBURN
, TOKENCANCELAIRDROP
, TOKENCLAIMAIRDROP
, TOKENCREATION
, TOKENDELETION
, TOKENDISSOCIATE
, TOKENFEESCHEDULEUPDATE
, TOKENFREEZE
, TOKENGRANTKYC
, TOKENMINT
, TOKENPAUSE
, TOKENREJECT
, TOKENREVOKEKYC
, TOKENUNFREEZE
, TOKENUNPAUSE
, TOKENUPDATE
, TOKENUPDATENFTS
, TOKENWIPE
, UNCHECKEDSUBMIT
, UNKNOWN
, UTILPRNG
If provided and set to false transactions will not be included in the response
true
Get crypto allowances for an account info
Returns information for all crypto allowances for an account.
/api/v1/accounts/{idOrAliasOrEvmAddress}/allowances/crypto
Account alias or account id or evm address
^(\d{1,10}\.){0,2}(\d{1,10}|(0x)?[A-Fa-f0-9]{40}|(?:[A-Z2-7]{8})*(?:[A-Z2-7]{2}|[A-Z2-7]{4,5}|[A-Z2-7]{7,8}))$
The maximum number of items to return
2
The order in which items are listed
asc
asc
, desc
The ID of the spender to return information for
^((gte?|lte?|eq|ne)\:)?(\d{1,10}\.\d{1,10}\.)?\d{1,10}$
Get token relationships info for an account
Returns information for all token relationships for an account.
/api/v1/accounts/{idOrAliasOrEvmAddress}/tokens
Account alias or account id or evm address
^(\d{1,10}\.){0,2}(\d{1,10}|(0x)?[A-Fa-f0-9]{40}|(?:[A-Z2-7]{8})*(?:[A-Z2-7]{2}|[A-Z2-7]{4,5}|[A-Z2-7]{7,8}))$
The maximum number of items to return
2
The order in which items are listed
desc
asc
, desc
The ID of the token to return information for
^((gte?|lte?|eq|ne)\:)?(\d{1,10}\.\d{1,10}\.)?\d{1,10}$
Get nfts for an account info
Returns information for all non-fungible tokens for an account.
Ordering
When considering NFTs, their order is governed by a combination of their numerical token.Id and serialnumber values, with token.id being the parent column. A serialnumbers value governs its order within the given token.id
In that regard, if a user acquired a set of NFTs in the order (2-2, 2-4 1-5, 1-1, 1-3, 3-3, 3-4), the following layouts illustrate the ordering expectations for ownership listing
- All NFTs in ASC order: 1-1, 1-3, 1-5, 2-2, 2-4, 3-3, 3-4
- All NFTs in DESC order: 3-4, 3-3, 2-4, 2-2, 1-5, 1-3, 1-1
- NFTs above 1-1 in ASC order: 1-3, 1-5, 2-2, 2-4, 3-3, 3-4
- NFTs below 3-3 in ASC order: 1-1, 1-3, 1-5, 2-2, 2-4
- NFTs between 1-3 and 3-3 inclusive in DESC order: 3-4, 3-3, 2-4, 2-2, 1-5, 1-3
Note: The default order for this API is currently DESC
Filtering
When filtering there are some restrictions enforced to ensure correctness and scalability.
The table below defines the restrictions and support for the NFT ownership endpoint
Query Param | Comparison Operator | Support | Description | Example |
---|---|---|---|---|
token.id | eq | Y | Single occurrence only. | ?token.id=X |
ne | N | |||
lt(e) | Y | Single occurrence only. | ?token.id=lte:X | |
gt(e) | Y | Single occurrence only. | ?token.id=gte:X | |
serialnumber | eq | Y | Single occurrence only. Requires the presence of a token.id query | ?serialnumber=Y |
ne | N | |||
lt(e) | Y | Single occurrence only. Requires the presence of an lte or eq token.id query | ?token.id=lte:X&serialnumber=lt:Y | |
gt(e) | Y | Single occurrence only. Requires the presence of an gte or eq token.id query | ?token.id=gte:X&serialnumber=gt:Y | |
spender.id | eq | Y | ?spender.id=Z | |
ne | N | |||
lt(e) | Y | ?spender.id=lt:Z | ||
gt(e) | Y | ?spender.id=gt:Z |
Note: When searching across a range for individual NFTs a serialnumber with an additional token.id query filter must be provided. Both filters must be a single occurrence of gt(e) or lt(e) which provide a lower and or upper boundary for search.
/api/v1/accounts/{idOrAliasOrEvmAddress}/nfts
Account alias or account id or evm address
^(\d{1,10}\.){0,2}(\d{1,10}|(0x)?[A-Fa-f0-9]{40}|(?:[A-Z2-7]{8})*(?:[A-Z2-7]{2}|[A-Z2-7]{4,5}|[A-Z2-7]{7,8}))$
The maximum number of items to return
2
The order in which items are listed
asc
asc
, desc
The nft serial number (64 bit type). Requires a tokenId value also be populated.
^((eq|gt|gte|lt|lte):)?\d{1,19}?$
The ID of the spender to return information for
^((gte?|lte?|eq|ne)\:)?(\d{1,10}\.\d{1,10}\.)?\d{1,10}$
The ID of the token to return information for
^((gte?|lte?|eq|ne)\:)?(\d{1,10}\.\d{1,10}\.)?\d{1,10}$
Get fungible token allowances for an account
Returns information for fungible token allowances for an account.
Ordering
The order is governed by a combination of the spender id and the token id values, with spender id being the parent column. The token id value governs its order within the given spender id.
Note: The default order for this API is currently ASC
Filtering
When filtering there are some restrictions enforced to ensure correctness and scalability.
The table below defines the restrictions and support for the endpoint
Query Param | Comparison Operator | Support | Description | Example |
---|---|---|---|---|
spender.id | eq | Y | Single occurrence only. | ?spender.id=X |
ne | N | |||
lt(e) | Y | Single occurrence only. | ?spender.id=lte:X | |
gt(e) | Y | Single occurrence only. | ?spender.id=gte:X | |
token.id | eq | Y | Single occurrence only. Requires the presence of a spender.id query | ?token.id=lt:Y |
ne | N | |||
lt(e) | Y | Single occurrence only. Requires the presence of an lte or eq spender.id query | ?spender.id=lte:X&token.id=lt:Y | |
gt(e) | Y | Single occurrence only. Requires the presence of an gte or eq spender.id query | ?spender.id=gte:X&token.id=gt:Y |
Both filters must be a single occurrence of gt(e) or lt(e) which provide a lower and or upper boundary for search.
/api/v1/accounts/{idOrAliasOrEvmAddress}/allowances/tokens
Account alias or account id or evm address
^(\d{1,10}\.){0,2}(\d{1,10}|(0x)?[A-Fa-f0-9]{40}|(?:[A-Z2-7]{8})*(?:[A-Z2-7]{2}|[A-Z2-7]{4,5}|[A-Z2-7]{7,8}))$
The maximum number of items to return
2
The order in which items are listed
desc
asc
, desc
The ID of the spender to return information for
^((gte?|lte?|eq|ne)\:)?(\d{1,10}\.\d{1,10}\.)?\d{1,10}$
The ID of the token to return information for
^((gte?|lte?|eq|ne)\:)?(\d{1,10}\.\d{1,10}\.)?\d{1,10}$
Get past staking reward payouts for an account
Returns information for all past staking reward payouts for an account.
/api/v1/accounts/{idOrAliasOrEvmAddress}/rewards
Account alias or account id or evm address
^(\d{1,10}\.){0,2}(\d{1,10}|(0x)?[A-Fa-f0-9]{40}|(?:[A-Z2-7]{8})*(?:[A-Z2-7]{2}|[A-Z2-7]{4,5}|[A-Z2-7]{7,8}))$
The maximum number of items to return
2
The order in which items are listed
asc
asc
, desc
The consensus timestamp as a Unix timestamp in seconds.nanoseconds format with an optional comparison operator. See unixtimestamp.com for a simple way to convert a date to the 'seconds' part of the Unix time.
Last updated
Was this helpful?