# SPDX-License-Identifier: Apache-2.0 openapi: 3.1.0 paths: /api/v1/accounts: get: summary: List account entities on network description: Returns a list of all account entity items on the network. operationId: getAccounts parameters: - $ref: "#/components/parameters/accountBalanceQueryParam" - $ref: "#/components/parameters/accountIdQueryParam" - $ref: "#/components/parameters/accountPublicKeyQueryParam" - $ref: "#/components/parameters/balanceQueryParam" - $ref: "#/components/parameters/limitQueryParam" - $ref: "#/components/parameters/orderQueryParam" responses: 200: description: OK content: application/json: schema: $ref: "#/components/schemas/AccountsResponse" 400: $ref: "#/components/responses/InvalidParameterError" tags: - accounts /api/v1/accounts/{idOrAliasOrEvmAddress}: get: summary: Get account by alias, id, or evm address description: | 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. operationId: getAccount parameters: - $ref: "#/components/parameters/accountIdOrAliasOrEvmAddressPathParam" - $ref: "#/components/parameters/limitQueryParam" - $ref: "#/components/parameters/orderQueryParamDesc" - $ref: "#/components/parameters/timestampQueryParam" - $ref: "#/components/parameters/transactionTypeQueryParam" - $ref: "#/components/parameters/transactionsQueryParam" responses: 200: description: OK content: application/json: schema: $ref: "#/components/schemas/AccountBalanceTransactions" 400: $ref: "#/components/responses/InvalidParameterError" 404: $ref: "#/components/responses/NotFoundError" tags: - accounts /api/v1/accounts/{idOrAliasOrEvmAddress}/hooks: get: summary: List hooks for an account description: Returns a list of hooks associated with a given account ID, alias, or EVM address. operationId: getHooks parameters: - $ref: "#/components/parameters/accountIdOrAliasOrEvmAddressPathParam" - $ref: "#/components/parameters/hookIdQueryParam" - $ref: "#/components/parameters/limitQueryParam" - $ref: "#/components/parameters/orderQueryParamDesc" responses: "200": description: OK content: application/json: schema: $ref: "#/components/schemas/HooksResponse" "400": $ref: "#/components/responses/InvalidParameterError" "404": $ref: "#/components/responses/NotFoundError" tags: - accounts /api/v1/accounts/{idOrAliasOrEvmAddress}/hooks/{hookId}/storage: get: summary: Get hook storage slots description: Returns a list of hook storage slots associated with a given hook. operationId: getHookStorage parameters: - $ref: "#/components/parameters/accountIdOrAliasOrEvmAddressPathParam" - $ref: "#/components/parameters/hookIdPathParam" - $ref: "#/components/parameters/keyQueryParam" - $ref: "#/components/parameters/limitQueryParam" - $ref: "#/components/parameters/orderQueryParam" - $ref: "#/components/parameters/timestampQueryParam" responses: "200": description: OK content: application/json: schema: $ref: "#/components/schemas/HooksStorageResponse" "400": $ref: "#/components/responses/InvalidParameterError" "404": $ref: "#/components/responses/NotFoundError" tags: - accounts /api/v1/accounts/{idOrAliasOrEvmAddress}/nfts: get: summary: Get nfts for an account info description: | 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 1. **All NFTs in ASC order**: 1-1, 1-3, 1-5, 2-2, 2-4, 3-3, 3-4 2. **All NFTs in DESC order**: 3-4, 3-3, 2-4, 2-2, 1-5, 1-3, 1-1 3. **NFTs above 1-1 in ASC order**: 1-3, 1-5, 2-2, 2-4, 3-3, 3-4 4. **NFTs below 3-3 in ASC order**: 1-1, 1-3, 1-5, 2-2, 2-4 5. **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. operationId: getNftsByAccountId parameters: - $ref: "#/components/parameters/accountIdOrAliasOrEvmAddressPathParam" - $ref: "#/components/parameters/limitQueryParam" - $ref: "#/components/parameters/orderQueryParamDesc" - $ref: "#/components/parameters/serialNumberQueryParam" - $ref: "#/components/parameters/spenderIdQueryParam" - $ref: "#/components/parameters/tokenIdQueryParam" responses: 200: description: OK content: application/json: schema: $ref: "#/components/schemas/Nfts" 400: $ref: "#/components/responses/InvalidParameterError" 404: $ref: "#/components/responses/NotFoundError" tags: - accounts /api/v1/accounts/{idOrAliasOrEvmAddress}/rewards: get: summary: Get past staking reward payouts for an account description: | Returns information for all past staking reward payouts for an account. operationId: getStakingRewards parameters: - $ref: "#/components/parameters/accountIdOrAliasOrEvmAddressPathParam" - $ref: "#/components/parameters/limitQueryParam" - $ref: "#/components/parameters/orderQueryParamDesc" - $ref: "#/components/parameters/timestampQueryParam" responses: 200: description: OK content: application/json: schema: $ref: "#/components/schemas/StakingRewardsResponse" 400: $ref: "#/components/responses/InvalidParameterError" 404: $ref: "#/components/responses/NotFoundError" tags: - accounts /api/v1/accounts/{idOrAliasOrEvmAddress}/tokens: get: summary: Get token relationships info for an account description: | Returns information for all token relationships for an account. operationId: getTokensByAccountId parameters: - $ref: "#/components/parameters/accountIdOrAliasOrEvmAddressPathParam" - $ref: "#/components/parameters/limitQueryParam" - $ref: "#/components/parameters/orderQueryParam" - $ref: "#/components/parameters/tokenIdQueryParam" responses: 200: description: OK content: application/json: schema: $ref: "#/components/schemas/TokenRelationshipResponse" 400: $ref: "#/components/responses/InvalidParameterError" 404: $ref: "#/components/responses/NotFoundError" tags: - accounts /api/v1/accounts/{idOrAliasOrEvmAddress}/airdrops/outstanding: get: summary: Get outstanding token airdrops sent by an account description: | Returns outstanding token airdrops that have been sent by an account. operationId: getOutstandingTokenAirdrops parameters: - $ref: "#/components/parameters/accountIdOrAliasOrEvmAddressPathParam" - $ref: "#/components/parameters/limitQueryParam" - $ref: "#/components/parameters/orderQueryParam" - $ref: "#/components/parameters/receiverIdQueryParam" - $ref: "#/components/parameters/serialNumberQueryParam" - $ref: "#/components/parameters/tokenIdQueryParam" responses: 200: description: OK content: application/json: schema: $ref: "#/components/schemas/TokenAirdropsResponse" 400: $ref: "#/components/responses/InvalidParameterError" 404: $ref: "#/components/responses/NotFoundError" tags: - airdrops /api/v1/accounts/{idOrAliasOrEvmAddress}/airdrops/pending: get: summary: Get pending token airdrops received by an account description: | Returns pending token airdrops that have been received by an account. operationId: getPendingTokenAirdrops parameters: - $ref: "#/components/parameters/accountIdOrAliasOrEvmAddressPathParam" - $ref: "#/components/parameters/limitQueryParam" - $ref: "#/components/parameters/orderQueryParam" - $ref: "#/components/parameters/senderIdQueryParam" - $ref: "#/components/parameters/serialNumberQueryParam" - $ref: "#/components/parameters/tokenIdQueryParam" responses: 200: description: OK content: application/json: schema: $ref: "#/components/schemas/TokenAirdropsResponse" 400: $ref: "#/components/responses/InvalidParameterError" 404: $ref: "#/components/responses/NotFoundError" tags: - airdrops /api/v1/accounts/{idOrAliasOrEvmAddress}/allowances/crypto: get: summary: Get crypto allowances for an account info description: Returns information for all crypto allowances for an account. operationId: getCryptoAllowances parameters: - $ref: "#/components/parameters/accountIdOrAliasOrEvmAddressPathParam" - $ref: "#/components/parameters/limitQueryParam" - $ref: "#/components/parameters/orderQueryParamDesc" - $ref: "#/components/parameters/spenderIdQueryParam" responses: 200: description: OK content: application/json: schema: $ref: "#/components/schemas/CryptoAllowancesResponse" 400: $ref: "#/components/responses/InvalidParameterError" 404: $ref: "#/components/responses/NotFoundError" tags: - accounts /api/v1/accounts/{idOrAliasOrEvmAddress}/allowances/tokens: get: summary: Get fungible token allowances for an account description: | 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. operationId: getTokenAllowances parameters: - $ref: "#/components/parameters/accountIdOrAliasOrEvmAddressPathParam" - $ref: "#/components/parameters/limitQueryParam" - $ref: "#/components/parameters/orderQueryParam" - $ref: "#/components/parameters/spenderIdQueryParam" - $ref: "#/components/parameters/tokenIdQueryParam" responses: 200: description: OK content: application/json: schema: $ref: "#/components/schemas/TokenAllowancesResponse" 400: $ref: "#/components/responses/InvalidParameterError" 404: $ref: "#/components/responses/NotFoundError" tags: - accounts /api/v1/accounts/{idOrAliasOrEvmAddress}/allowances/nfts: get: summary: Get non fungible token allowances for an account description: | Returns an account's non-fungible token allowances. ## Ordering The order is governed by a combination of the account ID and the token ID values, with account ID being the parent column. The token ID value governs its order within the given account ID. Note: The default order for this API is currently ascending. The account ID can be the owner or the spender ID depending upon the owner flag. ## 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 | | ------------- | ------------------- | ------- | --------------------- | ------- | | account.id | eq | Y | Single occurrence only. | ?account.id=X | | | ne | N | | | | | lt(e) | Y | Single occurrence only. | ?account.id=lte:X | | | gt(e) | Y | Single occurrence only. | ?account.id=gte:X | | token.id | eq | Y | Single occurrence only. Requires the presence of an **account.id** parameter | ?account.id=X&token.id=eq:Y | | | ne | N | | | | | lt(e) | Y | Single occurrence only. Requires the presence of an **lte** or **eq** **account.id** parameter | ?account.id=lte:X&token.id=lt:Y | | | gt(e) | Y | Single occurrence only. Requires the presence of an **gte** or **eq** **account.id** parameter | ?account.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. operationId: getNftAllowances parameters: - $ref: "#/components/parameters/accountIdOrAliasOrEvmAddressPathParam" - $ref: "#/components/parameters/limitQueryParam" - $ref: "#/components/parameters/orderQueryParam" - $ref: "#/components/parameters/accountIdQueryParam" - $ref: "#/components/parameters/tokenIdQueryParam" - $ref: "#/components/parameters/ownerQueryParam" responses: 200: description: OK content: application/json: schema: $ref: "#/components/schemas/NftAllowancesResponse" 400: $ref: "#/components/responses/InvalidParameterError" 404: $ref: "#/components/responses/NotFoundError" tags: - accounts /api/v1/balances: get: summary: List account balances description: Returns a list of account and token balances on the network. The latest balance information is returned when there is no timestamp query parameter, otherwise, the information is retrieved from snapshots with 15-minute granularity. This information is limited to at most 50 token balances per account as outlined in HIP-367. As such, it's not recommended for general use and we instead recommend using either `/api/v1/accounts/{id}/tokens` or `/api/v1/tokens/{id}/balances` to obtain the current token balance information and `/api/v1/accounts/{id}` to return the current account balance. operationId: getBalances parameters: - $ref: "#/components/parameters/accountIdOrAliasOrEvmAddressQueryParam" - $ref: "#/components/parameters/accountBalanceQueryParam" - $ref: "#/components/parameters/accountPublicKeyQueryParam" - $ref: "#/components/parameters/limitQueryParam" - $ref: "#/components/parameters/orderQueryParamDesc" - $ref: "#/components/parameters/timestampQueryParam" responses: 200: description: OK content: application/json: schema: $ref: "#/components/schemas/BalancesResponse" 400: $ref: "#/components/responses/InvalidParameterError" tags: - balances /api/v1/blocks: get: summary: List blocks description: Returns a list of blocks on the network. operationId: getBlocks parameters: - $ref: "#/components/parameters/blockNumberQueryParam" - $ref: "#/components/parameters/limitQueryParam" - $ref: "#/components/parameters/orderQueryParamDesc" - $ref: "#/components/parameters/timestampQueryParam" responses: 200: description: OK content: application/json: schema: $ref: "#/components/schemas/BlocksResponse" 400: $ref: "#/components/responses/InvalidParameterError" tags: - blocks /api/v1/blocks/{hashOrNumber}: get: summary: Get block by hash or number description: Returns the block information by given hash or number. operationId: getBlock parameters: - $ref: "#/components/parameters/hashOrNumberPathParam" responses: 200: description: OK content: application/json: schema: $ref: "#/components/schemas/Block" 400: $ref: "#/components/responses/InvalidParameterError" 404: $ref: "#/components/responses/NotFoundError" tags: - blocks /api/v1/contracts/call: post: summary: Invoke a smart contract description: Returns a result from EVM execution such as cost-free execution of read-only smart contract queries, gas estimation, and transient simulation of read-write operations. If the `estimate` field is set to true gas estimation is executed. This API can process calls against the `latest` block or specific historical blocks when a hexadecimal or decimal block number is provided in the `block` field. operationId: contractCall requestBody: required: true content: application/json: schema: $ref: "#/components/schemas/ContractCallRequest" responses: 200: description: OK content: application/json: schema: $ref: "#/components/schemas/ContractCallResponse" 400: description: Validation error content: application/json: schema: $ref: "#/components/schemas/Error" 404: description: Not found error content: application/json: schema: $ref: "#/components/schemas/Error" 415: description: Unsupported media type error content: application/json: schema: $ref: "#/components/schemas/Error" 429: description: Too many requests content: application/json: schema: $ref: "#/components/schemas/Error" 500: description: Generic error content: application/json: schema: $ref: "#/components/schemas/Error" 501: description: Not implemented error content: application/json: schema: $ref: "#/components/schemas/Error" tags: - contracts /api/v1/contracts: get: summary: List contract entities on network description: Returns a list of all contract entity items on the network. operationId: getContracts parameters: - $ref: "#/components/parameters/contractIdQueryParam" - $ref: "#/components/parameters/limitQueryParam" - $ref: "#/components/parameters/orderQueryParamDesc" responses: 200: description: OK content: application/json: schema: $ref: "#/components/schemas/ContractsResponse" 400: $ref: "#/components/responses/InvalidParameterError" tags: - contracts /api/v1/contracts/{contractIdOrAddress}: get: summary: Get contract by id description: Return the contract information given an id operationId: getContract parameters: - $ref: "#/components/parameters/contractIdOrAddressPathParam" - $ref: "#/components/parameters/timestampQueryParam" responses: 200: description: OK content: application/json: schema: $ref: "#/components/schemas/ContractResponse" 400: $ref: "#/components/responses/InvalidParameterError" 404: $ref: "#/components/responses/NotFoundError" tags: - contracts /api/v1/contracts/{contractIdOrAddress}/results: get: summary: List contract results from a contract on the network description: Returns a list of all ContractResults for a contract's function executions. operationId: getContractResultsByContractId parameters: - $ref: "#/components/parameters/contractIdOrAddressPathParam" - $ref: "#/components/parameters/blockHashQueryParam" - $ref: "#/components/parameters/contractsBlockNumberQueryParam" - $ref: "#/components/parameters/fromQueryParam" - $ref: "#/components/parameters/internalQueryParam" - $ref: "#/components/parameters/limitQueryParam" - $ref: "#/components/parameters/orderQueryParamDesc" - $ref: "#/components/parameters/timestampQueryParam" - $ref: "#/components/parameters/transactionIndexQueryParam" responses: 200: description: OK content: application/json: schema: $ref: "#/components/schemas/ContractResultsResponse" 400: $ref: "#/components/responses/InvalidParameterError" tags: - contracts /api/v1/contracts/{contractIdOrAddress}/state: get: summary: The contract state from a contract on the network description: Returns a list of all contract's slots. If no timestamp is provided, returns the current state. operationId: getContractState parameters: - $ref: "#/components/parameters/contractIdOrAddressPathParam" - $ref: "#/components/parameters/limitQueryParam" - $ref: "#/components/parameters/orderQueryParam" - $ref: "#/components/parameters/slotQueryParam" - $ref: "#/components/parameters/stateTimestampQueryParam" responses: 200: description: OK content: application/json: schema: $ref: "#/components/schemas/ContractStateResponse" 400: $ref: "#/components/responses/InvalidParameterError" tags: - contracts /api/v1/contracts/{contractIdOrAddress}/results/{timestamp}: get: summary: Get the contract result from a contract on the network executed at a given timestamp description: Returns a single ContractResult for a contract's function executions at a specific timestamp. operationId: getContractResultByIdAndTimestamp parameters: - $ref: "#/components/parameters/contractIdOrAddressPathParam" - $ref: "#/components/parameters/hbarQueryParam" - $ref: "#/components/parameters/timestampPathParam" responses: 200: description: OK content: application/json: schema: $ref: "#/components/schemas/ContractResultDetails" 206: description: Partial Content content: application/json: schema: $ref: "#/components/schemas/ContractResultDetails" 400: $ref: "#/components/responses/InvalidParameterError" 404: $ref: "#/components/responses/NotFoundError" tags: - contracts /api/v1/contracts/results: get: summary: List contract results from all contracts on the network description: Returns a list of all ContractResults for all contract's function executions. operationId: getContractsResults parameters: - $ref: "#/components/parameters/fromQueryParam" - $ref: "#/components/parameters/blockHashQueryParam" - $ref: "#/components/parameters/contractsBlockNumberQueryParam" - $ref: "#/components/parameters/hbarQueryParam" - $ref: "#/components/parameters/internalQueryParam" - $ref: "#/components/parameters/limitQueryParam" - $ref: "#/components/parameters/orderQueryParamDesc" - $ref: "#/components/parameters/timestampQueryParam" - $ref: "#/components/parameters/transactionIndexQueryParam" responses: 200: description: OK content: application/json: schema: $ref: "#/components/schemas/ContractResultsResponse" 400: $ref: "#/components/responses/InvalidParameterError" tags: - contracts /api/v1/contracts/results/{transactionIdOrHash}: get: summary: Get the contract result from a contract on the network for a given transactionId or ethereum transaction hash description: Returns a single ContractResult for a contract's function executions for a given transactionId or ethereum transaction hash. operationId: getContractResultByTransactionIdOrHash parameters: - $ref: "#/components/parameters/transactionIdOrEthHashPathParam" - $ref: "#/components/parameters/hbarQueryParam" - $ref: "#/components/parameters/nonceQueryParamWithDefault" responses: 200: description: OK content: application/json: schema: $ref: "#/components/schemas/ContractResultDetails" 206: description: Partial Content content: application/json: schema: $ref: "#/components/schemas/ContractResultDetails" 400: $ref: "#/components/responses/InvalidParameterError" 404: $ref: "#/components/responses/NotFoundError" tags: - contracts /api/v1/contracts/results/{transactionIdOrHash}/actions: get: summary: Get the contract actions from a contract on the network for a given transactionId or ethereum transaction hash description: Returns a list of ContractActions for a contract's function executions for a given transactionId or ethereum transaction hash. operationId: getContractActions parameters: - $ref: "#/components/parameters/transactionIdOrEthHashPathParam" - $ref: "#/components/parameters/contractActionsIndexQueryParam" - $ref: "#/components/parameters/limitQueryParam" - $ref: "#/components/parameters/orderQueryParam" responses: 200: description: OK content: application/json: schema: $ref: "#/components/schemas/ContractActionsResponse" 400: $ref: "#/components/responses/InvalidParameterError" 404: $ref: "#/components/responses/NotFoundError" tags: - contracts /api/v1/contracts/results/{transactionIdOrHash}/opcodes: get: summary: Get the opcode traces for a historical transaction on the network with the given transaction ID or hash description: | Re-executes a transaction and returns a result containing detailed information for the execution, including all values from the {@code stack}, {@code memory} and {@code storage} and the entire trace of opcodes that were executed during the replay. Note that to provide the output, the transaction needs to be re-executed on the EVM, which may take a significant amount of time to complete if stack and memory information is requested. operationId: getContractOpcodes parameters: - $ref: "#/components/parameters/transactionIdOrEthHashPathParam" - $ref: "#/components/parameters/stack" - $ref: "#/components/parameters/memory" - $ref: "#/components/parameters/storage" responses: 200: description: OK content: application/json: schema: $ref: "#/components/schemas/OpcodesResponse" 400: description: Validation error content: application/json: schema: $ref: "#/components/schemas/Error" 404: description: Transaction or record file not found content: application/json: schema: $ref: "#/components/schemas/Error" 429: description: Too many requests content: application/json: schema: $ref: "#/components/schemas/Error" tags: - contracts /api/v1/contracts/{contractIdOrAddress}/results/logs: get: summary: List contract logs from a contract on the network description: | Search the logs of a specific contract across multiple contract calls. Chained logs are not included but can be found by calling `/api/v1/contracts/{contractId}/results/{timestamp}` or `/api/v1/contracts/results/{transactionId}`. When searching by topic a timestamp parameter must be supplied and span a time range of at most seven days. ## Ordering The order is governed by the combination of timestamp and index values. If the index param is omitted, the order is determined by the timestamp only. 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 endpoint** | Query Param | Comparison Operator | Support | Description | Example | | ------------- | ------------------- | ------- | --------------------- | ------- | | index | eq | Y | Single occurrence only. Requires the presence of timestamp | ?index=X | | | ne | N | | | | | lt(e) | Y | Single occurrence only. Requires the presence of timestamp | ?index=lte:X | | | gt(e) | Y | Single occurrence only. Requires the presence of timestamp | ?index=gte:X | | timestamp | eq | Y | Single occurrence only. | ?timestamp=Y | | ne | N | | | | | lt(e) | Y | Single occurrence only. Optional second timestamp **gt(e)** | ?timestamp=lte:Y | | gt(e) | Y | Single occurrence only. Optional second timestamp **lt(e)** | ?timestamp=gte:Y Both filters must be a single occurrence of **gt(e)** or **lt(e)** which provide a lower and or upper boundary for search. operationId: getContractLogsByContractId parameters: - $ref: "#/components/parameters/contractIdOrAddressPathParam" - $ref: "#/components/parameters/logIndexQueryParam" - $ref: "#/components/parameters/limitQueryParam" - $ref: "#/components/parameters/orderQueryParamDesc" - $ref: "#/components/parameters/timestampQueryParam" - $ref: "#/components/parameters/logTopic0QueryParam" - $ref: "#/components/parameters/logTopic1QueryParam" - $ref: "#/components/parameters/logTopic2QueryParam" - $ref: "#/components/parameters/logTopic3QueryParam" responses: 200: description: OK content: application/json: schema: $ref: "#/components/schemas/ContractLogsResponse" 400: $ref: "#/components/responses/InvalidParameterError" tags: - contracts /api/v1/contracts/results/logs: get: summary: List contracts logs across many contracts on the network description: | Search the logs across many contracts with multiple contract calls. Chained logs are not included but can be found by calling `/api/v1/contracts/{contractId}/results/{timestamp}` or `/api/v1/contracts/results/{transactionId}`. When searching by topic a timestamp parameter must be supplied and span a time range of at most seven days. ## Ordering The order is governed by the combination of timestamp and index values. If the index param is omitted, the order is determined by the timestamp only. 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 endpoint** | Query Param | Comparison Operator | Support | Description | Example | | ------------- | ------------------- | ------- | --------------------- | ------- | | index | eq | Y | Single occurrence only. Requires the presence of timestamp | ?index=X | | | ne | N | | | | | lt(e) | Y | Single occurrence only. Requires the presence of timestamp | ?index=lte:X | | | gt(e) | Y | Single occurrence only. Requires the presence of timestamp | ?index=gte:X | | timestamp | eq | Y | Single occurrence only. | ?timestamp=Y | | ne | N | | | | | lt(e) | Y | Single occurrence only. Optional second timestamp **gt(e)** | ?timestamp=lte:Y | | gt(e) | Y | Single occurrence only. Optional second timestamp **lt(e)** | ?timestamp=gte:Y Both filters must be a single occurrence of **gt(e)** or **lt(e)** which provide a lower and or upper boundary for search. operationId: getContractsLogs parameters: - $ref: "#/components/parameters/logIndexQueryParam" - $ref: "#/components/parameters/limitQueryParam" - $ref: "#/components/parameters/orderQueryParamDesc" - $ref: "#/components/parameters/timestampQueryParam" - $ref: "#/components/parameters/logTopic0QueryParam" - $ref: "#/components/parameters/logTopic1QueryParam" - $ref: "#/components/parameters/logTopic2QueryParam" - $ref: "#/components/parameters/logTopic3QueryParam" - $ref: "#/components/parameters/transactionHashQueryParam" responses: 200: description: OK content: application/json: schema: $ref: "#/components/schemas/ContractLogsResponse" 400: $ref: "#/components/responses/InvalidParameterError" tags: - contracts /api/v1/network/exchangerate: get: summary: Get the network exchange rate to estimate costs description: Returns the network's exchange rate, current and next. operationId: getNetworkExchangeRate parameters: - $ref: "#/components/parameters/timestampQueryParam" responses: 200: description: OK content: application/json: schema: $ref: "#/components/schemas/NetworkExchangeRateSetResponse" 400: $ref: "#/components/responses/InvalidParameterError" 404: $ref: "#/components/responses/NotFoundError" 500: $ref: "#/components/responses/ServiceUnavailableError" tags: - network /api/v1/network/fees: get: summary: Get the network fees description: Returns the estimated gas in tinybars per each transaction type. Default order is ASC. Currently only `ContractCall`, `ContractCreate` and `EthereumTransaction` transaction types are supported. operationId: getNetworkFees parameters: - $ref: "#/components/parameters/orderQueryParam" - $ref: "#/components/parameters/timestampQueryParam" responses: 200: description: OK content: application/json: schema: $ref: "#/components/schemas/NetworkFeesResponse" 400: $ref: "#/components/responses/InvalidParameterError" 404: $ref: "#/components/responses/NotFoundError" 500: $ref: "#/components/responses/ServiceUnavailableError" tags: - network post: summary: Estimate network fees description: Given a HAPI transaction, estimate the network fees in tinycents. operationId: estimateFees parameters: - $ref: "#/components/parameters/estimateModeQueryParam" - $ref: "#/components/parameters/highVolumeThrottleQueryParam" requestBody: content: application/protobuf: schema: format: binary type: string application/x-protobuf: schema: format: binary type: string description: A protobuf encoded HAPI Transaction required: true responses: 200: description: OK content: application/json: schema: $ref: "#/components/schemas/FeeEstimateResponse" 400: $ref: "#/components/responses/InvalidParameterError" 500: $ref: "#/components/responses/ServiceUnavailableError" tags: - network /api/v1/network/nodes: get: summary: Get the network address book nodes description: Returns the network's list of nodes used in consensus operationId: getNetworkNodes parameters: - $ref: "#/components/parameters/fileIdQueryParam" - $ref: "#/components/parameters/limitQueryParam" - $ref: "#/components/parameters/nodeIdQueryParam" - $ref: "#/components/parameters/orderQueryParam" responses: 200: description: OK content: application/json: schema: $ref: "#/components/schemas/NetworkNodesResponse" 400: $ref: "#/components/responses/InvalidParameterError" tags: - network /api/v1/network/registered-nodes: get: summary: Get registered nodes description: Returns the list of registered nodes operationId: getRegisteredNodes parameters: - $ref: "#/components/parameters/limitQueryParam" - $ref: "#/components/parameters/orderQueryParam" - $ref: "#/components/parameters/registeredNodeIdQueryParam" - $ref: "#/components/parameters/registeredNodeTypeQueryParam" responses: 200: description: OK content: application/json: schema: $ref: "#/components/schemas/RegisteredNodesResponse" 400: $ref: "#/components/responses/InvalidParameterError" tags: - network /api/v1/network/stake: get: summary: Get network stake information description: Returns the network's current stake information. operationId: getNetworkStake responses: 200: description: OK content: application/json: schema: $ref: "#/components/schemas/NetworkStakeResponse" 400: $ref: "#/components/responses/InvalidParameterError" 404: $ref: "#/components/responses/NetworkStakeNotFound" 500: $ref: "#/components/responses/ServiceUnavailableError" tags: - network /api/v1/network/supply: get: summary: Get the network supply description: Returns the network's released supply of hbars operationId: getNetworkSupply parameters: - $ref: "#/components/parameters/timestampQueryParam" responses: 200: description: OK content: application/json: schema: $ref: "#/components/schemas/NetworkSupplyResponse" 400: $ref: "#/components/responses/InvalidParameterError" 404: $ref: "#/components/responses/NotFoundError" tags: - network /api/v1/schedules: get: summary: List schedules entities description: Lists schedules on the network that govern the execution logic of scheduled transactions. This includes executed and non executed schedules. operationId: getSchedules parameters: - $ref: "#/components/parameters/accountIdQueryParam" - $ref: "#/components/parameters/limitQueryParam" - $ref: "#/components/parameters/orderQueryParam" - $ref: "#/components/parameters/scheduleIdQueryParam" responses: 200: description: OK content: application/json: schema: $ref: "#/components/schemas/SchedulesResponse" 400: $ref: "#/components/responses/InvalidParameterError" tags: - schedules /api/v1/schedules/{scheduleId}: get: summary: Get schedule by id description: Returns schedule information based on the given schedule id operationId: getSchedule parameters: - $ref: "#/components/parameters/scheduleIdPathParam" responses: 200: description: OK content: application/json: schema: $ref: "#/components/schemas/Schedule" 400: $ref: "#/components/responses/InvalidParameterError" 404: $ref: "#/components/responses/NotFoundError" tags: - schedules /api/v1/transactions: get: summary: List transactions description: Lists transactions on the network. This includes successful and unsuccessful transactions. operationId: getTransactions parameters: - $ref: "#/components/parameters/accountIdQueryParam" - $ref: "#/components/parameters/limitQueryParam" - $ref: "#/components/parameters/orderQueryParamDesc" - $ref: "#/components/parameters/timestampQueryParam" - $ref: "#/components/parameters/transactionTypeQueryParam" - name: result in: query description: The transaction success type. schema: enum: [success, fail] - name: type in: query description: The transaction account balance modification type. schema: enum: [credit, debit] responses: 200: description: OK content: application/json: schema: $ref: "#/components/schemas/TransactionsResponse" 400: $ref: "#/components/responses/InvalidParameterError" tags: - transactions /api/v1/transactions/{transactionId}: get: summary: Get transaction by id description: Returns transaction information based on the given transaction id operationId: getTransaction parameters: - $ref: "#/components/parameters/transactionIdPathParam" - $ref: "#/components/parameters/nonceQueryParam" - $ref: "#/components/parameters/scheduledQueryParam" responses: 200: description: OK content: application/json: schema: $ref: "#/components/schemas/TransactionByIdResponse" 400: $ref: "#/components/responses/InvalidParameterError" 404: $ref: "#/components/responses/NotFoundError" tags: - transactions /api/v1/topics/{topicId}: get: summary: Get topic by ID description: Returns the topic details for the given topic ID. operationId: getTopic parameters: - $ref: "#/components/parameters/topicIdPathParam" responses: 200: description: OK content: application/json: schema: $ref: "#/components/schemas/Topic" 400: $ref: "#/components/responses/InvalidParameterError" 404: $ref: "#/components/responses/NotFoundError" tags: - topics /api/v1/topics/{topicId}/messages: get: summary: List topic messages by id description: Returns the list of topic messages for the given topic id. operationId: getTopicMessages parameters: - $ref: "#/components/parameters/topicIdPathParam" - name: encoding in: query example: base64 schema: type: string - $ref: "#/components/parameters/limitQueryParam" - $ref: "#/components/parameters/orderQueryParam" - name: sequencenumber in: query example: 2 schema: format: int64 minimum: 0 type: integer - $ref: "#/components/parameters/timestampQueryParam" responses: 200: description: OK content: application/json: schema: $ref: "#/components/schemas/TopicMessagesResponse" 400: $ref: "#/components/responses/InvalidParameterError" 404: $ref: "#/components/responses/TopicNotFound" tags: - topics /api/v1/topics/{topicId}/messages/{sequenceNumber}: get: summary: Get topic message by id and sequence number description: Returns a single topic message for the given topic id and sequence number. operationId: getTopicMessageByIdAndSequenceNumber parameters: - $ref: "#/components/parameters/topicIdPathParam" - name: sequenceNumber in: path required: true description: Topic message sequence number example: 2 schema: format: int64 minimum: 0 type: integer responses: 200: description: OK content: application/json: schema: $ref: "#/components/schemas/TopicMessage" 400: $ref: "#/components/responses/InvalidParameterError" 404: $ref: "#/components/responses/NotFoundError" tags: - topics /api/v1/topics/messages/{timestamp}: get: summary: Get topic message by consensusTimestamp description: Returns a topic message the given the consensusTimestamp. operationId: getTopicMessageByTimestamp parameters: - $ref: "#/components/parameters/timestampPathParam" responses: 200: description: OK content: application/json: schema: $ref: "#/components/schemas/TopicMessage" 400: $ref: "#/components/responses/InvalidParameterError" 404: $ref: "#/components/responses/NotFoundError" tags: - topics /api/v1/tokens: get: summary: List tokens description: Returns a list of tokens on the network. operationId: getTokens parameters: - $ref: "#/components/parameters/accountIdQueryParam" - $ref: "#/components/parameters/limitQueryParam" - $ref: "#/components/parameters/tokenNameQueryParam" - $ref: "#/components/parameters/orderQueryParam" - $ref: "#/components/parameters/publicKeyQueryParam" - $ref: "#/components/parameters/tokenIdQueryParam" - $ref: "#/components/parameters/tokenTypeQueryParam" responses: 200: description: OK content: application/json: schema: $ref: "#/components/schemas/TokensResponse" 400: $ref: "#/components/responses/InvalidParameterError" tags: - tokens /api/v1/tokens/{tokenId}: get: summary: Get token by id description: Returns token entity information given the id operationId: getToken parameters: - $ref: "#/components/parameters/tokenIdPathParam" - $ref: "#/components/parameters/tokenInfoTimestampQueryParam" responses: 200: description: OK content: application/json: schema: $ref: "#/components/schemas/TokenInfo" examples: FungibleToken: value: admin_key: _type: ProtobufEncoded key: 010101 auto_renew_account: 0.1.2 auto_renew_period: created_timestamp: "1234567890.000000001" deleted: false decimals: 1000 expiry_timestamp: freeze_default: false freeze_key: _type: ProtobufEncoded key: 010101 initial_supply: 1000000 kyc_key: _type: ProtobufEncoded key: 010101 max_supply: 9223372036854776000 memo: "token memo" modified_timestamp: "1234567890.000000001" name: Token name pause_key: _type: ProtobufEncoded key: 010101 pause_status: UNPAUSED supply_key: _type: ProtobufEncoded key: 010101 supply_type: INFINITE symbol: ORIGINALRDKSE token_id: 0.10.1 total_supply: 1000000 treasury_account_id: 0.1.2 type: FUNGIBLE_COMMON wipe_key: _type: ProtobufEncoded key: 010101 custom_fees: created_timestamp: "1234567890.000000001" fixed_fees: - amount: 100 collector_account_id: 0.1.5 denominating_token_id: 0.10.8 fractional_fees: - amount: numerator: 12 denominator: 29 collector_account_id: 0.1.6 denominating_token_id: 0.10.9 maximum: 120 minimum: 30 net_of_transfers: true NonFungibleToken: value: admin_key: _type: ProtobufEncoded key: 010101 auto_renew_account: 0.1.2 auto_renew_period: created_timestamp: "1234567890.000000001" deleted: false decimals: 0 expiry_timestamp: freeze_default: false freeze_key: _type: ProtobufEncoded key: 010101 initial_supply: 0 kyc_key: _type: ProtobufEncoded key: 010101 max_supply: 9223372036854776000 memo: "token memo" modified_timestamp: "1234567890.000000001" name: Token name pause_key: _type: ProtobufEncoded key: 010101 pause_status: UNPAUSED supply_key: _type: ProtobufEncoded key: 010101 supply_type: INFINITE symbol: ORIGINALRDKSE token_id: 0.10.1 total_supply: 1000000 treasury_account_id: 0.1.2 type: NON_FUNGIBLE_UNIQUE wipe_key: _type: ProtobufEncoded key: 010101 custom_fees: created_timestamp: "1234567890.000000001" fixed_fees: - amount: 100 collector_account_id: 0.1.5 denominating_token_id: 0.10.6 royalty_fees: - amount: numerator: 15 denominator: 37 collector_account_id: 0.1.6 fallback_fee: amount: 100 denominating_token_id: 0.10.7 400: $ref: "#/components/responses/InvalidParameterError" 404: $ref: "#/components/responses/NotFoundError" tags: - tokens /api/v1/tokens/{tokenId}/balances: get: summary: List token balances description: Returns a list of token balances given the id. This represents the Token supply distribution across the network operationId: getTokenBalances parameters: - $ref: "#/components/parameters/tokenIdPathParam" - $ref: "#/components/parameters/accountBalanceQueryParam" - $ref: "#/components/parameters/accountIdQueryParam" - $ref: "#/components/parameters/accountPublicKeyQueryParam" - $ref: "#/components/parameters/limitQueryParam" - $ref: "#/components/parameters/orderQueryParamDesc" - $ref: "#/components/parameters/timestampQueryParam" responses: 200: description: OK content: application/json: schema: $ref: "#/components/schemas/TokenBalancesResponse" 400: $ref: "#/components/responses/InvalidParameterError" tags: - tokens /api/v1/tokens/{tokenId}/nfts: get: summary: List nfts description: Returns a list of non-fungible tokens operationId: getNfts parameters: - $ref: "#/components/parameters/tokenIdPathParam" - $ref: "#/components/parameters/accountIdQueryParam" - $ref: "#/components/parameters/limitQueryParam" - $ref: "#/components/parameters/orderQueryParamDesc" - $ref: "#/components/parameters/serialNumberQueryParam" responses: 200: description: OK content: application/json: schema: $ref: "#/components/schemas/Nfts" 400: $ref: "#/components/responses/InvalidParameterError" tags: - tokens /api/v1/tokens/{tokenId}/nfts/{serialNumber}: get: summary: Get nft info description: Returns information for a non-fungible token operationId: getNft parameters: - $ref: "#/components/parameters/tokenIdPathParam" - $ref: "#/components/parameters/serialNumberPathParam" responses: 200: description: OK content: application/json: schema: $ref: "#/components/schemas/Nft" 400: $ref: "#/components/responses/InvalidParameterError" 404: $ref: "#/components/responses/NotFoundError" tags: - tokens /api/v1/tokens/{tokenId}/nfts/{serialNumber}/transactions: get: summary: Get an nfts transction history description: Returns a list of transactions for a given non-fungible token operationId: getNftTransactions parameters: - $ref: "#/components/parameters/tokenIdPathParam" - $ref: "#/components/parameters/serialNumberPathParam" - $ref: "#/components/parameters/limitQueryParam" - $ref: "#/components/parameters/orderQueryParamDesc" - $ref: "#/components/parameters/timestampQueryParam" responses: 200: description: OK content: application/json: schema: $ref: "#/components/schemas/NftTransactionHistory" 206: description: Partial Content content: application/json: schema: $ref: "#/components/schemas/NftTransactionHistory" 400: $ref: "#/components/responses/InvalidParameterError" tags: - tokens tags: - name: accounts description: The accounts object represents the information associated with an account entity and returns a list of account information.The accounts list endpoint is cached and not updated as frequently as the account lookup by a specific ID endpoint. externalDocs: url: https://docs.hedera.com/guides/docs/mirror-node-api/cryptocurrency-api#accounts - name: balances description: The balance object represents the balance of accounts on the Hedera network. externalDocs: url: https://docs.hedera.com/guides/docs/mirror-node-api/cryptocurrency-api#balances - name: contracts description: The contracts objects represents the information associated with contract entities.The contracts list endpoint is cached and not updated as frequently as the contract lookup by a specific ID endpoint. - name: schedules description: The schedules object represents the information associated with a schedule entity.The schedules list endpoints is cached and not updated as frequently as the schedule lookup by a specific ID endpoint. - name: transactions description: The transaction object represents the transactions processed on the Hedera network. externalDocs: url: https://docs.hedera.com/guides/docs/mirror-node-api/cryptocurrency-api#transactions - name: topics description: The topics object represents the information associated with a topic entity and returns topic messages information. externalDocs: url: https://docs.hedera.com/guides/docs/mirror-node-api/cryptocurrency-api#topic-messages - name: tokens description: The tokens object represents the information associated with a token entity and returns a list of token information.The tokens list endpoint is cached and not updated as frequently as the token lookup by a specific ID. info: title: Mirror Node REST API version: 0.162.0-SNAPSHOT license: name: Apache-2.0 url: "https://www.apache.org/licenses/LICENSE-2.0.html" description: "The REST API offers the ability to query transactions and entity information from a mirror node.\n\nBase url: [/api/v1](/api/v1)\n\nOpenAPI Spec: [/api/v1/docs/openapi.yml](/api/v1/docs/openapi.yml)" contact: name: Mirror Node Team email: mirrornode@hedera.com url: "https://github.com/hiero-ledger/hiero-mirror-node" externalDocs: description: REST API Docs url: "https://docs.hedera.com/guides/docs/mirror-node-api/cryptocurrency-api" servers: - description: The current REST API server url: "" - description: The production REST API servers url: "{scheme}://{network}.mirrornode.hedera.com" variables: scheme: default: https description: The URI scheme enum: [http, https] network: default: testnet description: The Hedera network in use enum: [mainnet-public, mainnet, previewnet, testnet] components: schemas: AccountAlias: description: >- Account alias in the format of 'shard.realm.alias', 'realm.alias', or 'alias'. 'alias' is the RFC4648 no-padding base32 encoded string of the account's alias. type: string pattern: ^(\d{1,5}\.){0,2}(?:[A-Z2-7]{8})*(?:[A-Z2-7]{2}|[A-Z2-7]{4,5}|[A-Z2-7]{7,8})$ # API call responses. AccountsResponse: type: object required: - accounts - links properties: accounts: $ref: "#/components/schemas/Accounts" links: $ref: "#/components/schemas/Links" Allowance: type: object properties: amount: description: The amount remaining of the original amount granted. format: int64 type: integer example: 75 amount_granted: description: The granted amount of the spender's allowance. format: int64 type: integer example: 100 owner: $ref: "#/components/schemas/EntityId" spender: $ref: "#/components/schemas/EntityId" timestamp: $ref: "#/components/schemas/TimestampRange" AssessedCustomFee: type: object properties: amount: format: int64 type: integer collector_account_id: $ref: "#/components/schemas/EntityId" effective_payer_account_ids: type: array items: $ref: "#/components/schemas/EntityId" token_id: $ref: "#/components/schemas/EntityId" BalancesResponse: type: object properties: timestamp: $ref: "#/components/schemas/TimestampNullable" balances: type: array items: $ref: "#/components/schemas/AccountBalance" links: $ref: "#/components/schemas/Links" ContractResponse: allOf: - $ref: "#/components/schemas/Contract" - type: object properties: bytecode: type: [string, "null"] format: binary description: The contract bytecode in hex during deployment example: "0x01021a1fdc9b" runtime_bytecode: type: [string, "null"] format: binary description: The contract bytecode in hex after deployment example: "0x0302fa1ad39c" ContractsResponse: type: object properties: contracts: $ref: "#/components/schemas/Contracts" links: $ref: "#/components/schemas/Links" ContractResultsResponse: type: object properties: results: $ref: "#/components/schemas/ContractResults" links: $ref: "#/components/schemas/Links" ContractStateResponse: type: object properties: state: type: array items: $ref: "#/components/schemas/ContractState" links: $ref: "#/components/schemas/Links" ContractActionsResponse: type: object properties: actions: $ref: "#/components/schemas/ContractActions" links: $ref: "#/components/schemas/Links" ContractLogsResponse: type: object properties: logs: $ref: "#/components/schemas/ContractLogs" links: $ref: "#/components/schemas/Links" CryptoAllowancesResponse: type: object properties: allowances: $ref: "#/components/schemas/CryptoAllowances" links: $ref: "#/components/schemas/Links" HooksResponse: type: object required: - hooks - links properties: hooks: type: array items: $ref: "#/components/schemas/Hook" links: $ref: "#/components/schemas/Links" Hook: type: object required: - admin_key - contract_id - created_timestamp - deleted - extension_point - hook_id - owner_id - timestamp_range - type properties: admin_key: $ref: "#/components/schemas/Key" contract_id: allOf: - $ref: "#/components/schemas/EntityId" description: The contract entity that contains the hook's executing bytecode created_timestamp: allOf: - $ref: "#/components/schemas/TimestampNullable" description: The consensus timestamp when the hook was created deleted: description: Whether the hook has been deleted example: false type: boolean extension_point: description: The extension point this hook implements enum: [ACCOUNT_ALLOWANCE_HOOK] example: ACCOUNT_ALLOWANCE_HOOK type: string hook_id: description: The unique identifier for the hook within the owner's scope example: 1 format: int64 type: integer owner_id: allOf: - $ref: "#/components/schemas/EntityId" description: The entity that owns the hook timestamp_range: $ref: "#/components/schemas/TimestampRangeNullable" type: description: The type of the hook implementation enum: [EVM] example: EVM type: string HookStorage: type: object required: - key - timestamp - value properties: key: example: "0x00000000000000000000000000000000000000000000000000000000000f9a17" format: binary type: string value: example: "0x00000000000000000000000000000000000000000000000000000000000f9a17" format: binary type: [string, "null"] timestamp: $ref: "#/components/schemas/Timestamp" HooksStorageResponse: type: object required: - hook_id - links - owner_id - storage properties: hook_id: description: The unique identifier of the hook within the owner's scope example: 1 format: int64 type: integer links: $ref: "#/components/schemas/Links" owner_id: allOf: - $ref: "#/components/schemas/EntityId" - description: The entity that owns the hook storage: type: array items: $ref: "#/components/schemas/HookStorage" NetworkExchangeRateSetResponse: type: object properties: current_rate: $ref: "#/components/schemas/ExchangeRate" next_rate: $ref: "#/components/schemas/ExchangeRate" timestamp: $ref: "#/components/schemas/Timestamp" NetworkFeesResponse: type: object properties: fees: $ref: "#/components/schemas/NetworkFees" timestamp: $ref: "#/components/schemas/Timestamp" NetworkNodesResponse: type: object required: - nodes - links properties: nodes: $ref: "#/components/schemas/NetworkNodes" links: $ref: "#/components/schemas/Links" NetworkSupplyResponse: type: object properties: released_supply: description: The network's released supply of hbars in tinybars example: "3999999999999999949" type: string timestamp: allOf: - $ref: "#/components/schemas/Timestamp" - description: The consensus timestamp at which the released supply was valid total_supply: description: The network's total supply of hbars in tinybars example: "5000000000000000000" type: string NftAllowancesResponse: type: object properties: allowances: $ref: "#/components/schemas/NftAllowances" links: $ref: "#/components/schemas/Links" OpcodesResponse: type: object required: - address - contract_id - failed - gas - opcodes - return_value properties: address: description: | The address of the transaction recipient in hex. Zero address is set for transactions without a recipient (e.g., contract create) type: string format: binary contract_id: $ref: "#/components/schemas/EntityId" failed: description: Whether the transaction failed to be completely processed. type: boolean gas: description: The gas used in tinybars type: integer format: int64 opcodes: description: The logs produced by the opcode logger type: array items: $ref: "#/components/schemas/Opcode" return_value: description: The returned data from the transaction in hex type: string format: binary Opcode: description: Represents a struct/opcode log entry in a trace type: object required: - depth - gas - gas_cost - memory - op - pc - stack - storage properties: depth: description: The current call depth type: integer format: int32 gas: description: The remaining gas type: integer format: int64 gas_cost: description: The cost for executing op type: integer format: int64 memory: description: The EVM memory with items in hex type: [array, "null"] items: type: string format: binary op: description: The opcode to execute type: string pc: description: The program counter type: integer format: int32 reason: description: The revert reason in hex type: [string, "null"] format: binary stack: description: The EVM stack with items in hex type: [array, "null"] items: type: string format: binary storage: description: The storage slots (keys and values in hex) of the current contract which is read from and written to type: [object, "null"] additionalProperties: type: string format: binary RegisteredNodesResponse: type: object required: - links - registered_nodes properties: registered_nodes: $ref: "#/components/schemas/RegisteredNodes" links: $ref: "#/components/schemas/Links" SchedulesResponse: type: object properties: schedules: $ref: "#/components/schemas/Schedules" links: $ref: "#/components/schemas/Links" BlocksResponse: type: object properties: blocks: $ref: "#/components/schemas/Blocks" links: $ref: "#/components/schemas/Links" StakingRewardsResponse: type: object properties: rewards: type: array items: $ref: "#/components/schemas/StakingReward" links: $ref: "#/components/schemas/Links" TokenAirdropsResponse: type: object properties: airdrops: $ref: "#/components/schemas/TokenAirdrops" links: $ref: "#/components/schemas/Links" TokenAllowancesResponse: type: object properties: allowances: $ref: "#/components/schemas/TokenAllowances" links: $ref: "#/components/schemas/Links" TokenBalancesResponse: type: object properties: timestamp: $ref: "#/components/schemas/TimestampNullable" balances: $ref: "#/components/schemas/TokenDistribution" links: $ref: "#/components/schemas/Links" TokenRelationshipResponse: type: object properties: tokens: type: array items: $ref: "#/components/schemas/TokenRelationship" links: $ref: "#/components/schemas/Links" TokensResponse: type: object properties: tokens: $ref: "#/components/schemas/Tokens" links: $ref: "#/components/schemas/Links" TopicMessagesResponse: type: object properties: messages: $ref: "#/components/schemas/TopicMessages" links: $ref: "#/components/schemas/Links" TransactionByIdResponse: type: object properties: transactions: $ref: "#/components/schemas/TransactionDetails" TransactionsResponse: type: object properties: transactions: $ref: "#/components/schemas/Transactions" links: $ref: "#/components/schemas/Links" # API objects. AccountInfo: type: object required: - account - alias - auto_renew_period - balance - created_timestamp - decline_reward - delegation_address - deleted - ethereum_nonce - evm_address - expiry_timestamp - key - max_automatic_token_associations - memo - receiver_sig_required - staked_account_id - staked_node_id - stake_period_start properties: account: $ref: "#/components/schemas/EntityId" alias: $ref: "#/components/schemas/Alias" auto_renew_period: type: [integer, "null"] format: int64 balance: $ref: "#/components/schemas/Balance" created_timestamp: $ref: "#/components/schemas/TimestampNullable" decline_reward: description: Whether the account declines receiving a staking reward type: boolean delegation_address: $ref: "#/components/schemas/EvmAddressNullable" deleted: type: [boolean, "null"] ethereum_nonce: type: [integer, "null"] format: int64 evm_address: $ref: "#/components/schemas/EvmAddressNullable" expiry_timestamp: $ref: "#/components/schemas/TimestampNullable" key: $ref: "#/components/schemas/Key" max_automatic_token_associations: type: [integer, "null"] format: int32 memo: type: [string, "null"] pending_reward: description: | The pending reward in tinybars the account will receive in the next reward payout. Note the value is updated at the end of each staking period and there may be delay to reflect the changes in the past staking period. type: integer format: int64 receiver_sig_required: type: [boolean, "null"] staked_account_id: allOf: - $ref: "#/components/schemas/EntityId" - description: The account to which this account is staking staked_node_id: description: The id of the node to which this account is staking type: [integer, "null"] format: int64 stake_period_start: allOf: - $ref: "#/components/schemas/TimestampNullable" - description: | The staking period during which either the staking settings for this account changed (such as starting staking or changing stakedNode) or the most recent reward was earned, whichever is later. If this account is not currently staked to a node, then the value is null example: account: 0.0.8 alias: HIQQEXWKW53RKN4W6XXC4Q232SYNZ3SZANVZZSUME5B5PRGXL663UAQA auto_renew_period: null balance: timestamp: "0.000002345" balance: 80 tokens: - token_id: 0.0.200001 balance: 8 created_timestamp: "1562591528.000123456" decline_reward: false delegation_address: "0x019b8ee526333d9cbbbc35fff0309794dfa73451" deleted: false ethereum_nonce: 10 evm_address: "0xac384c53f03855fa1b3616052f8ba32c6c2a2fec" expiry_timestamp: null key: null max_automatic_token_associations: 200 memo: "entity memo" pending_reward: 100 receiver_sig_required: false staked_account_id: null staked_node_id: 3 stake_period_start: "172800000.000000000" Accounts: type: array items: $ref: "#/components/schemas/AccountInfo" AccessList: type: object properties: address: description: The hex encoded address of the accessed contract example: "0xa02457e5dfd32bda5fc7e1f1b008aa5979568150" format: binary type: string storage_keys: description: The list of accessed hex encoded storage keys type: array items: format: binary type: string example: - "0x0000000000000000000000000000000000000000000000000000000000000081" AuthorizationList: type: object properties: address: description: The hex encoded address to be delegated to example: "0x0000000000000000000000000000000000000001" format: binary type: string chain_id: description: The hex encoded chain id example: "0x127" type: string nonce: description: The nonce of the authorization example: 5 format: int64 type: integer r: description: The hex encoded signature r value example: "0x2222222222222222222222222222222222222222222222222222222222222222" format: binary type: string s: description: The hex encoded signature s value example: "0x3333333333333333333333333333333333333333333333333333333333333333" format: binary type: string y_parity: description: The hex encoded parity of the y-coordinate of the signature point example: "0x1" type: string AccountBalance: type: object required: - account - balance - tokens properties: account: $ref: "#/components/schemas/EntityId" balance: format: int64 type: integer tokens: type: array items: $ref: "#/components/schemas/TokenBalance" example: account: 0.15.10 balance: 80 tokens: - token_id: 0.0.200001 balance: 8 AccountBalanceTransactions: allOf: - $ref: "#/components/schemas/AccountInfo" - type: object required: - transactions - links properties: transactions: $ref: "#/components/schemas/Transactions" links: $ref: "#/components/schemas/Links" Alias: description: RFC4648 no-padding base32 encoded account alias type: [string, "null"] pattern: ^(?:[A-Z2-7]{8})*(?:[A-Z2-7]{2}|[A-Z2-7]{4,5}|[A-Z2-7]{7,8})$ example: HIQQEXWKW53RKN4W6XXC4Q232SYNZ3SZANVZZSUME5B5PRGXL663UAQA Balance: type: [object, "null"] required: - timestamp - balance - tokens properties: timestamp: $ref: "#/components/schemas/TimestampNullable" balance: format: int64 type: [integer, "null"] tokens: type: array items: type: object properties: token_id: $ref: "#/components/schemas/EntityId" balance: format: int64 type: integer example: timestamp: "0.000002345" balance: 80 tokens: - token_id: 0.0.200001 balance: 8 Bloom: example: "0x549358c4c2e573e02410ef7b5a5ffa5f36dd7398" format: binary type: [string, "null"] ChunkInfo: type: [object, "null"] properties: initial_transaction_id: $ref: "#/components/schemas/TransactionId" number: example: 1 format: int32 type: integer total: example: 2 format: int32 type: integer Contract: type: object properties: admin_key: $ref: "#/components/schemas/Key" auto_renew_account: $ref: "#/components/schemas/EntityId" auto_renew_period: example: 7776000 format: int64 type: [integer, "null"] contract_id: $ref: "#/components/schemas/EntityId" created_timestamp: $ref: "#/components/schemas/TimestampNullable" deleted: type: boolean example: false evm_address: $ref: "#/components/schemas/EvmAddress" expiration_timestamp: $ref: "#/components/schemas/TimestampNullable" file_id: $ref: "#/components/schemas/EntityId" max_automatic_token_associations: type: [integer, "null"] format: int32 memo: example: contract memo type: string nonce: description: The nonce of the contract format: int64 type: [integer, "null"] example: 1 obtainer_id: $ref: "#/components/schemas/EntityId" permanent_removal: type: [boolean, "null"] proxy_account_id: $ref: "#/components/schemas/EntityId" timestamp: $ref: "#/components/schemas/TimestampRange" Contracts: type: array items: $ref: "#/components/schemas/Contract" ContractLog: allOf: - $ref: "#/components/schemas/ContractResultLog" - type: object properties: block_hash: description: The hex encoded block (record file chain) hash example: "0x553f9311833391c0a3b2f9ed64540a89f2190a511986cd94889f1c0cf7fa63e898b1c6730f14a61755d1fb4ca05fb073" type: string block_number: description: The block height calculated as the number of record files starting from zero since network start. example: 10 format: int64 type: integer root_contract_id: allOf: - $ref: "#/components/schemas/EntityId" - description: The executed contract that created this contract log timestamp: $ref: "#/components/schemas/Timestamp" transaction_hash: type: string description: A hex encoded transaction hash example: "0x397022d1e5baeb89d0ab66e6bf602640610e6fb7e55d78638db861e2c6339aa9" transaction_index: description: The position of the transaction in the block format: int32 type: [integer, "null"] example: 1 ContractLogTopics: description: A list of hex encoded topics associated with this log event example: - "0xf4757a49b326036464bec6fe419a4ae38c8a02ce3e68bf0809674f6aab8ad300" items: type: string type: array ContractAction: type: object properties: call_depth: description: The nesting depth of the call example: 1 format: int32 type: integer call_operation_type: description: The type of the call operation enum: [CALL, CALLCODE, CREATE, CREATE2, DELEGATECALL, STATICCALL, UNKNOWN] example: CALL type: string call_type: description: The type of the call enum: [NO_ACTION, CALL, CREATE, PRECOMPILE, SYSTEM] example: CALL type: string caller: $ref: "#/components/schemas/EntityId" caller_type: description: The entity type of the caller type: string enum: [ACCOUNT, CONTRACT] example: ACCOUNT from: description: The EVM address of the caller example: "0x0000000000000000000000000000000000000065" type: string gas: description: Gas cost in tinybars example: 50000 format: int64 type: integer gas_used: description: Gas used in tinybars example: 50000 format: int64 type: integer index: description: The position of the action within the ordered list of actions example: 0 format: int32 type: integer input: description: The hex encoded input data example: "0x123456" type: [string, "null"] recipient: $ref: "#/components/schemas/EntityId" recipient_type: description: The entity type of the recipient type: [string, "null"] enum: [ACCOUNT, CONTRACT] example: ACCOUNT result_data: description: The hex encoded result data example: "0x123456" type: [string, "null"] result_data_type: description: The type of the result data enum: [OUTPUT, REVERT_REASON, ERROR] example: OUTPUT type: string timestamp: $ref: "#/components/schemas/Timestamp" to: $ref: "#/components/schemas/EvmAddressNullable" value: description: The value of the transaction in tinybars example: 50000 format: int64 type: integer ContractResult: type: object properties: access_list: description: The access list of the wrapped ethereum transaction type: array items: $ref: "#/components/schemas/AccessList" address: description: The hex encoded evm address of contract example: "0x25fe26adc577cc89172e6156c9e24f7b9751b762" type: [string, "null"] authorization_list: description: The authorization list of the wrapped EIP-7702 ethereum transaction type: array items: $ref: "#/components/schemas/AuthorizationList" amount: description: >- The amount sent to the function. When `hbar=true` (default), the value is in tinybars. When `hbar=false`, the value is in weibars. example: 10 format: int64 type: [integer, "null"] block_gas_used: description: The total amount of gas used in the block example: 2000 format: int64 type: [integer, "null"] block_hash: description: The hex encoded block (record file chain) hash example: "0x6ceecd8bb224da491" type: [string, "null"] block_number: description: The block height calculated as the number of record files starting from zero since network start. example: 10 format: int64 type: [integer, "null"] bloom: allOf: - $ref: "#/components/schemas/Bloom" - description: The hex encoded bloom filter of the contract result call_result: description: The hex encoded result returned by the function example: "0x2b048531b38d2882e86044bc972e940ee0a01938" type: [string, "null"] chain_id: description: The hex encoded chain_id of the wrapped ethereum transaction type: [string, "null"] example: "0x127" contract_id: $ref: "#/components/schemas/EntityId" created_contract_ids: description: The list of smart contracts that were created by the function call. items: $ref: "#/components/schemas/EntityId" type: [array, "null"] error_message: description: The message when an error occurs during smart contract execution example: "Out of gas" type: [string, "null"] failed_initcode: description: The hex encoded initcode of a failed contract create transaction example: "0x856739" type: [string, "null"] from: $ref: "#/components/schemas/EvmAddressNullable" function_parameters: description: The hex encoded parameters passed to the function example: "0xbb9f02dc6f0e3289f57a1f33b71c73aa8548ab8b" type: [string, "null"] gas_consumed: description: The units of consumed gas by the EVM to execute contract example: 35000 format: int64 type: [integer, "null"] gas_limit: description: The maximum units of gas allowed for contract execution example: 100000 format: int64 type: integer gas_price: description: >- The hex encoded gas_price of the wrapped ethereum transaction. When `hbar=true` (default), the value is converted to tinybars. When `hbar=false`, the value is in weibars. type: [string, "null"] example: "0x4a817c800" gas_used: description: The units of gas used to execute contract example: 80000 format: int64 type: [integer, "null"] hash: description: A hex encoded 32 byte hash and it is only populated for Ethereum transaction case example: "0xfebbaa29c513d124a6377246ea3506ad917d740c21a88f61a1c55ba338fc2bb1" type: string max_fee_per_gas: description: >- The hex encoded max_fee_per_gas of the wrapped ethereum transaction. When `hbar=true` (default), the value is converted to tinybars. When `hbar=false`, the value is in weibars. type: [string, "null"] example: "0x5" max_priority_fee_per_gas: description: >- The hex encoded max_priority_fee_per_gas of the wrapped ethereum transaction. When `hbar=true` (default), the value is converted to tinybars. When `hbar=false`, the value is in weibars. type: [string, "null"] example: "0x100" nonce: description: The nonce of the wrapped ethereum transaction format: int64 type: [integer, "null"] example: 1 r: description: The hex encoded signature_r of the wrapped ethereum transaction type: [string, "null"] example: "0xd693b532a80fed6392b428604171fb32fdbf953728a3a7ecc7d4062b1652c043" result: description: The result of the transaction example: SUCCESS type: string s: description: The hex encoded signature_s of the wrapped ethereum transaction type: [string, "null"] example: "0x24e9c602ac800b983b035700a14b23f78a253ab762deab5dc27e3555a750b355" status: description: The status of the transaction, 0x1 for a SUCCESS transaction and 0x0 for all else example: 0x1 type: string timestamp: $ref: "#/components/schemas/Timestamp" to: $ref: "#/components/schemas/EvmAddressNullable" transaction_index: description: The position of the transaction in the block format: int64 type: [integer, "null"] example: 1 type: description: The type of the wrapped ethereum transaction, 0 (Pre-Eip1559) or 2 (Post-Eip1559) type: [integer, "null"] example: 2 v: description: The recovery_id of the wrapped ethereum transaction type: [integer, "null"] example: 1 ContractResultDetails: allOf: - $ref: "#/components/schemas/ContractResult" - type: object properties: access_list: description: The access list of the wrapped ethereum transaction type: array items: $ref: "#/components/schemas/AccessList" address: description: The hex encoded evm address of contract example: "0x25fe26adc577cc89172e6156c9e24f7b9751b762" type: [string, "null"] authorization_list: description: The authorization list of the wrapped EIP-7702 ethereum transaction type: array items: $ref: "#/components/schemas/AuthorizationList" block_gas_used: description: The total amount of gas used in the block example: 2000 format: int64 type: [integer, "null"] block_hash: description: The hex encoded block (record file chain) hash example: "0x6ceecd8bb224da491" type: [string, "null"] block_number: description: The block height calculated as the number of record files starting from zero since network start. example: 10 format: int64 type: [integer, "null"] chain_id: description: The hex encoded chain_id of the wrapped ethereum transaction type: [string, "null"] example: "0x127" failed_initcode: description: The hex encoded initcode of a failed contract create transaction example: "0x856739" type: string gas_price: description: The hex encoded gas_price of the wrapped ethereum transaction type: [string, "null"] example: "0x4a817c800" hash: description: The hex encoded transaction hash example: "0x3531396130303866616264653464" type: string logs: $ref: "#/components/schemas/ContractResultLogs" max_fee_per_gas: description: The hex encoded max_fee_per_gas of the wrapped ethereum transaction type: [string, "null"] example: "0x5" max_priority_fee_per_gas: description: The hex encoded max_priority_fee_per_gas of the wrapped ethereum transaction type: [string, "null"] example: "0x100" nonce: description: The nonce of the wrapped ethereum transaction format: int64 type: [integer, "null"] example: 1 r: description: The hex encoded signature_r of the wrapped ethereum transaction type: [string, "null"] example: "0xd693b532a80fed6392b428604171fb32fdbf953728a3a7ecc7d4062b1652c043" s: description: The hex encoded signature_s of the wrapped ethereum transaction type: [string, "null"] example: "0x24e9c602ac800b983b035700a14b23f78a253ab762deab5dc27e3555a750b355" state_changes: $ref: "#/components/schemas/ContractResultStateChanges" transaction_index: description: The position of the transaction in the block format: int64 type: [integer, "null"] example: 1 type: description: The type of the wrapped ethereum transaction, 0 (Pre-Eip1559) or 2 (Post-Eip1559) type: [integer, "null"] example: 2 v: description: The recovery_id of the wrapped ethereum transaction type: [integer, "null"] example: 1 ContractResultLog: type: object properties: address: description: The hex encoded EVM address of the contract example: "0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef" pattern: ^0x[0-9A-Fa-f]{40}$ type: string bloom: allOf: - $ref: "#/components/schemas/Bloom" - description: The hex encoded bloom filter of the contract log contract_id: $ref: "#/components/schemas/EntityId" data: description: The hex encoded data of the contract log example: "0x00000000000000000000000000000000000000000000000000000000000000fa" type: [string, "null"] index: description: The index of the contract log in the chain of logs for an execution example: 0 type: integer topics: $ref: "#/components/schemas/ContractLogTopics" ContractResultLogs: type: array items: $ref: "#/components/schemas/ContractResultLog" ContractState: type: object required: - address - contract_id - timestamp - slot - value properties: address: $ref: "#/components/schemas/EvmAddress" contract_id: $ref: "#/components/schemas/EntityId" timestamp: $ref: "#/components/schemas/Timestamp" slot: description: The hex encoded storage slot. format: binary example: "0x00000000000000000000000000000000000000000000000000000000000000fa" type: string value: description: The hex encoded value to the slot. `0x` implies no value written. example: "0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925" format: binary type: string ContractResultStateChange: type: object properties: address: $ref: "#/components/schemas/EvmAddress" contract_id: $ref: "#/components/schemas/EntityId" slot: description: The hex encoded storage slot changed. format: binary example: "0x00000000000000000000000000000000000000000000000000000000000000fa" type: string value_read: description: The hex encoded value read from the storage slot. example: "0x97c1fc0a6ed5551bc831571325e9bdb365d06803100dc20648640ba24ce69750" format: binary type: string value_written: description: The hex encoded value written to the slot. `null` implies no value written. example: "0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925" format: binary type: [string, "null"] ContractResultStateChanges: type: array items: $ref: "#/components/schemas/ContractResultStateChange" ContractResults: type: array items: $ref: "#/components/schemas/ContractResult" ContractActions: type: array items: $ref: "#/components/schemas/ContractAction" ContractLogs: type: array items: $ref: "#/components/schemas/ContractLog" CustomFees: type: object properties: created_timestamp: $ref: "#/components/schemas/Timestamp" fixed_fees: type: array items: $ref: "#/components/schemas/FixedFee" fractional_fees: type: array items: $ref: "#/components/schemas/FractionalFee" royalty_fees: type: array items: $ref: "#/components/schemas/RoyaltyFee" CryptoAllowance: allOf: - $ref: "#/components/schemas/Allowance" - properties: amount: description: The amount remaining of the original amount granted in tinybars. type: integer format: int64 amount_granted: description: The granted amount of the spender's allowance in tinybars. type: integer format: int64 CryptoAllowances: type: array items: $ref: "#/components/schemas/CryptoAllowance" EntityId: type: [string, "null"] description: "Network entity ID in the format of `shard.realm.num`" pattern: '^\d{1,10}\.\d{1,10}\.\d{1,10}$' example: "0.0.2" EntityIdQuery: type: string pattern: ^((gte?|lte?|eq|ne)\:)?(\d{1,10}\.\d{1,10}\.)?\d{1,10}$ Error: type: object properties: _status: type: object properties: messages: type: array items: type: object properties: data: description: Error message in hexadecimal example: "0x3000" format: binary pattern: "^0x[0-9a-fA-F]+$" type: [string, "null"] detail: description: Detailed error message example: Generic detailed error message type: [string, "null"] message: description: Error message example: Generic error message type: string ContractCallRequest: type: object properties: block: description: Hexadecimal block number or the string "latest", "pending", "earliest". Defaults to "latest". example: "latest" pattern: "^((0x)?[0-9a-fA-F]+|(earliest|pending|latest))$" type: [string, "null"] data: description: Hexadecimal method signature and encoded parameters. Up to 131072 bytes as at most 262146 hexadecimal digits including optional leading 0x. example: "0x47f1aae7" format: binary maxLength: 262146 pattern: "^(0x)?[0-9a-fA-F]+$" type: [string, "null"] estimate: description: Whether gas estimation is called. Defaults to false. example: true type: [boolean, "null"] from: description: The 20-byte hexadecimal EVM address the transaction is sent from. example: "00000000000000000000000000000000000004e2" format: binary maxLength: 42 minLength: 40 pattern: "^(0x)?[A-Fa-f0-9]{40}$" type: [string, "null"] gas: description: Gas provided for the transaction execution. Defaults to 15000000. example: 15000000 format: int64 minimum: 0 type: [integer, "null"] gasPrice: description: Gas price used for each paid gas. example: 100000000 format: int64 minimum: 0 type: [integer, "null"] to: description: The 20-byte hexadecimal EVM address the transaction is directed to. example: "0xd9d0c5c0ff85758bdf05a7636f8036d4d065f5b6" format: binary maxLength: 42 minLength: 40 pattern: "^(0x)?[A-Fa-f0-9]{40}$" type: string value: description: Value sent with this transaction. Defaults to 0. example: 0 format: int64 minimum: 0 type: [integer, "null"] required: - to ContractCallResponse: type: object properties: result: description: Result in hexadecimal from executed contract call. example: "0x0000000000006d8d" format: binary pattern: "^0x[0-9a-fA-F]+$" type: string HederaHash: type: string description: A hex encoded hedera transaction hash. minLength: 96 maxLength: 98 pattern: "^(0x)?[A-Fa-f0-9]{96}$" EthereumHash: type: string description: A hex encoded ethereum transaction hash. minLength: 64 maxLength: 66 pattern: "^(0x)?[A-Fa-f0-9]{64}$" PositiveNumber: type: integer format: int64 description: A positive number. minimum: 0 EvmAddress: type: string description: A network entity encoded as an EVM address in hex. format: binary minLength: 40 maxLength: 42 pattern: "^(0x)?[A-Fa-f0-9]{40}$" example: "0000000000000000000000000000000000001f41" EvmAddressWithShardRealm: type: string description: A network entity encoded as an EVM address in hex. format: binary minLength: 40 maxLength: 60 pattern: '^(\d{1,10}\.){0,2}[A-Fa-f0-9]{40}$' example: "0x0000000000000000000000000000000000001f41" EvmAddressNullable: type: [string, "null"] description: A network entity encoded as an EVM address in hex. format: binary minLength: 40 maxLength: 42 pattern: "^(0x)?[A-Fa-f0-9]{40}$" example: "0x0000000000000000000000000000000000001f41" ExchangeRate: type: object properties: cent_equivalent: format: int32 example: 596987 type: integer expiration_time: format: int64 example: 1649689200 type: integer hbar_equivalent: example: 30000 format: int32 type: integer FixedFee: type: object properties: all_collectors_are_exempt: type: boolean example: false amount: example: 100 format: int64 type: integer collector_account_id: $ref: "#/components/schemas/EntityId" denominating_token_id: $ref: "#/components/schemas/EntityId" CustomFeeLimit: type: object properties: account_id: $ref: "#/components/schemas/EntityId" amount: example: 100 format: int64 type: integer denominating_token_id: $ref: "#/components/schemas/EntityId" FractionalFee: type: object properties: all_collectors_are_exempt: type: boolean example: false amount: type: object properties: numerator: example: 12 format: int64 type: integer denominator: example: 29 format: int64 type: integer collector_account_id: $ref: "#/components/schemas/EntityId" denominating_token_id: $ref: "#/components/schemas/EntityId" maximum: example: 120 format: int64 type: [integer, "null"] minimum: example: 30 format: int64 type: integer net_of_transfers: type: boolean example: true RoyaltyFee: type: object properties: all_collectors_are_exempt: type: boolean example: false amount: type: object properties: numerator: example: 15 format: int64 type: integer denominator: example: 37 format: int64 type: integer collector_account_id: $ref: "#/components/schemas/EntityId" fallback_fee: type: [object, "null"] properties: amount: example: 100 format: int64 type: integer denominating_token_id: $ref: "#/components/schemas/EntityId" Key: description: The public key which controls access to various network entities. type: [object, "null"] properties: _type: type: string enum: [ECDSA_SECP256K1, ED25519, ProtobufEncoded] example: ProtobufEncoded key: type: string example: "15706b229b3ba33d4a5a41ff54ce1cfe0a3d308672a33ff382f81583e02bd743" Links: type: object properties: next: example: null type: [string, "null"] NetworkNode: type: object required: - admin_key - associated_registered_nodes - decline_reward - description - file_id - grpc_proxy_endpoint - max_stake - memo - min_stake - node_account_id - node_id - node_cert_hash - public_key - reward_rate_start - service_endpoints - stake - stake_not_rewarded - stake_rewarded - staking_period - timestamp properties: admin_key: $ref: "#/components/schemas/Key" associated_registered_nodes: type: array items: format: int64 minimum: 0 type: integer decline_reward: description: Whether the node wants to receive staking rewards or not. type: [boolean, "null"] description: description: a memo associated with the address book type: [string, "null"] file_id: $ref: "#/components/schemas/EntityId" grpc_proxy_endpoint: $ref: "#/components/schemas/ServiceEndpoint" max_stake: description: The maximum stake (rewarded or not rewarded) this node can have as consensus weight type: [integer, "null"] format: int64 memo: description: memo type: [string, "null"] min_stake: description: | The minimum stake (rewarded or not rewarded) this node must reach before having non-zero consensus weight type: [integer, "null"] format: int64 node_account_id: $ref: "#/components/schemas/EntityId" node_id: description: An identifier for the node format: int64 type: integer node_cert_hash: description: hex encoded hash of the node's TLS certificate type: [string, "null"] public_key: description: hex encoded X509 RSA public key used to verify stream file signature type: [string, "null"] reward_rate_start: description: The total tinybars earned by this node per whole hbar in the last staking period format: int64 type: [integer, "null"] service_endpoints: $ref: "#/components/schemas/ServiceEndpoints" stake: description: The node consensus weight at the beginning of the staking period format: int64 type: [integer, "null"] stake_not_rewarded: description: | The sum (balance + stakedToMe) for all accounts staked to this node with declineReward=true at the beginning of the staking period format: int64 type: [integer, "null"] stake_rewarded: description: | The sum (balance + staked) for all accounts staked to the node that are not declining rewards at the beginning of the staking period format: int64 type: [integer, "null"] staking_period: allOf: - $ref: "#/components/schemas/TimestampRangeNullable" - description: The timestamp range of the staking period timestamp: $ref: "#/components/schemas/TimestampRange" example: admin_key: _type: "ED25519" key: "15706b229b3ba33d4a5a41ff54ce1cfe0a3d308672a33ff382f81583e02bd743" associated_registered_nodes: [1, 10] decline_reward: false description: "address book 1" file_id: "0.0.102" max_stake: 50000 memo: "0.0.4" min_stake: 1000 node_account_id: "0.0.4" node_cert_hash: "0x01d173753810c0aae794ba72d5443c292e9ff962b01046220dd99f5816422696e0569c977e2f169e1e5688afc8f4aa16" node_id: 1 public_key: "0x4a5ad514f0957fa170a676210c9bdbddf3bc9519702cf915fa6767a40463b96f" reward_rate_start: 1000000 service_endpoints: - ip_address_v4: 128.0.0.6 port: 50216 stake: 20000 stake_not_rewarded: 19900 stake_rewarded: 100 staking_period: from: "1655164800.000000000" to: "1655251200.000000000" timestamp: from: "187654.000123457" to: null NetworkNodes: type: array items: $ref: "#/components/schemas/NetworkNode" NetworkFee: type: object properties: gas: description: gas cost in tinybars format: int64 type: integer transaction_type: description: type of the transaction type: string NetworkFees: type: array items: $ref: "#/components/schemas/NetworkFee" NetworkStakeResponse: type: object required: - max_stake_rewarded - max_staking_reward_rate_per_hbar - max_total_reward - node_reward_fee_fraction - reserved_staking_rewards - reward_balance_threshold - stake_total - staking_period - staking_period_duration - staking_periods_stored - staking_reward_fee_fraction - staking_reward_rate - staking_start_threshold - unreserved_staking_reward_balance properties: max_stake_rewarded: description: | The maximum amount of tinybar that can be staked for reward while still achieving the maximum per-hbar reward rate format: int64 type: integer max_staking_reward_rate_per_hbar: description: The maximum reward rate, in tinybars per whole hbar, that any account can receive in a day type: integer format: int64 max_total_reward: description: | The total tinybars to be paid as staking rewards in the ending period, after applying the settings for the 0.0.800 balance threshold and the maximum stake rewarded format: int64 type: integer node_reward_fee_fraction: description: The fraction between zero and one of the network and service fees paid to the node reward account 0.0.801 type: number format: float reserved_staking_rewards: description: | The amount of the staking reward funds of account 0.0.800 reserved to pay pending rewards that have been earned but not collected format: int64 type: integer reward_balance_threshold: description: | The unreserved tinybar balance of account 0.0.800 required to achieve the maximum per-hbar reward rate format: int64 type: integer stake_total: description: The total amount staked to the network in tinybars the start of the current staking period type: integer format: int64 staking_period: allOf: - $ref: "#/components/schemas/TimestampRange" - description: The timestamp range of the staking period staking_period_duration: description: The number of minutes in a staking period type: integer format: int64 staking_periods_stored: description: The number of staking periods for which the reward is stored for each node type: integer format: int64 staking_reward_fee_fraction: description: The fraction between zero and one of the network and service fees paid to the staking reward account 0.0.800 type: number format: float staking_reward_rate: description: The total number of tinybars to be distributed as staking rewards each period type: integer format: int64 staking_start_threshold: description: The minimum balance of staking reward account 0.0.800 required to active rewards type: integer format: int64 unreserved_staking_reward_balance: description: | The unreserved balance of account 0.0.800 at the close of the just-ending period; this value is used to compute the HIP-782 balance ratio format: int64 type: integer example: max_stake_rewarded: 10 max_staking_reward_rate_per_hbar: 17808 max_total_reward: 20 node_reward_fee_fraction: 1.0 reserved_staking_rewards: 30 reward_balance_threshold: 40 stake_total: 35000000000000000 staking_period: from: "1655164800.000000000" to: "1655251200.000000000" staking_period_duration: 1440 staking_periods_stored: 365 staking_reward_fee_fraction: 1.0 staking_reward_rate: 100000000000 staking_start_threshold: 25000000000000000 unreserved_staking_reward_balance: 50 Nft: type: object properties: account_id: $ref: "#/components/schemas/EntityId" created_timestamp: $ref: "#/components/schemas/TimestampNullable" delegating_spender: $ref: "#/components/schemas/EntityId" deleted: description: whether the nft or the token it belongs to has been deleted type: boolean metadata: description: Arbitrary binary data associated with this NFT encoded in base64. type: string format: byte modified_timestamp: $ref: "#/components/schemas/TimestampNullable" serial_number: example: 1 format: int64 type: integer spender: $ref: "#/components/schemas/EntityId" token_id: $ref: "#/components/schemas/EntityId" example: account_id: "0.1.2" created_timestamp: "1234567890.000000001" delegating_spender: "0.0.400" deleted: false metadata: "VGhpcyBpcyBhIHRlc3QgTkZU" modified_timestamp: "1610682445.003266001" serial_number: 124 spender_id: "0.0.500" token_id: "0.0.222" Nfts: type: object properties: nfts: type: array items: $ref: "#/components/schemas/Nft" links: $ref: "#/components/schemas/Links" NftAllowance: type: object properties: approved_for_all: description: A boolean value indicating if the spender has the allowance to spend all NFTs owned by the given owner example: true type: boolean owner: $ref: "#/components/schemas/EntityId" spender: $ref: "#/components/schemas/EntityId" timestamp: $ref: "#/components/schemas/TimestampRange" token_id: $ref: "#/components/schemas/EntityId" example: approved_for_all: false owner: "0.0.11" payer_account_id: "0.0.10" spender: "0.0.15" timestamp: from: "1651560386.060890949" to: "1651560386.661997287" token_id: "0.0.99" required: - approved_for_all - owner - spender - timestamp - token_id NftAllowances: type: array items: $ref: "#/components/schemas/NftAllowance" NftTransactionTransfer: type: object properties: consensus_timestamp: $ref: "#/components/schemas/Timestamp" is_approval: type: boolean nonce: type: integer minimum: 0 receiver_account_id: $ref: "#/components/schemas/EntityId" sender_account_id: $ref: "#/components/schemas/EntityId" transaction_id: type: string type: $ref: "#/components/schemas/TransactionTypes" example: consensus_timestamp: "1618591023.997420021" is_approval: false nonce: 0 receiver_account_id: "0.0.11" sender_account_id: "0.0.10" transaction_id: "0.0.19789-1618591023-997420021" type: "CRYPTOTRANSFER" required: - consensus_timestamp - is_approval - nonce - receiver_account_id - sender_account_id - transaction_id - type Block: type: object properties: count: type: integer minimum: 0 gas_used: type: [integer, "null"] minimum: 0 format: int64 hapi_version: type: [string, "null"] hash: type: string logs_bloom: description: A hex encoded 256-byte array with 0x prefix type: [string, "null"] pattern: ^0x[0-9a-fA-F]{512}$ name: type: string number: type: integer minimum: 0 previous_hash: type: string size: type: [integer, "null"] timestamp: $ref: "#/components/schemas/TimestampRange" example: count: 3 gas_used: 300000 hapi_version: "0.11.0" hash: "0x3c08bbbee74d287b1dcd3f0ca6d1d2cb92c90883c4acf9747de9f3f3162ad25b999fc7e86699f60f2a3fb3ed9a646c6b" logs_bloom: "0x00000020002000001000000000000000000000000000000000000000000010000000000004000000000000000000000000108000000000000000000080000000000004000000000000000000000000880000000000000000000101000000000000000000000000000000000000008000000000000400000080000000000001000000000000000000000000000000000000000000002000000000100000100000200000040000100000001000000000000000000000000000000001001000004000000000000000000001000000000000000000100000000000100000000000000000000000000000000000000000000000080000100800000000000000120080" name: "2022-05-03T06_46_26.060890949Z.rcd" number: 77 previous_hash: "0xf7d6481f659c866c35391ee230c374f163642ebf13a5e604e04a95a9ca48a298dc2dfa10f51bcbaab8ae23bc6d662a0b" size: 8192 timestamp: from: "1651560386.060890949" to: "1651560386.661997287" Blocks: type: array items: $ref: "#/components/schemas/Block" ConsensusCustomFees: description: Custom fees assessed for each message submitted to the topic type: object properties: created_timestamp: $ref: "#/components/schemas/Timestamp" fixed_fees: type: array items: $ref: "#/components/schemas/FixedCustomFee" FeeEstimate: description: The fee estimate for the network component. Includes the base fee and any extras associated with it. properties: base: description: The base fee price, in tinycents. example: 1000 format: int64 minimum: 0 type: integer extras: description: The extra fees that apply for this fee component. items: $ref: "#/components/schemas/FeeExtra" type: array required: - base - extras type: object FeeEstimateMode: description: Estimate solely based on the transaction's inherent properties or use network state. default: INTRINSIC enum: [INTRINSIC, STATE] type: string FeeEstimateNetwork: description: The network fee component which covers the cost of gossip, consensus, signature verifications, fee payment, and storage. properties: multiplier: description: Multiplied by the node fee to determine the total network fee. example: 2 format: int32 minimum: 0 type: integer subtotal: description: The subtotal in tinycents for the network fee component which is calculated by multiplying the node subtotal by the network multiplier. example: 1200 format: int64 minimum: 0 type: integer required: - multiplier - subtotal type: object FeeEstimateResponse: description: The response containing the estimated transaction fees. properties: high_volume_multiplier: description: The high-volume pricing multiplier per HIP-1313. A value of 1 indicates no high-volume pricing. A value greater than 1 applies when the transaction's highVolume flag is true and throttle utilization is non-zero. example: 100 format: int64 minimum: 1 type: integer network: $ref: "#/components/schemas/FeeEstimateNetwork" node: allOf: - $ref: "#/components/schemas/FeeEstimate" - description: The node fee component which is to be paid to the node that submitted the transaction to the network. This fee exists to compensate the node for the work it performed to pre-check the transaction before submitting it, and incentivizes the node to accept new transactions from users. service: allOf: - $ref: "#/components/schemas/FeeEstimate" - description: The service fee component which covers execution costs, state saved in the Merkle tree, and additional costs to the blockchain storage. total: description: The sum of the network, node, and service subtotals in tinycents. example: 1000 format: int64 minimum: 0 type: integer required: - high_volume_multiplier - network - node - service - total type: object FeeExtra: description: The extra fee charged for the transaction. properties: charged: description: The charged count of items as calculated by `max(0, count - included)`. example: 1 format: int64 minimum: 0 type: integer count: description: The actual count of items received. example: 2 format: int64 minimum: 0 type: integer fee_per_unit: description: The fee price per unit in tinycents. example: 100 format: int64 minimum: 0 type: integer included: description: The count of this "extra" that is included for free. example: 1 format: int64 minimum: 0 type: integer name: description: The unique name of this extra fee as defined in the fee schedule. example: Signatures type: string subtotal: description: The subtotal in tinycents for this extra fee. Calculated by multiplying the charged count by the fee_per_unit. example: 100 format: int64 minimum: 0 type: integer required: - charged - count - fee_per_unit - included - name - subtotal type: object FixedCustomFee: type: object properties: amount: example: 100 format: int64 type: integer collector_account_id: $ref: "#/components/schemas/EntityId" denominating_token_id: $ref: "#/components/schemas/EntityId" NftTransactionHistory: type: object properties: transactions: type: array items: $ref: "#/components/schemas/NftTransactionTransfer" links: $ref: "#/components/schemas/Links" required: - transactions - links RegisteredBlockNodeApi: type: string enum: [OTHER, STATUS, PUBLISH, SUBSCRIBE_STREAM, STATE_PROOF, UNRECOGNIZED] RegisteredBlockNodeEndpoint: type: object properties: endpoint_apis: type: array items: $ref: "#/components/schemas/RegisteredBlockNodeApi" RegisteredGeneralServiceEndpoint: type: object properties: description: type: string RegisteredMirrorNodeEndpoint: type: object RegisteredNode: type: object required: - admin_key - created_timestamp - description - registered_node_id - service_endpoints - timestamp properties: admin_key: $ref: "#/components/schemas/Key" created_timestamp: $ref: "#/components/schemas/TimestampNullable" description: description: A short description of the node type: [string, "null"] registered_node_id: description: An identifier for the registered node format: int64 type: integer service_endpoints: $ref: "#/components/schemas/RegisteredServiceEndpoints" timestamp: $ref: "#/components/schemas/TimestampRange" example: admin_key: _type: "ProtobufEncoded" key: "421050820e1485acdd59726088e0e4a2130ebbbb70009f640ad95c78dd5a7b38" created_timestamp: "1586567700.453054001" description: "alpha" registered_node_id: 1 service_endpoints: - ip_address_v4: 128.0.0.6 port: 50216 timestamp: from: "187654.000123457" to: null RegisteredNodes: type: array items: $ref: "#/components/schemas/RegisteredNode" RegisteredNodeType: description: Registered node type. enum: [BLOCK_NODE, GENERAL_SERVICE, MIRROR_NODE, RPC_RELAY] example: BLOCK_NODE type: string RegisteredRpcRelayEndpoint: type: object RegisteredServiceEndpoint: type: object required: - block_node - general_service - mirror_node - port - rpc_relay - requires_tls - type allOf: # Ensures at least one of these two fields is present - anyOf: - required: [domain_name] - required: [ip_address] properties: block_node: $ref: "#/components/schemas/RegisteredBlockNodeEndpoint" domain_name: description: The DNS domain name of the service example: "block1.alpha.com" type: [string, "null"] general_service: $ref: "#/components/schemas/RegisteredGeneralServiceEndpoint" ip_address: description: The IP address of the service example: "191.91.239.79" type: [string, "null"] mirror_node: $ref: "#/components/schemas/RegisteredMirrorNodeEndpoint" port: format: int32 type: integer minimum: 0 maximum: 65535 requires_tls: description: Whether the registered service endpoint requires TLS or not. type: boolean rpc_relay: $ref: "#/components/schemas/RegisteredRpcRelayEndpoint" type: $ref: "#/components/schemas/RegisteredNodeType" example: domain_name: block1.alpha.com general_service: null ip_address: null mirror_node: null port: 40840 requires_tls: false rpc_relay: null type: BLOCK_NODE RegisteredServiceEndpoints: type: array items: $ref: "#/components/schemas/RegisteredServiceEndpoint" Schedule: type: object properties: admin_key: $ref: "#/components/schemas/Key" consensus_timestamp: $ref: "#/components/schemas/Timestamp" creator_account_id: $ref: "#/components/schemas/EntityId" deleted: type: boolean example: false executed_timestamp: $ref: "#/components/schemas/TimestampNullable" expiration_time: $ref: "#/components/schemas/TimestampNullable" memo: type: string example: "created on 02/10/2021" payer_account_id: $ref: "#/components/schemas/EntityId" schedule_id: $ref: "#/components/schemas/EntityId" signatures: type: array items: $ref: "#/components/schemas/ScheduleSignature" transaction_body: type: string format: byte example: Kd6tvu8= wait_for_expiry: type: boolean Schedules: type: array items: $ref: "#/components/schemas/Schedule" ScheduleSignature: type: object properties: consensus_timestamp: $ref: "#/components/schemas/Timestamp" public_key_prefix: type: string format: byte example: "AAEBAwuqAwzB" signature: type: string format: byte example: "3q2+7wABAQMLqgMMwQ==" type: type: string enum: [CONTRACT, ED25519, RSA_3072, ECDSA_384, ECDSA_SECP256K1, UNKNOWN] example: "ED25519" ServiceEndpoint: type: object required: - domain_name - ip_address_v4 - port properties: domain_name: type: string ip_address_v4: type: string port: format: int32 type: integer example: domain_name: www.example.com ip_address_v4: 127.0.0.1 port: 50211 ServiceEndpoints: type: array items: $ref: "#/components/schemas/ServiceEndpoint" StakingReward: type: object properties: account_id: $ref: "#/components/schemas/EntityId" amount: description: The number of tinybars awarded example: 10 format: int64 type: integer timestamp: $ref: "#/components/schemas/Timestamp" required: - account_id - amount - timestamp example: account_id: 0.0.1000 amount: 10 timestamp: "1234567890.000000001" StakingRewardTransfer: type: object description: A staking reward transfer required: - account - amount properties: account: $ref: "#/components/schemas/EntityId" amount: description: The number of tinybars awarded example: 10 format: int64 type: integer example: account_id: 0.0.1000 amount: 10 StakingRewardTransfers: type: array items: $ref: "#/components/schemas/StakingRewardTransfer" Timestamp: description: A Unix timestamp in seconds.nanoseconds format type: string example: "1586567700.453054000" pattern: '^\d{1,10}(\.\d{1,9})?$' TimestampNullable: description: A Unix timestamp in seconds.nanoseconds format type: [string, "null"] example: "1586567700.453054000" pattern: '^\d{1,10}(\.\d{1,9})?$' TimestampRange: type: object description: A timestamp range an entity is valid for properties: from: allOf: - $ref: "#/components/schemas/Timestamp" - description: The inclusive from timestamp in seconds to: allOf: - $ref: "#/components/schemas/TimestampNullable" - description: The exclusive to timestamp in seconds TimestampRangeNullable: type: [object, "null"] description: A timestamp range an entity is valid for properties: from: allOf: - $ref: "#/components/schemas/Timestamp" - description: The inclusive from timestamp in seconds to: allOf: - $ref: "#/components/schemas/TimestampNullable" - description: The exclusive to timestamp in seconds Token: type: object properties: admin_key: $ref: "#/components/schemas/Key" decimals: format: int64 type: integer metadata: description: Arbitrary binary data associated with this token class encoded in base64. type: string format: byte name: type: string symbol: type: string token_id: $ref: "#/components/schemas/EntityId" type: type: string required: - admin_key - decimals - name - symbol - token_id - type example: admin_key: null decimals: 3 metadata: "VGhpcyBpcyBhIHRlc3QgTkZU" name: First Mover symbol: FIRSTMOVERLPDJH token_id: 0.0.1 type: FUNGIBLE_COMMON TokenAirdrop: type: object properties: amount: format: int64 type: integer receiver_id: $ref: "#/components/schemas/EntityId" sender_id: $ref: "#/components/schemas/EntityId" serial_number: example: 1 format: int64 type: [integer, "null"] timestamp: $ref: "#/components/schemas/TimestampRange" token_id: $ref: "#/components/schemas/EntityId" example: amount: 10 receiver_id: "0.0.15" sender_id: "0.0.10" serial_number: null timestamp: from: "1651560386.060890949" to: "1651560386.661997287" token_id: "0.0.99" required: - amount - receiver_id - sender_id - timestamp - token_id TokenAirdrops: type: array items: $ref: "#/components/schemas/TokenAirdrop" TokenAllowance: allOf: - $ref: "#/components/schemas/Allowance" - properties: token_id: $ref: "#/components/schemas/EntityId" TokenAllowances: type: array items: $ref: "#/components/schemas/TokenAllowance" TokenBalance: type: object required: - token_id - balance properties: token_id: $ref: "#/components/schemas/EntityId" balance: format: int64 type: integer example: token_id: 0.0.200001 balance: 8 TokenDistribution: type: array items: type: object properties: account: $ref: "#/components/schemas/EntityId" balance: format: int64 type: integer decimals: format: int64 type: [integer, "null"] required: - account - balance - decimals example: - account: 0.15.2 balance: 1000 decimals: 3 TokenInfo: type: object properties: admin_key: $ref: "#/components/schemas/Key" auto_renew_account: $ref: "#/components/schemas/EntityId" auto_renew_period: example: null format: int64 type: [integer, "null"] created_timestamp: $ref: "#/components/schemas/Timestamp" decimals: type: string example: 1000 deleted: type: [boolean, "null"] example: true expiry_timestamp: description: >- The token's expiration time in nanoseconds since the Unix epoch. Note that this encoding differs from other entity expiry timestamps (e.g., accounts) which use a seconds.nanoseconds string format. This inconsistency is a known issue retained for backwards compatibility. example: 1234567890100000 format: int64 type: [integer, "null"] fee_schedule_key: $ref: "#/components/schemas/Key" freeze_default: type: boolean example: false freeze_key: $ref: "#/components/schemas/Key" initial_supply: type: string example: "1000000" kyc_key: $ref: "#/components/schemas/Key" max_supply: type: string example: "9223372036854775807" metadata: description: Arbitrary binary data associated with this token class encoded in base64. type: string format: byte metadata_key: allOf: - $ref: "#/components/schemas/Key" - description: The key which can change the metadata of a token and individual NFTs. modified_timestamp: $ref: "#/components/schemas/Timestamp" name: type: string example: Token name memo: type: string example: "token memo" pause_key: $ref: "#/components/schemas/Key" pause_status: type: string enum: [NOT_APPLICABLE, PAUSED, UNPAUSED] example: UNPAUSED supply_key: $ref: "#/components/schemas/Key" supply_type: type: string enum: [FINITE, INFINITE] example: INFINITE symbol: type: string example: ORIGINALRDKSE token_id: $ref: "#/components/schemas/EntityId" total_supply: type: string example: "1000000" treasury_account_id: $ref: "#/components/schemas/EntityId" type: type: string enum: [FUNGIBLE_COMMON, NON_FUNGIBLE_UNIQUE] example: FUNGIBLE_COMMON wipe_key: $ref: "#/components/schemas/Key" custom_fees: $ref: "#/components/schemas/CustomFees" TokenRelationship: type: object properties: automatic_association: type: [boolean, "null"] description: Specifies if the relationship is implicitly/explicitly associated. example: true balance: format: int64 type: integer description: For FUNGIBLE_COMMON, the balance that the account holds in the smallest denomination. For NON_FUNGIBLE_UNIQUE, the number of NFTs held by the account. example: 5 created_timestamp: $ref: "#/components/schemas/TimestampNullable" decimals: format: int64 type: [integer, "null"] freeze_status: type: [string, "null"] description: The Freeze status of the account. example: UNFROZEN enum: [NOT_APPLICABLE, FROZEN, UNFROZEN] kyc_status: type: string description: The KYC status of the account. example: GRANTED enum: [NOT_APPLICABLE, GRANTED, REVOKED] token_id: $ref: "#/components/schemas/EntityId" required: - automatic_association - balance - created_timestamp - decimals - freeze_status - kyc_status - token_id example: automatic_association: true balance: 5 created_timestamp: "123456789.000000001" decimals: 3 freeze_status: UNFROZEN kyc_status: GRANTED token_id: 0.0.27335 LogTopicQueryParam: type: array items: type: string pattern: ^(0x)?[0-9A-Fa-f]{1,64}$ TransactionTypes: type: string enum: - ATOMICBATCH - CONSENSUSCREATETOPIC - CONSENSUSDELETETOPIC - CONSENSUSSUBMITMESSAGE - CONSENSUSUPDATETOPIC - CONTRACTCALL - CONTRACTCREATEINSTANCE - CONTRACTDELETEINSTANCE - CONTRACTUPDATEINSTANCE - CRSPUBLICATION - CRYPTOADDLIVEHASH - CRYPTOAPPROVEALLOWANCE - CRYPTOCREATEACCOUNT - CRYPTODELETE - CRYPTODELETEALLOWANCE - CRYPTODELETELIVEHASH - CRYPTOTRANSFER - CRYPTOUPDATEACCOUNT - ETHEREUMTRANSACTION - FILEAPPEND - FILECREATE - FILEDELETE - FILEUPDATE - FREEZE - HINTSKEYPUBLICATION - HINTSPARTIALSIGNATURE - HINTSPREPROCESSINGVOTE - HISTORYPROOFKEYPUBLICATION - HISTORYPROOFSIGNATURE - HISTORYPROOFVOTE - HOOKSTORE - LEDGERIDPUBLICATION - MIGRATIONROOTHASHVOTE - NODECREATE - NODEDELETE - NODESTAKEUPDATE - NODEUPDATE - REGISTEREDNODECREATE - REGISTEREDNODEDELETE - REGISTEREDNODEUPDATE - SCHEDULECREATE - SCHEDULEDELETE - SCHEDULESIGN - STATESIGNATURETRANSACTION - SYSTEMDELETE - SYSTEMUNDELETE - TOKENAIRDROP - TOKENASSOCIATE - TOKENBURN - TOKENCANCELAIRDROP - TOKENCLAIMAIRDROP - TOKENCREATION - TOKENDELETION - TOKENDISSOCIATE - TOKENFEESCHEDULEUPDATE - TOKENFREEZE - TOKENGRANTKYC - TOKENMINT - TOKENPAUSE - TOKENREJECT - TOKENREVOKEKYC - TOKENUNFREEZE - TOKENUNPAUSE - TOKENUPDATE - TOKENUPDATENFTS - TOKENWIPE - UNCHECKEDSUBMIT - UTILPRNG Tokens: type: array items: $ref: "#/components/schemas/Token" Topic: type: object properties: admin_key: $ref: "#/components/schemas/Key" auto_renew_account: $ref: "#/components/schemas/EntityId" auto_renew_period: description: The amount of time to attempt to extend the topic's lifetime after expiration. example: 7776000 format: int64 type: [integer, "null"] created_timestamp: $ref: "#/components/schemas/TimestampNullable" custom_fees: $ref: "#/components/schemas/ConsensusCustomFees" deleted: description: Whether the topic is deleted or not. example: false type: [boolean, "null"] fee_exempt_key_list: description: Keys permitted to submit messages to the topic without paying custom fees type: array items: $ref: "#/components/schemas/Key" fee_schedule_key: $ref: "#/components/schemas/Key" memo: description: The memo associated with the topic. example: topic memo type: string submit_key: $ref: "#/components/schemas/Key" timestamp: $ref: "#/components/schemas/TimestampRange" topic_id: $ref: "#/components/schemas/EntityId" required: - admin_key - auto_renew_account - auto_renew_period - created_timestamp - custom_fees - deleted - fee_exempt_key_list - fee_schedule_key - memo - submit_key - timestamp - topic_id TopicMessage: type: object properties: chunk_info: $ref: "#/components/schemas/ChunkInfo" consensus_timestamp: $ref: "#/components/schemas/Timestamp" message: type: string payer_account_id: $ref: "#/components/schemas/EntityId" running_hash: type: string format: byte running_hash_version: format: int32 type: integer sequence_number: format: int64 type: integer topic_id: $ref: "#/components/schemas/EntityId" required: - consensus_timestamp - message - payer_account_id - running_hash - running_hash_version - sequence_number - topic_id example: chunk_info: initial_transaction_id: "0.0.10-1234567890-000000321" nonce: 3 number: 1 total: 2 scheduled: true consensus_timestamp: "1234567890.000000001" message: bWVzc2FnZQ== payer_account_id: 0.0.10 running_hash: cnVubmluZ19oYXNo running_hash_version: 2 sequence_number: 1 topic_id: 0.0.7 TopicMessages: type: array items: $ref: "#/components/schemas/TopicMessage" Transaction: type: object properties: batch_key: $ref: "#/components/schemas/Key" bytes: type: [string, "null"] format: byte charged_tx_fee: format: int64 type: integer consensus_timestamp: $ref: "#/components/schemas/Timestamp" entity_id: $ref: "#/components/schemas/EntityId" high_volume: description: Whether the transaction used high-volume entity creation throttles and pricing per HIP-1313 type: boolean high_volume_pricing_multiplier: description: The multiplier applied to the transaction fee when high-volume pricing was in effect per HIP-1313, scaled by 1000 (e.g. 1000 = 1x, 4000 = 4x). A value of 0 means high-volume pricing was not applied. Null for pre-HIP-1313 transactions. format: int64 minimum: 0 type: [integer, "null"] max_custom_fees: type: array items: $ref: "#/components/schemas/CustomFeeLimit" max_fee: type: string memo_base64: format: byte type: [string, "null"] name: $ref: "#/components/schemas/TransactionTypes" nft_transfers: type: array items: type: object properties: is_approval: type: boolean receiver_account_id: $ref: "#/components/schemas/EntityId" sender_account_id: $ref: "#/components/schemas/EntityId" serial_number: example: 1 format: int64 type: integer token_id: $ref: "#/components/schemas/EntityId" required: - is_approval - receiver_account_id - sender_account_id - token_id - serial_number node: $ref: "#/components/schemas/EntityId" nonce: type: integer minimum: 0 parent_consensus_timestamp: $ref: "#/components/schemas/TimestampNullable" result: type: string scheduled: type: boolean staking_reward_transfers: $ref: "#/components/schemas/StakingRewardTransfers" token_transfers: type: array items: type: object properties: token_id: $ref: "#/components/schemas/EntityId" account: $ref: "#/components/schemas/EntityId" amount: format: int64 type: integer is_approval: type: boolean required: - token_id - account - amount transaction_hash: type: string format: byte transaction_id: type: string transfers: type: array items: type: object properties: account: $ref: "#/components/schemas/EntityId" amount: format: int64 type: integer is_approval: type: boolean required: - account - amount valid_duration_seconds: type: string valid_start_timestamp: $ref: "#/components/schemas/Timestamp" example: batch_key: _type: "ED25519" key: "7934a257a6144fabc8fbdeeaa5810662adb89e7b6978ace46a74fdb2d12bd4b2" bytes: null charged_tx_fee: 7 consensus_timestamp: "1234567890.000000007" entity_id: "0.0.2281979" high_volume: false high_volume_pricing_multiplier: 1 max_custom_fees: - account_id: 0.0.8 amount: 1000 denominating_token_id: 0.0.2000 - account_id: 0.0.8 amount: 1500 denominating_token_id: null max_fee: 33 memo_base64: null name: CRYPTOTRANSFER nft_transfers: - is_approval: true receiver_account_id: 0.0.121 sender_account_id: 0.0.122 serial_number: 1 token_id: 0.0.123 - is_approval: true receiver_account_id: 0.0.321 sender_account_id: 0.0.422 serial_number: 2 token_id: 0.0.123 node: 0.0.3 nonce: 0 parent_consensus_timestamp: "1234567890.000000007" result: SUCCESS scheduled: false staking_reward_transfers: - account: 3 amount: 150 - account: 9 amount: 200 transaction_hash: "vigzKe2J7fv4ktHBbNTSzQmKq7Lzdq1/lJMmHT+a2KgvdhAuadlvS4eKeqKjIRmW" transaction_id: 0.0.8-1234567890-000000006 token_transfers: - token_id: 0.0.90000 account: 0.0.9 amount: 1200 is_approval: false - token_id: 0.0.90000 account: 0.0.8 amount: -1200 is_approval: false transfers: - account: 0.0.3 amount: 2 is_approval: false - account: 0.0.8 amount: -3 is_approval: false - account: 0.0.98 amount: 1 is_approval: false - account: 0.0.800 amount: 150 is_approval: false - account: 0.0.800 amount: 200 is_approval: false valid_duration_seconds: 11 valid_start_timestamp: "1234567890.000000006" TransactionDetail: allOf: - $ref: "#/components/schemas/Transaction" - type: object properties: assessed_custom_fees: type: array items: $ref: "#/components/schemas/AssessedCustomFee" example: assessed_custom_fees: - amount: 100 collector_account_id: 0.0.10 effective_payer_account_ids: - 0.0.8 - 0.0.72 token_id: 0.0.90001 bytes: null charged_tx_fee: 7 consensus_timestamp: "1234567890.000000007" entity_id: "0.0.2281979" high_volume: false high_volume_pricing_multiplier: 1 max_fee: 33 memo_base64: null name: CRYPTOTRANSFER nft_transfers: - is_approval: true receiver_account_id: 0.0.121 sender_account_id: 0.0.122 serial_number: 1 token_id: 0.0.123 - is_approval: true receiver_account_id: 0.0.321 sender_account_id: 0.0.422 serial_number: 2 token_id: 0.0.123 node: 0.0.3 nonce: 0 parent_consensus_timestamp: "1234567890.000000007" result: SUCCESS scheduled: false staking_reward_transfers: - account: 3 amount: 200 - account: 9 amount: 300 transaction_hash: "vigzKe2J7fv4ktHBbNTSzQmKq7Lzdq1/lJMmHT+a2KgvdhAuadlvS4eKeqKjIRmW" transaction_id: 0.0.8-1234567890-000000006 token_transfers: - token_id: 0.0.90000 account: 0.0.9 amount: 1200 is_approval: true - token_id: 0.0.90000 account: 0.0.8 amount: -1200 is_approval: true transfers: - account: 0.0.3 amount: 2 is_approval: true - account: 0.0.8 amount: -3 is_approval: true - account: 0.0.98 amount: 1 is_approval: true - account: 0.0.800 amount: 200 is_approval: false - account: 0.0.800 amount: 300 is_approval: false valid_duration_seconds: 11 valid_start_timestamp: "1234567890.000000006" TransactionDetails: type: array items: $ref: "#/components/schemas/TransactionDetail" TransactionId: type: object properties: account_id: $ref: "#/components/schemas/EntityId" nonce: example: 0 format: int32 type: [integer, "null"] minimum: 0 scheduled: example: false type: [boolean, "null"] transaction_valid_start: $ref: "#/components/schemas/Timestamp" TransactionIdStr: type: string description: A transaction id in string format. pattern: '^(\d+)\.(\d+)\.(\d+)-(\d{1,19})-(\d{1,9})$' Transactions: type: array items: $ref: "#/components/schemas/Transaction" responses: NotFoundError: description: Not Found content: application/json: schema: $ref: "#/components/schemas/Error" example: _status: messages: - message: Not found NetworkStakeNotFound: description: No network stake data found content: application/json: schema: $ref: "#/components/schemas/Error" example: _status: messages: - detail: No network stake data found message: Not Found TopicNotFound: description: Topic Not Found content: application/json: schema: $ref: "#/components/schemas/Error" example: _status: messages: - message: No such topic id - 7 TransactionNotFound: description: Transaction Not Found content: application/json: schema: $ref: "#/components/schemas/Error" example: _status: messages: - message: Transaction not found InvalidParameterError: description: Invalid parameter content: application/json: schema: $ref: "#/components/schemas/Error" example: _status: messages: - message: "Invalid parameter: account.id" - message: Invalid Transaction id. Please use \shard.realm.num-sss-nnn\ format where sss are seconds and nnn are nanoseconds ServiceUnavailableError: description: Service Unavailable content: application/json: schema: $ref: "#/components/schemas/Error" example: _status: messages: - message: Require at least 1/3 signature files to prove consensus, got 1 out of 4 for file 2019-10-11T13_33_25.526889Z.rcd_sig parameters: accountIdOrAliasOrEvmAddressPathParam: name: idOrAliasOrEvmAddress in: path description: Account alias or account id or evm address required: true examples: aliasOnly: value: HIQQEXWKW53RKN4W6XXC4Q232SYNZ3SZANVZZSUME5B5PRGXL663UAQA realmAlias: value: 0.HIQQEXWKW53RKN4W6XXC4Q232SYNZ3SZANVZZSUME5B5PRGXL663UAQA shardRealmAlias: value: 0.1.HIQQEXWKW53RKN4W6XXC4Q232SYNZ3SZANVZZSUME5B5PRGXL663UAQA accountNumOnly: value: 8 realmAccountNum: value: 0.8 shardRealmAccountNum: value: 0.0.8 evmAddress: value: ac384c53f03855fa1b3616052f8ba32c6c2a2fec evmAddressWithPrefix: value: 0xac384c53f03855fa1b3616052f8ba32c6c2a2fec evmAddressWithShardAndRealm: value: 0.0.ac384c53f03855fa1b3616052f8ba32c6c2a2fec schema: pattern: ^(\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}))$ type: string accountIdOrAliasOrEvmAddressQueryParam: name: account.id in: query description: Account id or account alias with no shard realm or evm address with no shard realm examples: aliasOnly: value: HIQQEXWKW53RKN4W6XXC4Q232SYNZ3SZANVZZSUME5B5PRGXL663UAQA accountNumOnly: value: 8 realmAccountNum: value: 0.8 shardRealmAccountNum: value: 0.0.8 evmAddress: value: ac384c53f03855fa1b3616052f8ba32c6c2a2fec evmAddressWithPrefix: value: 0xac384c53f03855fa1b3616052f8ba32c6c2a2fec schema: pattern: ^(\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}))$ type: string accountBalanceQueryParam: name: account.balance in: query description: The optional balance value to compare against explode: true examples: noValue: summary: -- value: "" noOperator: summary: Example of equals with no operator value: 100 eqOperator: summary: Example of equals operator value: eq:200 neOperator: summary: Example of not equals operator value: ne:300 gtOperator: summary: Example of greater than operator value: gt:400 gteOperator: summary: Example of greater than or equals operator value: gte:500 ltOperator: summary: Example of less than operator value: lt:600 lteOperator: summary: Example of less than or equals operator value: lte:700 schema: type: string pattern: ^((gte?|lte?|eq|ne)\:)?\d{1,10}$ accountIdQueryParam: name: account.id in: query description: The ID of the account to return information for explode: true examples: noValue: summary: -- value: "" entityNumNoOperator: summary: Example of entityNum equals with no operator value: 100 idNoOperator: summary: Example of id equals with no operator value: 0.0.100 entityNumEqOperator: summary: Example of entityNum equals operator value: eq:200 idEqOperator: summary: Example of id equals operator value: eq:0.0.200 entityNumNeOperator: summary: Example of entityNum not equals operator value: ne:300 idNeOperator: summary: Example of id not equals operator value: ne:0.0.300 entityNumGtOperator: summary: Example of entityNum greater than operator value: gt:400 idGtOperator: summary: Example of id greater than operator value: gt:0.0.400 entityNumGteOperator: summary: Example of entityNum greater than or equals operator value: gte:500 idGteOperator: summary: Example of id greater than or equals operator value: gte:0.0.500 entityNumLtOperator: summary: Example of entityNum less than operator value: lt:600 idLtOperator: summary: Example of id less than operator value: lt:0.0.600 entityNumLteOperator: summary: Example of entityNum less than or equals operator value: lte:700 idLteOperator: summary: Example of id less than or equals operator value: lte:0.0.700 schema: $ref: "#/components/schemas/EntityIdQuery" accountPublicKeyQueryParam: name: account.publickey in: query description: The account's public key to compare against example: 3c3d546321ff6f63d701d2ec5c277095874e19f4a235bee1e6bb19258bf362be schema: type: string balanceQueryParam: name: balance in: query description: >- 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. example: true schema: type: boolean default: true contractIdQueryParam: name: contract.id description: The ID of the smart contract in: query examples: noValue: summary: -- value: "" entityNumNoOperator: summary: Example of entityNum equals with no operator value: 100 idNoOperator: summary: Example of id equals with no operator value: 0.0.100 evmAddressNoOperator: summary: A hex encoded EVM address with no operator. value: 0.0.1d8bfdc5d46dc4f61d6b6115972536ebe6a8854c entityNumEqOperator: summary: Example of entityNum equals operator value: eq:200 idEqOperator: summary: Example of id equals operator value: eq:0.0.200 entityNumNeOperator: summary: Example of entityNum not equals operator value: ne:300 idNeOperator: summary: Example of id not equals operator value: ne:0.0.300 entityNumGtOperator: summary: Example of entityNum greater than operator value: gt:400 idGtOperator: summary: Example of id greater than operator value: gt:0.0.400 entityNumGteOperator: summary: Example of entityNum greater than or equals operator value: gte:500 idGteOperator: summary: Example of id greater than or equals operator value: gte:0.0.500 entityNumLtOperator: summary: Example of entityNum less than operator value: lt:600 idLtOperator: summary: Example of id less than operator value: lt:0.0.600 entityNumLteOperator: summary: Example of entityNum less than or equals operator value: lte:700 idLteOperator: summary: Example of id less than or equals operator value: lte:0.0.700 schema: pattern: ^((gte?|lte?|eq|ne)\:)?(\d{1,10}\.\d{1,10}\.)?\d{1,10}|(\d{1,10}\.){0,2}[A-Fa-f0-9]{40}$ type: string contractIdOrAddressPathParam: name: contractIdOrAddress in: path required: true description: Contract or account identifier in format shard.realm.num, realm.num, num or a 20-byte EVM address (with or without 0x prefix). schema: pattern: ^(\d{1,10}\.){0,2}(\d{1,10}|(0x)?[A-Fa-f0-9]{40})$ type: string hashOrNumberPathParam: name: hashOrNumber in: path required: true description: Accepts both eth and hedera hash format or block number schema: pattern: ^(\d{1,10}|(0x)?([A-Fa-f0-9]{64}|[A-Fa-f0-9]{96}))$ type: string entityIdPathParam: name: entityId in: path required: true description: Entity id schema: $ref: "#/components/schemas/EntityId" fileIdQueryParam: name: file.id description: The ID of the file entity in: query examples: noValue: summary: -- value: "" entityNumNoOperator: summary: Example of entityNum equals with no operator value: 100 idNoOperator: summary: Example of id equals with no operator value: 0.0.100 entityNumEqOperator: summary: Example of entityNum equals operator value: eq:200 idEqOperator: summary: Example of id equals operator value: eq:0.0.200 schema: $ref: "#/components/schemas/EntityIdQuery" scheduleIdPathParam: name: scheduleId in: path required: true description: Schedule id schema: $ref: "#/components/schemas/EntityId" tokenIdPathParam: name: tokenId in: path required: true description: Token id examples: tokenNumAlias: value: 0x000000000000000000000000000000000000046F shardRealmTokenNumAlias: value: 0.0.000000000000000000000000000000000000046F tokenNum: value: 1135 shardRealmTokenNum: value: 0.0.1135 schema: $ref: "#/components/schemas/EntityId" topicIdPathParam: name: topicId in: path required: true description: Topic id schema: $ref: "#/components/schemas/EntityId" fromQueryParam: name: from in: query description: Account ID or EVM address executing the contract schema: pattern: ^\d{1,10}\.\d{1,10}\.\d{1,10}|(0x)?[A-Fa-f0-9]{40}$ type: string logIndexQueryParam: name: index in: query description: Contract log index schema: type: string pattern: ^((eq|gt|gte|lt|lte):)?\d{1,10}$ examples: noValue: summary: -- value: "" indexNoOperator: summary: Example of index equals with no operator value: 2 indexEqOperator: summary: Example of index equals with operator value: eq:2 indexGtOperator: summary: Example of index greater than operator value: gt:2 indexGteOperator: summary: Example of index greater than or equals operator value: gte:2 indexLtOperator: summary: Example of index less than operator value: lt:2 indexLteOperator: summary: Example of index less than or equals operator value: lte:2 limitQueryParam: name: limit in: query description: The maximum number of items to return example: 2 schema: format: int32 type: integer default: 25 minimum: 1 maximum: 100 hookIdQueryParam: description: The ID of the hook example: 1234 in: query name: hook.id schema: format: int64 type: integer minimum: 1 maximum: 9223372036854775807 required: false hookIdPathParam: description: The ID of the hook example: 1234 in: path name: hookId schema: format: int64 type: integer minimum: 0 maximum: 9223372036854775807 required: true keyQueryParam: description: A string representing a pair of operator:address of a hook storage entry examples: zeroXPrefix: summary: Example of key equals operator with 0x prefix value: eq:0x00000000000000000000000000000000000000000000000000000000000f9a15 noZeroPadding: summary: Example of key equals operator without zero padding value: eq:f9a15 noOperator: summary: Example of key equals with no operator value: 00000000000000000000000000000000000000000000000000000000000f9a15 eqOperator: summary: Example of key equals operator value: eq:00000000000000000000000000000000000000000000000000000000000f9a15 gtOperator: summary: Example of key gt operator value: gt:00000000000000000000000000000000000000000000000000000000000f9a15 gteOperator: summary: Example of key gte operator value: gte:00000000000000000000000000000000000000000000000000000000000f9a15 ltOperator: summary: Example of key lt operator value: lt:00000000000000000000000000000000000000000000000000000000000f9a15 lteOperator: summary: Example of key lte operator value: lte:00000000000000000000000000000000000000000000000000000000000f9a15 in: query name: key schema: example: eq:0x00000000000000000000000000000000000000000000000000000000000f9a10 pattern: ^((eq|gte?|lte?)\:)?(0x)?[0-9A-Fa-f]{1,64}$ type: string blockNumberQueryParam: name: block.number in: query description: The block's number examples: noValue: summary: -- value: "" noOperator: summary: Example of block.number equals with no operator value: 1 eqOperator: summary: Example of block.number equals operator value: eq:2 gtOperator: summary: Example of block.number greater than operator value: gt:3 gteOperator: summary: Example of block.number greater than or equals operator value: gte:4 ltOperator: summary: Example of block.number less than operator value: lt:5 lteOperator: summary: Example of block.number less than or equals operator value: lte:6 schema: type: string pattern: ^((eq|gt|gte|lt|lte):)?\d{1,19}$ nodeIdQueryParam: name: node.id description: The ID of the node in: query examples: noValue: summary: -- value: "" serialNumNoOperator: summary: Example of nodeId equals with no operator value: 1 serialNumEqOperator: summary: Example of nodeId equals operator value: eq:2 serialNumGtOperator: summary: Example of nodeId greater than operator value: gt:3 serialNumGteOperator: summary: Example of nodeId greater than or equals operator value: gte:4 serialNumLtOperator: summary: Example of nodeId less than operator value: lt:5 serialNumLteOperator: summary: Example of nodeId less than or equals operator value: lte:6 schema: type: string pattern: ^((eq|gt|gte|lt|lte):)?\d{1,19}$ nonceQueryParam: name: nonce in: query description: >- Filter the query result by the nonce of the transaction. A zero nonce represents user submitted transactions while a non-zero nonce is generated by main nodes. The filter honors the last value. If not specified, all transactions with specified payer account ID and valid start timestamp match. If multiple values are provided the last value will be the only value used. example: 0 schema: format: int32 type: integer minimum: 0 nonceQueryParamWithDefault: name: nonce in: query description: >- Filter the query result by the nonce of the transaction. A zero nonce represents user submitted transactions while a non-zero nonce is generated by main nodes. The filter honors the last value. Default is 0 when not specified. example: 1 schema: format: int32 type: integer default: 0 minimum: 0 orderQueryParam: name: order in: query description: The order in which items are listed example: desc schema: enum: [asc, desc] default: asc orderQueryParamDesc: name: order in: query description: The order in which items are listed example: asc schema: enum: [asc, desc] default: desc ownerQueryParam: name: owner description: When the owner value is true or omitted, the accountId path parameter will specify the ID of the owner, and the API will retrieve the allowances that the owner has granted to different spenders. Conversely, when the owner value is false, the accountId path parameter will indicate the ID of the spender who has an allowance, and the API will instead provide the allowances granted to the spender by different owners of those tokens. in: query example: true schema: type: boolean default: true publicKeyQueryParam: name: publickey in: query description: The public key to compare against example: 3c3d546321ff6f63d701d2ec5c277095874e19f4a235bee1e6bb19258bf362be schema: type: string receiverIdQueryParam: name: receiver.id description: The ID of the receiver to return information for in: query examples: noValue: summary: -- value: "" entityNumNoOperator: summary: Example of entityNum equals with no operator value: 100 idNoOperator: summary: Example of id equals with no operator value: 0.0.100 entityNumEqOperator: summary: Example of entityNum equals operator value: eq:200 idEqOperator: summary: Example of id equals operator value: eq:0.0.200 idGtOperator: summary: Example of id greather than operator value: gt:0.0.200 idGteOperator: summary: Example of id greather than or equal to operator value: gte:0.0.200 idLtOperator: summary: Example of id less than operator value: lt:0.0.200 idLteOperator: summary: Example of id less than or equal to operator value: lte:0.0.200 schema: $ref: "#/components/schemas/EntityIdQuery" registeredNodeIdQueryParam: name: registerednode.id description: The ID of the registered node in: query examples: noValue: summary: -- value: "" serialNumNoOperator: summary: Example of registeredNodeId equals with no operator value: 1 serialNumEqOperator: summary: Example of registeredNodeId equals operator value: eq:2 serialNumGtOperator: summary: Example of registeredNodeId greater than operator value: gt:3 serialNumGteOperator: summary: Example of registeredNodeId greater than or equals operator value: gte:4 serialNumLtOperator: summary: Example of registeredNodeId less than operator value: lt:5 serialNumLteOperator: summary: Example of registeredNodeId less than or equals operator value: lte:6 schema: type: string pattern: ^((eq|gt|gte|lt|lte):)?\d{1,19}$ scheduledQueryParam: name: scheduled in: query description: >- Filter transactions by the scheduled flag. If true, return information for the scheduled transaction. If false, return information for the non-scheduled transaction. If not present, return information for all transactions matching transactionId. If multiple values are provided the last value will be the only value used. schema: type: boolean scheduledQueryParamWithDefault: name: scheduled in: query description: >- Filter transactions by the scheduled flag. If true, return information for the scheduled transaction. If false, return information for the non-scheduled transaction. schema: type: boolean default: false scheduleIdQueryParam: name: schedule.id description: The ID of the schedule to return information for in: query examples: noValue: summary: -- value: "" entityNumNoOperator: summary: Example of entityNum equals with no operator value: 100 idNoOperator: summary: Example of id equals with no operator value: 0.0.100 entityNumEqOperator: summary: Example of entityNum equals operator value: eq:200 idEqOperator: summary: Example of id equals operator value: eq:0.0.200 entityNumNeOperator: summary: Example of entityNum not equals operator value: ne:300 idNeOperator: summary: Example of id not equals operator value: ne:0.0.300 entityNumGtOperator: summary: Example of entityNum greater than operator value: gt:400 idGtOperator: summary: Example of id greater than operator value: gt:0.0.400 entityNumGteOperator: summary: Example of entityNum greater than or equals operator value: gte:500 idGteOperator: summary: Example of id greater than or equals operator value: gte:0.0.500 entityNumLtOperator: summary: Example of entityNum less than operator value: lt:600 idLtOperator: summary: Example of id less than operator value: lt:0.0.600 entityNumLteOperator: summary: Example of entityNum less than or equals operator value: lte:700 idLteOperator: summary: Example of id less than or equals operator value: lte:0.0.700 schema: $ref: "#/components/schemas/EntityIdQuery" senderIdQueryParam: name: sender.id description: The ID of the sender to return information for in: query examples: noValue: summary: -- value: "" entityNumNoOperator: summary: Example of entityNum equals with no operator value: 100 idNoOperator: summary: Example of id equals with no operator value: 0.0.100 entityNumEqOperator: summary: Example of entityNum equals operator value: eq:200 idEqOperator: summary: Example of id equals operator value: eq:0.0.200 idGtOperator: summary: Example of id greather than operator value: gt:0.0.200 idGteOperator: summary: Example of id greather than or equal to operator value: gte:0.0.200 idLtOperator: summary: Example of id less than operator value: lt:0.0.200 idLteOperator: summary: Example of id less than or equal to operator value: lte:0.0.200 schema: $ref: "#/components/schemas/EntityIdQuery" serialNumberPathParam: name: serialNumber in: path required: true description: The nft serial number example: 1 schema: type: integer format: int64 default: 1 minimum: 1 maximum: 9223372036854775807 serialNumberQueryParam: name: serialnumber in: query explode: true description: The nft serial number (64 bit type). Requires a tokenId value also be populated. examples: noValue: summary: -- value: "" serialNumNoOperator: summary: Example of serialNum equals with no operator value: 100 serialNumEqOperator: summary: Example of serialNum equals operator value: eq:200 serialNumGtOperator: summary: Example of serialNum greater than operator value: gt:400 serialNumGteOperator: summary: Example of serialNum greater than or equals operator value: gte:500 serialNumLtOperator: summary: Example of serialNum less than operator value: lt:600 serialNumLteOperator: summary: Example of serialNum less than or equals operator value: lte:700 schema: type: string pattern: ^((eq|gt|gte|lt|lte):)?\d{1,19}?$ timestampQueryParam: description: The consensus timestamp as a Unix timestamp in seconds.nanoseconds format with an optional comparison operator. See [unixtimestamp.com](https://www.unixtimestamp.com/) for a simple way to convert a date to the 'seconds' part of the Unix time. name: timestamp in: query explode: true examples: noValue: summary: -- value: "" secondsNoOperator: summary: Example of seconds equals with no operator value: 1234567890 timestampNoOperator: summary: Example of timestamp equals with no operator value: 1234567890.000000100 secondsEqOperator: summary: Example of seconds equals with operator value: eq:1234567890 timestampEqOperator: summary: Example of timestamp equals with operator value: eq:1234567890.000000200 secondsNeOperator: summary: Example of seconds not equals operator value: ne:1234567890 timestampNeOperator: summary: Example of timestamp not equals operator value: ne:1234567890.000000300 secondsGtOperator: summary: Example of seconds greater than operator value: gt:1234567890 timestampGtOperator: summary: Example of timestamp greater than operator value: gt:1234567890.000000400 secondsGteOperator: summary: Example of seconds greater than or equals operator value: gte:1234567890 timestampGteOperator: summary: Example of timestamp greater than or equals operator value: gte:1234567890.000000500 secondsLtOperator: summary: Example of seconds less than operator value: lt:1234567890 timestampLtOperator: summary: Example of timestamp less than operator value: lt:1234567890.000000600 secondsLteOperator: summary: Example of seconds less than or equals operator value: lte:1234567890 timestampLteOperator: summary: Example of timestamp less than or equals operator value: lte:1234567890.000000700 schema: type: array items: type: string pattern: ^((eq|gt|gte|lt|lte|ne):)?\d{1,10}(\.\d{1,9})?$ timestampPathParam: name: timestamp in: path description: The Unix timestamp in seconds.nanoseconds format, the timestamp at which the associated transaction reached consensus. See [unixtimestamp.com](https://www.unixtimestamp.com/) for a simple way to convert a date to the 'seconds' part of the Unix time. required: true example: 1234567890.000000700 schema: type: string pattern: ^\d{1,10}(\.\d{1,9})?$ stateTimestampQueryParam: description: The consensus timestamp of the contract state as a Unix timestamp in seconds.nanoseconds format with an optional comparison operator. See [unixtimestamp.com](https://www.unixtimestamp.com/) for a simple way to convert a date to the 'seconds' part of the Unix time. name: timestamp in: query explode: true examples: noValue: summary: -- value: "" secondsNoOperator: summary: Example of seconds equals with no operator value: 1234567890 timestampNoOperator: summary: Example of timestamp equals with no operator value: 1234567890.000000100 secondsEqOperator: summary: Example of seconds equals with operator value: eq:1234567890 timestampEqOperator: summary: Example of timestamp equals with operator value: eq:1234567890.000000200 secondsGtOperator: summary: Example of seconds greater than operator value: gt:1234567890 timestampGtOperator: summary: Example of timestamp greater than operator value: gt:1234567890.000000400 secondsGteOperator: summary: Example of seconds greater than or equals operator value: gte:1234567890 timestampGteOperator: summary: Example of timestamp greater than or equals operator value: gte:1234567890.000000500 secondsLtOperator: summary: Example of seconds less than operator value: lt:1234567890 timestampLtOperator: summary: Example of timestamp less than operator value: lt:1234567890.000000600 secondsLteOperator: summary: Example of seconds less than or equals operator value: lte:1234567890 timestampLteOperator: summary: Example of timestamp less than or equals operator value: lte:1234567890.000000700 schema: type: array items: type: string pattern: ^((eq|gt|gte|lt|lte):)?\d{1,10}(\.\d{1,9})?$ tokenInfoTimestampQueryParam: description: The Unix timestamp in seconds.nanoseconds format. See [unixtimestamp.com](https://www.unixtimestamp.com/) for a simple way to convert a date to the 'seconds' part of the Unix time. name: timestamp in: query explode: true examples: noValue: summary: -- value: "" secondsNoOperator: summary: Example of seconds equals with no operator value: 1234567890 timestampNoOperator: summary: Example of timestamp equals with no operator value: 1234567890.000000100 secondsEqOperator: summary: Example of seconds equals with operator value: eq:1234567890 timestampEqOperator: summary: Example of timestamp equals with operator value: eq:1234567890.000000200 secondsLtOperator: summary: Example of seconds less than operator value: lt:1234567890 timestampLtOperator: summary: Example of timestamp less than operator value: lt:1234567890.000000600 secondsLteOperator: summary: Example of seconds less than or equals operator value: lte:1234567890 timestampLteOperator: summary: Example of timestamp less than or equals operator value: lte:1234567890.000000700 schema: type: string pattern: ^((eq|lt|lte):)?\d{1,10}(\.\d{1,9})?$ logTopic0QueryParam: name: topic0 in: query explode: true description: The first topic associated with a contract log. Requires a timestamp range also be populated. schema: $ref: "#/components/schemas/LogTopicQueryParam" logTopic1QueryParam: name: topic1 in: query description: The second topic associated with a contract log. Requires a timestamp range also be populated. schema: $ref: "#/components/schemas/LogTopicQueryParam" logTopic2QueryParam: name: topic2 in: query description: The third topic associated with a contract log. Requires a timestamp range also be populated. schema: $ref: "#/components/schemas/LogTopicQueryParam" logTopic3QueryParam: name: topic3 in: query description: The fourth topic associated with a contract log. Requires a timestamp range also be populated. schema: $ref: "#/components/schemas/LogTopicQueryParam" spenderIdQueryParam: name: spender.id description: The ID of the spender to return information for in: query examples: noValue: summary: -- value: "" entityNumNoOperator: summary: Example of entityNum equals with no operator value: 100 idNoOperator: summary: Example of id equals with no operator value: 0.0.100 entityNumEqOperator: summary: Example of entityNum equals operator value: eq:200 idEqOperator: summary: Example of id equals operator value: eq:0.0.200 idGtOperator: summary: Example of id greather than operator value: gt:0.0.200 idGteOperator: summary: Example of id greather than or equal to operator value: gte:0.0.200 idLtOperator: summary: Example of id less than operator value: lt:0.0.200 idLteOperator: summary: Example of id less than or equal to operator value: lte:0.0.200 schema: $ref: "#/components/schemas/EntityIdQuery" memory: name: memory description: If provided and set to true, memory information will be included in the response in: query example: false schema: type: boolean default: false estimateModeQueryParam: description: Estimate solely based on the transaction's inherent properties or use network state. in: query name: mode example: INTRINSIC schema: $ref: "#/components/schemas/FeeEstimateMode" highVolumeThrottleQueryParam: description: The high-volume throttle utilization in basis points where 10000 equals 100%. A value of 0, the default, indicates no high-volume pricing. in: query name: high_volume_throttle example: 10000 schema: type: integer minimum: 0 maximum: 10000 default: 0 registeredNodeTypeQueryParam: example: BLOCK_NODE in: query name: type schema: $ref: "#/components/schemas/RegisteredNodeType" stack: name: stack description: If provided and set to false, stack information will not be included in the response in: query example: true schema: type: boolean default: true storage: name: storage description: If provided and set to true, storage information will be included in the response in: query example: false schema: type: boolean default: false transactionsQueryParam: name: transactions description: If provided and set to false transactions will not be included in the response in: query example: true schema: type: boolean default: true transactionTypeQueryParam: name: transactiontype in: query example: schema: $ref: "#/components/schemas/TransactionTypes" transactionIdPathParam: name: transactionId in: path required: true description: Transaction id example: 0.0.10-1234567890-000000000 schema: type: string tokenIdQueryParam: name: token.id description: The ID of the token to return information for in: query examples: noValue: summary: -- value: "" tokenNumAlias: summary: Example of token num alias equals with no operator value: 0000000000000000000000000000000000000064 entityNumNoOperator: summary: Example of entityNum equals with no operator value: 100 idNoOperator: summary: Example of id equals with no operator value: 0.0.100 entityNumEqOperator: summary: Example of entityNum equals operator value: eq:200 idEqOperator: summary: Example of id equals operator value: eq:0.0.200 entityNumNeOperator: summary: Example of entityNum not equals operator value: ne:300 idNeOperator: summary: Example of id not equals operator value: ne:0.0.300 entityNumGtOperator: summary: Example of entityNum greater than operator value: gt:400 idGtOperator: summary: Example of id greater than operator value: gt:0.0.400 entityNumGteOperator: summary: Example of entityNum greater than or equals operator value: gte:500 idGteOperator: summary: Example of id greater than or equals operator value: gte:0.0.500 entityNumLtOperator: summary: Example of entityNum less than operator value: lt:600 idLtOperator: summary: Example of id less than operator value: lt:0.0.600 entityNumLteOperator: summary: Example of entityNum less than or equals operator value: lte:700 idLteOperator: summary: Example of id less than or equals operator value: lte:0.0.700 schema: $ref: "#/components/schemas/EntityIdQuery" tokenNameQueryParam: name: name in: query description: Partial or full token name. Not allowed to be used with token.id or account.id parameter. Pagination is not supported with the use of this parameter and results are ordered by token.id with respect to the order parameter. schema: type: string maxLength: 100 minLength: 3 tokenTypeQueryParam: name: type in: query example: - ALL - FUNGIBLE_COMMON - NON_FUNGIBLE_UNIQUE explode: true schema: type: array items: type: string contractActionsIndexQueryParam: name: index in: query description: The index of a contract action explode: true examples: noValue: summary: -- value: "" noOperator: summary: Example of equals with no operator value: 1 eqOperator: summary: Example of equals operator value: eq:2 gtOperator: summary: Example of greater than operator value: gt:4 gteOperator: summary: Example of greater than or equals operator value: gte:5 ltOperator: summary: Example of less than operator value: lt:6 lteOperator: summary: Example of less than or equals operator value: lte:7 schema: type: string pattern: ^((gte?|lte?|eq|ne)\:)?\d{1,10}$ contractsBlockNumberQueryParam: name: block.number in: query description: The block's number examples: noValue: summary: -- value: "" noOperator: summary: Example of block.number equals with no operator value: 1 eqOperator: summary: Example of block.number equals operator value: eq:2 hexEncoded: summary: Example of hex encoded block.number equals with no operator value: "0xa0" hexEncodedEqOperator: summary: Example of hex encoded block.number equals with equals operator value: eq:0xa0 schema: type: string pattern: ^(eq:)?(\d{1,19}|0x[a-fA-f0-9]+)$ slotQueryParam: name: slot in: query description: The slot's number examples: noValue: summary: -- value: "" noOperator: summary: Example of slot equals with no operator value: 1 eqOperator: summary: Example of slot equals operator value: eq:2 gtOperator: summary: Example of slot gt operator value: gt:2 gteOperator: summary: Example of slot gte operator value: gte:2 ltOperator: summary: Example of slot lt operator value: lt:2 lteOperator: summary: Example of slot lte operator value: lte:2 schema: type: string pattern: ^((eq|gte?|lte?)\:)?(0x)?[0-9A-Fa-f]{1,64}$ blockHashQueryParam: name: block.hash in: query description: The block's hash. If multiple values are provided the last value will be the only value used. examples: noValue: summary: -- value: "" 32ByteNoOperator: summary: Example of 32 byte block.hash equals with no operator value: ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef 48ByteNoOperator: summary: Example of 48 byte block.hash equals with no operator value: 1eaf1abbd64bbcac7f473f0272671c66d3d1d64f584112b11cd4d2063e736305312fcb305804a48baa41571e71c39c61 32ByteEqOperator: summary: Example of 32 byte block.hash with equals operator value: eq:ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef 48ByteEqOperator: summary: Example of 48 byte block.hash with equals operator value: eq:1eaf1abbd64bbcac7f473f0272671c66d3d1d64f584112b11cd4d2063e736305312fcb305804a48baa41571e71c39c61 32Byte0xPrefixNoOperator: summary: Example of 32 byte block.hash equals with 0x prefix and no operator value: "0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef" 48Byte0xPrefixNoOperator: summary: Example of 48 byte block.hash equals with 0x prefix and no operator value: "0x1eaf1abbd64bbcac7f473f0272671c66d3d1d64f584112b11cd4d2063e736305312fcb305804a48baa41571e71c39c61" 32Byte0xPrefixEqOperator: summary: Example of 32 byte block.hash with 0x prefix and equals operator value: eq:0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef 48Byte0xPrefixEqOperator: summary: Example of 48 byte block.hash with 0x prefix and equals operator value: eq:0x1eaf1abbd64bbcac7f473f0272671c66d3d1d64f584112b11cd4d2063e736305312fcb305804a48baa41571e71c39c61 schema: type: string pattern: ^(eq:)?(0x)?([0-9A-Fa-f]{64}|[0-9A-Fa-f]{96})$ transactionIndexQueryParam: name: transaction.index in: query description: The transaction index in the block example: 1 schema: format: int32 minimum: 0 type: integer hbarQueryParam: name: hbar in: query description: >- Controls the unit used for monetary fields (`amount`, `gas_price`, `max_fee_per_gas`, `max_priority_fee_per_gas`). When `true` (default), values are returned in tinybars. When `false`, values are returned in weibars (the native Ethereum unit, where 1 tinybar = 10,000,000,000 weibars). example: false schema: type: boolean default: true internalQueryParam: name: internal in: query description: Whether to include child transactions or not example: true schema: type: boolean default: false transactionHashQueryParam: name: transaction.hash in: query schema: pattern: ^(eq:)?(0x)?([0-9A-Fa-f]{64}|[0-9A-Fa-f]{96})$ type: string required: false description: A hex encoded 32-byte ethereum transaction hash or 48-byte hedera transaction hash. examples: transactionHash: value: ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef transactionHashWith0xPrefix: value: "0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef" transactionIdOrEthHashPathParam: name: transactionIdOrHash in: path schema: pattern: ^(0x)?[A-Fa-f0-9]{64}|(\d{1,10})\.(\d{1,10})\.(\d{1,10})-(\d{1,19})-(\d{1,9})$ type: string required: true description: Transaction Id or a 32 byte hash with optional 0x prefix examples: transactionId: value: 0.0.10-1234567890-000000000 transactionHash: value: ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef transactionHashWith0xPrefix: value: "0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef"