openapi: 3.0.0 info: description: 'This is the [Aeternity](https://www.aeternity.com/) node API. ### State version Every response carries an `X-Ae-Height` header with the height of the node''s chain top at the moment the request was accepted. The response body reflects a chain state at or after that height, so the value is a lower bound and may be compared across nodes: a client querying a pool of nodes behind a load balancer can discard an answer from a node that is behind a state it has already observed, instead of retrying blindly. The header is also present on error responses, so a `404` for a not-yet-mined transaction tells the client how far the answering node actually is. Resolution is one generation - micro blocks applied within the current generation do not change the value, which keeps it cache friendly. The header is omitted while the node''s chain is not readable yet. ' version: 7.3.0 title: Aeternity node termsOfService: https://www.aeternity.com/terms/ contact: url: https://github.com/aeternity/aeternity/issues tags: - name: external description: External API - name: internal description: Internal API - name: chain description: Chain related endpoints - name: transaction description: Transaction related endpoints - name: account description: Account related endpoints - name: contract description: Contract related endpoints - name: oracle description: Oracle related endpoints - name: name_service description: Name service related endpoints - name: channel description: State channel related endpoints - name: node_info description: Node information related endpoints - name: node_settings description: This node's local policy settings - name: debug description: Debug endpoints - name: obsolete description: Old endpoints that will be removed - name: dry-run description: External dry run endpoint. - name: node-operator description: Endpoints to help the node operator interact with the node - name: hyperchain description: Hyperchain related endpoints externalDocs: description: Find out more about Aeternity url: http://www.aeternity.com servers: - url: https://mainnet.aeternity.io/v3 description: Mainnet public API gateway - url: https://testnet.aeternity.io/v3 description: Testnet public API gateway paths: /accounts/{pubkey}: get: tags: - external - account operationId: GetAccountByPubkey description: Get an account by public key parameters: - $ref: '#/components/parameters/intAsString' - $ref: '#/components/parameters/accountPubkey' responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/Account' '400': description: Invalid public key content: application/json: schema: $ref: '#/components/schemas/Error' '404': description: Account not found content: application/json: schema: $ref: '#/components/schemas/Error' '503': $ref: '#/components/responses/ServiceUnavailable' /accounts/{pubkey}/hash/{hash}: get: tags: - external - account operationId: GetAccountByPubkeyAndHash description: Get an account by public key after the block indicated by hash. Can be either a micro block or a keyblock hash parameters: - $ref: '#/components/parameters/intAsString' - $ref: '#/components/parameters/accountPubkey' - $ref: '#/components/parameters/blockHash' responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/Account' '400': description: Invalid public key or invalid hash content: application/json: schema: $ref: '#/components/schemas/Error' '404': description: Account not found or hash not available content: application/json: schema: $ref: '#/components/schemas/Error' '503': $ref: '#/components/responses/ServiceUnavailable' /accounts/{pubkey}/height/{height}: get: tags: - external - account operationId: GetAccountByPubkeyAndHeight description: Get an account by public key after the opening key block of the generation at height parameters: - $ref: '#/components/parameters/intAsString' - $ref: '#/components/parameters/accountPubkey' - $ref: '#/components/parameters/height' responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/Account' '400': description: Invalid public key or invalid height content: application/json: schema: $ref: '#/components/schemas/Error' '404': description: Account not found or height not available content: application/json: schema: $ref: '#/components/schemas/Error' '410': description: State data at the requested height has been garbage-collected content: application/json: schema: $ref: '#/components/schemas/Error' '503': $ref: '#/components/responses/ServiceUnavailable' /accounts/{pubkey}/next-nonce: get: tags: - external - account operationId: GetAccountNextNonce description: Get an account's next nonce; This is computed according to whatever is the current account nonce and what transactions are currently present in the transaction pool parameters: - $ref: '#/components/parameters/intAsString' - $ref: '#/components/parameters/accountPubkey' - in: query name: strategy description: 'What strategy to use in order to determine the next nonce: shall it check for continuity or return the largest nonce seen + 1. If you choose strategy max, then the greatest nonce seen in the account or currently in the transaction pool is incremented with 1 and returned. If you choose the strategy continuity, then transactions in the mempool are checked if there are gaps - missing nonces that prevent transactions with greater nonces to get included.' required: false schema: type: string default: max enum: - max - continuity example: max responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/NextNonceResponse' '400': description: Invalid public key content: application/json: schema: $ref: '#/components/schemas/Error' '404': description: Account not found content: application/json: schema: $ref: '#/components/schemas/Error' '503': $ref: '#/components/responses/ServiceUnavailable' /accounts/{pubkey}/transactions/pending: get: tags: - external - account operationId: GetPendingAccountTransactionsByPubkey description: Get pending account transactions by public key parameters: - $ref: '#/components/parameters/intAsString' - $ref: '#/components/parameters/accountPubkey' responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/SignedTxs' '400': description: Invalid public key content: application/json: schema: $ref: '#/components/schemas/Error' '404': description: Account not found content: application/json: schema: $ref: '#/components/schemas/Error' '503': $ref: '#/components/responses/ServiceUnavailable' /auctions/{name}: get: tags: - external - name_service operationId: GetAuctionEntryByName description: Get auction entry from naming system parameters: - $ref: '#/components/parameters/intAsString' - in: path name: name description: The name key of the name entry required: true schema: type: string example: dimitar.chain responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/AuctionEntry' '400': description: Invalid name content: application/json: schema: $ref: '#/components/schemas/Error' '404': description: Name not found content: application/json: schema: $ref: '#/components/schemas/Error' '503': $ref: '#/components/responses/ServiceUnavailable' /channels/{pubkey}: get: tags: - external - channel operationId: GetChannelByPubkey description: Get channel by public key parameters: - $ref: '#/components/parameters/intAsString' - in: path name: pubkey description: The pubkey of the channel required: true schema: type: string example: ch_2tceSwiqxgBcPirX3VYgW3sXgQdJeHjrNWHhLWyfZL7pT4gZF4 responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/Channel' '400': description: Invalid public key content: application/json: schema: $ref: '#/components/schemas/Error' '404': description: Channel not found content: application/json: schema: $ref: '#/components/schemas/Error' '503': $ref: '#/components/responses/ServiceUnavailable' /contracts/{pubkey}: get: tags: - external - contract operationId: GetContract description: Get a contract by pubkey parameters: - $ref: '#/components/parameters/intAsString' - $ref: '#/components/parameters/contractPubkey' responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/ContractObject' '400': description: Invalid pubkey content: application/json: schema: $ref: '#/components/schemas/Error' '404': description: Contract not found content: application/json: schema: $ref: '#/components/schemas/Error' '503': $ref: '#/components/responses/ServiceUnavailable' /contracts/{pubkey}/code: get: tags: - external - contract operationId: GetContractCode description: Get contract code by pubkey parameters: - $ref: '#/components/parameters/intAsString' - $ref: '#/components/parameters/contractPubkey' responses: '200': description: Contract code content: application/json: schema: $ref: '#/components/schemas/ByteCode' '400': description: Invalid pubkey content: application/json: schema: $ref: '#/components/schemas/Error' '404': description: Contract not found content: application/json: schema: $ref: '#/components/schemas/Error' '503': $ref: '#/components/responses/ServiceUnavailable' /contracts/{pubkey}/poi: get: tags: - external - contract operationId: GetContractPoI description: Get a proof of inclusion for a contract parameters: - $ref: '#/components/parameters/intAsString' - $ref: '#/components/parameters/contractPubkey' responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/PoI' '400': description: Invalid contract key content: application/json: schema: $ref: '#/components/schemas/Error' '404': description: Contract not found content: application/json: schema: $ref: '#/components/schemas/Error' '503': $ref: '#/components/responses/ServiceUnavailable' /currency: get: tags: - external - node_info operationId: GetCurrency description: Get the currency metadata of a node parameters: - $ref: '#/components/parameters/intAsString' responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/Currency' '503': $ref: '#/components/responses/ServiceUnavailable' /dry-run: post: tags: - external - dry-run operationId: ProtectedDryRunTxs description: Dry-run unsigned transactions on top of a given block. Supports all TXs except GAMetaTx, PayingForTx and OffchainTx. Gas defaults to 1000000 when not set on a call request; total gas per request is capped by a node-configured limit. FATE contract-storage reads are metered at a size-proportional gas cost, so reported gas is an estimate of the on-chain cost, not an exact figure. Reported gas is never below what the same call costs on chain at the currently activated protocol, because each repriced storage register read is floored at that charge. parameters: - $ref: '#/components/parameters/intAsString' requestBody: content: application/json: schema: $ref: '#/components/schemas/DryRunInput' description: transactions required: true responses: '200': description: Dry-run result content: application/json: schema: $ref: '#/components/schemas/DryRunResults' '400': description: Invalid input content: application/json: schema: $ref: '#/components/schemas/Error' '403': description: Over the gas limit content: application/json: schema: $ref: '#/components/schemas/Error' '503': $ref: '#/components/responses/ServiceUnavailable' /generations/current: get: tags: - external - chain operationId: GetCurrentGeneration description: Get the current generation parameters: - $ref: '#/components/parameters/intAsString' responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/Generation' '404': description: Generation not found content: application/json: schema: $ref: '#/components/schemas/Error' '503': $ref: '#/components/responses/ServiceUnavailable' /generations/hash/{hash}: get: tags: - external - chain operationId: GetGenerationByHash description: Get a generation by hash parameters: - $ref: '#/components/parameters/intAsString' - $ref: '#/components/parameters/keyBlockHash' responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/Generation' '400': description: Invalid hash content: application/json: schema: $ref: '#/components/schemas/Error' '404': description: Generation not found content: application/json: schema: $ref: '#/components/schemas/Error' '503': $ref: '#/components/responses/ServiceUnavailable' /generations/height/{height}: get: tags: - external - chain operationId: GetGenerationByHeight description: Get a generation by height parameters: - $ref: '#/components/parameters/intAsString' - $ref: '#/components/parameters/height' responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/Generation' '404': description: Generation not found content: application/json: schema: $ref: '#/components/schemas/Error' '503': $ref: '#/components/responses/ServiceUnavailable' /headers/top: get: tags: - external - chain operationId: GetTopHeader description: Get the top header (either key or micro block) parameters: - $ref: '#/components/parameters/intAsString' responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/Header' '404': description: Block not found content: application/json: schema: $ref: '#/components/schemas/Error' '503': $ref: '#/components/responses/ServiceUnavailable' /hyperchain/pin-tx: get: tags: - external - hyperchain operationId: GetPinningTx description: Get the pinning transaction for the current epoch. Returns both the individual parameters as well as the parent chain type (aeternity, btc etc.), network id and a packaged 80 byte readymade payload for that chain type. parameters: [] responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/PinningTx' '404': description: Cannot find pinning data for some reason, e.g. epoch not started content: application/json: schema: $ref: '#/components/schemas/Error' '503': $ref: '#/components/responses/ServiceUnavailable' /hyperchain/contracts: get: tags: - external - hyperchain operationId: GetHyperchainContractPubkeys description: Get the pubkeys for the configured hyperchain contracts for staking, election and rewards parameters: [] responses: '200': description: successful operation content: application/json: schema: $ref: '#/components/schemas/HCContractPubkeys' '404': description: Cannot find the contract pubkeys for some reason, e.g. HC consensus not started, or misconfigured content: application/json: schema: $ref: '#/components/schemas/Error' '503': $ref: '#/components/responses/ServiceUnavailable' /key-blocks/current: get: tags: - external - chain operationId: GetCurrentKeyBlock description: Get the current key block parameters: - $ref: '#/components/parameters/intAsString' responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/KeyBlock' '404': description: Block not found content: application/json: schema: $ref: '#/components/schemas/Error' '503': $ref: '#/components/responses/ServiceUnavailable' /key-blocks/current/hash: get: tags: - external - chain operationId: GetCurrentKeyBlockHash description: Get the hash of the current key block parameters: - $ref: '#/components/parameters/intAsString' responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/HashResponse' '404': description: Block not found content: application/json: schema: $ref: '#/components/schemas/Error' '503': $ref: '#/components/responses/ServiceUnavailable' /key-blocks/current/height: get: tags: - external - chain operationId: GetCurrentKeyBlockHeight description: Get the height of the current key block parameters: - $ref: '#/components/parameters/intAsString' responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/HeightResponse' '404': description: Block not found content: application/json: schema: $ref: '#/components/schemas/Error' '503': $ref: '#/components/responses/ServiceUnavailable' /key-blocks/hash/{hash}: get: tags: - external - chain operationId: GetKeyBlockByHash description: Get a key block by hash parameters: - $ref: '#/components/parameters/intAsString' - $ref: '#/components/parameters/keyBlockHash' responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/KeyBlock' '400': description: Invalid hash content: application/json: schema: $ref: '#/components/schemas/Error' '404': description: Block not found content: application/json: schema: $ref: '#/components/schemas/Error' '503': $ref: '#/components/responses/ServiceUnavailable' /key-blocks/height/{height}: get: tags: - external - chain operationId: GetKeyBlockByHeight description: Get a key block by height parameters: - $ref: '#/components/parameters/intAsString' - $ref: '#/components/parameters/height' responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/KeyBlock' '404': description: Block not found content: application/json: schema: $ref: '#/components/schemas/Error' '503': $ref: '#/components/responses/ServiceUnavailable' /key-blocks/pending: get: tags: - external - chain operationId: GetPendingKeyBlock description: Get the pending key block parameters: - $ref: '#/components/parameters/intAsString' responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/KeyBlock' '400': description: Beneficiary not configured content: application/json: schema: $ref: '#/components/schemas/Error' '404': description: Block not found content: application/json: schema: $ref: '#/components/schemas/Error' '503': $ref: '#/components/responses/ServiceUnavailable' /micro-blocks/hash/{hash}/header: get: tags: - external - chain operationId: GetMicroBlockHeaderByHash description: Get a micro block header by hash parameters: - $ref: '#/components/parameters/intAsString' - $ref: '#/components/parameters/microBlockHash' responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/MicroBlockHeader' '400': description: Invalid hash content: application/json: schema: $ref: '#/components/schemas/Error' '404': description: Block not found content: application/json: schema: $ref: '#/components/schemas/Error' '503': $ref: '#/components/responses/ServiceUnavailable' /micro-blocks/hash/{hash}/transactions: get: tags: - external - chain operationId: GetMicroBlockTransactionsByHash description: Get micro block transactions by hash parameters: - $ref: '#/components/parameters/intAsString' - $ref: '#/components/parameters/microBlockHash' responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/SignedTxs' '400': description: Invalid hash content: application/json: schema: $ref: '#/components/schemas/Error' '404': description: Block not found content: application/json: schema: $ref: '#/components/schemas/Error' '503': $ref: '#/components/responses/ServiceUnavailable' /micro-blocks/hash/{hash}/transactions/count: get: tags: - external - chain operationId: GetMicroBlockTransactionsCountByHash description: Get micro block transaction count by hash parameters: - $ref: '#/components/parameters/intAsString' - $ref: '#/components/parameters/microBlockHash' responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/CountResponse' '400': description: Invalid hash content: application/json: schema: $ref: '#/components/schemas/Error' '404': description: Block not found content: application/json: schema: $ref: '#/components/schemas/Error' '503': $ref: '#/components/responses/ServiceUnavailable' /micro-blocks/hash/{hash}/transactions/index/{index}: get: tags: - external - chain operationId: GetMicroBlockTransactionByHashAndIndex description: Get a micro block transaction by hash and index parameters: - $ref: '#/components/parameters/intAsString' - $ref: '#/components/parameters/microBlockHash' - in: path name: index description: The index of the transaction in a block required: true schema: type: integer minimum: 1 example: 1 responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/SignedTx' '400': description: Invalid hash or index content: application/json: schema: $ref: '#/components/schemas/Error' '404': description: Block not found content: application/json: schema: $ref: '#/components/schemas/Error' '503': $ref: '#/components/responses/ServiceUnavailable' /names/{name}: get: tags: - external - name_service operationId: GetNameEntryByName description: Get name entry from naming system parameters: - $ref: '#/components/parameters/intAsString' - in: path name: name description: The name key of the name entry required: true schema: type: string example: dimitar.chain responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/NameEntry' '400': description: Invalid name content: application/json: schema: $ref: '#/components/schemas/Error' '404': description: Name not found content: application/json: schema: $ref: '#/components/schemas/Error' '503': $ref: '#/components/responses/ServiceUnavailable' /names/hash/{name_hash}: get: tags: - external - name_service operationId: GetNameEntryByNameHash description: Get name entry from naming system parameters: - $ref: '#/components/parameters/intAsString' - in: path name: name_hash description: The name hash of the name entry required: true schema: type: string example: nm_1G1GgdPsPCzSvEDSVAeuiW7tKdmTXStb3N2wXviyPfMgLME5 responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/NameEntry' '400': description: Invalid name content: application/json: schema: $ref: '#/components/schemas/Error' '404': description: Name not found content: application/json: schema: $ref: '#/components/schemas/Error' '503': $ref: '#/components/responses/ServiceUnavailable' /oracles/{pubkey}: get: tags: - external - oracle operationId: GetOracleByPubkey description: Get an oracle by public key parameters: - $ref: '#/components/parameters/intAsString' - $ref: '#/components/parameters/oraclePubkey' responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/RegisteredOracle' '400': description: Invalid public key content: application/json: schema: $ref: '#/components/schemas/Error' '404': description: Oracle not found content: application/json: schema: $ref: '#/components/schemas/Error' '503': $ref: '#/components/responses/ServiceUnavailable' /oracles/{pubkey}/queries: get: tags: - external - oracle operationId: GetOracleQueriesByPubkey description: Get oracle queries by public key parameters: - $ref: '#/components/parameters/intAsString' - $ref: '#/components/parameters/oraclePubkey' - in: query name: from description: Last query id in previous page required: false schema: type: string example: oq_q3UrSagF6JfgvAwMiLa6yyEoerx6tQC87m5X8W98NrdDArNZH - in: query name: limit description: Max number of oracle queries required: false schema: type: integer default: 20 minimum: 1 maximum: 1000 example: 1 - in: query name: type description: 'The type of a query: open, closed or all' required: false schema: type: string default: all enum: - open - closed - all example: open responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/OracleQueries' '400': description: Invalid public key content: application/json: schema: $ref: '#/components/schemas/Error' '404': description: Oracle not found content: application/json: schema: $ref: '#/components/schemas/Error' '503': $ref: '#/components/responses/ServiceUnavailable' /oracles/{pubkey}/queries/{query-id}: get: tags: - external - oracle operationId: GetOracleQueryByPubkeyAndQueryId description: Get an oracle query by public key and query ID parameters: - $ref: '#/components/parameters/intAsString' - $ref: '#/components/parameters/oraclePubkey' - in: path name: query-id description: The ID of the query required: true schema: type: string example: oq_q3UrSagF6JfgvAwMiLa6yyEoerx6tQC87m5X8W98NrdDArNZH responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/OracleQuery' '400': description: Invalid public key or query ID content: application/json: schema: $ref: '#/components/schemas/Error' '404': description: Oracle query not found content: application/json: schema: $ref: '#/components/schemas/Error' '503': $ref: '#/components/responses/ServiceUnavailable' /peers/pubkey: get: tags: - external - node_info operationId: GetPeerPubkey description: Get peer public key parameters: - $ref: '#/components/parameters/intAsString' responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/PeerPubKey' '503': $ref: '#/components/responses/ServiceUnavailable' /recent-gas-prices: get: tags: - external - transaction operationId: GetRecentGasPrices description: Get minimum gas prices in recent blocks parameters: - $ref: '#/components/parameters/intAsString' responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/GasPrices' '400': description: Not enough/Invalid data for statistics content: application/json: schema: $ref: '#/components/schemas/Error' '503': $ref: '#/components/responses/ServiceUnavailable' /node-settings: get: tags: - external - node_settings operationId: GetNodeSettings description: 'Get this node''s local policy settings. These are not consensus rules: they are operator configuration, they may differ between nodes, and an operator can change them at runtime. min_miner_gas_price is a decimal string; the other values are JSON numbers, or strings when int-as-string=true.' parameters: - $ref: '#/components/parameters/intAsString' responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/NodeSettings' '503': $ref: '#/components/responses/ServiceUnavailable' /protocol-parameters: get: tags: - external - node_info operationId: GetProtocolParameters description: 'Get the consensus protocol parameters needed to build valid transactions. Covers the protocol effective at the current top block and any later protocol whose fork height has not been reached yet; a community fork under signalling is reported only once it has activated, since until then it may still fail to. See /node-settings for this node''s local policy. Aettos amounts (minimum_gas_price, name_claim_fees, name_claim_locked_fee) are always decimal strings, never JSON numbers: the largest name fee is about 2^69 and would lose precision in an IEEE-754 client. Gas, key block heights, counts and version numbers are JSON numbers; pass int-as-string=true to receive those as strings too.' parameters: - $ref: '#/components/parameters/intAsString' responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/ProtocolParameters' '503': $ref: '#/components/responses/ServiceUnavailable' /status: get: tags: - external - node_info operationId: GetStatus description: Get the status of a node parameters: - $ref: '#/components/parameters/intAsString' responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/Status' '503': $ref: '#/components/responses/ServiceUnavailable' /status/chain-ends: get: tags: - external - chain operationId: GetChainEnds description: Get oldest keyblock hashes counting from genesis including orphans parameters: - $ref: '#/components/parameters/intAsString' responses: '200': description: Successful operation content: application/json: schema: type: array items: $ref: '#/components/schemas/EncodedHash' '503': $ref: '#/components/responses/ServiceUnavailable' /sync-status: get: tags: - external - node_info operationId: GetSyncStatus description: Get the sync status of a node responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/SyncStatus' '404': description: Node not syncing content: application/json: schema: $ref: '#/components/schemas/Error' '503': $ref: '#/components/responses/ServiceUnavailable' /transactions: post: tags: - external - transaction operationId: PostTransaction description: Post a new transaction parameters: - $ref: '#/components/parameters/intAsString' requestBody: content: application/json: schema: $ref: '#/components/schemas/EncodedTx' description: The new transaction required: true responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/PostTxResponse' '400': description: Invalid transaction content: application/json: schema: $ref: '#/components/schemas/Error' '503': $ref: '#/components/responses/ServiceUnavailable' /transactions/{hash}: get: tags: - external - transaction operationId: GetTransactionByHash description: Get a transaction by hash parameters: - $ref: '#/components/parameters/intAsString' - $ref: '#/components/parameters/txHash' responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/SignedTx' '400': description: Invalid hash content: application/json: schema: $ref: '#/components/schemas/Error' '404': description: Transaction not found content: application/json: schema: $ref: '#/components/schemas/Error' '503': $ref: '#/components/responses/ServiceUnavailable' /transactions/{hash}/info: get: tags: - external - transaction operationId: GetTransactionInfoByHash parameters: - $ref: '#/components/parameters/intAsString' - $ref: '#/components/parameters/txHash' responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/TxInfoObject' '400': description: Invalid hash content: application/json: schema: $ref: '#/components/schemas/Error' '404': description: Transaction not found content: application/json: schema: $ref: '#/components/schemas/Error' '410': description: State data at the requested height has been garbage-collected content: application/json: schema: $ref: '#/components/schemas/Error' '503': $ref: '#/components/responses/ServiceUnavailable' /debug/accounts/beneficiary: get: tags: - internal - node_info - debug operationId: GetNodeBeneficiary description: Get node's beneficiary public key responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/PubKey' '404': description: Beneficiary error content: application/json: schema: $ref: '#/components/schemas/Error' '503': $ref: '#/components/responses/ServiceUnavailable' /debug/accounts/node: get: tags: - internal - node_info - debug operationId: GetNodePubkey description: Get node's public key parameters: - $ref: '#/components/parameters/intAsString' responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/PubKey' '404': description: Public key not found content: application/json: schema: $ref: '#/components/schemas/Error' '503': $ref: '#/components/responses/ServiceUnavailable' /debug/channels/close/mutual: post: tags: - internal - channel - debug operationId: PostChannelCloseMutual description: Get a channel_close_mutual transaction object parameters: - $ref: '#/components/parameters/intAsString' requestBody: content: application/json: schema: $ref: '#/components/schemas/ChannelCloseMutualTx' required: true responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/UnsignedTx' '400': description: Invalid transaction content: application/json: schema: $ref: '#/components/schemas/Error' '503': $ref: '#/components/responses/ServiceUnavailable' /debug/channels/close/solo: post: tags: - internal - channel - debug operationId: PostChannelCloseSolo description: Get a channel_close_solo transaction object parameters: - $ref: '#/components/parameters/intAsString' requestBody: content: application/json: schema: $ref: '#/components/schemas/ChannelCloseSoloTx' required: true responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/UnsignedTx' '400': description: Invalid transaction content: application/json: schema: $ref: '#/components/schemas/Error' '503': $ref: '#/components/responses/ServiceUnavailable' /debug/channels/create: post: tags: - internal - channel - debug operationId: PostChannelCreate description: Get a channel_create transaction object parameters: - $ref: '#/components/parameters/intAsString' requestBody: content: application/json: schema: $ref: '#/components/schemas/ChannelCreateTx' required: true responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/UnsignedTx' '400': description: Invalid transaction content: application/json: schema: $ref: '#/components/schemas/Error' '404': description: Initiator not found content: application/json: schema: $ref: '#/components/schemas/Error' '503': $ref: '#/components/responses/ServiceUnavailable' /debug/channels/deposit: post: tags: - internal - channel - debug operationId: PostChannelDeposit description: Get a channel_deposit transaction object parameters: - $ref: '#/components/parameters/intAsString' requestBody: content: application/json: schema: $ref: '#/components/schemas/ChannelDepositTx' required: true responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/UnsignedTx' '400': description: Invalid transaction content: application/json: schema: $ref: '#/components/schemas/Error' '503': $ref: '#/components/responses/ServiceUnavailable' /debug/channels/fsm-count: get: tags: - internal - node_info - debug operationId: GetChannelsFsmCount description: Get the number of currently active State Channel FSMs responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/CountResponse' '503': $ref: '#/components/responses/ServiceUnavailable' /debug/channels/set-delegates: post: tags: - internal - channel - debug operationId: PostChannelSetDelegates description: Get a channel_set_delegates_tx transaction object parameters: - $ref: '#/components/parameters/intAsString' requestBody: content: application/json: schema: $ref: '#/components/schemas/ChannelSetDelegatesTx' required: true responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/UnsignedTx' '400': description: Invalid transaction content: application/json: schema: $ref: '#/components/schemas/Error' '503': $ref: '#/components/responses/ServiceUnavailable' /debug/channels/settle: post: tags: - internal - channel - debug operationId: PostChannelSettle description: Get a channel_settle transaction object parameters: - $ref: '#/components/parameters/intAsString' requestBody: content: application/json: schema: $ref: '#/components/schemas/ChannelSettleTx' required: true responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/UnsignedTx' '400': description: Invalid transaction content: application/json: schema: $ref: '#/components/schemas/Error' '503': $ref: '#/components/responses/ServiceUnavailable' /debug/channels/slash: post: tags: - internal - channel - debug operationId: PostChannelSlash description: Get a channel_slash transaction object parameters: - $ref: '#/components/parameters/intAsString' requestBody: content: application/json: schema: $ref: '#/components/schemas/ChannelSlashTx' required: true responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/UnsignedTx' '400': description: Invalid transaction content: application/json: schema: $ref: '#/components/schemas/Error' '503': $ref: '#/components/responses/ServiceUnavailable' /debug/channels/snapshot/solo: post: tags: - internal - channel - debug operationId: PostChannelSnapshotSolo description: Get a channel_snapshot_solo transaction object parameters: - $ref: '#/components/parameters/intAsString' requestBody: content: application/json: schema: $ref: '#/components/schemas/ChannelSnapshotSoloTx' required: true responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/UnsignedTx' '400': description: Invalid transaction content: application/json: schema: $ref: '#/components/schemas/Error' '503': $ref: '#/components/responses/ServiceUnavailable' /debug/channels/withdraw: post: tags: - internal - channel - debug operationId: PostChannelWithdraw description: Get a channel_withdrawal transaction object parameters: - $ref: '#/components/parameters/intAsString' requestBody: content: application/json: schema: $ref: '#/components/schemas/ChannelWithdrawTx' required: true responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/UnsignedTx' '400': description: Invalid transaction content: application/json: schema: $ref: '#/components/schemas/Error' '503': $ref: '#/components/responses/ServiceUnavailable' /debug/check-tx/pool/{hash}: get: tags: - internal - debug operationId: GetCheckTxInPool description: 'Check if a transaction in the pool can be included in a microblock or if it is blocked by something: not enough tokens, missing nonce or something else' parameters: - $ref: '#/components/parameters/intAsString' - $ref: '#/components/parameters/txHash' responses: '200': description: The transaction status content: application/json: schema: $ref: '#/components/schemas/CheckTxInPoolResponse' '404': description: Transaction is not in transaction pool content: application/json: schema: $ref: '#/components/schemas/Error' '503': $ref: '#/components/responses/ServiceUnavailable' /debug/contracts/call: post: tags: - internal - contract - debug operationId: PostContractCall description: Get a contract_call transaction object parameters: - $ref: '#/components/parameters/intAsString' requestBody: content: application/json: schema: $ref: '#/components/schemas/ContractCallTx' required: true responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/UnsignedTx' '400': description: Invalid transaction content: application/json: schema: $ref: '#/components/schemas/Error' '404': description: Caller account or contract not found content: application/json: schema: $ref: '#/components/schemas/Error' '503': $ref: '#/components/responses/ServiceUnavailable' /debug/contracts/create: post: tags: - internal - contract - debug operationId: PostContractCreate description: Get a contract_create transaction object parameters: - $ref: '#/components/parameters/intAsString' requestBody: content: application/json: schema: $ref: '#/components/schemas/ContractCreateTx' required: true responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/CreateContractUnsignedTx' '400': description: Invalid transaction content: application/json: schema: $ref: '#/components/schemas/Error' '404': description: Owner account not found content: application/json: schema: $ref: '#/components/schemas/Error' '503': $ref: '#/components/responses/ServiceUnavailable' /debug/crash: get: tags: - internal - debug operationId: GetCrashRequest description: This is a sample URI to simulate a request crash. Shall be used for test purposes only parameters: - $ref: '#/components/parameters/intAsString' responses: '200': description: This will never happen content: application/json: schema: $ref: '#/components/schemas/TokenSupply' '500': description: We always end up here content: application/json: schema: $ref: '#/components/schemas/Error' '503': $ref: '#/components/responses/ServiceUnavailable' /debug/names/claim: post: tags: - internal - name_service - debug operationId: PostNameClaim description: Get a name_claim transaction object parameters: - $ref: '#/components/parameters/intAsString' requestBody: content: application/json: schema: $ref: '#/components/schemas/NameClaimTx' required: true responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/UnsignedTx' '400': description: Invalid transaction content: application/json: schema: $ref: '#/components/schemas/Error' '404': description: Account or name not found content: application/json: schema: $ref: '#/components/schemas/Error' '503': $ref: '#/components/responses/ServiceUnavailable' /debug/names/commitment-id: get: tags: - internal - name_service - debug operationId: GetCommitmentId description: Compute commitment ID for a given salt and name parameters: - $ref: '#/components/parameters/intAsString' - in: query name: name description: Name required: true schema: type: string - in: query name: salt description: Salt required: true schema: type: integer minimum: 0 responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/CommitmentId' '400': description: Invalid name content: application/json: schema: $ref: '#/components/schemas/Error' '503': $ref: '#/components/responses/ServiceUnavailable' /debug/names/preclaim: post: tags: - internal - name_service - debug operationId: PostNamePreclaim description: Get a name_preclaim transaction object parameters: - $ref: '#/components/parameters/intAsString' requestBody: content: application/json: schema: $ref: '#/components/schemas/NamePreclaimTx' required: true responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/UnsignedTx' '400': description: Invalid transaction content: application/json: schema: $ref: '#/components/schemas/Error' '404': description: Account not found content: application/json: schema: $ref: '#/components/schemas/Error' '503': $ref: '#/components/responses/ServiceUnavailable' /debug/names/revoke: post: tags: - internal - name_service - debug operationId: PostNameRevoke description: Get a name_revoke transaction object parameters: - $ref: '#/components/parameters/intAsString' requestBody: content: application/json: schema: $ref: '#/components/schemas/NameRevokeTx' required: true responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/UnsignedTx' '400': description: Invalid transaction content: application/json: schema: $ref: '#/components/schemas/Error' '404': description: Account or name not found content: application/json: schema: $ref: '#/components/schemas/Error' '503': $ref: '#/components/responses/ServiceUnavailable' /debug/names/transfer: post: tags: - internal - name_service - debug operationId: PostNameTransfer description: Get a name_transfer transaction object parameters: - $ref: '#/components/parameters/intAsString' requestBody: content: application/json: schema: $ref: '#/components/schemas/NameTransferTx' required: true responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/UnsignedTx' '400': description: Invalid transaction content: application/json: schema: $ref: '#/components/schemas/Error' '404': description: Account or name not found content: application/json: schema: $ref: '#/components/schemas/Error' '503': $ref: '#/components/responses/ServiceUnavailable' /debug/names/update: post: tags: - internal - name_service - debug operationId: PostNameUpdate description: Get a name_update transaction object parameters: - $ref: '#/components/parameters/intAsString' requestBody: content: application/json: schema: $ref: '#/components/schemas/NameUpdateTx' required: true responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/UnsignedTx' '400': description: Invalid transaction content: application/json: schema: $ref: '#/components/schemas/Error' '404': description: Account or oracle not found content: application/json: schema: $ref: '#/components/schemas/Error' '503': $ref: '#/components/responses/ServiceUnavailable' /debug/network: get: tags: - internal - node_info - debug operationId: GetNetworkStatus description: Get detailed analytics on peers parameters: - $ref: '#/components/parameters/intAsString' responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/NetworkStatus' '404': description: Analytics disabled content: application/json: schema: $ref: '#/components/schemas/Error' '503': $ref: '#/components/responses/ServiceUnavailable' /debug/oracles/extend: post: tags: - internal - oracle - debug operationId: PostOracleExtend description: Get an oracle_extend transaction object parameters: - $ref: '#/components/parameters/intAsString' requestBody: content: application/json: schema: $ref: '#/components/schemas/OracleExtendTx' required: true responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/UnsignedTx' '400': description: Invalid transaction content: application/json: schema: $ref: '#/components/schemas/Error' '404': description: Account not found content: application/json: schema: $ref: '#/components/schemas/Error' '503': $ref: '#/components/responses/ServiceUnavailable' /debug/oracles/query: post: tags: - internal - oracle - debug operationId: PostOracleQuery description: Get an oracle_query transaction object parameters: - $ref: '#/components/parameters/intAsString' requestBody: content: application/json: schema: $ref: '#/components/schemas/OracleQueryTx' required: true responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/UnsignedTx' '400': description: Invalid transaction content: application/json: schema: $ref: '#/components/schemas/Error' '404': description: Account or oracle not found content: application/json: schema: $ref: '#/components/schemas/Error' '503': $ref: '#/components/responses/ServiceUnavailable' /debug/oracles/register: post: tags: - internal - oracle - debug operationId: PostOracleRegister description: Get a oracle_register transaction object parameters: - $ref: '#/components/parameters/intAsString' requestBody: content: application/json: schema: $ref: '#/components/schemas/OracleRegisterTx' required: true responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/UnsignedTx' '400': description: Invalid transaction content: application/json: schema: $ref: '#/components/schemas/Error' '404': description: Account not found content: application/json: schema: $ref: '#/components/schemas/Error' '503': $ref: '#/components/responses/ServiceUnavailable' /debug/oracles/respond: post: tags: - internal - oracle - debug operationId: PostOracleRespond description: Get an oracle_response transaction object parameters: - $ref: '#/components/parameters/intAsString' requestBody: content: application/json: schema: $ref: '#/components/schemas/OracleRespondTx' required: true responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/UnsignedTx' '400': description: Invalid transaction content: application/json: schema: $ref: '#/components/schemas/Error' '404': description: Oracle or query not found content: application/json: schema: $ref: '#/components/schemas/Error' '503': $ref: '#/components/responses/ServiceUnavailable' /debug/peers: get: tags: - internal - node_info - debug operationId: GetPeers description: Get node Peers parameters: - $ref: '#/components/parameters/intAsString' responses: '200': description: successful operation content: application/json: schema: $ref: '#/components/schemas/Peers' '403': description: Info not enabled content: application/json: schema: $ref: '#/components/schemas/Error' '503': $ref: '#/components/responses/ServiceUnavailable' /debug/token-supply/height/{height}: get: tags: - internal - debug operationId: GetTokenSupplyByHeight description: Get total token supply at height parameters: - $ref: '#/components/parameters/intAsString' - $ref: '#/components/parameters/height' responses: '200': description: Total token supply at height divided in categories content: application/json: schema: $ref: '#/components/schemas/TokenSupply' '400': description: Height not available content: application/json: schema: $ref: '#/components/schemas/Error' '410': description: State data at the requested height has been garbage-collected content: application/json: schema: $ref: '#/components/schemas/Error' '503': $ref: '#/components/responses/ServiceUnavailable' /debug/transactions/dry-run: post: tags: - internal - debug operationId: DryRunTxs description: Dry-run transactions on top of a given block. Supports all TXs except GAMetaTx, PayingForTx and OffchainTx. FATE contract-storage reads are metered at the size-proportional (Arcus) gas cost by default; only the returned gas amounts differ, the response schema is unchanged. Each repriced storage register read is floored at the currently activated protocol charge, so reported gas is never below the on-chain cost. parameters: - $ref: '#/components/parameters/intAsString' requestBody: content: application/json: schema: $ref: '#/components/schemas/DryRunInput' description: transactions required: true responses: '200': description: Dry-run result content: application/json: schema: $ref: '#/components/schemas/DryRunResults' '400': description: Invalid input content: application/json: schema: $ref: '#/components/schemas/Error' '403': description: Over the gas limit content: application/json: schema: $ref: '#/components/schemas/Error' '503': $ref: '#/components/responses/ServiceUnavailable' /debug/transactions/paying-for: post: tags: - internal - transaction - debug operationId: PostPayingFor description: Get a paying-for transaction object parameters: - $ref: '#/components/parameters/intAsString' requestBody: content: application/json: schema: $ref: '#/components/schemas/PayingForTx' description: A paying-for transaction required: true responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/UnsignedTx' '400': description: Invalid transaction content: application/json: schema: $ref: '#/components/schemas/Error' '404': description: Payer account not found content: application/json: schema: $ref: '#/components/schemas/Error' '503': $ref: '#/components/responses/ServiceUnavailable' /debug/transactions/pending: get: tags: - internal - transaction - debug operationId: GetPendingTransactions description: Get pending transactions parameters: - $ref: '#/components/parameters/intAsString' responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/SignedTxs' '503': $ref: '#/components/responses/ServiceUnavailable' /debug/transactions/spend: post: tags: - internal - transaction - debug operationId: PostSpend description: Get a spend transaction object parameters: - $ref: '#/components/parameters/intAsString' requestBody: content: application/json: schema: $ref: '#/components/schemas/SpendTxInput' description: A spend transaction required: true responses: '200': description: Successful operation content: application/json: schema: $ref: '#/components/schemas/UnsignedTx' '400': description: Invalid transaction content: application/json: schema: $ref: '#/components/schemas/Error' '404': description: Sender account not found content: application/json: schema: $ref: '#/components/schemas/Error' '503': $ref: '#/components/responses/ServiceUnavailable' /key-blocks: post: tags: - internal - chain operationId: PostKeyBlock description: Post a mined key block requestBody: content: application/json: schema: $ref: '#/components/schemas/KeyBlock' description: Mined key block required: true responses: '200': description: Successful operation '400': description: Invalid block content: application/json: schema: $ref: '#/components/schemas/Error' '503': $ref: '#/components/responses/ServiceUnavailable' /node/operator/mempool/hash/{hash}: delete: tags: - internal - node-operator operationId: DeleteTxFromMempool description: Delete a pending transaction from the mempool parameters: - $ref: '#/components/parameters/txHash' responses: '200': description: The transaction was deleted from the pool content: application/json: schema: type: object properties: status: type: string '400': description: Invalid tx hash content: application/json: schema: $ref: '#/components/schemas/Error' '404': description: Transaction not in mempool content: application/json: schema: $ref: '#/components/schemas/Error' '503': $ref: '#/components/responses/ServiceUnavailable' /node/operator/peers/count: get: tags: - internal - node-operator operationId: GetPeerCount description: Get the number of peers in the different pools. This is to be used to catch if a node loses connectivity parameters: - $ref: '#/components/parameters/intAsString' responses: '200': description: The different count of peers in the respective pools content: application/json: schema: $ref: '#/components/schemas/PeerCount' '503': $ref: '#/components/responses/ServiceUnavailable' components: schemas: Account: type: object properties: id: $ref: '#/components/schemas/EncodedPubkey' balance: $ref: '#/components/schemas/UInt' nonce: $ref: '#/components/schemas/UInt64' payable: description: Payable type: boolean kind: type: string enum: - basic - generalized contract_id: $ref: '#/components/schemas/EncodedPubkey' auth_fun: description: Name of authorization function for generalized account type: string required: - id - balance - nonce AuctionEntry: type: object properties: id: $ref: '#/components/schemas/EncodedNameId' started_at: $ref: '#/components/schemas/UInt64' ends_at: $ref: '#/components/schemas/UInt64' highest_bidder: $ref: '#/components/schemas/EncodedPubkey' highest_bid: $ref: '#/components/schemas/UInt' required: - id - started_at - ends_at - highest_bidder - highest_bid ByteCode: type: object properties: bytecode: $ref: '#/components/schemas/EncodedContractByteArray' required: - bytecode Channel: type: object properties: id: $ref: '#/components/schemas/EncodedPubkey' initiator_id: $ref: '#/components/schemas/EncodedPubkey' responder_id: $ref: '#/components/schemas/EncodedPubkey' channel_amount: $ref: '#/components/schemas/UInt' initiator_amount: $ref: '#/components/schemas/UInt' responder_amount: $ref: '#/components/schemas/UInt' channel_reserve: $ref: '#/components/schemas/UInt' delegate_ids: $ref: '#/components/schemas/Delegates' state_hash: $ref: '#/components/schemas/EncodedHash' round: $ref: '#/components/schemas/UInt64' solo_round: $ref: '#/components/schemas/UInt64' lock_period: $ref: '#/components/schemas/UInt64' locked_until: $ref: '#/components/schemas/UInt64' required: - id - initiator_id - responder_id - channel_amount - initiator_amount - responder_amount - channel_reserve - delegate_ids - state_hash - round - solo_round - lock_period - locked_until ChannelCloseMutualTx: type: object properties: channel_id: $ref: '#/components/schemas/EncodedPubkey' from_id: $ref: '#/components/schemas/EncodedPubkey' initiator_amount_final: $ref: '#/components/schemas/UInt' responder_amount_final: $ref: '#/components/schemas/UInt' ttl: $ref: '#/components/schemas/UInt64' fee: $ref: '#/components/schemas/UInt64' nonce: $ref: '#/components/schemas/UInt64' required: - channel_id - from_id - initiator_amount_final - responder_amount_final - fee - nonce ChannelCloseSoloTx: type: object properties: channel_id: $ref: '#/components/schemas/EncodedPubkey' from_id: $ref: '#/components/schemas/EncodedPubkey' payload: description: Base64Check encoded byte array. Accepted on input as a plain 'ba_'-prefixed byte array (see aehttp_dispatch_int.erl's produce_tx(channel_close_solo_tx, ...)), but returned by the node as a 'tx_'-prefixed transaction (see aesc_close_solo_tx.erl) -- no single prefix pattern covers both. type: string ttl: $ref: '#/components/schemas/UInt64' fee: $ref: '#/components/schemas/UInt' nonce: $ref: '#/components/schemas/UInt64' poi: $ref: '#/components/schemas/EncodedProofOfInclusion' required: - channel_id - from_id - payload - fee - poi ChannelCreateTx: type: object properties: initiator_id: $ref: '#/components/schemas/EncodedPubkey' initiator_amount: $ref: '#/components/schemas/UInt' responder_id: $ref: '#/components/schemas/EncodedPubkey' responder_amount: $ref: '#/components/schemas/UInt' channel_reserve: $ref: '#/components/schemas/UInt' lock_period: $ref: '#/components/schemas/UInt64' ttl: $ref: '#/components/schemas/UInt64' fee: $ref: '#/components/schemas/UInt' nonce: $ref: '#/components/schemas/UInt64' state_hash: $ref: '#/components/schemas/EncodedHash' delegate_ids: $ref: '#/components/schemas/Delegates' required: - initiator_id - initiator_amount - responder_id - responder_amount - channel_reserve - lock_period - fee - state_hash ChannelDepositTx: type: object properties: channel_id: $ref: '#/components/schemas/EncodedPubkey' from_id: $ref: '#/components/schemas/EncodedPubkey' amount: $ref: '#/components/schemas/UInt' ttl: $ref: '#/components/schemas/UInt64' fee: $ref: '#/components/schemas/UInt' nonce: $ref: '#/components/schemas/UInt64' state_hash: $ref: '#/components/schemas/EncodedHash' round: $ref: '#/components/schemas/UInt64' required: - channel_id - from_id - amount - fee - nonce - state_hash - round ChannelForceProgressTx: type: object properties: channel_id: $ref: '#/components/schemas/EncodedPubkey' from_id: $ref: '#/components/schemas/EncodedPubkey' payload: $ref: '#/components/schemas/EncodedTxByteArray' round: $ref: '#/components/schemas/UInt64' update: $ref: '#/components/schemas/OffChainUpdate' state_hash: $ref: '#/components/schemas/EncodedHash' ttl: $ref: '#/components/schemas/UInt64' fee: $ref: '#/components/schemas/UInt' nonce: $ref: '#/components/schemas/UInt64' offchain_trees: $ref: '#/components/schemas/EncodedStateTrees' required: - channel_id - from_id - payload - round - update - state_hash - fee ChannelSetDelegatesTx: type: object properties: channel_id: $ref: '#/components/schemas/EncodedPubkey' from_id: $ref: '#/components/schemas/EncodedPubkey' initiator_delegate_ids: type: array items: $ref: '#/components/schemas/EncodedPubkey' responder_delegate_ids: type: array items: $ref: '#/components/schemas/EncodedPubkey' state_hash: $ref: '#/components/schemas/EncodedPubkey' round: $ref: '#/components/schemas/UInt64' payload: description: Base64Check encoded byte array. Accepted on input as a plain 'ba_'-prefixed byte array (see aehttp_dispatch_int.erl's produce_tx(channel_set_delegates_tx, ...)), but returned by the node as a 'tx_'-prefixed transaction (see aesc_set_delegates_tx.erl) -- no single prefix pattern covers both. type: string ttl: $ref: '#/components/schemas/UInt64' fee: $ref: '#/components/schemas/UInt' nonce: $ref: '#/components/schemas/UInt64' required: - channel_id - from_id - initiator_delegate_ids - responder_delegate_ids - state_hash - round - payload - fee ChannelSettleTx: type: object properties: channel_id: $ref: '#/components/schemas/EncodedPubkey' from_id: $ref: '#/components/schemas/EncodedPubkey' initiator_amount_final: $ref: '#/components/schemas/UInt' responder_amount_final: $ref: '#/components/schemas/UInt' ttl: $ref: '#/components/schemas/UInt64' fee: $ref: '#/components/schemas/UInt' nonce: $ref: '#/components/schemas/UInt64' required: - channel_id - from_id - initiator_amount_final - responder_amount_final - fee - nonce ChannelSlashTx: type: object properties: channel_id: $ref: '#/components/schemas/EncodedPubkey' from_id: $ref: '#/components/schemas/EncodedPubkey' payload: description: Base64Check encoded byte array. Accepted on input as a plain 'ba_'-prefixed byte array (see aehttp_dispatch_int.erl's produce_tx(channel_slash_tx, ...)), but returned by the node as a 'tx_'-prefixed transaction (see aesc_slash_tx.erl) -- no single prefix pattern covers both. type: string ttl: $ref: '#/components/schemas/UInt64' fee: $ref: '#/components/schemas/UInt' nonce: $ref: '#/components/schemas/UInt64' poi: $ref: '#/components/schemas/EncodedProofOfInclusion' required: - channel_id - from_id - payload - fee - poi ChannelSnapshotSoloTx: type: object properties: channel_id: $ref: '#/components/schemas/EncodedPubkey' from_id: $ref: '#/components/schemas/EncodedPubkey' payload: description: Base64Check encoded byte array. Accepted on input as a plain 'ba_'-prefixed byte array (see aehttp_dispatch_int.erl's produce_tx(channel_snapshot_solo_tx, ...)), but returned by the node as a 'tx_'-prefixed transaction (see aesc_snapshot_solo_tx.erl) -- no single prefix pattern covers both. type: string ttl: $ref: '#/components/schemas/UInt64' fee: $ref: '#/components/schemas/UInt' nonce: $ref: '#/components/schemas/UInt64' required: - channel_id - from_id - payload - fee ChannelWithdrawTx: type: object properties: channel_id: $ref: '#/components/schemas/EncodedPubkey' to_id: $ref: '#/components/schemas/EncodedPubkey' amount: $ref: '#/components/schemas/UInt' ttl: $ref: '#/components/schemas/UInt64' fee: $ref: '#/components/schemas/UInt' nonce: $ref: '#/components/schemas/UInt64' state_hash: $ref: '#/components/schemas/EncodedHash' round: $ref: '#/components/schemas/UInt64' required: - channel_id - to_id - amount - fee - nonce - state_hash - round CheckTxInPoolResponse: type: object properties: status: type: string required: - status CommitmentId: type: object properties: commitment_id: $ref: '#/components/schemas/EncodedCommitmentId' required: - commitment_id ContractCallObject: type: object properties: caller_id: $ref: '#/components/schemas/EncodedPubkey' caller_nonce: $ref: '#/components/schemas/UInt64' height: $ref: '#/components/schemas/UInt64' contract_id: $ref: '#/components/schemas/EncodedPubkey' gas_price: $ref: '#/components/schemas/UInt' gas_used: $ref: '#/components/schemas/UInt64' log: type: array items: $ref: '#/components/schemas/Event' return_value: $ref: '#/components/schemas/EncodedContractByteArray' return_type: description: The status of the call 'ok | error | revert'. type: string enum: - ok - error - revert required: - caller_id - caller_nonce - height - contract_id - gas_price - gas_used - log - return_value - return_type ContractCallTx: type: object properties: caller_id: $ref: '#/components/schemas/EncodedPubkey' nonce: $ref: '#/components/schemas/UInt64' contract_id: $ref: '#/components/schemas/EncodedPubkey' abi_version: $ref: '#/components/schemas/UInt16' fee: $ref: '#/components/schemas/UInt' ttl: $ref: '#/components/schemas/UInt64' amount: $ref: '#/components/schemas/UInt' gas: $ref: '#/components/schemas/UInt64' gas_price: $ref: '#/components/schemas/UInt' call_data: $ref: '#/components/schemas/EncodedContractByteArray' required: - caller_id - contract_id - abi_version - fee - amount - gas - gas_price - call_data ContractCreateTx: type: object properties: owner_id: $ref: '#/components/schemas/EncodedPubkey' nonce: $ref: '#/components/schemas/UInt64' code: $ref: '#/components/schemas/EncodedContractByteArray' vm_version: $ref: '#/components/schemas/UInt16' abi_version: $ref: '#/components/schemas/UInt16' deposit: $ref: '#/components/schemas/UInt' amount: $ref: '#/components/schemas/UInt' gas: $ref: '#/components/schemas/UInt64' gas_price: $ref: '#/components/schemas/UInt' fee: $ref: '#/components/schemas/UInt' ttl: $ref: '#/components/schemas/UInt64' call_data: $ref: '#/components/schemas/EncodedContractByteArray' required: - owner_id - code - vm_version - abi_version - deposit - amount - gas - gas_price - fee - call_data ContractObject: type: object properties: id: $ref: '#/components/schemas/EncodedPubkey' owner_id: $ref: '#/components/schemas/EncodedPubkey' vm_version: $ref: '#/components/schemas/UInt16' abi_version: $ref: '#/components/schemas/UInt16' active: type: boolean referrer_ids: type: array items: $ref: '#/components/schemas/EncodedPubkey' deposit: $ref: '#/components/schemas/UInt64' required: - id - owner_id - vm_version - abi_version - active - referrer_ids - deposit CountResponse: type: object properties: count: $ref: '#/components/schemas/UInt32' required: - count CreateContractUnsignedTx: allOf: - $ref: '#/components/schemas/UnsignedTx' - type: object properties: contract_id: $ref: '#/components/schemas/EncodedPubkey' required: - contract_id Currency: type: object properties: name: type: string symbol: type: string subunit: type: string subunits_per_unit: $ref: '#/components/schemas/UInt64' fiat_converstion_url: type: string description: Use `fiat_conversion_url` instead deprecated: true fiat_conversion_url: type: string logo: $ref: '#/components/schemas/Image' primary_colour: type: string secondary_colour: type: string network_name: type: string required: - name - symbol - subunit - subunits_per_unit - primary_colour - secondary_colour - network_name Delegates: oneOf: - type: array items: $ref: '#/components/schemas/EncodedPubkey' - type: object properties: initiator: type: array items: $ref: '#/components/schemas/EncodedPubkey' responder: type: array items: $ref: '#/components/schemas/EncodedPubkey' DryRunAccount: type: object properties: pub_key: $ref: '#/components/schemas/EncodedPubkey' amount: $ref: '#/components/schemas/UInt' required: - pub_key - amount DryRunCallContext: type: object properties: tx: $ref: '#/components/schemas/EncodedTxByteArray' tx_hash: $ref: '#/components/schemas/EncodedTxHash' stateful: description: This call will have effects on the next call in this dry-run (or not) type: boolean DryRunCallReq: type: object properties: calldata: $ref: '#/components/schemas/EncodedContractByteArray' contract: $ref: '#/components/schemas/EncodedPubkey' amount: $ref: '#/components/schemas/UInt' gas: $ref: '#/components/schemas/UInt' caller: $ref: '#/components/schemas/EncodedPubkey' nonce: $ref: '#/components/schemas/UInt64' abi_version: $ref: '#/components/schemas/UInt16' context: $ref: '#/components/schemas/DryRunCallContext' required: - calldata - contract DryRunInput: type: object properties: top: $ref: '#/components/schemas/EncodedHash' accounts: type: array description: Accounts items: $ref: '#/components/schemas/DryRunAccount' txs: type: array description: Txs items: $ref: '#/components/schemas/DryRunInputItem' tx_events: type: boolean default: false description: Collect and return on-chain tx events that would result from the call required: - txs DryRunInputItem: type: object properties: tx: $ref: '#/components/schemas/EncodedTxByteArray' tx_hash: $ref: '#/components/schemas/EncodedTxHash' call_req: $ref: '#/components/schemas/DryRunCallReq' DryRunResult: type: object properties: type: type: string result: type: string reason: type: string call_obj: $ref: '#/components/schemas/ContractCallObject' required: - type - result DryRunResults: type: object properties: results: type: array description: results items: $ref: '#/components/schemas/DryRunResult' tx_events: type: array description: on-chain tx events items: $ref: '#/components/schemas/TxEvent' required: - results EncodedByteArray: description: Base64Check encoded byte array type: string example: ba_AAAAAfy4hFE= pattern: ^ba_[0-9A-Za-z+/=]+$ EncodedContractByteArray: description: Base64Check encoded contract byte array type: string example: cb_AAAAAfy4hFE= pattern: ^cb_[0-9A-Za-z+/=]+$ EncodedProofOfInclusion: description: Base64Check encoded proof of inclusion type: string pattern: ^pi_[0-9A-Za-z+/=]+$ EncodedStateTrees: description: Base64Check encoded state trees type: string pattern: ^ss_[0-9A-Za-z+/=]+$ EncodedHash: description: Base58Check encoded tagged hash type: string EncodedPubkey: description: Base58Check encoded tagged pubkey type: string EncodedTx: type: object properties: tx: $ref: '#/components/schemas/EncodedTxByteArray' required: - tx EncodedTxByteArray: description: Base64Check encoded transaction type: string example: tx_+E8hAaEB4TK48d23oE5jt/qWR5pUu8UlpTGn8bwM5JISGQMGf7ABoQOvDVCf43V7alNbsUvTarXaCf7rjtWX36YLS4+JTa4jn4YPHaUyOAAAxRZ6Sg== pattern: ^tx_[0-9A-Za-z+/=]+$ EncodedTxHash: description: Base58Check encoded transaction hash type: string example: th_2Zfo2ALfRkKQxEaUj3HhcUGyMrTqYpDMgr2u15fPanYD1d55kz pattern: ^th_\w+$ EncodedSignature: description: Base58Check encoded signature type: string example: sg_8hhU15cVMbukFj4FbdrFwwYnbzXYPnstu9PDnWZGbfQNpeHcB6tK1F3wvG1MPYySARgDRJYUh3YPJD3HctFwg6Y4rUGSR pattern: ^sg_\w+$ EncodedNameId: description: Base58Check encoded AENS name hash type: string example: nm_psy8tRXPzGxh6975H7K6XQcMFVsdrxJMt7YkzMY8oUTevutzw pattern: ^nm_\w+$ EncodedCommitmentId: description: Base58Check encoded AENS commitment type: string example: cm_psy8tRXPzGxh6975H7K6XQcMFVsdrxJMt7YkzMY8oUTevutzw pattern: ^cm_\w+$ EncodedOracleQueryId: description: Base58Check encoded oracle query id type: string example: oq_psy8tRXPzGxh6975H7K6XQcMFVsdrxJMt7YkzMY8oUTevutzw pattern: ^oq_\w+$ Error: type: object properties: reason: type: string error_code: type: string required: - reason Event: type: object properties: address: $ref: '#/components/schemas/EncodedPubkey' topics: description: Event topics type: array items: $ref: '#/components/schemas/UInt' data: $ref: '#/components/schemas/EncodedContractByteArray' required: - address - topics - data GAAttachTx: type: object properties: owner_id: $ref: '#/components/schemas/EncodedPubkey' nonce: $ref: '#/components/schemas/UInt64' code: $ref: '#/components/schemas/EncodedContractByteArray' vm_version: $ref: '#/components/schemas/UInt16' abi_version: $ref: '#/components/schemas/UInt16' gas: $ref: '#/components/schemas/UInt64' gas_price: $ref: '#/components/schemas/UInt' fee: $ref: '#/components/schemas/UInt' ttl: $ref: '#/components/schemas/UInt64' call_data: $ref: '#/components/schemas/EncodedContractByteArray' auth_fun: description: Contract authorization function hash (hex encoded) type: string pattern: ^(0x|0X)?[a-fA-F0-9]+$ required: - owner_id - code - vm_version - abi_version - gas - gas_price - fee - call_data - auth_fun GAMetaTx: type: object properties: ga_id: $ref: '#/components/schemas/EncodedPubkey' abi_version: $ref: '#/components/schemas/UInt16' gas: $ref: '#/components/schemas/UInt64' gas_price: $ref: '#/components/schemas/UInt' fee: $ref: '#/components/schemas/UInt' ttl: $ref: '#/components/schemas/UInt64' auth_data: $ref: '#/components/schemas/EncodedContractByteArray' tx: $ref: '#/components/schemas/SignedTx' required: - ga_id - abi_version - gas - gas_price - fee - auth_data - tx GAObject: type: object properties: caller_id: $ref: '#/components/schemas/EncodedPubkey' height: $ref: '#/components/schemas/UInt64' gas_price: $ref: '#/components/schemas/UInt' gas_used: $ref: '#/components/schemas/UInt64' return_value: $ref: '#/components/schemas/EncodedContractByteArray' return_type: description: The status of the call 'ok | error'. type: string enum: - ok - error inner_object: $ref: '#/components/schemas/TxInfoObject' required: - caller_id - height - gas_price - gas_used - return_value - return_type GasPrices: type: array items: type: object properties: min_gas_price: description: Minimum gas price in the block range $ref: '#/components/schemas/UInt' utilization: description: Percent of available gas used oneOf: - type: integer minimum: 0 maximum: 100 - type: string minutes: description: Number of minutes from the top $ref: '#/components/schemas/UInt64' required: - min_gas_price - minutes - utilization Generation: type: object properties: key_block: $ref: '#/components/schemas/KeyBlock' micro_blocks: type: array items: $ref: '#/components/schemas/EncodedPubkey' required: - key_block - micro_blocks HashResponse: type: object properties: hash: type: string required: - hash HCContractPubkeys: type: object properties: staking: $ref: '#/components/schemas/EncodedPubkey' election: $ref: '#/components/schemas/EncodedPubkey' rewards: $ref: '#/components/schemas/EncodedPubkey' required: - staking Header: anyOf: - $ref: '#/components/schemas/KeyBlock' - $ref: '#/components/schemas/MicroBlockHeader' HeightResponse: type: object properties: height: $ref: '#/components/schemas/UInt64' required: - height Image: type: object properties: type: type: string data: type: string KeyBlock: type: object properties: hash: $ref: '#/components/schemas/EncodedHash' height: $ref: '#/components/schemas/UInt64' prev_hash: $ref: '#/components/schemas/EncodedHash' prev_key_hash: $ref: '#/components/schemas/EncodedHash' state_hash: $ref: '#/components/schemas/EncodedHash' miner: $ref: '#/components/schemas/EncodedPubkey' beneficiary: $ref: '#/components/schemas/EncodedPubkey' flags: $ref: '#/components/schemas/EncodedByteArray' target: $ref: '#/components/schemas/UInt32' pow: $ref: '#/components/schemas/Pow' nonce: $ref: '#/components/schemas/UInt64' time: $ref: '#/components/schemas/UInt64' version: $ref: '#/components/schemas/UInt32' info: $ref: '#/components/schemas/EncodedContractByteArray' required: - hash - height - prev_hash - prev_key_hash - state_hash - miner - beneficiary - target - time - version - info MicroBlockHeader: type: object properties: hash: $ref: '#/components/schemas/EncodedHash' height: $ref: '#/components/schemas/UInt64' pof_hash: description: \"no_fraud\" or Base58Check encoded Proof of Fraud hash type: string pattern: ^(no_fraud|bf_\w+)$ example: no_fraud prev_hash: $ref: '#/components/schemas/EncodedHash' prev_key_hash: $ref: '#/components/schemas/EncodedHash' state_hash: $ref: '#/components/schemas/EncodedHash' txs_hash: $ref: '#/components/schemas/EncodedHash' signature: $ref: '#/components/schemas/EncodedSignature' time: $ref: '#/components/schemas/UInt64' version: $ref: '#/components/schemas/UInt32' flags: $ref: '#/components/schemas/EncodedByteArray' required: - hash - height - pof_hash - prev_hash - prev_key_hash - state_hash - txs_hash - signature - time - version NameClaimTx: type: object properties: name: type: string name_salt: $ref: '#/components/schemas/UInt' name_fee: $ref: '#/components/schemas/UInt' fee: $ref: '#/components/schemas/UInt' ttl: $ref: '#/components/schemas/UInt64' account_id: $ref: '#/components/schemas/EncodedPubkey' nonce: $ref: '#/components/schemas/UInt64' required: - name - name_salt - fee - account_id NameEntry: type: object properties: id: $ref: '#/components/schemas/EncodedNameId' owner: $ref: '#/components/schemas/EncodedPubkey' ttl: $ref: '#/components/schemas/UInt64' pointers: type: array items: allOf: - $ref: '#/components/schemas/NamePointer' - required: - encoded_key required: - id - ttl - pointers NameHash: type: object properties: name_id: $ref: '#/components/schemas/EncodedNameId' required: - name_id NamePointer: type: object properties: key: type: string encoded_key: $ref: '#/components/schemas/EncodedByteArray' id: $ref: '#/components/schemas/EncodedPubkey' required: - key - id NamePreclaimTx: type: object properties: commitment_id: $ref: '#/components/schemas/EncodedCommitmentId' fee: $ref: '#/components/schemas/UInt' ttl: $ref: '#/components/schemas/UInt64' account_id: $ref: '#/components/schemas/EncodedPubkey' nonce: $ref: '#/components/schemas/UInt64' required: - commitment_id - fee - account_id NameRevokeTx: type: object properties: name_id: $ref: '#/components/schemas/EncodedNameId' fee: $ref: '#/components/schemas/UInt' ttl: $ref: '#/components/schemas/UInt64' account_id: $ref: '#/components/schemas/EncodedPubkey' nonce: $ref: '#/components/schemas/UInt64' required: - name_id - fee - account_id NameTransferTx: type: object properties: name_id: $ref: '#/components/schemas/EncodedNameId' recipient_id: $ref: '#/components/schemas/EncodedPubkey' fee: $ref: '#/components/schemas/UInt' ttl: $ref: '#/components/schemas/UInt64' account_id: $ref: '#/components/schemas/EncodedPubkey' nonce: $ref: '#/components/schemas/UInt64' required: - name_id - recipient_id - fee - account_id NameUpdateTx: type: object properties: name_id: $ref: '#/components/schemas/EncodedNameId' name_ttl: $ref: '#/components/schemas/UInt64' pointers: type: array items: $ref: '#/components/schemas/NamePointer' client_ttl: $ref: '#/components/schemas/UInt64' fee: $ref: '#/components/schemas/UInt' ttl: $ref: '#/components/schemas/UInt64' account_id: $ref: '#/components/schemas/EncodedPubkey' nonce: $ref: '#/components/schemas/UInt64' required: - name_id - name_ttl - client_ttl - pointers - fee - account_id NetworkStatus: type: object additionalProperties: $ref: '#/components/schemas/PeerDetails' NextNonceResponse: type: object properties: next_nonce: $ref: '#/components/schemas/UInt64' required: - next_nonce OffChainCallContract: allOf: - $ref: '#/components/schemas/OffChainUpdate' - type: object properties: caller: $ref: '#/components/schemas/EncodedPubkey' contract: $ref: '#/components/schemas/EncodedPubkey' abi_version: $ref: '#/components/schemas/UInt16' amount: $ref: '#/components/schemas/UInt' gas: $ref: '#/components/schemas/UInt64' gas_price: $ref: '#/components/schemas/UInt' call_data: $ref: '#/components/schemas/EncodedContractByteArray' required: - caller - contract - abi_version - amount - call_data - gas - gas_price OffChainDeposit: allOf: - $ref: '#/components/schemas/OffChainUpdate' - type: object properties: from: $ref: '#/components/schemas/EncodedPubkey' amount: $ref: '#/components/schemas/UInt' required: - from - amount OffChainNewContract: allOf: - $ref: '#/components/schemas/OffChainUpdate' - type: object properties: owner: $ref: '#/components/schemas/EncodedPubkey' vm_version: $ref: '#/components/schemas/UInt16' abi_version: $ref: '#/components/schemas/UInt16' code: $ref: '#/components/schemas/ByteCode' deposit: $ref: '#/components/schemas/UInt' call_data: $ref: '#/components/schemas/EncodedContractByteArray' required: - owner - vm_version - abi_version - code - deposit - call_data OffChainTransfer: allOf: - $ref: '#/components/schemas/OffChainUpdate' - type: object properties: from: $ref: '#/components/schemas/EncodedPubkey' to: $ref: '#/components/schemas/EncodedPubkey' amount: $ref: '#/components/schemas/UInt' required: - from - to - amount OffChainUpdate: type: object discriminator: propertyName: op properties: op: type: string required: - op OffChainWithdrawal: allOf: - $ref: '#/components/schemas/OffChainUpdate' - type: object properties: to: $ref: '#/components/schemas/EncodedPubkey' amount: $ref: '#/components/schemas/UInt' required: - to - amount OracleExtendTx: type: object properties: fee: $ref: '#/components/schemas/UInt' oracle_ttl: $ref: '#/components/schemas/RelativeTTL' oracle_id: $ref: '#/components/schemas/EncodedPubkey' nonce: $ref: '#/components/schemas/UInt64' ttl: $ref: '#/components/schemas/UInt64' required: - fee - oracle_ttl - oracle_id OracleQueries: type: object properties: oracle_queries: type: array items: $ref: '#/components/schemas/OracleQuery' required: - oracle_queries OracleQuery: type: object properties: id: $ref: '#/components/schemas/EncodedOracleQueryId' sender_id: $ref: '#/components/schemas/EncodedPubkey' sender_nonce: $ref: '#/components/schemas/UInt64' oracle_id: $ref: '#/components/schemas/EncodedPubkey' query: type: string response: type: string ttl: $ref: '#/components/schemas/UInt64' response_ttl: $ref: '#/components/schemas/TTL' fee: $ref: '#/components/schemas/UInt' required: - id - sender_id - sender_nonce - oracle_id - query - response - ttl - response_ttl - fee OracleQueryTx: type: object properties: oracle_id: $ref: '#/components/schemas/EncodedPubkey' query: type: string query_fee: $ref: '#/components/schemas/UInt' query_ttl: $ref: '#/components/schemas/TTL' response_ttl: $ref: '#/components/schemas/RelativeTTL' fee: $ref: '#/components/schemas/UInt' ttl: $ref: '#/components/schemas/UInt64' sender_id: $ref: '#/components/schemas/EncodedPubkey' nonce: $ref: '#/components/schemas/UInt64' required: - oracle_id - query - query_fee - query_ttl - response_ttl - fee - sender_id OracleRegisterTx: type: object properties: query_format: type: string response_format: type: string query_fee: $ref: '#/components/schemas/UInt' oracle_ttl: $ref: '#/components/schemas/TTL' account_id: $ref: '#/components/schemas/EncodedPubkey' nonce: $ref: '#/components/schemas/UInt64' fee: $ref: '#/components/schemas/UInt' ttl: $ref: '#/components/schemas/UInt64' abi_version: $ref: '#/components/schemas/UInt16' required: - query_format - response_format - query_fee - fee - oracle_ttl - account_id OracleRespondTx: type: object properties: query_id: $ref: '#/components/schemas/EncodedOracleQueryId' response: type: string response_ttl: $ref: '#/components/schemas/RelativeTTL' fee: $ref: '#/components/schemas/UInt' ttl: $ref: '#/components/schemas/UInt64' oracle_id: $ref: '#/components/schemas/EncodedPubkey' nonce: $ref: '#/components/schemas/UInt64' required: - query_id - response - response_ttl - fee - oracle_id PayingForTx: type: object properties: payer_id: $ref: '#/components/schemas/EncodedPubkey' fee: $ref: '#/components/schemas/UInt' nonce: $ref: '#/components/schemas/UInt64' tx: $ref: '#/components/schemas/SignedTx' required: - payer_id - fee - tx Peer: type: string description: Aeternity node PeerConnections: type: object properties: inbound: $ref: '#/components/schemas/UInt32' outbound: $ref: '#/components/schemas/UInt32' required: - inbound - outbound PeerCount: type: object properties: connected: type: object properties: inbound: $ref: '#/components/schemas/UInt64' outbound: $ref: '#/components/schemas/UInt64' available: type: object properties: verified: $ref: '#/components/schemas/UInt64' unverified: $ref: '#/components/schemas/UInt64' blocked: $ref: '#/components/schemas/UInt64' required: - connected - available - blocked PeerDetails: type: object properties: host: description: Hostname of peer type: string port: $ref: '#/components/schemas/UInt32' first_seen: $ref: '#/components/schemas/UInt32' last_seen: $ref: '#/components/schemas/UInt32' genesis_hash: $ref: '#/components/schemas/EncodedHash' top_hash: $ref: '#/components/schemas/EncodedHash' top_difficulty: $ref: '#/components/schemas/UInt64' network_id: type: string node_version: type: string node_revision: type: string node_vendor: type: string node_os: type: string required: - host - port - first_seen - last_seen - genesis_hash - top_hash - top_difficulty PeerPubKey: type: object properties: pubkey: $ref: '#/components/schemas/EncodedPubkey' required: - pubkey Peers: type: object properties: peers: type: array description: All discovered peers items: $ref: '#/components/schemas/Peer' blocked: type: array description: All blocked peers items: $ref: '#/components/schemas/Peer' required: - peers - blocked PinningTx: type: object properties: epoch: type: integer description: The epoch for which the pin is valid height: type: integer description: the height of the pinned block (usually last block of ) block_hash: $ref: '#/components/schemas/EncodedHash' parent_payload: type: string description: this is the payload to post to the parent chain (standardized). Combines Epoch, Height and Hash. last_leader: description: The last leader in the epoch that could use this pin to collect the reward $ref: '#/components/schemas/EncodedPubkey' parent_type: type: string description: chain type of parent (aeternity, btc, doge eventually supported) parent_network_id: type: string description: the parent node id required: - epoch - height - block_hash - parent_payload - last_leader - parent_type - parent_network_id PoI: type: object properties: poi: $ref: '#/components/schemas/EncodedProofOfInclusion' required: - poi PostTxResponse: type: object properties: tx_hash: $ref: '#/components/schemas/EncodedTxHash' required: - tx_hash Pow: type: array items: $ref: '#/components/schemas/UInt32' minItems: 42 maxItems: 42 Protocol: type: object properties: version: $ref: '#/components/schemas/UInt32' effective_at_height: $ref: '#/components/schemas/UInt64' required: - version - effective_at_height ProtocolParameters: type: object properties: network_id: description: Network id prepended to the serialized transaction before signing type: string current_protocol_version: description: Consensus protocol version effective at the current top height oneOf: - type: integer minimum: 0 maximum: 4294967295 - type: string locked_coins_holder_account: description: Account holding locked/burnt coins (e.g. AENS name fees) allOf: - $ref: '#/components/schemas/EncodedPubkey' expected_block_mine_rate: description: Expected key block interval in milliseconds, the proof-of-work difficulty retarget target. A node reports whichever of this and child_block_time governs its consensus, never both. oneOf: - type: integer minimum: 0 maximum: 18446744073709552000 - type: string child_block_time: description: Key block interval in milliseconds of a Hyperchains child chain oneOf: - type: integer minimum: 0 maximum: 18446744073709552000 - type: string micro_block_cycle: description: Minimum micro block interval in milliseconds, enforced in block validation oneOf: - type: integer minimum: 0 maximum: 18446744073709552000 - type: string protocols: description: Consensus parameters of the protocol effective at the current top block, followed by any protocol whose fork height has not been reached yet. type: array minItems: 1 items: $ref: '#/components/schemas/ProtocolConsensusParameters' required: - network_id - current_protocol_version - locked_coins_holder_account - micro_block_cycle - protocols NodeSettings: description: 'This node''s local policy settings. Not consensus rules: they may differ between nodes and an operator can change them at runtime.' type: object properties: min_miner_gas_price: description: Minimum gas price this node's miner accepts (aettos per gas), as a decimal string. Transactions with a lower gas price are valid but not mined by this node. type: string max_auth_fun_gas: description: Maximum gas this node accepts for a generalized account authentication function (GAMetaTx) oneOf: - type: integer minimum: 0 maximum: 18446744073709552000 - type: string mempool_tx_ttl: description: Number of key blocks a transaction stays in this node's mempool oneOf: - type: integer minimum: 0 maximum: 18446744073709552000 - type: string mempool_nonce_offset: description: Maximum nonce distance from the current account nonce accepted into this node's mempool oneOf: - type: integer minimum: 0 maximum: 18446744073709552000 - type: string dry_run_gas_limit: description: Maximum total gas accepted by this node's dry-run endpoint oneOf: - type: integer minimum: 0 maximum: 18446744073709552000 - type: string block_gas_limit: description: Maximum total gas this node accepts in a single micro block (upper bound for a single transaction's gas) oneOf: - type: integer minimum: 0 maximum: 18446744073709552000 - type: string required: - min_miner_gas_price - max_auth_fun_gas - mempool_tx_ttl - mempool_nonce_offset - dry_run_gas_limit - block_gas_limit ProtocolConsensusParameters: description: Consensus parameters of one protocol version allOf: - $ref: '#/components/schemas/Protocol' - type: object properties: minimum_gas_price: description: Consensus minimum gas price (aettos per gas) as a decimal string; the minimum transaction fee is the transaction's fee gas multiplied by this type: string gas_per_byte: description: Gas per serialized transaction byte counted into the minimum fee oneOf: - type: integer minimum: 0 maximum: 18446744073709552000 - type: string store_byte_gas: description: Gas per byte written to a contract store oneOf: - type: integer minimum: 0 maximum: 18446744073709552000 - type: string tx_base_gas: description: 'Base fee gas by transaction type (transactions not executing contract code). Listed for every protocol regardless of when the type was introduced: an entry gives what the fee gas would be, not whether that transaction was accepted at that protocol.' type: object additionalProperties: oneOf: - type: integer minimum: 0 maximum: 18446744073709552000 - type: string contract_tx_base_gas: description: Base fee gas of contract-executing transaction types, per ABI version. Listed on the same basis as tx_base_gas; allowed_contract_versions is what decides acceptance. type: array items: $ref: '#/components/schemas/ContractTxBaseGas' state_gas_per_block: description: State rent gas fraction per key block by transaction type; state gas = ceil(ttl_key_blocks * part / whole) type: object additionalProperties: $ref: '#/components/schemas/StateGasPerBlock' name_claim_fees: description: Minimum AENS name fee by name length, as decimal strings; element N (1-based) applies to names of length N and the last element also to longer names. All zeroes when name fees are not enforced at this protocol. Length is the label after IDNA/UTS46 conversion to ASCII, excluding the registrar - not the character count. type: array minItems: 31 maxItems: 31 items: type: string name_auction_timeouts: description: AENS auction bid timeout and extension in key blocks by name length; a zero timeout means no auction type: array items: $ref: '#/components/schemas/NameAuctionTimeout' name_claim_bid_increment: description: Minimum percentage a new AENS auction bid must exceed the previous bid by oneOf: - type: integer minimum: 0 maximum: 18446744073709552000 - type: string name_max_length_starting_auction: description: The longest name that triggers an AENS auction, measured as for the name_claim_fees index oneOf: - type: integer minimum: 0 maximum: 18446744073709552000 - type: string name_claim_max_expiration: description: Maximum name TTL in key blocks for NameUpdateTx oneOf: - type: integer minimum: 0 maximum: 18446744073709552000 - type: string name_registrars: description: Valid AENS name registrars type: array items: type: string name_pointers_max_count: description: Maximum number of pointers in NameUpdateTx; the field is absent when the protocol imposes no limit oneOf: - type: integer minimum: 0 maximum: 18446744073709552000 - type: string name_pointer_max_key_size: description: Maximum byte size of a pointer key in NameUpdateTx; the field is absent when the protocol imposes no limit oneOf: - type: integer minimum: 0 maximum: 18446744073709552000 - type: string name_preclaim_expiration: description: Number of key blocks after which an AENS preclaim expires oneOf: - type: integer minimum: 0 maximum: 18446744073709552000 - type: string name_claim_preclaim_delta: description: Minimum number of key blocks between preclaim and claim oneOf: - type: integer minimum: 0 maximum: 18446744073709552000 - type: string name_protection_period: description: Number of key blocks an expired name stays protected before it can be claimed again oneOf: - type: integer minimum: 0 maximum: 18446744073709552000 - type: string name_claim_locked_fee: description: Locked fee in aettos, as a decimal string, for a name claim when the name fee is not enforced type: string allowed_contract_versions: description: VM/ABI version combinations valid for ContractCreateTx at this protocol type: array items: $ref: '#/components/schemas/ContractVersion' allowed_oracle_abi_versions: description: ABI versions valid for OracleRegisterTx at this protocol type: array items: oneOf: - type: integer minimum: 0 maximum: 65535 - type: string required: - minimum_gas_price - gas_per_byte - store_byte_gas - tx_base_gas - contract_tx_base_gas - state_gas_per_block - name_claim_fees - name_auction_timeouts - name_claim_bid_increment - name_max_length_starting_auction - name_claim_max_expiration - name_registrars - name_preclaim_expiration - name_claim_preclaim_delta - name_protection_period - name_claim_locked_fee - allowed_contract_versions - allowed_oracle_abi_versions ContractTxBaseGas: type: object properties: tx_type: description: Transaction type type: string abi_version: description: ABI version this base gas applies to oneOf: - type: integer minimum: 0 maximum: 65535 - type: string tx_base_gas: description: Base fee gas of this transaction type with this ABI version oneOf: - type: integer minimum: 0 maximum: 18446744073709552000 - type: string required: - tx_type - abi_version - tx_base_gas StateGasPerBlock: type: object properties: part: description: Numerator of the per-key-block state gas fraction oneOf: - type: integer minimum: 0 maximum: 18446744073709552000 - type: string whole: description: Denominator of the per-key-block state gas fraction oneOf: - type: integer minimum: 0 maximum: 18446744073709552000 - type: string required: - part - whole NameAuctionTimeout: type: object properties: length: description: Name length, measured as for the name_claim_fees index oneOf: - type: integer minimum: 0 maximum: 18446744073709552000 - type: string bid_timeout: description: Initial auction timeout in key blocks as enforced by this node; zero means no auction. May be overridden node-locally, in which case it can disagree with bid_extension. oneOf: - type: integer minimum: 0 maximum: 18446744073709552000 - type: string bid_extension: description: Auction extension in key blocks after a new bid oneOf: - type: integer minimum: 0 maximum: 18446744073709552000 - type: string required: - length - bid_timeout - bid_extension ContractVersion: type: object properties: vm_version: description: VM version oneOf: - type: integer minimum: 0 maximum: 65535 - type: string abi_version: description: ABI version oneOf: - type: integer minimum: 0 maximum: 65535 - type: string required: - vm_version - abi_version PubKey: type: object properties: pub_key: $ref: '#/components/schemas/EncodedPubkey' required: - pub_key RegisteredOracle: type: object properties: id: $ref: '#/components/schemas/EncodedPubkey' query_format: type: string response_format: type: string query_fee: $ref: '#/components/schemas/UInt' ttl: $ref: '#/components/schemas/UInt64' abi_version: $ref: '#/components/schemas/UInt16' required: - id - query_format - response_format - query_fee - ttl - abi_version RelativeTTL: type: object properties: type: type: string enum: - delta value: $ref: '#/components/schemas/UInt64' required: - type - value SignedTx: type: object properties: tx: $ref: '#/components/schemas/Tx' block_height: $ref: '#/components/schemas/TxBlockHeight' block_hash: $ref: '#/components/schemas/EncodedHash' hash: $ref: '#/components/schemas/EncodedTxHash' encoded_tx: $ref: '#/components/schemas/EncodedTxByteArray' signatures: description: At least one signature is required unless for Generalized Account Meta transactions type: array minItems: 0 items: $ref: '#/components/schemas/EncodedSignature' required: - tx SignedTxs: type: object properties: transactions: type: array items: $ref: '#/components/schemas/SignedTx' SpendTxInput: type: object properties: recipient_id: $ref: '#/components/schemas/EncodedPubkey' amount: $ref: '#/components/schemas/UInt' fee: $ref: '#/components/schemas/UInt' ttl: $ref: '#/components/schemas/UInt64' sender_id: $ref: '#/components/schemas/EncodedPubkey' nonce: $ref: '#/components/schemas/UInt64' payload: description: Base64Check encoded byte array, or a raw string required: - recipient_id - amount - fee - sender_id - payload SpendTx: allOf: - $ref: '#/components/schemas/SpendTxInput' - required: - nonce Status: type: object properties: genesis_key_block_hash: $ref: '#/components/schemas/EncodedHash' solutions: $ref: '#/components/schemas/UInt64' difficulty: $ref: '#/components/schemas/UInt64' hashrate: $ref: '#/components/schemas/UInt64' syncing: type: boolean sync_progress: type: number format: float minimum: 0 maximum: 100 uptime: type: string listening: type: boolean protocols: type: array items: $ref: '#/components/schemas/Protocol' node_version: type: string node_revision: type: string peer_count: $ref: '#/components/schemas/UInt32' peer_connections: $ref: '#/components/schemas/PeerConnections' pending_transactions_count: $ref: '#/components/schemas/UInt32' network_id: type: string peer_pubkey: $ref: '#/components/schemas/EncodedPubkey' top_key_block_hash: $ref: '#/components/schemas/EncodedHash' top_block_height: $ref: '#/components/schemas/UInt64' required: - genesis_key_block_hash - solutions - difficulty - hashrate - syncing - uptime - listening - protocols - node_version - node_revision - peer_count - peer_connections - pending_transactions_count - network_id - peer_pubkey - top_key_block_hash - top_block_height SyncStatus: type: object properties: progress: type: number target: $ref: '#/components/schemas/UInt64' speed: type: number estimate: $ref: '#/components/schemas/UInt64' required: - progress - target - speed - estimate TTL: type: object properties: type: type: string enum: - delta - block value: $ref: '#/components/schemas/UInt64' required: - type - value TokenSupply: type: object properties: accounts: $ref: '#/components/schemas/UInt' contracts: $ref: '#/components/schemas/UInt' contract_oracles: $ref: '#/components/schemas/UInt' locked: $ref: '#/components/schemas/UInt' oracles: $ref: '#/components/schemas/UInt' oracle_queries: $ref: '#/components/schemas/UInt' pending_rewards: $ref: '#/components/schemas/UInt' total: $ref: '#/components/schemas/UInt' Tx: allOf: - type: object discriminator: propertyName: type properties: version: $ref: '#/components/schemas/UInt32' type: type: string enum: - SpendTx - ChannelCreateTx - ChannelDepositTx - ChannelWithdrawTx - ChannelForceProgressTx - ChannelCloseMutualTx - ChannelCloseSoloTx - ChannelSlashTx - ChannelSettleTx - ChannelSnapshotSoloTx - ChannelSetDelegatesTx - OracleRegisterTx - OracleExtendTx - OracleQueryTx - OracleRespondTx - NamePreclaimTx - NameClaimTx - NameUpdateTx - NameTransferTx - NameRevokeTx - ContractCreateTx - ContractCallTx - GAAttachTx - GAMetaTx - PayingForTx required: - version - type - anyOf: - $ref: '#/components/schemas/SpendTx' - $ref: '#/components/schemas/ChannelCreateTx' - $ref: '#/components/schemas/ChannelDepositTx' - $ref: '#/components/schemas/ChannelWithdrawTx' - $ref: '#/components/schemas/ChannelForceProgressTx' - $ref: '#/components/schemas/ChannelCloseMutualTx' - $ref: '#/components/schemas/ChannelCloseSoloTx' - $ref: '#/components/schemas/ChannelSlashTx' - $ref: '#/components/schemas/ChannelSettleTx' - $ref: '#/components/schemas/ChannelSnapshotSoloTx' - $ref: '#/components/schemas/ChannelSetDelegatesTx' - $ref: '#/components/schemas/OracleRegisterTx' - $ref: '#/components/schemas/OracleExtendTx' - $ref: '#/components/schemas/OracleQueryTx' - $ref: '#/components/schemas/OracleRespondTx' - $ref: '#/components/schemas/NamePreclaimTx' - $ref: '#/components/schemas/NameClaimTx' - $ref: '#/components/schemas/NameUpdateTx' - $ref: '#/components/schemas/NameTransferTx' - $ref: '#/components/schemas/NameRevokeTx' - $ref: '#/components/schemas/ContractCreateTx' - $ref: '#/components/schemas/ContractCallTx' - $ref: '#/components/schemas/GAAttachTx' - $ref: '#/components/schemas/GAMetaTx' - $ref: '#/components/schemas/PayingForTx' TxBlockHeight: oneOf: - type: integer minimum: -1 maximum: 18446744073709552000 - type: string TxEvent: type: object TxInfoObject: type: object properties: call_info: $ref: '#/components/schemas/ContractCallObject' ga_info: $ref: '#/components/schemas/GAObject' tx_info: type: string UInt: oneOf: - type: integer minimum: 0 - type: string UInt16: oneOf: - type: integer minimum: 0 maximum: 65535 - type: string UInt32: oneOf: - type: integer minimum: 0 maximum: 4294967295 - type: string UInt64: oneOf: - type: integer minimum: 0 maximum: 18446744073709552000 - type: string UnsignedTx: $ref: '#/components/schemas/EncodedTx' parameters: accountPubkey: in: path name: pubkey description: The public key of the account required: true schema: type: string example: ak_dArxCkAsk1mZB1L9CX3cdz1GDN4hN84L3Q8dMLHN4v8cU85TF blockHash: in: path name: hash description: The hash of the block - either a keyblock or a microblock required: true schema: type: string example: kh_2ikjGFZGFpE99mDtsgkGFsTCqpPpXZRNRa5Pic989FJLcJStgx contractPubkey: in: path name: pubkey description: Contract pubkey to get proof for required: true schema: type: string example: ct_TV5KbBYdjw1ufKWvAtNNjUnagvRmWMMugFzLKzmLASXB5iH1E height: in: path name: height description: The height required: true schema: type: integer minimum: 0 maximum: 18446744073709552000 example: 42 intAsString: in: query name: int-as-string description: If this flag is set to true, the response will have all integers set as strings required: false schema: type: boolean default: false keyBlockHash: in: path name: hash description: The hash of the key block required: true schema: type: string example: kh_2ikjGFZGFpE99mDtsgkGFsTCqpPpXZRNRa5Pic989FJLcJStgx microBlockHash: in: path name: hash description: The hash of the micro block required: true schema: type: string example: mh_ZCWcnCG5YF2LhQMTmZ5K5rRmGxatgc5YWxDpGNy2YBAHP6urH oraclePubkey: in: path name: pubkey description: The public key of the oracle required: true schema: type: string example: ok_24jcHLTZQfsou7NvomRJ1hKEnjyNqbYSq2Az7DmyrAyUHPq8uR txHash: in: path name: hash description: The hash of the transaction required: true schema: type: string example: th_2w75xjDjHEmphsHDSXrThRnPx6hSUiS7hhSRcuytJABZZ2KkdG responses: ServiceUnavailable: description: 'The node is temporarily unable to handle the request: either its request queues are saturated (overload protection) or it has not yet reached a stable mode. Overload protection is applied to every endpoint, so this response can be returned by any operation. The Retry-After header tells the client how long to back off before retrying.' headers: Retry-After: description: Number of seconds to wait before retrying the request schema: type: integer minimum: 0 example: 3 content: application/json: schema: $ref: '#/components/schemas/Error'