> ## Documentation Index
> Fetch the complete documentation index at: https://hedera-0c6e0218-mintlify-bc559771.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Query

> Query is the Hedera protobuf wrapper message that carries any HAPI query type from a client to a node, with a 50-level nesting limit per request.

## Query

A single query, which is sent from the client to the node. This includes all possible queries. Each Query should not have more than 50 levels.

<table><thead><tr><th>Field</th><th>Type</th><th>Description</th></tr></thead><tbody><tr><td><code>getByKey</code></td><td><a href="/reference/protobuf/miscellaneous/getbykey">GetByKeyQuery</a></td><td>Get all entities associated with a given key</td></tr><tr><td><code>getBySolidityID</code></td><td><a href="/reference/protobuf/miscellaneous/getbysolidityid">GetBySolidityIDQuery</a></td><td>Get the IDs in the format used in transactions, given the format used in Solidity</td></tr><tr><td><code>contractCallLocal</code></td><td><a href="../smart-contracts/contractcalllocal">ContractCallLocalQuery</a></td><td>Call a function of a smart contract instance</td></tr><tr><td><code>contractGetInfo</code></td><td><a href="../smart-contracts/contractgetinfo">ContractGetInfoQuery</a></td><td>Get information about a smart contract instance</td></tr><tr><td><code>contractGetBytecode</code></td><td><a href="../smart-contracts/contractgetbytecode">ContractGetBytecodeQuery</a></td><td>Get bytecode used by a smart contract instance</td></tr><tr><td><code>ContractGetRecords</code></td><td><a href="../smart-contracts/contractgetrecords">ContractGetRecordsQuery</a></td><td>Get Records of the contract instance</td></tr><tr><td><code>cryptogetAccountBalance</code></td><td><a href="/reference/protobuf/crypto/cryptogetaccountbalance">CryptoGetAccountBalanceQuery</a></td><td>Get the current balance in a cryptocurrency account</td></tr><tr><td><code>cryptoGetAccountRecords</code></td><td><a href="/reference/protobuf/crypto/cryptogetaccountrecords">CryptoGetAccountRecordsQuery</a></td><td>Get all the records that currently exist for transactions involving an account</td></tr><tr><td><code>cryptoGetInfo</code></td><td><a href="/reference/protobuf/crypto/cryptogetinfo">CryptoGetInfoQuery</a></td><td>Get all information about an account</td></tr><tr><td><code>cryptoGetLiveHash</code></td><td><a href="/reference/protobuf/crypto/cryptogetinfo">CryptoGetLiveHashQuery</a></td><td>Get a single livehash from a single account (or null if it doesn't exist)</td></tr><tr><td><code>cryptoGetProxyStakers</code></td><td><a href="/reference/protobuf/crypto/cryptogetstakers">CryptoGetStakersQuery</a></td><td>Get all the accounts that proxy stake to a given account, and how much they proxy stake (not yet implemented in the current API)</td></tr><tr><td><code>fileGetContents</code></td><td><a href="/reference/protobuf/file/filegetcontents">FileGetContentsQuery</a></td><td>Get the contents of a file (the bytes stored in it)</td></tr><tr><td><code>fileGetInfo</code></td><td><a href="/reference/protobuf/file/filegetinfo">FileGetInfoQuery</a></td><td>Get information about a file, such as its expiration date</td></tr><tr><td><code>transactionGetReceipt</code></td><td><a href="/reference/protobuf/miscellaneous/transactiongetreceipt">TransactionGetReceiptQuery</a></td><td>Get a receipt for a transaction (lasts 180 seconds)</td></tr><tr><td><code>transactionGetRecord</code></td><td><a href="/reference/protobuf/miscellaneous/transactiongetrecord">TransactionGetRecordQuery</a></td><td>Get a record for a transaction (lasts 1 hour)</td></tr><tr><td><code>transactionGetFastRecord</code></td><td><a href="/reference/protobuf/miscellaneous/transactiongetfastrecord">TransactionGetFastRecordQuery</a></td><td>Get a record for a transaction (lasts 180 seconds)</td></tr><tr><td><code>consensusGetTopicInfo</code></td><td><a href="../consensus/consensusgettopicinfo">ConsensusGetTopicInfoQuery</a></td><td>Get the parameters of and state of a consensus topic.</td></tr><tr><td><code>networkGetVersionInfo</code></td><td><a href="/reference/protobuf/miscellaneous/networkgetversioninfo">NetworkGetVersionInfoQuery</a></td><td>Get the version of the network</td></tr><tr><td><code>tokenGetInfo</code></td><td><a href="/reference/protobuf/token/tokengetinfo#tokengetinfoquery">TokenGetInfoQuery</a></td><td>Get all information about a token</td></tr><tr><td><code>scheduleGetInfo</code></td><td><a href="/reference/protobuf/schedule/schedulegetinfo#schedulegetinfoquery">ScheduleGetInfoQuery</a></td><td>Get all information about a schedule entity</td></tr><tr><td><code>tokenGetAccountNftInfo</code></td><td><a href="/reference/protobuf/token/tokengetaccountnftinfo">TokenGetAccountNftInfoQuery</a></td><td>Get a list of NFTs associated with the account</td></tr><tr><td><code>tokenGetNftInfo</code></td><td><a href="/reference/protobuf/token/tokengetnftinfo#tokengetnftinfoquery">TokenGetNftInfoQuery</a></td><td>Get all information about a NFT</td></tr><tr><td><code>tokenGetNftInfos</code></td><td><a href="/reference/protobuf/token/tokengetnftinfo#tokengetnftinfoquery">TokenGetNftInfosQuery</a></td><td>Get a list of NFTs for the token</td></tr></tbody></table>
