openapi: 3.0.2 info: version: 1.0.0 title: Kadesh Chain description: Kadesh Chain license: name: Apache 2.0 url: 'http://www.apache.org/licenses/LICENSE-2.0.html' tags: - name: Account routes - name: Block routes - name: Chain routes - name: Finalization routes - name: Metadata routes - name: Mosaic routes - name: Multisig routes - name: Namespace routes - name: Network routes - name: Node routes - name: Restriction Mosaic routes - name: Restriction Account routes - name: Receipt routes - name: Transaction routes - name: Hash Lock routes - name: Secret Lock routes paths: /accounts: get: tags: - Account routes summary: Search accounts description: Gets an array of accounts. operationId: searchAccounts parameters: - $ref: '#/components/parameters/pageSizeQuery' - $ref: '#/components/parameters/pageNumberQuery' - $ref: '#/components/parameters/offsetQuery' - $ref: '#/components/parameters/orderQuery' - $ref: '#/components/parameters/orderByAccountQuery' - $ref: '#/components/parameters/mosaicIdQuery' responses: '200': description: success content: application/json: schema: $ref: '#/components/schemas/AccountPage' '409': $ref: '#/components/responses/InvalidArgument' post: tags: - Account routes summary: Get accounts information description: Returns the account information for an array of accounts. operationId: getAccountsInfo requestBody: $ref: '#/components/requestBodies/accountIds' responses: '200': description: success content: application/json: schema: type: array description: Array of accounts information. items: $ref: '#/components/schemas/AccountInfoDTO' '400': $ref: '#/components/responses/InvalidContent' '409': $ref: '#/components/responses/InvalidArgument' '/accounts/{accountId}': get: tags: - Account routes summary: Get account information description: Returns the account information. operationId: getAccountInfo parameters: - $ref: '#/components/parameters/accountIdPath' responses: '200': description: success content: application/json: schema: $ref: '#/components/schemas/AccountInfoDTO' '404': $ref: '#/components/responses/ResourceNotFound' '409': $ref: '#/components/responses/InvalidArgument' '/accounts/{accountId}/merkle': get: tags: - Account routes summary: Get account merkle information description: Returns the account merkle information. operationId: getAccountInfoMerkle parameters: - $ref: '#/components/parameters/accountIdPath' responses: '200': description: success content: application/json: schema: $ref: '#/components/schemas/MerkleStateInfoDTO' '404': $ref: '#/components/responses/ResourceNotFound' '409': $ref: '#/components/responses/InvalidArgument' /blocks: get: tags: - Block routes summary: Search blocks description: Gets an array of bocks. operationId: searchBlocks parameters: - $ref: '#/components/parameters/signerPublicKeyQuery' - $ref: '#/components/parameters/beneficiaryAddressQuery' - $ref: '#/components/parameters/pageSizeQuery' - $ref: '#/components/parameters/pageNumberQuery' - $ref: '#/components/parameters/offsetQuery' - $ref: '#/components/parameters/orderQuery' - $ref: '#/components/parameters/orderByBlockQuery' responses: '200': description: success content: application/json: schema: $ref: '#/components/schemas/BlockPage' '409': $ref: '#/components/responses/InvalidArgument' '/blocks/{height}': get: tags: - Block routes summary: Get block information description: Gets a block from the chain that has the given height. operationId: getBlockByHeight parameters: - $ref: '#/components/parameters/heightPath' responses: '200': description: success content: application/json: schema: $ref: '#/components/schemas/BlockInfoDTO' '404': $ref: '#/components/responses/ResourceNotFound' '409': $ref: '#/components/responses/InvalidArgument' '/blocks/{height}/transactions/{hash}/merkle': get: tags: - Block routes summary: Get the merkle path for a given a transaction and block description: | Returns the merkle path for a transaction included in a block. The merkle path is the minimum number of nodes needed to calculate the merkle root. Steps to calculate the merkle root: 1. proofHash = hash (leaf). 2. Concatenate proofHash with the first unprocessed item from the merklePath list as follows: * a) If item.position == left -> proofHash = sha_256(item.hash + proofHash). * b) If item.position == right -> proofHash = sha_256(proofHash+ item.hash). 3. Repeat 2. for every item in the merklePath list. 4. Compare if the calculated proofHash equals the one recorded in the block header (block.transactionsHash) to verify if the transaction was included in the block. operationId: getMerkleTransaction parameters: - $ref: '#/components/parameters/heightPath' - $ref: '#/components/parameters/transactionHashPath' responses: '200': description: success content: application/json: schema: $ref: '#/components/schemas/MerkleProofInfoDTO' '404': $ref: '#/components/responses/ResourceNotFound' '409': $ref: '#/components/responses/InvalidArgument' '/blocks/{height}/statements/{hash}/merkle': get: tags: - Block routes summary: Get the merkle path for a given a receipt statement hash and block description: | Returns the merkle path for a receipt statement or resolution linked to a block. The merkle path is the minimum number of nodes needed to calculate the merkle root. Steps to calculate the merkle root: 1. proofHash = hash (leaf). 2. Concatenate proofHash with the first unprocessed item from the merklePath list as follows: * a) If item.position == left -> proofHash = sha_256(item.hash + proofHash). * b) If item.position == right -> proofHash = sha_256(proofHash+ item.hash). 3. Repeat 2. for every item in the merklePath list. 4. Compare if the calculated proofHash equals the one recorded in the block header (block.receiptsHash) to verify if the statement was linked with the block. operationId: getMerkleReceipts parameters: - $ref: '#/components/parameters/heightPath' - $ref: '#/components/parameters/receiptHashPath' responses: '200': description: success content: application/json: schema: $ref: '#/components/schemas/MerkleProofInfoDTO' '404': $ref: '#/components/responses/ResourceNotFound' '409': $ref: '#/components/responses/InvalidArgument' /chain/info: get: tags: - Chain routes summary: Get the current information of the chain description: | Returns the current information of the blockchain. The higher the score, the better the chain. During synchronization, nodes try to get the best blockchain in the network. The score for a block is derived from its difficulty and the time (in seconds) that has elapsed since the last block: block score = difficulty − time elapsed since last block operationId: getChainInfo responses: '200': description: success content: application/json: schema: $ref: '#/components/schemas/ChainInfoDTO' '/finalization/proof/epoch/{epoch}': get: tags: - Finalization routes summary: Get finalization proof description: Gets finalization proof for the greatest height associated with the given epoch. operationId: getFinalizationProofAtEpoch parameters: - name: epoch in: path description: Finalization epoch. required: true schema: $ref: '#/components/schemas/FinalizationEpoch' responses: '200': description: success content: application/json: schema: $ref: '#/components/schemas/FinalizationProofDTO' '404': $ref: '#/components/responses/ResourceNotFound' '409': $ref: '#/components/responses/InvalidArgument' '/finalization/proof/height/{height}': get: tags: - Finalization routes summary: Get finalization proof description: Gets finalization proof at the given height. operationId: getFinalizationProofAtHeight parameters: - $ref: '#/components/parameters/heightPath' responses: '200': description: success content: application/json: schema: $ref: '#/components/schemas/FinalizationProofDTO' '404': $ref: '#/components/responses/ResourceNotFound' '409': $ref: '#/components/responses/InvalidArgument' /network: get: tags: - Network routes summary: Get the current network type of the chain description: Returns the current network type. operationId: getNetworkType responses: '200': description: success content: application/json: schema: $ref: '#/components/schemas/NetworkTypeDTO' /network/fees/rental: get: tags: - Network routes summary: Get rental fees information description: | Returns the estimated effective rental fees for namespaces and mosaics. This endpoint is only available if the REST instance has access to catapult-server ``resources/config-network.properties`` file. To activate this feature, add the setting "network.propertiesFilePath" in the configuration file (rest/resources/rest.json). operationId: getRentalFees responses: '200': description: success content: application/json: schema: $ref: '#/components/schemas/RentalFeesDTO' '409': $ref: '#/components/responses/InvalidArgument' /network/fees/transaction: get: tags: - Network routes summary: Get transaction fees information description: | Returns the average, median, highest and lower fee multiplier over the last "numBlocksTransactionFeeStats". The setting "numBlocksTransactionFeeStats" is adjustable via the configuration file (rest/resources/rest.json) per REST instance. operationId: getTransactionFees responses: '200': description: success content: application/json: schema: $ref: '#/components/schemas/TransactionFeesDTO' /network/properties: get: tags: - Network routes summary: Get the network properties description: | Returns the content from a catapult-server network configuration file (resources/config-network.properties). To enable this feature, the REST setting "network.propertiesFilePath" must define where the file is located. This is adjustable via the configuration file (rest/resources/rest.json) per REST instance. operationId: getNetworkProperties responses: '200': description: success content: application/json: schema: $ref: '#/components/schemas/NetworkConfigurationDTO' '409': $ref: '#/components/responses/InvalidArgument' /node/health: get: tags: - Node routes summary: Get the node health information description: Supplies information regarding the connection and services status. operationId: getNodeHealth responses: '200': description: Both API node and database services are reachable from REST server. content: application/json: schema: $ref: '#/components/schemas/NodeHealthInfoDTO' '503': description: Either API node or database service is unavailable or unreachable from REST server. content: application/json: schema: $ref: '#/components/schemas/NodeHealthInfoDTO' /node/info: get: tags: - Node routes summary: Get the node information description: Supplies additional information about the application running on a node. operationId: getNodeInfo responses: '200': description: success content: application/json: schema: $ref: '#/components/schemas/NodeInfoDTO' /node/peers: get: tags: - Node routes summary: Get peers information description: Gets the list of peers visible by the node. operationId: getNodePeers responses: '200': description: success content: application/json: schema: type: array items: $ref: '#/components/schemas/NodeInfoDTO' /node/storage: get: tags: - Node routes summary: Get the storage information of the node description: Returns storage information about the node. operationId: getNodeStorage responses: '200': description: success content: application/json: schema: $ref: '#/components/schemas/StorageInfoDTO' /node/time: get: tags: - Node routes summary: Get the node time description: Gets the node time at the moment the reply was sent and received. operationId: getNodeTime responses: '200': description: success content: application/json: schema: $ref: '#/components/schemas/NodeTimeDTO' /node/server: get: tags: - Node routes summary: Get the version of the running REST component description: Returns the version of the running catapult-rest component. operationId: getServerInfo responses: '200': description: success content: application/json: schema: $ref: '#/components/schemas/ServerInfoDTO' /node/unlockedaccount: get: tags: - Node routes summary: Get the unlocked harvesting account public keys. description: Returns array of unlocked account public keys. operationId: getUnlockedAccount responses: '200': description: success content: application/json: schema: $ref: '#/components/schemas/UnlockedAccountDTO' /transactions: put: tags: - Transaction routes summary: Announce a new transaction description: | Announces a transaction to the network. The [catbuffer library](https://github.com/nemtech/catbuffer) defines the protocol to serialize and deserialize Symbol entities. Catbuffers are integrated into [Symbol SDKs](https://nemtech.github.io/sdk.html). It's recommended to use SDKs instead of calling the API endpoint directly to announce transactions. operationId: announceTransaction requestBody: $ref: '#/components/requestBodies/transactionPayload' responses: '202': description: success content: application/json: schema: $ref: '#/components/schemas/AnnounceTransactionInfoDTO' '400': $ref: '#/components/responses/InvalidContent' '409': $ref: '#/components/responses/InvalidArgument' /transactions/confirmed: get: tags: - Transaction routes summary: Search confirmed transactions description: | Returns an array of confirmed transactions. If a transaction was announced with an alias rather than an address, the address that will be considered when querying is the one that was resolved from the alias at confirmation time. operationId: searchConfirmedTransactions parameters: - $ref: '#/components/parameters/addressQuery' - $ref: '#/components/parameters/recipientAddressQuery' - $ref: '#/components/parameters/signerPublicKeyQuery' - $ref: '#/components/parameters/heightQuery' - $ref: '#/components/parameters/fromHeightQuery' - $ref: '#/components/parameters/toHeightQuery' - $ref: '#/components/parameters/fromTransferAmountQuery' - $ref: '#/components/parameters/toTransferAmountQuery' - $ref: '#/components/parameters/transactionTypeQuery' - $ref: '#/components/parameters/embedded' - $ref: '#/components/parameters/transferMosaicIdQuery' - $ref: '#/components/parameters/pageSizeQuery' - $ref: '#/components/parameters/pageNumberQuery' - $ref: '#/components/parameters/offsetQuery' - $ref: '#/components/parameters/orderQuery' responses: '200': description: success content: application/json: schema: $ref: '#/components/schemas/TransactionPage' '409': $ref: '#/components/responses/InvalidArgument' post: tags: - Transaction routes summary: Get confirmed trasactions information description: Returns confirmed transactions information for a given array of transactionIds. operationId: getConfirmedTransactions requestBody: $ref: '#/components/requestBodies/transactionIds' responses: '200': description: success content: application/json: schema: type: array description: Array of transactions information. items: $ref: '#/components/schemas/TransactionInfoDTO' '400': $ref: '#/components/responses/InvalidContent' '409': $ref: '#/components/responses/InvalidArgument' '/transactions/confirmed/{transactionId}': get: tags: - Transaction routes summary: Get confirmed transaction information description: Returns confirmed transaction information given a transactionId or hash. operationId: getConfirmedTransaction parameters: - $ref: '#/components/parameters/transactionIdPath' responses: '200': description: success content: application/json: schema: $ref: '#/components/schemas/TransactionInfoDTO' '404': $ref: '#/components/responses/ResourceNotFound' '409': $ref: '#/components/responses/InvalidArgument' /transactions/unconfirmed: get: tags: - Transaction routes summary: Search unconfirmed transactions description: Returns an array of unconfirmed transactions. operationId: searchUnconfirmedTransactions parameters: - $ref: '#/components/parameters/addressQuery' - $ref: '#/components/parameters/recipientAddressQuery' - $ref: '#/components/parameters/signerPublicKeyQuery' - $ref: '#/components/parameters/heightQuery' - $ref: '#/components/parameters/fromHeightQuery' - $ref: '#/components/parameters/toHeightQuery' - $ref: '#/components/parameters/fromTransferAmountQuery' - $ref: '#/components/parameters/toTransferAmountQuery' - $ref: '#/components/parameters/transactionTypeQuery' - $ref: '#/components/parameters/embedded' - $ref: '#/components/parameters/transferMosaicIdQuery' - $ref: '#/components/parameters/pageSizeQuery' - $ref: '#/components/parameters/pageNumberQuery' - $ref: '#/components/parameters/offsetQuery' - $ref: '#/components/parameters/orderQuery' responses: '200': description: success content: application/json: schema: $ref: '#/components/schemas/TransactionPage' '409': $ref: '#/components/responses/InvalidArgument' post: tags: - Transaction routes summary: Get unconfirmed trasactions information description: Returns unconfirmed transactions information for a given array of transactionIds. operationId: getUnconfirmedTransactions requestBody: $ref: '#/components/requestBodies/transactionIds' responses: '200': description: success content: application/json: schema: type: array description: Array of transactions information. items: $ref: '#/components/schemas/TransactionInfoDTO' '400': $ref: '#/components/responses/InvalidContent' '409': $ref: '#/components/responses/InvalidArgument' '/transactions/unconfirmed/{transactionId}': get: tags: - Transaction routes summary: Get unconfirmed transaction information description: Returns unconfirmed transaction information given a transactionId or hash. operationId: getUnconfirmedTransaction parameters: - $ref: '#/components/parameters/transactionIdPath' responses: '200': description: success content: application/json: schema: $ref: '#/components/schemas/TransactionInfoDTO' '404': $ref: '#/components/responses/ResourceNotFound' '409': $ref: '#/components/responses/InvalidArgument' /transactionStatus: post: tags: - Transaction status routes summary: Get transaction statuses description: Returns an array of transaction statuses for a given array of transaction hashes. operationId: getTransactionStatuses requestBody: $ref: '#/components/requestBodies/transactionHashes' responses: '200': description: success content: application/json: schema: type: array description: Array of transactions status. items: $ref: '#/components/schemas/TransactionStatusDTO' '400': $ref: '#/components/responses/InvalidContent' '409': $ref: '#/components/responses/InvalidArgument' '/transactionStatus/{hash}': get: tags: - Transaction status routes summary: Get transaction status description: Returns the transaction status for a given hash. operationId: getTransactionStatus parameters: - $ref: '#/components/parameters/transactionHashPath' responses: '200': description: success content: application/json: schema: $ref: '#/components/schemas/TransactionStatusDTO' '404': $ref: '#/components/responses/ResourceNotFound' '409': $ref: '#/components/responses/InvalidArgument' /transactions/partial: get: tags: - Transaction routes summary: Search partial transactions description: Returns an array of partial transactions. operationId: searchPartialTransactions parameters: - $ref: '#/components/parameters/addressQuery' - $ref: '#/components/parameters/recipientAddressQuery' - $ref: '#/components/parameters/signerPublicKeyQuery' - $ref: '#/components/parameters/heightQuery' - $ref: '#/components/parameters/fromHeightQuery' - $ref: '#/components/parameters/toHeightQuery' - $ref: '#/components/parameters/fromTransferAmountQuery' - $ref: '#/components/parameters/toTransferAmountQuery' - $ref: '#/components/parameters/transactionTypeQuery' - $ref: '#/components/parameters/embedded' - $ref: '#/components/parameters/transferMosaicIdQuery' - $ref: '#/components/parameters/pageSizeQuery' - $ref: '#/components/parameters/pageNumberQuery' - $ref: '#/components/parameters/offsetQuery' - $ref: '#/components/parameters/orderQuery' responses: '200': description: success content: application/json: schema: $ref: '#/components/schemas/TransactionPage' '409': $ref: '#/components/responses/InvalidArgument' put: tags: - Transaction routes summary: Announce an aggregate bonded transaction description: Announces an aggregate bonded transaction to the network. operationId: announcePartialTransaction requestBody: $ref: '#/components/requestBodies/transactionPayload' responses: '202': description: success content: application/json: schema: $ref: '#/components/schemas/AnnounceTransactionInfoDTO' '400': $ref: '#/components/responses/InvalidContent' '409': $ref: '#/components/responses/InvalidArgument' post: tags: - Transaction routes summary: Get partial trasactions information description: Returns partial transactions information for a given array of transactionIds. operationId: getPartialTransactions requestBody: $ref: '#/components/requestBodies/transactionIds' responses: '200': description: success content: application/json: schema: type: array description: Array of transactions information. items: $ref: '#/components/schemas/TransactionInfoDTO' '400': $ref: '#/components/responses/InvalidContent' '409': $ref: '#/components/responses/InvalidArgument' '/transactions/partial/{transactionId}': get: tags: - Transaction routes summary: Get partial transaction information description: Returns partial transaction information given a transactionId or hash. operationId: getPartialTransaction parameters: - $ref: '#/components/parameters/transactionIdPath' responses: '200': description: success content: application/json: schema: $ref: '#/components/schemas/TransactionInfoDTO' '404': $ref: '#/components/responses/ResourceNotFound' '409': $ref: '#/components/responses/InvalidArgument' /transactions/cosignature: put: tags: - Transaction routes summary: Announce a cosignature transaction description: Announces a cosignature transaction to the network. operationId: announceCosignatureTransaction requestBody: $ref: '#/components/requestBodies/cosignature' responses: '202': description: success content: application/json: schema: $ref: '#/components/schemas/AnnounceTransactionInfoDTO' '400': $ref: '#/components/responses/InvalidContent' '409': $ref: '#/components/responses/InvalidArgument' /lock/hash: get: tags: - Hash Lock routes summary: Search hash lock entries description: Returns an array of hash locks. operationId: searchHashLock parameters: - $ref: '#/components/parameters/addressQuery' - $ref: '#/components/parameters/pageSizeQuery' - $ref: '#/components/parameters/pageNumberQuery' - $ref: '#/components/parameters/offsetQuery' - $ref: '#/components/parameters/orderQuery' responses: '200': description: success content: application/json: schema: $ref: '#/components/schemas/HashLockPage' '409': $ref: '#/components/responses/InvalidArgument' '/lock/hash/{hash}': get: tags: - Hash Lock routes summary: Get hash lock information description: Gets the hash lock for a given hash. operationId: getHashLock parameters: - $ref: '#/components/parameters/hashPath' responses: '200': description: success content: application/json: schema: $ref: '#/components/schemas/HashLockInfoDTO' '409': $ref: '#/components/responses/InvalidArgument' '/lock/hash/{hash}/merkle': get: tags: - Hash Lock routes summary: Get hash lock merkle information description: Gets the hash lock merkle for a given hash. operationId: getHashLockMerkle parameters: - $ref: '#/components/parameters/hashPath' responses: '200': description: success content: application/json: schema: $ref: '#/components/schemas/MerkleStateInfoDTO' '409': $ref: '#/components/responses/InvalidArgument' /lock/secret: get: tags: - Secret Lock routes summary: Search secret lock entries description: Returns an array of secret locks. operationId: searchSecretLock parameters: - $ref: '#/components/parameters/addressQuery' - $ref: '#/components/parameters/secretQuery' - $ref: '#/components/parameters/pageSizeQuery' - $ref: '#/components/parameters/pageNumberQuery' - $ref: '#/components/parameters/offsetQuery' - $ref: '#/components/parameters/orderQuery' responses: '200': description: success content: application/json: schema: $ref: '#/components/schemas/SecretLockPage' '409': $ref: '#/components/responses/InvalidArgument' '/lock/secret/{compositeHash}': get: tags: - Secret Lock routes summary: Get secret lock information description: Gets the hash lock for a given composite hash. operationId: getSecretLock parameters: - $ref: '#/components/parameters/compositeHashPath' responses: '200': description: success content: application/json: schema: $ref: '#/components/schemas/SecretLockInfoDTO' '409': $ref: '#/components/responses/InvalidArgument' '/lock/secret/{compositeHash}/merkle': get: tags: - Secret Lock routes summary: Get secret lock merkle information description: Gets the hash lock merkle for a given composite hash. operationId: getSecretLockMerkle parameters: - $ref: '#/components/parameters/compositeHashPath' responses: '200': description: success content: application/json: schema: $ref: '#/components/schemas/MerkleStateInfoDTO' '409': $ref: '#/components/responses/InvalidArgument' /metadata: get: tags: - Metadata routes summary: Search metadata entries description: Returns an array of metadata. operationId: searchMetadataEntries parameters: - $ref: '#/components/parameters/sourceAddressQuery' - $ref: '#/components/parameters/targetAddressQuery' - $ref: '#/components/parameters/scopedMetadataKeyQuery' - $ref: '#/components/parameters/targetIdQuery' - $ref: '#/components/parameters/metadataType' - $ref: '#/components/parameters/pageSizeQuery' - $ref: '#/components/parameters/pageNumberQuery' - $ref: '#/components/parameters/offsetQuery' - $ref: '#/components/parameters/orderQuery' responses: '200': description: success content: application/json: schema: $ref: '#/components/schemas/MetadataPage' '409': $ref: '#/components/responses/InvalidArgument' '/metadata/{compositeHash}': get: tags: - Metadata routes summary: Get metadata information description: Gets the metadata for a given composite hash. operationId: getMetadata parameters: - $ref: '#/components/parameters/compositeHashPath' responses: '200': description: success content: application/json: schema: $ref: '#/components/schemas/MetadataInfoDTO' '409': $ref: '#/components/responses/InvalidArgument' '/metadata/{compositeHash}/merkle': get: tags: - Metadata routes summary: Get metadata merkle information description: Gets the metadata merkle for a given composite hash. operationId: getMetadataMerkle parameters: - $ref: '#/components/parameters/compositeHashPath' responses: '200': description: success content: application/json: schema: $ref: '#/components/schemas/MerkleStateInfoDTO' '409': $ref: '#/components/responses/InvalidArgument' '/mosaics/{mosaicId}': get: tags: - Mosaic routes summary: Get mosaic information description: Gets the mosaic definition for a given mosaic identifier. operationId: getMosaic parameters: - $ref: '#/components/parameters/mosaicIdPath' responses: '200': description: success content: application/json: schema: $ref: '#/components/schemas/MosaicInfoDTO' '404': $ref: '#/components/responses/ResourceNotFound' '409': $ref: '#/components/responses/InvalidArgument' '/mosaics/{mosaicId}/merkle': get: tags: - Mosaic routes summary: Get mosaic merkle information description: Gets the mosaic definition merkle for a given mosaic identifier. operationId: getMosaicMerkle parameters: - $ref: '#/components/parameters/mosaicIdPath' responses: '200': description: success content: application/json: schema: $ref: '#/components/schemas/MerkleStateInfoDTO' '404': $ref: '#/components/responses/ResourceNotFound' '409': $ref: '#/components/responses/InvalidArgument' /mosaics: get: tags: - Mosaic routes summary: Search mosaics description: Gets an array of mosaics. operationId: searchMosaics parameters: - $ref: '#/components/parameters/ownerAddressQuery' - $ref: '#/components/parameters/pageSizeQuery' - $ref: '#/components/parameters/pageNumberQuery' - $ref: '#/components/parameters/offsetQuery' - $ref: '#/components/parameters/orderQuery' responses: '200': description: success content: application/json: schema: $ref: '#/components/schemas/MosaicPage' '409': $ref: '#/components/responses/InvalidArgument' post: tags: - Mosaic routes summary: Get mosaics information for an array of mosaics description: Gets an array of mosaic definition. operationId: getMosaics requestBody: $ref: '#/components/requestBodies/mosaicIds' responses: '200': description: success content: application/json: schema: type: array description: Array of mosaics information. items: $ref: '#/components/schemas/MosaicInfoDTO' '400': $ref: '#/components/responses/InvalidContent' '409': $ref: '#/components/responses/InvalidArgument' '/account/{address}/multisig': get: tags: - Multisig routes summary: Get multisig account information description: Returns the multisig account information. operationId: getAccountMultisig parameters: - $ref: '#/components/parameters/address' responses: '200': description: success content: application/json: schema: $ref: '#/components/schemas/MultisigAccountInfoDTO' '404': $ref: '#/components/responses/ResourceNotFound' '409': $ref: '#/components/responses/InvalidArgument' '/account/{address}/multisig/merkle': get: tags: - Multisig routes summary: Get multisig account merkle information description: Returns the multisig account merkle information. operationId: getAccountMultisigMerkle parameters: - $ref: '#/components/parameters/address' responses: '200': description: success content: application/json: schema: $ref: '#/components/schemas/MerkleStateInfoDTO' '404': $ref: '#/components/responses/ResourceNotFound' '409': $ref: '#/components/responses/InvalidArgument' '/account/{address}/multisig/graph': get: tags: - Multisig routes summary: Get multisig account graph information description: Returns the multisig account graph. operationId: getAccountMultisigGraph parameters: - $ref: '#/components/parameters/address' responses: '200': description: success content: application/json: schema: type: array items: $ref: '#/components/schemas/MultisigAccountGraphInfoDTO' '404': $ref: '#/components/responses/ResourceNotFound' '409': $ref: '#/components/responses/InvalidArgument' /namespaces: get: tags: - Namespace routes summary: Search namespaces description: Gets an array of namespaces. operationId: searchNamespaces parameters: - $ref: '#/components/parameters/ownerAddressQuery' - $ref: '#/components/parameters/registrationTypeQuery' - $ref: '#/components/parameters/level0Query' - $ref: '#/components/parameters/aliasTypeQuery' - $ref: '#/components/parameters/pageSizeQuery' - $ref: '#/components/parameters/pageNumberQuery' - $ref: '#/components/parameters/offsetQuery' - $ref: '#/components/parameters/orderQuery' responses: '200': description: success content: application/json: schema: $ref: '#/components/schemas/NamespacePage' '409': $ref: '#/components/responses/InvalidArgument' '/namespaces/{namespaceId}': get: tags: - Namespace routes summary: Get namespace information description: Gets the namespace for a given namespace identifier. operationId: getNamespace parameters: - $ref: '#/components/parameters/namespaceIdPath' responses: '200': description: success content: application/json: schema: $ref: '#/components/schemas/NamespaceInfoDTO' '404': $ref: '#/components/responses/ResourceNotFound' '409': $ref: '#/components/responses/InvalidArgument' '/namespaces/{namespaceId}/merkle': get: tags: - Namespace routes summary: Get namespace merkle information description: Gets the namespace merkle for a given namespace identifier. operationId: getNamespaceMerkle parameters: - $ref: '#/components/parameters/namespaceIdPath' responses: '200': description: success content: application/json: schema: $ref: '#/components/schemas/MerkleStateInfoDTO' '404': $ref: '#/components/responses/ResourceNotFound' '409': $ref: '#/components/responses/InvalidArgument' /namespaces/names: post: tags: - Namespace routes summary: Get readable names for a set of namespaces description: Returns friendly names for namespaces. operationId: getNamespacesNames requestBody: $ref: '#/components/requestBodies/namespaceIds' responses: '200': description: success content: application/json: schema: type: array description: Array of namespace names. items: $ref: '#/components/schemas/NamespaceNameDTO' '400': $ref: '#/components/responses/InvalidContent' '409': $ref: '#/components/responses/InvalidArgument' /namespaces/account/names: post: tags: - Namespace routes summary: Get readable names for a set of accountIds description: Returns friendly names for accounts. operationId: getAccountsNames requestBody: $ref: '#/components/requestBodies/addresses' responses: '200': description: success content: application/json: schema: $ref: '#/components/schemas/AccountsNamesDTO' '400': $ref: '#/components/responses/InvalidContent' '409': $ref: '#/components/responses/InvalidArgument' /namespaces/mosaic/names: post: tags: - Namespace routes summary: Get readable names for a set of mosaics description: Returns friendly names for mosaics. operationId: getMosaicsNames requestBody: $ref: '#/components/requestBodies/mosaicIds' responses: '200': description: success content: application/json: schema: $ref: '#/components/schemas/MosaicsNamesDTO' '400': $ref: '#/components/responses/InvalidContent' '409': $ref: '#/components/responses/InvalidArgument' /statements/transaction: get: tags: - Receipt routes summary: Search transaction statements description: Gets an array of transaction statements. operationId: searchReceipts parameters: - $ref: '#/components/parameters/heightQuery' - $ref: '#/components/parameters/fromHeightQuery' - $ref: '#/components/parameters/toHeightQuery' - $ref: '#/components/parameters/receiptTypeQuery' - $ref: '#/components/parameters/recipientAddressQuery' - $ref: '#/components/parameters/senderAddressQuery' - $ref: '#/components/parameters/targetAddressQuery' - $ref: '#/components/parameters/artifactIdQuery' - $ref: '#/components/parameters/pageSizeQuery' - $ref: '#/components/parameters/pageNumberQuery' - $ref: '#/components/parameters/offsetQuery' - $ref: '#/components/parameters/orderQuery' responses: '200': description: success content: application/json: schema: $ref: '#/components/schemas/TransactionStatementPage' '404': $ref: '#/components/responses/ResourceNotFound' '409': $ref: '#/components/responses/InvalidArgument' /statements/resolutions/address: get: tags: - Receipt routes summary: Get receipts address resolution statements description: Gets an array of address resolution statements. operationId: searchAddressResolutionStatements parameters: - $ref: '#/components/parameters/heightQuery' - $ref: '#/components/parameters/pageSizeQuery' - $ref: '#/components/parameters/pageNumberQuery' - $ref: '#/components/parameters/offsetQuery' - $ref: '#/components/parameters/orderQuery' responses: '200': description: success content: application/json: schema: $ref: '#/components/schemas/ResolutionStatementPage' '404': $ref: '#/components/responses/ResourceNotFound' '409': $ref: '#/components/responses/InvalidArgument' /statements/resolutions/mosaic: get: tags: - Receipt routes summary: Get receipts mosaic resolution statements description: Gets an array of mosaic resolution statements. operationId: searchMosaicResolutionStatements parameters: - $ref: '#/components/parameters/heightQuery' - $ref: '#/components/parameters/pageSizeQuery' - $ref: '#/components/parameters/pageNumberQuery' - $ref: '#/components/parameters/offsetQuery' - $ref: '#/components/parameters/orderQuery' responses: '200': description: success content: application/json: schema: $ref: '#/components/schemas/ResolutionStatementPage' '404': $ref: '#/components/responses/ResourceNotFound' '409': $ref: '#/components/responses/InvalidArgument' /restrictions/account: get: tags: - Restriction Account routes summary: Search account restrictions description: Returns an array of account restrictions. operationId: searchAccountRestrictions parameters: - $ref: '#/components/parameters/addressQuery' - $ref: '#/components/parameters/pageSizeQuery' - $ref: '#/components/parameters/pageNumberQuery' - $ref: '#/components/parameters/offsetQuery' - $ref: '#/components/parameters/orderQuery' responses: '200': description: success content: application/json: schema: $ref: '#/components/schemas/AccountRestrictionsPage' '404': $ref: '#/components/responses/ResourceNotFound' '409': $ref: '#/components/responses/InvalidArgument' '/restrictions/account/{address}': get: tags: - Restriction Account routes summary: Get the account restrictions description: Returns the account restrictions for a given address. operationId: getAccountRestrictions parameters: - $ref: '#/components/parameters/address' responses: '200': description: success content: application/json: schema: $ref: '#/components/schemas/AccountRestrictionsInfoDTO' '404': $ref: '#/components/responses/ResourceNotFound' '409': $ref: '#/components/responses/InvalidArgument' '/restrictions/account/{address}/merkle': get: tags: - Restriction Account routes summary: Get the account restrictions merkle description: Returns the account restrictions merkle for a given address. operationId: getAccountRestrictionsMerkle parameters: - $ref: '#/components/parameters/address' responses: '200': description: success content: application/json: schema: $ref: '#/components/schemas/MerkleStateInfoDTO' '404': $ref: '#/components/responses/ResourceNotFound' '409': $ref: '#/components/responses/InvalidArgument' /restrictions/mosaic: get: tags: - Restriction Mosaic routes summary: Search mosaic restrictions description: Returns an array of mosaic restrictions. operationId: searchMosaicRestrictions parameters: - $ref: '#/components/parameters/mosaicIdQuery' - $ref: '#/components/parameters/entryType' - $ref: '#/components/parameters/targetAddressQuery' - $ref: '#/components/parameters/pageSizeQuery' - $ref: '#/components/parameters/pageNumberQuery' - $ref: '#/components/parameters/offsetQuery' - $ref: '#/components/parameters/orderQuery' responses: '200': description: success content: application/json: schema: $ref: '#/components/schemas/MosaicRestrictionsPage' '404': $ref: '#/components/responses/ResourceNotFound' '409': $ref: '#/components/responses/InvalidArgument' '/restrictions/mosaic/{compositeHash}': get: tags: - Restriction Mosaic routes summary: Get the mosaic restrictions description: Returns the mosaic restrictions for a composite hash. operationId: getMosaicRestrictions parameters: - $ref: '#/components/parameters/compositeHashPath' responses: '200': description: success content: application/json: schema: $ref: '#/components/schemas/MosaicRestrictionDTO' '404': $ref: '#/components/responses/ResourceNotFound' '409': $ref: '#/components/responses/InvalidArgument' '/restrictions/mosaic/{compositeHash}/merkle': get: tags: - Restriction Mosaic routes summary: Get the mosaic restrictions merkle description: Returns the mosaic restrictions merkle for a given composite hash. operationId: getMosaicRestrictionsMerkle parameters: - $ref: '#/components/parameters/compositeHashPath' responses: '200': description: success content: application/json: schema: $ref: '#/components/schemas/MerkleStateInfoDTO' '404': $ref: '#/components/responses/ResourceNotFound' '409': $ref: '#/components/responses/InvalidArgument' externalDocs: description: Kadesh Chain Documentation url: 'https://docs.kadeshchain.com/' servers: - url: 'http://localhost:3000' description: Local development components: parameters: address: name: address in: path description: Account address. required: true schema: $ref: '#/components/schemas/Address' accountIdPath: name: accountId in: path description: Account public key or address encoded using a 32-character set. required: true schema: type: string hashPath: name: hash in: path description: Filter by hash. required: true schema: $ref: '#/components/schemas/Hash256' compositeHashPath: name: compositeHash in: path description: Filter by composite hash. required: true schema: $ref: '#/components/schemas/Hash256' heightPath: name: height in: path description: Block height. required: true schema: $ref: '#/components/schemas/Height' limitPath: name: limit in: path description: | Number of elements to be returned. The limit should be greater than or equal to "db.pageSizeMin" and not higher than "db.pageSizeMax". The settings are adjustable via the configuration file (rest/resources/rest.json) per REST instance. required: true schema: type: integer mosaicIdPath: name: mosaicId in: path description: Mosaic identifier. required: true schema: $ref: '#/components/schemas/MosaicId' namespaceIdPath: name: namespaceId in: path description: Namespace identifier. required: true schema: $ref: '#/components/schemas/NamespaceId' publicKeyPath: name: publicKey in: path description: Account public key. required: true schema: $ref: '#/components/schemas/PublicKey' receiptHashPath: name: hash in: path description: Receipt hash. required: true schema: $ref: '#/components/schemas/Hash256' sourceAddressPath: name: sourceAddress in: path description: Account address. required: true schema: $ref: '#/components/schemas/Address' transactionHashPath: name: hash in: path description: Transaction hash. required: true schema: $ref: '#/components/schemas/Hash256' transactionIdPath: name: transactionId in: path description: Transaction id or hash. required: true schema: type: string addressQuery: name: address in: query description: | Filter by address involved in the transaction. An account's address is considered to be involved in the transaction when the account is the sender, recipient, or it is required to cosign the transaction. This filter cannot be combined with ``recipientAddress`` and ``signerPublicKey`` query params. schema: $ref: '#/components/schemas/Address' artifactIdQuery: name: artifactId in: query description: Mosaic or namespace identifier schema: type: string mosaicIdQuery: name: mosaicId in: query description: Filter by mosaic identifier. schema: $ref: '#/components/schemas/MosaicId' aliasTypeQuery: name: aliasType in: query description: Filter by alias type. schema: $ref: '#/components/schemas/AliasTypeEnum' beneficiaryAddressQuery: name: beneficiaryAddress description: Filter by beneficiary address. in: query schema: $ref: '#/components/schemas/Address' embedded: name: embedded in: query description: | When true, the endpoint also returns all the embedded aggregate transactions. Otherwise, only top-level transactions used to calculate the block transactionsHash are returned. **Note:** This field does not work when combined with the ``address`` parameter. This is, embedded transactions containing the address specified through the ``address`` parameter will not be returned even when used with ``embedded=true``. There is no problem when using other parameters like ``recipientAddress`` instead. schema: type: boolean default: false entryType: name: entryType in: query description: Filter by entry type. schema: $ref: '#/components/schemas/MosaicRestrictionEntryTypeEnum' fromHeightQuery: name: fromHeight in: query description: Only blocks with height greater or equal than this one are returned. schema: $ref: '#/components/schemas/Height' fromTransferAmountQuery: name: fromTransferAmount in: query description: | Requires providing the `transferMosaicId` filter. Only transfer transactions with a transfer amount of the provided mosaic id, greater or equal than this amount are returned. schema: $ref: '#/components/schemas/Amount' heightQuery: name: height in: query description: Filter by block height. schema: $ref: '#/components/schemas/Height' idQuery: name: id in: query description: | Entry id at which to start pagination. If the ordering parameter is set to -id, the elements returned precede the identifier. Otherwise, newer elements with respect to the id are returned. schema: type: string metadataType: name: metadataType in: query description: Filter by metadata type. schema: $ref: '#/components/schemas/MetadataTypeEnum' level0Query: name: level0 in: query description: Filter by root namespace. schema: $ref: '#/components/schemas/NamespaceId' offsetQuery: name: offset in: query description: | Entry id at which to start pagination. If the ordering parameter is set to -id, the elements returned precede the identifier. Otherwise, newer elements with respect to the id are returned. schema: type: string orderQuery: name: order in: query description: | Sort responses in ascending or descending order based on the collection property set on the param ``orderBy``. If the request does not specify ``orderBy``, REST returns the collection ordered by id. schema: $ref: '#/components/schemas/Order' orderByAccountQuery: name: orderBy in: query description: | Sort responses by the property set. If ``balance`` option is selected, the request must define the ``mosaicId`` filter. schema: $ref: '#/components/schemas/AccountOrderByEnum' default: id ownerAddressQuery: name: ownerAddress in: query description: Filter by owner address. schema: $ref: '#/components/schemas/Address' orderByBlockQuery: name: orderBy in: query description: | Sort responses by the property set. schema: $ref: '#/components/schemas/BlockOrderByEnum' pageNumberQuery: name: pageNumber in: query description: Filter by page number. schema: type: integer minimum: 1 default: 1 pageSizeQuery: name: pageSize in: query description: Select the number of entries to return. schema: type: integer minimum: 10 maximum: 100 default: 10 receiptTypeQuery: name: receiptType in: query description: | Filter by receipt type. To filter by multiple receipt types, add more filter query params like: ``receiptType=8515&receiptType=20803``. style: form explode: true schema: type: array items: $ref: '#/components/schemas/ReceiptTypeEnum' recipientAddressQuery: name: recipientAddress in: query description: Filter by address of the account receiving the transaction. schema: $ref: '#/components/schemas/Address' secretQuery: name: secret in: query description: Filter by secret. schema: $ref: '#/components/schemas/Secret' senderAddressQuery: name: senderAddress in: query description: Filter by address sending mosaics. schema: $ref: '#/components/schemas/Address' scopedMetadataKeyQuery: name: scopedMetadataKey in: query description: Filter by metadata key. schema: $ref: '#/components/schemas/MetadataKey' sourceAddressQuery: name: sourceAddress in: query description: Filter by address sending the metadata entry. schema: $ref: '#/components/schemas/Address' registrationTypeQuery: name: registrationType in: query description: Filter by registration type. schema: $ref: '#/components/schemas/NamespaceRegistrationTypeEnum' signerPublicKeyQuery: name: signerPublicKey in: query description: Filter by public key of the account signing the entity. schema: $ref: '#/components/schemas/PublicKey' targetIdQuery: name: targetId in: query description: Filter by namespace or mosaic id. schema: type: string format: hex example: 0DC67FBE1CAD29E3 targetAddressQuery: name: targetAddress in: query description: Filter by target address. schema: $ref: '#/components/schemas/Address' toHeightQuery: name: toHeight in: query description: Only blocks with height smaller or equal than this one are returned. schema: $ref: '#/components/schemas/Height' toTransferAmountQuery: name: toTransferAmount in: query description: | Requires providing the `transferMosaicId` filter. Only transfer transactions with a transfer amount of the provided mosaic id, lesser or equal than this amount are returned. schema: $ref: '#/components/schemas/Amount' transactionTypeQuery: name: type in: query description: | Filter by transaction type. To filter by multiple transaction types, add more filter query params like: ``type=16974&type=16718``. style: form explode: true schema: type: array items: $ref: '#/components/schemas/TransactionTypeEnum' transferMosaicIdQuery: name: transferMosaicId in: query description: Filters transactions involving a specific ``mosaicId``. schema: $ref: '#/components/schemas/MosaicId' requestBodies: accountIds: content: application/json: schema: $ref: '#/components/schemas/accountIds' required: false addresses: content: application/json: schema: $ref: '#/components/schemas/addresses' required: true cosignature: content: application/json: schema: $ref: '#/components/schemas/cosignature' required: true mosaicIds: content: application/json: schema: $ref: '#/components/schemas/mosaicIds' required: true namespaceIds: content: application/json: schema: $ref: '#/components/schemas/namespaceIds' required: true transactionHashes: content: application/json: schema: $ref: '#/components/schemas/transactionHashes' required: true transactionIds: content: application/json: schema: $ref: '#/components/schemas/transactionIds' required: true transactionPayload: content: application/json: schema: $ref: '#/components/schemas/transactionPayload' required: true schemas: Address: type: string description: Address encoded using a 32-character set. example: TADP6C2GVEG654OP5LZI32P2GYJSCMEGQBYB7QY Amount: type: string description: Absolute amount. An amount of 123456789 (absolute) for a mosaic with divisibility 6 means 123.456789 (relative). example: '123456' BlockDuration: type: string description: Duration expressed in number of blocks. example: 200 BlockFeeMultiplier: type: integer format: int64 description: Fee multiplier applied to transactions contained in block. example: 0 CosignatureVersion: type: string description: Cosignature version. example: '0' Difficulty: type: string description: 'Determines how hard is to harvest a new block, based on previous blocks.' example: 100000000000000 FinalizationEpoch: type: integer format: int64 description: Finalization Epoch example: 123456 FinalizationPoint: type: integer format: int64 description: Finalization point example: 0 Hash256: type: string format: hex example: C8FC3FB54FDDFBCE0E8C71224990124E4EEC5AD5D30E592EDFA9524669A23810 Height: type: string description: Height of the blockchain. example: 1 FinalizedHeight: type: string description: Finalized height of the blockchain. example: 1 Importance: type: string description: Probability of an account to harvest the next block. example: 0 LinkActionEnum: type: integer enum: - 0 - 1 description: | Type of action: * 0 - Unlink. * 1 - Link. MetadataKey: type: string format: hex description: 'Metadata key scoped to source, target and type expressed.' example: 0DC67FBE1CAD29E3 MetadataValue: type: string format: hex description: 'Metadata value. If embedded in a transaction, this is calculated as xor(previous-value, value).' ModelError: type: object required: - code - message properties: code: type: string message: type: string MosaicId: type: string format: hex description: Mosaic identifier. example: 0DC67FBE1CAD29E3 Mosaic: type: object required: - id - amount properties: id: $ref: '#/components/schemas/MosaicId' amount: $ref: '#/components/schemas/Amount' MerkleStateInfoDTO: type: object description: | The merkle path information clients can use to proof the state of the given entity. required: - raw - tree properties: raw: $ref: '#/components/schemas/MerkleTreeRaw' tree: description: Merkle tree parsed from merkle tree raw. type: array items: anyOf: - $ref: '#/components/schemas/MerkleTreeBranchDTO' - $ref: '#/components/schemas/MerkleTreeLeafDTO' MerkleTreeRaw: type: string format: hex description: | The hex information of the complete merkle tree as returned by server api. More information can be found in chapter 4.3 of the catapult whitepaper. example: 00008080DA9B4AF63BE985715EA635AF98E3CF3B0A22F9A2BE1C7DD40B79948AA63E36586E5D2E9D0C089C1C64BC0D42A11ADBD1CD6CDB4B7C294062F55113525A64AE3CFF3F04A7F2A487B42EA89323C4408F82415223ACFEC7DFA7924EFC31A70778AB17A00C3EAFF635F01BB3B474F0AF1BE99FBDA85EEFB209CC7BD158D3540DE3A3F2D1 MerkleTreeBranchDTO: type: object description: Merkle tree branch node. required: - type - path - encodedPath - nibbleCount - linkMask - links - branchHash properties: type: description: Merkle tree node type. $ref: '#/components/schemas/MerkleTreeNodeTypeEnum' path: description: Branch link path. type: string encodedPath: description: Encoded branch link path. type: string nibbleCount: description: Nibble count. type: integer linkMask: description: Branch link bitmask. type: string links: description: Branch links (max 16). type: array items: $ref: '#/components/schemas/MerkleTreeBranchLinkDTO' branchHash: description: Hash of the branch node. $ref: '#/components/schemas/Hash256' MerkleTreeLeafDTO: type: object description: Merkle tree leaf node. required: - type - path - encodedPath - nibbleCount - value - leafHash properties: type: description: Merkle tree node type. $ref: '#/components/schemas/MerkleTreeNodeTypeEnum' path: description: Leaf path. type: string encodedPath: description: Encoded leaf path. type: string nibbleCount: description: Nibble count. type: integer value: description: Leaf value (sha256 hash). type: string leafHash: description: Hash of the leaf node. $ref: '#/components/schemas/Hash256' MerkleTreeBranchLinkDTO: type: object description: Merkle tree branch link. required: - bit - link properties: bit: description: Branch link nibble bit index (hexadecimal). type: string link: description: Branch link hash. $ref: '#/components/schemas/Hash256' MerkleTreeNodeTypeEnum: type: integer enum: - 0 - 255 description: | Type of Merkle tree node: * 0 - Branch node. * 255 - Leaf node. example: 0 RestrictionKey: type: string format: hex description: Restriction key. example: 0DC67FBE1CAD29E3 NamespaceId: type: string format: hex description: Namespace identifier. example: 85BBEA6CC462B244 Order: type: string description: | Indicates how to sort the results: * ``asc`` - ascending * ``desc`` - descending enum: - asc - desc default: desc Pagination: type: object required: - pageNumber - pageSize properties: pageNumber: type: integer pageSize: type: integer PublicKey: type: string format: hex description: Public key. example: AC1A6E1D8DE5B17D2C6B1293F1CAD3829EEACF38D09311BB3C8E5A880092DE26 ProofGamma: type: string format: hex description: 32-bytes VRF proof gamma. example: 8D49594A96C31EC6C64305FB2CCB47AA7A4AC0A4F614442BB3684D2BF41F274E ProofScalar: type: string format: hex description: 32-bytes VRF proof scalar. example: 480175C83739B22C53EAECAA7E7F3B245F1DFAFA6B3AE5C1D0129502FCBAAD0C ProofVerificationHash: type: string format: hex description: 16-bytes VRF proof verification hash. example: 82FB583BFE3EE78805784D078F2547AE Score: type: string description: | Score of the blockchain. During synchronization, nodes try to get the blockchain with highest score in the network. example: 1683298087010368300 LockStatus: type: integer enum: - 0 - 1 description: | Possible status of lock states: * 0 - UNUSED. * 1 - USED. Secret: type: string format: hex description: Secret. example: FB8558E82C1968A3536CD77ACD7F9BC65E8B8F346714C9F91B42D6C2177BEDC1 Signature: type: string description: Entity's signature generated by the signer. example: 4B408BBEDF25F2AC8E0E44A6E51E3CCBA03885902055F75EB9FF50433532CA44BF9175FDA7502EEE2FC1617126E453A2BD692BAFDAAF06BC8EDEBA7961B3730D StateVersion: type: integer description: The version of the state example: 1 Timestamp: type: string description: Number of milliseconds elapsed since the creation of the nemesis block. This value can be converted to epoch time by adding the network's 'epochAdjustment'. example: 108303181802 UInt32: type: integer format: int64 description: A number that allows uint 32 values. example: 2222212828 UInt64: type: string description: A number that allows uint 64 values represented with a string. example: '123456' UnresolvedAddress: type: string description: | Address expressed in Base32 format. If the bit 0 of byte 0 is not set (like in 0x90), then it is a regular address. Example: TAOXUJOTTW3W5XTBQMQEX3SQNA6MCUVGXLXR3TA. Otherwise (e.g. 0x91) it represents a namespace id which starts at byte 1. Example: THBIMC3THGH5RUYAAAAAAAAAAAAAAAAAAAAAAAA example: TAOXUJOTTW3W5XTBQMQEX3SQNA6MCUVGXLXR3TA UnresolvedMosaicId: type: string format: hex description: | Mosaic identifier. If the most significant bit of byte 0 is set, a namespaceId (alias) is used instead of the real mosaic identifier. example: 85BBEA6CC462B244 UnresolvedMosaic: type: object required: - id - amount properties: id: $ref: '#/components/schemas/UnresolvedMosaicId' amount: $ref: '#/components/schemas/Amount' VotingKey: type: string format: hex description: 32 bytes voting public key. example: 4EDDA97C991A0BF44E0570B0BA0E0F7F1CE821A799726888734F28DDCCE8C591 RestrictionValue: type: string description: Restriction value. example: 1000 AccountOrderByEnum: type: string enum: - id - balance AccountPage: type: object required: - data - pagination properties: data: type: array description: Array of accounts. items: $ref: '#/components/schemas/AccountInfoDTO' pagination: $ref: '#/components/schemas/Pagination' AccountTypeEnum: type: integer enum: - 0 - 1 - 2 - 3 description: | * 0 - Unlinked. * 1 - Balance-holding account that is linked to a remote harvester account. * 2 - Remote harvester account that is linked to a balance-holding account. * 3 - Remote harvester eligible account that is unlinked. AccountDTO: type: object required: - version - address - addressHeight - publicKey - publicKeyHeight - accountType - supplementalPublicKeys - activityBuckets - mosaics - importance - importanceHeight properties: version: $ref: '#/components/schemas/StateVersion' address: $ref: '#/components/schemas/Address' addressHeight: $ref: '#/components/schemas/Height' publicKey: $ref: '#/components/schemas/PublicKey' publicKeyHeight: $ref: '#/components/schemas/Height' accountType: $ref: '#/components/schemas/AccountTypeEnum' supplementalPublicKeys: $ref: '#/components/schemas/SupplementalPublicKeysDTO' activityBuckets: type: array items: $ref: '#/components/schemas/ActivityBucketDTO' mosaics: type: array description: Mosaic units owned. items: $ref: '#/components/schemas/Mosaic' importance: $ref: '#/components/schemas/Importance' importanceHeight: $ref: '#/components/schemas/Height' AccountInfoDTO: type: object required: - id - account properties: id: type: string description: Internal resource identifier. account: $ref: '#/components/schemas/AccountDTO' ActivityBucketDTO: type: object required: - startHeight - totalFeesPaid - beneficiaryCount - rawScore description: | Supplementary data stored for importance recalculation. At each importance recalculation, existing buckets are shifted, the working bucket is finalized and a new working bucket is created. Each bucket influences at most five importance recalculations. properties: startHeight: $ref: '#/components/schemas/Height' totalFeesPaid: $ref: '#/components/schemas/Amount' description: Fees paid by the account for this bucket. beneficiaryCount: $ref: '#/components/schemas/UInt32' description: Number of times the account has been a beneficiary for this bucket. rawScore: $ref: '#/components/schemas/Importance' description: Importance score for this bucket. This is taken into account to calculate the latest account importance. AccountLinkPublicKeyDTO: type: object required: - publicKey properties: publicKey: type: string AccountLinkVotingKeysDTO: type: object required: - publicKeys properties: publicKeys: type: array items: $ref: '#/components/schemas/AccountLinkVotingKeyDTO' AccountLinkVotingKeyDTO: type: object required: - publicKey - startEpoch - endEpoch properties: publicKey: type: string startEpoch: $ref: '#/components/schemas/FinalizationEpoch' endEpoch: $ref: '#/components/schemas/FinalizationEpoch' SupplementalPublicKeysDTO: type: object properties: linked: $ref: '#/components/schemas/AccountLinkPublicKeyDTO' node: $ref: '#/components/schemas/AccountLinkPublicKeyDTO' vrf: $ref: '#/components/schemas/AccountLinkPublicKeyDTO' voting: $ref: '#/components/schemas/AccountLinkVotingKeysDTO' AccountKeyTypeFlagsEnum: type: integer enum: - 0 - 1 - 2 - 4 description: | Type of account key: * 0 - Unset. * 1 - Linked account public key. * 2 - Node public key on which remote is allowed to harvest. * 4 - VRF public key. BlockOrderByEnum: type: string enum: - id - height PositionEnum: type: string enum: - left - right description: Position relative to the proofHash being evaluated. BlockDTO: type: object allOf: - $ref: '#/components/schemas/SizePrefixedEntityDTO' - $ref: '#/components/schemas/VerifiableEntityDTO' - $ref: '#/components/schemas/EntityDTO' - type: object required: - height - timestamp - difficulty - proofGamma - proofVerificationHash - proofScalar - previousBlockHash - transactionsHash - receiptsHash - stateHash - beneficiaryAddress - feeMultiplier properties: height: $ref: '#/components/schemas/Height' timestamp: $ref: '#/components/schemas/Timestamp' difficulty: $ref: '#/components/schemas/Difficulty' proofGamma: $ref: '#/components/schemas/ProofGamma' proofVerificationHash: $ref: '#/components/schemas/ProofVerificationHash' proofScalar: $ref: '#/components/schemas/ProofScalar' previousBlockHash: $ref: '#/components/schemas/Hash256' transactionsHash: $ref: '#/components/schemas/Hash256' receiptsHash: $ref: '#/components/schemas/Hash256' stateHash: $ref: '#/components/schemas/Hash256' beneficiaryAddress: $ref: '#/components/schemas/Address' feeMultiplier: $ref: '#/components/schemas/BlockFeeMultiplier' BlockInfoDTO: type: object required: - id - meta - block properties: id: type: string description: Internal resource identifier. meta: $ref: '#/components/schemas/BlockMetaDTO' block: anyOf: - $ref: '#/components/schemas/BlockDTO' - $ref: '#/components/schemas/ImportanceBlockDTO' BlockMetaDTO: type: object required: - hash - totalFee - generationHash - stateHashSubCacheMerkleRoots - totalTransactionsCount - transactionsCount - statementsCount properties: hash: $ref: '#/components/schemas/Hash256' totalFee: $ref: '#/components/schemas/Amount' generationHash: $ref: '#/components/schemas/Hash256' stateHashSubCacheMerkleRoots: type: array items: $ref: '#/components/schemas/Hash256' totalTransactionsCount: type: integer description: | Total number of [transactions](https://docs.symbolplatform.com/concepts/transaction.html) confirmed in this block, including *embedded* transactions (i.e. transactions contained within aggregate transactions). example: 1 transactionsCount: type: integer description: | Number of [transactions](https://docs.symbolplatform.com/concepts/transaction.html) confirmed in this block. This does not count *embedded* transactions (i.e. transactions contained within aggregate transactions). example: 1 statementsCount: type: integer description: | Number of statements (of any kind) present in this block. Bear in mind that some of them (like [resolution statements](https://docs.symbolplatform.com/concepts/receipt.html#resolution-statement)) are triggered by transactions present in the block, but in general, [transaction statements](https://docs.symbolplatform.com/concepts/receipt.html#transaction-statement) are not. example: 1 BlockPage: type: object required: - data - pagination properties: data: type: array description: Array of blocks. items: $ref: '#/components/schemas/BlockInfoDTO' pagination: $ref: '#/components/schemas/Pagination' ImportanceBlockDTO: type: object allOf: - $ref: '#/components/schemas/BlockDTO' - type: object required: - votingEligibleAccountsCount - harvestingEligibleAccountsCount - totalVotingBalance - previousImportanceBlockHash properties: votingEligibleAccountsCount: $ref: '#/components/schemas/UInt32' description: Number of voting eligible accounts. harvestingEligibleAccountsCount: $ref: '#/components/schemas/UInt64' description: Number of harvesting eligible accounts. totalVotingBalance: $ref: '#/components/schemas/Amount' description: Total balance eligible for voting. previousImportanceBlockHash: $ref: '#/components/schemas/Hash256' description: Previous importance block hash. MerklePathItemDTO: type: object description: 'Each merkle path item is composed of a hash, and a position relative to the proofHash being evaluated.' properties: position: $ref: '#/components/schemas/PositionEnum' hash: $ref: '#/components/schemas/Hash256' MerkleProofInfoDTO: type: object properties: merklePath: type: array description: List of complementary merkle path items needed to recalculate the merkle root. items: $ref: '#/components/schemas/MerklePathItemDTO' ChainInfoDTO: type: object required: - height - scoreHigh - scoreLow - latestFinalizedBlock properties: height: $ref: '#/components/schemas/Height' scoreHigh: $ref: '#/components/schemas/Score' scoreLow: $ref: '#/components/schemas/Score' latestFinalizedBlock: $ref: '#/components/schemas/FinalizedBlockDTO' FinalizedBlockDTO: type: object required: - finalizationEpoch - finalizationPoint - height - hash properties: finalizationEpoch: $ref: '#/components/schemas/FinalizationEpoch' finalizationPoint: $ref: '#/components/schemas/FinalizationPoint' height: $ref: '#/components/schemas/Height' hash: $ref: '#/components/schemas/Hash256' RentalFeesDTO: type: object required: - effectiveRootNamespaceRentalFeePerBlock - effectiveChildNamespaceRentalFee - effectiveMosaicRentalFee properties: effectiveRootNamespaceRentalFeePerBlock: $ref: '#/components/schemas/Amount' description: Estimated effective rental fee to register/extend a namespace per block. example: 0 effectiveChildNamespaceRentalFee: $ref: '#/components/schemas/Amount' description: Estimated effective rental fee to create a subnamespace. example: 0 effectiveMosaicRentalFee: $ref: '#/components/schemas/Amount' description: Estimated effective rental fee to create a mosaic. example: 0 TransactionFeesDTO: type: object required: - averageFeeMultiplier - medianFeeMultiplier - highestFeeMultiplier - lowestFeeMultiplier - minFeeMultiplier properties: averageFeeMultiplier: $ref: '#/components/schemas/BlockFeeMultiplier' description: Average fee multiplier over the last "numBlocksTransactionFeeStats" on the current Network. example: 1 medianFeeMultiplier: $ref: '#/components/schemas/BlockFeeMultiplier' description: Median fee multiplier over the last "numBlocksTransactionFeeStats" on the current Network. example: 1 highestFeeMultiplier: $ref: '#/components/schemas/BlockFeeMultiplier' description: Highest fee multiplier over the last "numBlocksTransactionFeeStats" on the current Network. example: 2 lowestFeeMultiplier: $ref: '#/components/schemas/BlockFeeMultiplier' description: Lowest fee multiplier over the last "numBlocksTransactionFeeStats" on the current Network. example: 0 minFeeMultiplier: $ref: '#/components/schemas/BlockFeeMultiplier' description: Minimal fee multiplier on the current connected Node. example: 0 NetworkTypeEnum: type: integer enum: - 104 - 152 description: | Network type: * 0x68 (104 decimal) - Main network. * 0x98 (152 decimal) - Test network. example: 144 EntityDTO: type: object required: - signerPublicKey - version - network - type properties: signerPublicKey: $ref: '#/components/schemas/PublicKey' version: type: integer description: Entity version. network: $ref: '#/components/schemas/NetworkTypeEnum' type: type: integer SizePrefixedEntityDTO: type: object required: - size properties: size: $ref: '#/components/schemas/UInt32' description: Entity size in bytes. VerifiableEntityDTO: type: object required: - signature properties: signature: $ref: '#/components/schemas/Signature' BmTreeSignature: type: object required: - root - bottom properties: root: $ref: '#/components/schemas/ParentPublicKeySignaturePair' bottom: $ref: '#/components/schemas/ParentPublicKeySignaturePair' FinalizationProofDTO: type: object required: - version - finalizationEpoch - finalizationPoint - height - hash - messageGroups properties: version: type: integer finalizationEpoch: $ref: '#/components/schemas/FinalizationEpoch' finalizationPoint: $ref: '#/components/schemas/FinalizationPoint' height: $ref: '#/components/schemas/Height' hash: $ref: '#/components/schemas/Hash256' messageGroups: type: array items: $ref: '#/components/schemas/MessageGroup' MessageGroup: type: object required: - stage - height - hashes - signatures properties: stage: description: Message stage $ref: '#/components/schemas/StageEnum' height: description: Block height corresponding to the first hash. $ref: '#/components/schemas/Height' hashes: type: array items: $ref: '#/components/schemas/Hash256' signatures: type: array items: $ref: '#/components/schemas/BmTreeSignature' ParentPublicKeySignaturePair: type: object required: - parentPublicKey - signature properties: parentPublicKey: $ref: '#/components/schemas/PublicKey' signature: $ref: '#/components/schemas/Signature' StageEnum: type: integer enum: - 0 - 1 - 2 description: | Type of stage: * 0 - Prevote. * 1 - Precommit. * 2 - Count. example: 0 NodeIdentityEqualityStrategy: type: string description: | Node equality strategy. Defines if the identifier for the node must be its public key or host. enum: - host - public-key NetworkTypeDTO: type: object required: - name - description properties: name: type: string description: Network name. example: testnet description: type: string description: A short text describing the network. example: catapult public test network ChainPropertiesDTO: type: object description: Chain related configuration properties. properties: enableVerifiableState: type: boolean description: Set to true if block chain should calculate state hashes so that state is fully verifiable at each block. example: true enableVerifiableReceipts: type: boolean description: Set to true if block chain should calculate receipts so that state changes are fully verifiable at each block. example: true currencyMosaicId: type: string description: Mosaic id used as primary chain currency. example: 0x24F4'26B8'D549'3D4B harvestingMosaicId: type: string description: Mosaic id used to provide harvesting ability. example: 0x1D9C'DC7E'218C'A88D blockGenerationTargetTime: type: string description: Targeted time between blocks. example: 30s blockTimeSmoothingFactor: type: string description: A higher value makes the network more biased. example: '3000' blockFinalizationInterval: type: string description: Number of blocks between successive finalization attempts. example: 30 importanceGrouping: type: string description: Number of blocks that should be treated as a group for importance purposes. example: '39' importanceActivityPercentage: type: string description: Percentage of importance resulting from fee generation and beneficiary usage. example: '5' maxRollbackBlocks: type: string description: Maximum number of blocks that can be rolled back. example: '40' maxDifficultyBlocks: type: string description: Maximum number of blocks to use in a difficulty calculation. example: '60' defaultDynamicFeeMultiplier: type: string description: Default multiplier to use for dynamic fees. example: 10'000 maxTransactionLifetime: type: string description: Maximum lifetime a transaction can have before it expires. example: 24h maxBlockFutureTime: type: string description: Maximum future time of a block that can be accepted. example: 500ms initialCurrencyAtomicUnits: type: string description: Initial currency atomic units available in the network. example: 8'998'999'998'000'000 maxMosaicAtomicUnits: type: string description: Maximum atomic units (total-supply * 10 ^ divisibility) of a mosaic allowed in the network. example: 9'000'000'000'000'000 totalChainImportance: type: string description: Total whole importance units available in the network. example: 15'000'000 minHarvesterBalance: type: string description: Minimum number of harvesting mosaic atomic units needed for an account to be eligible for harvesting. example: '500' maxHarvesterBalance: type: string description: Maximum number of harvesting mosaic atomic units needed for an account to be eligible for harvesting. example: 4'000'000 minVoterBalance: type: string description: Minimum number of harvesting mosaic atomic units needed for an account to be eligible for voting. example: 50'000 maxVotingKeysPerAccount: type: string description: Maximum number of voting keys that can be registered at once per account. example: '3' minVotingKeyLifetime: type: string description: Minimum number of finalization rounds for which voting key can be registered. example: '72' maxVotingKeyLifetime: type: string description: Maximum number of finalization rounds for which voting key can be registered. example: '26280' harvestBeneficiaryPercentage: type: string description: Percentage of the harvested fee that is collected by the beneficiary account. example: '10' harvestNetworkPercentage: type: string description: Percentage of the harvested fee that is collected by the network. example: '5' harvestNetworkFeeSinkAddress: $ref: '#/components/schemas/Address' description: Address of the harvest network fee sink account. example: SDKDPA36TE53BO24FD4KA6OPGOUSEVOU3O5SIFI blockPruneInterval: type: string description: Number of blocks between cache pruning. example: '360' maxTransactionsPerBlock: type: string description: Maximum number of transactions per block. example: 200'000 NetworkConfigurationDTO: type: object required: - network - chain - plugins properties: network: $ref: '#/components/schemas/NetworkPropertiesDTO' chain: $ref: '#/components/schemas/ChainPropertiesDTO' plugins: $ref: '#/components/schemas/PluginsPropertiesDTO' NetworkPropertiesDTO: type: object description: Network related configuration properties. properties: identifier: type: string description: Network identifier. example: testnet nodeEqualityStrategy: $ref: '#/components/schemas/NodeIdentityEqualityStrategy' example: host nemesisSignerPublicKey: $ref: '#/components/schemas/PublicKey' description: Nemesis public key. example: B4F12E7C9F6946091E2CB8B6D3A12B50D17CCBBF646386EA27CE2946A7423DCF generationHashSeed: $ref: '#/components/schemas/Hash256' description: Seed for generating Nemesis generation hash. example: 57F7DA205008026C776CB6AED843393F04CD458E0AA2D9F1D5F31A402072B2D6 epochAdjustment: type: string description: Nemesis epoch time adjustment. example: 1573430400s PluginsPropertiesDTO: type: object description: Plugin related configuration properties. properties: accountlink: $ref: '#/components/schemas/AccountKeyLinkNetworkPropertiesDTO' aggregate: $ref: '#/components/schemas/AggregateNetworkPropertiesDTO' lockhash: $ref: '#/components/schemas/HashLockNetworkPropertiesDTO' locksecret: $ref: '#/components/schemas/SecretLockNetworkPropertiesDTO' metadata: $ref: '#/components/schemas/MetadataNetworkPropertiesDTO' mosaic: $ref: '#/components/schemas/MosaicNetworkPropertiesDTO' multisig: $ref: '#/components/schemas/MultisigNetworkPropertiesDTO' namespace: $ref: '#/components/schemas/NamespaceNetworkPropertiesDTO' restrictionaccount: $ref: '#/components/schemas/AccountRestrictionNetworkPropertiesDTO' restrictionmosaic: $ref: '#/components/schemas/MosaicRestrictionNetworkPropertiesDTO' transfer: $ref: '#/components/schemas/TransferNetworkPropertiesDTO' NodeStatusEnum: type: string enum: - up - down RolesTypeEnum: type: integer description: | A number that defines the different roles the node provides. Possible roles are: * 1 - Peer node. * 2 - Api node. * 4 - Voting node. * 64 - IPv4 compatible node * 128 - IPv6 compatible node. The values are bitwise added together, Examples: 1 = Just Peer. 2 = Just Api. 3 = Peer and Api node. 7 = Peer, Api and Voting node. 65 = IPv4 and Peer node. example: 7 CommunicationTimestampsDTO: type: object properties: sendTimestamp: $ref: '#/components/schemas/Timestamp' receiveTimestamp: $ref: '#/components/schemas/Timestamp' DeploymentDTO: type: object required: - deploymentTool - deploymentToolVersion - lastUpdatedDate properties: deploymentTool: type: string example: symbol-bootstrap description: 'The tool used to create, maintain and deploy the node. Examples: symbol-bootstrap, manual.' deploymentToolVersion: type: string example: 1.0.6 description: 'The version of the tool used to create, maintain and deploy the node.' lastUpdatedDate: type: string example: '2021-06-02' description: When was the node last upgraded. NodeHealthDTO: type: object required: - apiNode - db properties: apiNode: $ref: '#/components/schemas/NodeStatusEnum' description: API node service status. db: $ref: '#/components/schemas/NodeStatusEnum' description: MongoDB service status. NodeHealthInfoDTO: type: object required: - status properties: status: $ref: '#/components/schemas/NodeHealthDTO' NodeInfoDTO: type: object required: - version - publicKey - networkGenerationHashSeed - roles - port - networkIdentifier - friendlyName - host properties: version: type: integer description: Version of the application. example: 0 publicKey: $ref: '#/components/schemas/PublicKey' networkGenerationHashSeed: $ref: '#/components/schemas/Hash256' roles: $ref: '#/components/schemas/RolesTypeEnum' port: type: integer description: Port used for the communication. example: 7900 networkIdentifier: type: integer example: 144 friendlyName: type: string description: Node friendly name. example: api-node-0 host: type: string description: Node IP address. example: 127.0.0.1 nodePublicKey: $ref: '#/components/schemas/PublicKey' NodeTimeDTO: type: object required: - communicationTimestamps properties: communicationTimestamps: $ref: '#/components/schemas/CommunicationTimestampsDTO' ServerDTO: type: object required: - restVersion - sdkVersion - deployment properties: restVersion: type: string example: 1.0.14 description: catapult-rest component version. sdkVersion: type: string example: 0.7.14 description: catapult-sdk component version. deployment: $ref: '#/components/schemas/DeploymentDTO' ServerInfoDTO: type: object required: - serverInfo properties: serverInfo: $ref: '#/components/schemas/ServerDTO' StorageInfoDTO: type: object required: - numBlocks - numTransactions - numAccounts properties: numBlocks: type: integer description: Number of blocks stored. example: 245053 numTransactions: type: integer description: Number of transactions stored. example: 58590 numAccounts: type: integer description: Number of accounts created. example: 177 UnlockedAccountDTO: type: object required: - unlockedAccount properties: unlockedAccount: type: array items: $ref: '#/components/schemas/PublicKey' TransactionGroupEnum: type: string description: | A transaction could be classified in the following groups: * Unconfirmed: The transaction reached the P2P network. At this point, it is not guaranteed that the transaction will be included in a block. * Confirmed: The transaction is included in a block. * Partial: The transaction requires to be cosigned by other transaction participants in order to be included in a block. * Failed: The transaction did not pass the network validation, and it was rejected. enum: - unconfirmed - confirmed - failed - partial TransactionStatusEnum: type: string enum: - Success - Neutral - Failure - Failure_Core_Past_Deadline - Failure_Core_Future_Deadline - Failure_Core_Insufficient_Balance - Failure_Core_Too_Many_Transactions - Failure_Core_Nemesis_Account_Signed_After_Nemesis_Block - Failure_Core_Wrong_Network - Failure_Core_Invalid_Address - Failure_Core_Invalid_Version - Failure_Core_Invalid_Transaction_Fee - Failure_Core_Block_Harvester_Ineligible - Failure_Core_Zero_Address - Failure_Core_Zero_Public_Key - Failure_Core_Nonzero_Internal_Padding - Failure_Core_Address_Collision - Failure_Core_Importance_Block_Mismatch - Failure_Core_Unexpected_Block_Type - Failure_Core_Block_Explicit_Transactions_Hash_Mismatch - Failure_Core_Invalid_Link_Action - Failure_Core_Link_Already_Exists - Failure_Core_Inconsistent_Unlink_Data - Failure_Core_Invalid_Link_Range - Failure_Core_Too_Many_Links - Failure_Core_Link_Start_Epoch_Invalid - Failure_Hash_Already_Exists - Failure_Signature_Not_Verifiable - Failure_AccountLink_Link_Already_Exists - Failure_AccountLink_Inconsistent_Unlink_Data - Failure_AccountLink_Unknown_Link - Failure_AccountLink_Remote_Account_Ineligible - Failure_AccountLink_Remote_Account_Signer_Prohibited - Failure_AccountLink_Remote_Account_Participant_Prohibited - Failure_Aggregate_Too_Many_Transactions - Failure_Aggregate_No_Transactions - Failure_Aggregate_Too_Many_Cosignatures - Failure_Aggregate_Redundant_Cosignatures - Failure_Aggregate_Ineligible_Cosignatories - Failure_Aggregate_Missing_Cosignatures - Failure_Aggregate_Transactions_Hash_Mismatch - Failure_LockHash_Invalid_Mosaic_Id - Failure_LockHash_Invalid_Mosaic_Amount - Failure_LockHash_Hash_Already_Exists - Failure_LockHash_Unknown_Hash - Failure_LockHash_Inactive_Hash - Failure_LockHash_Invalid_Duration - Failure_LockSecret_Invalid_Hash_Algorithm - Failure_LockSecret_Hash_Already_Exists - Failure_LockSecret_Proof_Size_Out_Of_Bounds - Failure_LockSecret_Secret_Mismatch - Failure_LockSecret_Unknown_Composite_Key - Failure_LockSecret_Inactive_Secret - Failure_LockSecret_Hash_Algorithm_Mismatch - Failure_LockSecret_Invalid_Duration - Failure_Metadata_Value_Too_Small - Failure_Metadata_Value_Too_Large - Failure_Metadata_Value_Size_Delta_Too_Large - Failure_Metadata_Value_Size_Delta_Mismatch - Failure_Metadata_Value_Change_Irreversible - Failure_Mosaic_Invalid_Duration - Failure_Mosaic_Invalid_Name - Failure_Mosaic_Name_Id_Mismatch - Failure_Mosaic_Expired - Failure_Mosaic_Owner_Conflict - Failure_Mosaic_Id_Mismatch - Failure_Mosaic_Parent_Id_Conflict - Failure_Mosaic_Invalid_Property - Failure_Mosaic_Invalid_Flags - Failure_Mosaic_Invalid_Divisibility - Failure_Mosaic_Invalid_Supply_Change_Action - Failure_Mosaic_Invalid_Supply_Change_Amount - Failure_Mosaic_Invalid_Id - Failure_Mosaic_Modification_Disallowed - Failure_Mosaic_Modification_No_Changes - Failure_Mosaic_Supply_Immutable - Failure_Mosaic_Supply_Negative - Failure_Mosaic_Supply_Exceeded - Failure_Mosaic_Non_Transferable - Failure_Mosaic_Max_Mosaics_Exceeded - Failure_Mosaic_Required_Property_Flag_Unset - Failure_Multisig_Account_In_Both_Sets - Failure_Multisig_Multiple_Deletes - Failure_Multisig_Redundant_Modification - Failure_Multisig_Unknown_Multisig_Account - Failure_Multisig_Not_A_Cosignatory - Failure_Multisig_Already_A_Cosignatory - Failure_Multisig_Min_Setting_Out_Of_Range - Failure_Multisig_Min_Setting_Larger_Than_Num_Cosignatories - Failure_Multisig_Invalid_Modification_Action - Failure_Multisig_Max_Cosigned_Accounts - Failure_Multisig_Max_Cosignatories - Failure_Multisig_Loop - Failure_Multisig_Max_Multisig_Depth - Failure_Multisig_Operation_Prohibited_By_Account - Failure_Namespace_Invalid_Duration - Failure_Namespace_Invalid_Name - Failure_Namespace_Name_Id_Mismatch - Failure_Namespace_Expired - Failure_Namespace_Owner_Conflict - Failure_Namespace_Id_Mismatch - Failure_Namespace_Invalid_Registration_Type - Failure_Namespace_Root_Name_Reserved - Failure_Namespace_Too_Deep - Failure_Namespace_Unknown_Parent - Failure_Namespace_Already_Exists - Failure_Namespace_Already_Active - Failure_Namespace_Eternal_After_Nemesis_Block - Failure_Namespace_Max_Children_Exceeded - Failure_Namespace_Alias_Invalid_Action - Failure_Namespace_Unknown - Failure_Namespace_Alias_Already_Exists - Failure_Namespace_Unknown_Alias - Failure_Namespace_Alias_Inconsistent_Unlink_Type - Failure_Namespace_Alias_Inconsistent_Unlink_Data - Failure_Namespace_Alias_Invalid_Address - Failure_RestrictionAccount_Invalid_Restriction_Flags - Failure_RestrictionAccount_Invalid_Modification_Action - Failure_RestrictionAccount_Invalid_Modification_Address - Failure_RestrictionAccount_Modification_Operation_Type_Incompatible - Failure_RestrictionAccount_Redundant_Modification - Failure_RestrictionAccount_Invalid_Modification - Failure_RestrictionAccount_Modification_Count_Exceeded - Failure_RestrictionAccount_No_Modifications - Failure_RestrictionAccount_Values_Count_Exceeded - Failure_RestrictionAccount_Invalid_Value - Failure_RestrictionAccount_Address_Interaction_Prohibited - Failure_RestrictionAccount_Mosaic_Transfer_Prohibited - Failure_RestrictionAccount_Operation_Type_Prohibited - Failure_RestrictionMosaic_Invalid_Restriction_Type - Failure_RestrictionMosaic_Previous_Value_Mismatch - Failure_RestrictionMosaic_Previous_Value_Must_Be_Zero - Failure_RestrictionMosaic_Max_Restrictions_Exceeded - Failure_RestrictionMosaic_Cannot_Delete_Nonexistent_Restriction - Failure_RestrictionMosaic_Unknown_Global_Restriction - Failure_RestrictionMosaic_Invalid_Global_Restriction - Failure_RestrictionMosaic_Account_Unauthorized - Failure_Transfer_Message_Too_Large - Failure_Transfer_Out_Of_Order_Mosaics - Failure_Chain_Unlinked - Failure_Chain_Block_Not_Hit - Failure_Chain_Block_Inconsistent_State_Hash - Failure_Chain_Block_Inconsistent_Receipts_Hash - Failure_Chain_Block_Invalid_Vrf_Proof - Failure_Chain_Block_Unknown_Signer - Failure_Chain_Unconfirmed_Cache_Too_Full - Failure_Consumer_Empty_Input - Failure_Consumer_Block_Transactions_Hash_Mismatch - Neutral_Consumer_Hash_In_Recency_Cache - Failure_Consumer_Remote_Chain_Too_Many_Blocks - Failure_Consumer_Remote_Chain_Improper_Link - Failure_Consumer_Remote_Chain_Duplicate_Transactions - Failure_Consumer_Remote_Chain_Unlinked - Failure_Consumer_Remote_Chain_Difficulties_Mismatch - Failure_Consumer_Remote_Chain_Score_Not_Better - Failure_Consumer_Remote_Chain_Too_Far_Behind - Failure_Consumer_Remote_Chain_Too_Far_In_Future - Failure_Consumer_Batch_Signature_Not_Verifiable - Failure_Consumer_Remote_Chain_Improper_Importance_Link - Failure_Extension_Partial_Transaction_Cache_Prune - Failure_Extension_Partial_Transaction_Dependency_Removed - Failure_Extension_Read_Rate_Limit_Exceeded description: | List of status errors that can be returned via the status channel after announcing a transaction: * Success * Neutral * Failure * Failure_Core_Past_Deadline - Validation failed because the deadline passed. * Failure_Core_Future_Deadline - Validation failed because the deadline is too far in the future. * Failure_Core_Insufficient_Balance - Validation failed because the account has an insufficient balance. * Failure_Core_Too_Many_Transactions - Validation failed because there are too many transactions in a block. * Failure_Core_Nemesis_Account_Signed_After_Nemesis_Block - Validation failed because an entity originated from the nemesis account after the nemesis block. * Failure_Core_Wrong_Network - Validation failed because the entity has the wrong network specified. * Failure_Core_Invalid_Address - Validation failed because an address is invalid. * Failure_Core_Invalid_Version - Validation failed because entity version is invalid. * Failure_Core_Invalid_Transaction_Fee - Validation failed because a transaction fee is invalid. * Failure_Core_Block_Harvester_Ineligible - Validation failed because a block was harvested by an ineligible harvester. * Failure_Core_Zero_Address - Validation failed because an address is zero. * Failure_Core_Zero_Public_Key - Validation failed because a public key is zero. * Failure_Core_Nonzero_Internal_Padding - Validation failed because internal padding is nonzero. * Failure_Core_Address_Collision - Validation failed because an address collision is detected. * Failure_Core_Importance_Block_Mismatch - Validation failed because the block does not match the schema of an importance block. * Failure_Core_Unexpected_Block_Type - Validation failed because the block type is unexpected. * Failure_Core_Block_Explicit_Transactions_Hash_Mismatch - Validation failed because a block did not have the expected transactions hash at a specified height. * Failure_Core_Invalid_Link_Action - Validation failed because link action is invalid. * Failure_Core_Link_Already_Exists - Validation failed because main account is already linked to another account. * Failure_Core_Inconsistent_Unlink_Data - Validation failed because unlink data is not consistent with existing account link. * Failure_Core_Invalid_Link_Range - Validation failed because link range is invalid. * Failure_Core_Too_Many_Links - Validation failed because main account has too many links of the specified type. * Failure_Core_Link_Start_Epoch_Invalid - Validation failed because the start epoch is invalid. * Failure_Hash_Already_Exists * Failure_Signature_Not_Verifiable - Validation failed because the verification of the signature failed. * Failure_AccountLink_Link_Already_Exists - Validation failed because main account is already linked to another account. * Failure_AccountLink_Inconsistent_Unlink_Data - Validation failed because unlink data is not consistent with existing account link. * Failure_AccountLink_Unknown_Link - Validation failed because main account is not linked to another account. * Failure_AccountLink_Remote_Account_Ineligible - Validation failed because link is attempting to convert ineligible account to remote. * Failure_AccountLink_Remote_Account_Signer_Prohibited - Validation failed because remote is not allowed to sign a transaction. * Failure_AccountLink_Remote_Account_Participant_Prohibited - Validation failed because remote is not allowed to participate in the transaction. * Failure_Aggregate_Too_Many_Transactions - Validation failed because aggregate has too many transactions. * Failure_Aggregate_No_Transactions - Validation failed because aggregate does not have any transactions. * Failure_Aggregate_Too_Many_Cosignatures - Validation failed because aggregate has too many cosignatures. * Failure_Aggregate_Redundant_Cosignatures - Validation failed because redundant cosignatures are present. * Failure_Aggregate_Ineligible_Cosignatories - Validation failed because at least one cosignatory is ineligible. * Failure_Aggregate_Missing_Cosignatures - Validation failed because at least one required cosignature is missing. * Failure_Aggregate_Transactions_Hash_Mismatch - Validation failed because the aggregate transactions hash does not match the calculated value. * Failure_LockHash_Invalid_Mosaic_Id - Validation failed because lock does not allow the specified mosaic. * Failure_LockHash_Invalid_Mosaic_Amount - Validation failed because lock does not allow the specified amount. * Failure_LockHash_Hash_Already_Exists - Validation failed because hash is already present in cache. * Failure_LockHash_Unknown_Hash - Validation failed because hash is not present in cache. * Failure_LockHash_Inactive_Hash - Validation failed because hash is inactive. * Failure_LockHash_Invalid_Duration - Validation failed because duration is too long. * Failure_LockSecret_Invalid_Hash_Algorithm - Validation failed because hash algorithm for lock type secret is invalid. * Failure_LockSecret_Hash_Already_Exists - Validation failed because hash is already present in cache. * Failure_LockSecret_Proof_Size_Out_Of_Bounds - Validation failed because proof is too small or too large. * Failure_LockSecret_Secret_Mismatch - Validation failed because secret does not match proof. * Failure_LockSecret_Unknown_Composite_Key - Validation failed because composite key is unknown. * Failure_LockSecret_Inactive_Secret - Validation failed because secret is inactive. * Failure_LockSecret_Hash_Algorithm_Mismatch - Validation failed because hash algorithm does not match. * Failure_LockSecret_Invalid_Duration - Validation failed because duration is too long. * Failure_Metadata_Value_Too_Small - Validation failed because the metadata value is too small. * Failure_Metadata_Value_Too_Large - Validation failed because the metadata value is too large. * Failure_Metadata_Value_Size_Delta_Too_Large - Validation failed because the metadata value size delta is larger in magnitude than the value size. * Failure_Metadata_Value_Size_Delta_Mismatch - Validation failed because the metadata value size delta does not match expected value based on the current state. * Failure_Metadata_Value_Change_Irreversible - Validation failed because a metadata value change (truncation) is irreversible. * Failure_Mosaic_Invalid_Duration - Validation failed because the duration has an invalid value. * Failure_Mosaic_Invalid_Name - Validation failed because the name is invalid. * Failure_Mosaic_Name_Id_Mismatch - Validation failed because the name and id don't match. * Failure_Mosaic_Expired - Validation failed because the parent is expired. * Failure_Mosaic_Owner_Conflict - Validation failed because the parent owner conflicts with the child owner. * Failure_Mosaic_Id_Mismatch - Validation failed because the id is not the expected id generated from signer and nonce. * Failure_Mosaic_Parent_Id_Conflict - Validation failed because the existing parent id does not match the supplied parent id. * Failure_Mosaic_Invalid_Property - Validation failed because a mosaic property is invalid. * Failure_Mosaic_Invalid_Flags - Validation failed because the mosaic flags are invalid. * Failure_Mosaic_Invalid_Divisibility - Validation failed because the mosaic divisibility is invalid. * Failure_Mosaic_Invalid_Supply_Change_Action - Validation failed because the mosaic supply change action is invalid. * Failure_Mosaic_Invalid_Supply_Change_Amount - Validation failed because the mosaic supply change amount is invalid. * Failure_Mosaic_Invalid_Id - Validation failed because the mosaic id is invalid. * Failure_Mosaic_Modification_Disallowed - Validation failed because mosaic modification is not allowed. * Failure_Mosaic_Modification_No_Changes - Validation failed because mosaic modification would not result in any changes. * Failure_Mosaic_Supply_Immutable - Validation failed because the mosaic supply is immutable. * Failure_Mosaic_Supply_Negative - Validation failed because the resulting mosaic supply is negative. * Failure_Mosaic_Supply_Exceeded - Validation failed because the resulting mosaic supply exceeds the maximum allowed value. * Failure_Mosaic_Non_Transferable - Validation failed because the mosaic is not transferable. * Failure_Mosaic_Max_Mosaics_Exceeded - Validation failed because the credit of the mosaic would exceed the maximum of different mosaics an account is allowed to own. * Failure_Mosaic_Required_Property_Flag_Unset - Validation failed because the mosaic has at least one required property flag unset. * Failure_Multisig_Account_In_Both_Sets - Validation failed because account is specified to be both added and removed. * Failure_Multisig_Multiple_Deletes - Validation failed because multiple removals are present. * Failure_Multisig_Redundant_Modification - Validation failed because a modification is redundant. * Failure_Multisig_Unknown_Multisig_Account - Validation failed because account is not in multisig cache. * Failure_Multisig_Not_A_Cosignatory - Validation failed because account to be removed is not present. * Failure_Multisig_Already_A_Cosignatory - Validation failed because account to be added is already a cosignatory. * Failure_Multisig_Min_Setting_Out_Of_Range - Validation failed because new minimum settings are out of range. * Failure_Multisig_Min_Setting_Larger_Than_Num_Cosignatories - Validation failed because min settings are larger than number of cosignatories. * Failure_Multisig_Invalid_Modification_Action - Validation failed because the modification action is invalid. * Failure_Multisig_Max_Cosigned_Accounts - Validation failed because the cosignatory already cosigns the maximum number of accounts. * Failure_Multisig_Max_Cosignatories - Validation failed because the multisig account already has the maximum number of cosignatories. * Failure_Multisig_Loop - Validation failed because a multisig loop is created. * Failure_Multisig_Max_Multisig_Depth - Validation failed because the max multisig depth is exceeded. * Failure_Multisig_Operation_Prohibited_By_Account - Validation failed because an operation is not permitted by a multisig account. * Failure_Namespace_Invalid_Duration - Validation failed because the duration has an invalid value. * Failure_Namespace_Invalid_Name - Validation failed because the name is invalid. * Failure_Namespace_Name_Id_Mismatch - Validation failed because the name and id don't match. * Failure_Namespace_Expired - Validation failed because the parent is expired. * Failure_Namespace_Owner_Conflict - Validation failed because the parent owner conflicts with the child owner. * Failure_Namespace_Id_Mismatch - Validation failed because the id is not the expected id generated from signer and nonce. * Failure_Namespace_Invalid_Registration_Type - Validation failed because the namespace registration type is invalid. * Failure_Namespace_Root_Name_Reserved - Validation failed because the root namespace has a reserved name. * Failure_Namespace_Too_Deep - Validation failed because the resulting namespace would exceed the maximum allowed namespace depth. * Failure_Namespace_Unknown_Parent - Validation failed because the namespace parent is unknown. * Failure_Namespace_Already_Exists - Validation failed because the namespace already exists. * Failure_Namespace_Already_Active - Validation failed because the namespace is already active. * Failure_Namespace_Eternal_After_Nemesis_Block - Validation failed because an eternal namespace was received after the nemesis block. * Failure_Namespace_Max_Children_Exceeded - Validation failed because the maximum number of children for a root namespace was exceeded. * Failure_Namespace_Alias_Invalid_Action - Validation failed because alias action is invalid. * Failure_Namespace_Unknown - Validation failed because namespace does not exist. * Failure_Namespace_Alias_Already_Exists - Validation failed because namespace is already linked to an alias. * Failure_Namespace_Unknown_Alias - Validation failed because namespace is not linked to an alias. * Failure_Namespace_Alias_Inconsistent_Unlink_Type - Validation failed because unlink type is not consistent with existing alias. * Failure_Namespace_Alias_Inconsistent_Unlink_Data - Validation failed because unlink data is not consistent with existing alias. * Failure_Namespace_Alias_Invalid_Address - Validation failed because aliased address is invalid. * Failure_RestrictionAccount_Invalid_Restriction_Flags - Validation failed because the account restriction flags are invalid. * Failure_RestrictionAccount_Invalid_Modification_Action - Validation failed because a modification action is invalid. * Failure_RestrictionAccount_Invalid_Modification_Address - Validation failed because a modification address is invalid. * Failure_RestrictionAccount_Modification_Operation_Type_Incompatible - Validation failed because the operation type is incompatible. *Note*: This indicates that the existing restrictions have a different operation type than that specified in the notification. * Failure_RestrictionAccount_Redundant_Modification - Validation failed because a modification is redundant. * Failure_RestrictionAccount_Invalid_Modification - Validation failed because a value is not in the container. * Failure_RestrictionAccount_Modification_Count_Exceeded - Validation failed because the transaction has too many modifications. * Failure_RestrictionAccount_No_Modifications - Validation failed because the transaction has no modifications. * Failure_RestrictionAccount_Values_Count_Exceeded - Validation failed because the resulting account restriction has too many values. * Failure_RestrictionAccount_Invalid_Value - Validation failed because the account restriction value is invalid. * Failure_RestrictionAccount_Address_Interaction_Prohibited - Validation failed because the addresses involved in the transaction are not allowed to interact. * Failure_RestrictionAccount_Mosaic_Transfer_Prohibited - Validation failed because the mosaic transfer is prohibited by the recipient. * Failure_RestrictionAccount_Operation_Type_Prohibited - Validation failed because the operation type is not allowed to be initiated by the signer. * Failure_RestrictionMosaic_Invalid_Restriction_Type - Validation failed because the mosaic restriction type is invalid. * Failure_RestrictionMosaic_Previous_Value_Mismatch - Validation failed because specified previous value does not match current value. * Failure_RestrictionMosaic_Previous_Value_Must_Be_Zero - Validation failed because specified previous value is nonzero. * Failure_RestrictionMosaic_Max_Restrictions_Exceeded - Validation failed because the maximum number of restrictions would be exceeded. * Failure_RestrictionMosaic_Cannot_Delete_Nonexistent_Restriction - Validation failed because nonexistent restriction cannot be deleted. * Failure_RestrictionMosaic_Unknown_Global_Restriction - Validation failed because required global restriction does not exist. * Failure_RestrictionMosaic_Invalid_Global_Restriction - Validation failed because mosaic has invalid global restriction. * Failure_RestrictionMosaic_Account_Unauthorized - Validation failed because account lacks proper permissions to move mosaic. * Failure_Transfer_Message_Too_Large - Validation failed because the message is too large. * Failure_Transfer_Out_Of_Order_Mosaics - Validation failed because mosaics are out of order. * Failure_Chain_Unlinked - Validation failed because a block was received that did not link with the existing chain. * Failure_Chain_Block_Not_Hit - Validation failed because a block was received that is not a hit. * Failure_Chain_Block_Inconsistent_State_Hash - Validation failed because a block was received that has an inconsistent state hash. * Failure_Chain_Block_Inconsistent_Receipts_Hash - Validation failed because a block was received that has an inconsistent receipts hash. * Failure_Chain_Block_Invalid_Vrf_Proof - Validation failed because the Vrf proof is invalid. * Failure_Chain_Block_Unknown_Signer - Validation failed because the block signer is unknown. * Failure_Chain_Unconfirmed_Cache_Too_Full - Validation failed because the unconfirmed cache is too full. * Failure_Consumer_Empty_Input - Validation failed because the consumer input is empty. * Failure_Consumer_Block_Transactions_Hash_Mismatch - Validation failed because the block transactions hash does not match the calculated value. * Neutral_Consumer_Hash_In_Recency_Cache - Validation failed because an entity hash is present in the recency cache. * Failure_Consumer_Remote_Chain_Too_Many_Blocks - Validation failed because the chain part has too many blocks. * Failure_Consumer_Remote_Chain_Improper_Link - Validation failed because the chain is internally improperly linked. * Failure_Consumer_Remote_Chain_Duplicate_Transactions - Validation failed because the chain part contains duplicate transactions. * Failure_Consumer_Remote_Chain_Unlinked - Validation failed because the chain part does not link to the current chain. * Failure_Consumer_Remote_Chain_Difficulties_Mismatch - Validation failed because the remote chain difficulties do not match the calculated difficulties. * Failure_Consumer_Remote_Chain_Score_Not_Better - Validation failed because the remote chain score is not better. * Failure_Consumer_Remote_Chain_Too_Far_Behind - Validation failed because the remote chain is too far behind. * Failure_Consumer_Remote_Chain_Too_Far_In_Future - Validation failed because the remote chain timestamp is too far in the future. * Failure_Consumer_Batch_Signature_Not_Verifiable - Validation failed because the verification of the signature failed during a batch operation. * Failure_Consumer_Remote_Chain_Improper_Importance_Link - Validation failed because the remote chain has an improper importance link. * Failure_Extension_Partial_Transaction_Cache_Prune - Validation failed because the partial transaction was pruned from the temporal cache. * Failure_Extension_Partial_Transaction_Dependency_Removed - Validation failed because the partial transaction was pruned from the temporal cache due to its dependency being removed. * Failure_Extension_Read_Rate_Limit_Exceeded - Validation failed because socket read rate limit was exceeded. TransactionTypeEnum: type: integer enum: - 16716 - 16963 - 16707 - 16972 - 16705 - 16961 - 16717 - 16973 - 17229 - 16718 - 16974 - 17230 - 16708 - 16964 - 17220 - 16725 - 16712 - 16722 - 16978 - 16720 - 16976 - 17232 - 16721 - 16977 - 16724 description: | Type of transaction: * 0x414C (16716 decimal) - AccountKeyLinkTransaction. * 0x4243 (16963 decimal) - VrfKeyLinkTransaction. * 0x4143 (16707 decimal) - VotingKeyLinkTransaction. * 0x424C (16972 decimal) - NodeKeyLinkTransaction. * 0x4141 (16705 decimal) - AggregateCompleteTransaction. * 0x4241 (16961 decimal) - AggregateBondedTransaction. * 0x414D (16717 decimal) - MosaicDefinitionTransaction. * 0x424D (16973 decimal) - MosaicSupplyChangeTransaction. * 0x434D (17229 decimal) - MosaicSupplyRevocationTransaction. * 0x414E (16718 decimal) - NamespaceRegistrationTransaction. * 0x424E (16974 decimal) - AddressAliasTransaction. * 0x434E (17230 decimal) - MosaicAliasTransaction. * 0x4144 (16708 decimal) - AccountMetadataTransaction. * 0x4244 (16964 decimal) - MosaicMetadataTransaction. * 0x4344 (17220 decimal) - NamespaceMetadataTransaction. * 0x4155 (16725 decimal) - MultisigAccountModificationTransaction. * 0x4148 (16712 decimal) - HashLockTransaction. * 0x4152 (16722 decimal) - SecretLockTransaction. * 0x4252 (16978 decimal) - SecretProofTransaction. * 0x4150 (16720 decimal) - AccountAddressRestrictionTransaction. * 0x4250 (16976 decimal) - AccountMosaicRestrictionTransaction. * 0x4350 (17232 decimal) - AccountOperationRestrictionTransaction. * 0x4151 (16721 decimal) - MosaicGlobalRestrictionTransaction. * 0x4251 (16977 decimal) - MosaicAddressRestrictionTransaction. * 0x4154 (16724 decimal) - TransferTransaction. AnnounceTransactionInfoDTO: type: object required: - message properties: message: type: string EmbeddedTransactionBodyDTO: type: object required: - transactions properties: transactions: type: array description: Array of transactions initiated by different accounts. items: $ref: '#/components/schemas/EmbeddedTransactionInfoDTO' EmbeddedTransactionDTO: type: object allOf: - $ref: '#/components/schemas/EntityDTO' EmbeddedTransactionInfoDTO: type: object required: - id - meta - transaction properties: id: type: string description: Internal resource identifier. meta: $ref: '#/components/schemas/EmbeddedTransactionMetaDTO' transaction: anyOf: - $ref: '#/components/schemas/EmbeddedAccountKeyLinkTransactionDTO' - $ref: '#/components/schemas/EmbeddedNodeKeyLinkTransactionDTO' - $ref: '#/components/schemas/EmbeddedVrfKeyLinkTransactionDTO' - $ref: '#/components/schemas/EmbeddedVotingKeyLinkTransactionDTO' - $ref: '#/components/schemas/EmbeddedHashLockTransactionDTO' - $ref: '#/components/schemas/EmbeddedSecretLockTransactionDTO' - $ref: '#/components/schemas/EmbeddedSecretProofTransactionDTO' - $ref: '#/components/schemas/EmbeddedAccountMetadataTransactionDTO' - $ref: '#/components/schemas/EmbeddedMosaicMetadataTransactionDTO' - $ref: '#/components/schemas/EmbeddedNamespaceMetadataTransactionDTO' - $ref: '#/components/schemas/EmbeddedMosaicDefinitionTransactionDTO' - $ref: '#/components/schemas/EmbeddedMosaicSupplyChangeTransactionDTO' - $ref: '#/components/schemas/EmbeddedMosaicSupplyRevocationTransactionDTO' - $ref: '#/components/schemas/EmbeddedNamespaceRegistrationTransactionDTO' - $ref: '#/components/schemas/EmbeddedAddressAliasTransactionDTO' - $ref: '#/components/schemas/EmbeddedMosaicAliasTransactionDTO' - $ref: '#/components/schemas/EmbeddedMultisigAccountModificationTransactionDTO' - $ref: '#/components/schemas/EmbeddedAccountAddressRestrictionTransactionDTO' - $ref: '#/components/schemas/EmbeddedAccountMosaicRestrictionTransactionDTO' - $ref: '#/components/schemas/EmbeddedAccountOperationRestrictionTransactionDTO' - $ref: '#/components/schemas/EmbeddedMosaicGlobalRestrictionTransactionDTO' - $ref: '#/components/schemas/EmbeddedMosaicAddressRestrictionTransactionDTO' - $ref: '#/components/schemas/EmbeddedTransferTransactionDTO' EmbeddedTransactionMetaDTO: type: object required: - height - aggregateHash - aggregateId - index properties: height: $ref: '#/components/schemas/Height' aggregateHash: $ref: '#/components/schemas/Hash256' aggregateId: type: string description: Identifier of the aggregate transaction. index: type: integer description: Transaction index within the aggregate. timestamp: $ref: '#/components/schemas/Timestamp' feeMultiplier: $ref: '#/components/schemas/BlockFeeMultiplier' TransactionPage: type: object required: - data - pagination properties: data: type: array description: Array of transactions. items: $ref: '#/components/schemas/TransactionInfoDTO' pagination: $ref: '#/components/schemas/Pagination' TransactionBodyDTO: type: object required: - maxFee - deadline properties: maxFee: $ref: '#/components/schemas/Amount' deadline: $ref: '#/components/schemas/BlockDuration' TransactionDTO: type: object allOf: - $ref: '#/components/schemas/SizePrefixedEntityDTO' - $ref: '#/components/schemas/VerifiableEntityDTO' - $ref: '#/components/schemas/EntityDTO' - $ref: '#/components/schemas/TransactionBodyDTO' TransactionInfoDTO: type: object required: - id - meta - transaction properties: id: type: string description: Internal resource identifier. meta: anyOf: - $ref: '#/components/schemas/TransactionMetaDTO' - $ref: '#/components/schemas/EmbeddedTransactionMetaDTO' transaction: anyOf: - $ref: '#/components/schemas/AccountKeyLinkTransactionDTO' - $ref: '#/components/schemas/EmbeddedAccountKeyLinkTransactionDTO' - $ref: '#/components/schemas/NodeKeyLinkTransactionDTO' - $ref: '#/components/schemas/EmbeddedNodeKeyLinkTransactionDTO' - $ref: '#/components/schemas/VrfKeyLinkTransactionDTO' - $ref: '#/components/schemas/EmbeddedVrfKeyLinkTransactionDTO' - $ref: '#/components/schemas/VotingKeyLinkTransactionDTO' - $ref: '#/components/schemas/EmbeddedVotingKeyLinkTransactionDTO' - $ref: '#/components/schemas/AggregateTransactionDTO' - $ref: '#/components/schemas/AggregateTransactionExtendedDTO' - $ref: '#/components/schemas/HashLockTransactionDTO' - $ref: '#/components/schemas/EmbeddedHashLockTransactionDTO' - $ref: '#/components/schemas/SecretLockTransactionDTO' - $ref: '#/components/schemas/EmbeddedSecretLockTransactionDTO' - $ref: '#/components/schemas/SecretProofTransactionDTO' - $ref: '#/components/schemas/EmbeddedSecretProofTransactionDTO' - $ref: '#/components/schemas/AccountMetadataTransactionDTO' - $ref: '#/components/schemas/EmbeddedAccountMetadataTransactionDTO' - $ref: '#/components/schemas/MosaicMetadataTransactionDTO' - $ref: '#/components/schemas/EmbeddedMosaicMetadataTransactionDTO' - $ref: '#/components/schemas/NamespaceMetadataTransactionDTO' - $ref: '#/components/schemas/EmbeddedNamespaceMetadataTransactionDTO' - $ref: '#/components/schemas/MosaicDefinitionTransactionDTO' - $ref: '#/components/schemas/EmbeddedMosaicDefinitionTransactionDTO' - $ref: '#/components/schemas/MosaicSupplyChangeTransactionDTO' - $ref: '#/components/schemas/EmbeddedMosaicSupplyChangeTransactionDTO' - $ref: '#/components/schemas/MosaicSupplyRevocationTransactionDTO' - $ref: '#/components/schemas/EmbeddedMosaicSupplyRevocationTransactionDTO' - $ref: '#/components/schemas/NamespaceRegistrationTransactionDTO' - $ref: '#/components/schemas/EmbeddedNamespaceRegistrationTransactionDTO' - $ref: '#/components/schemas/AddressAliasTransactionDTO' - $ref: '#/components/schemas/EmbeddedAddressAliasTransactionDTO' - $ref: '#/components/schemas/MosaicAliasTransactionDTO' - $ref: '#/components/schemas/EmbeddedMosaicAliasTransactionDTO' - $ref: '#/components/schemas/MultisigAccountModificationTransactionDTO' - $ref: '#/components/schemas/EmbeddedMultisigAccountModificationTransactionDTO' - $ref: '#/components/schemas/AccountAddressRestrictionTransactionDTO' - $ref: '#/components/schemas/EmbeddedAccountAddressRestrictionTransactionDTO' - $ref: '#/components/schemas/AccountMosaicRestrictionTransactionDTO' - $ref: '#/components/schemas/EmbeddedAccountMosaicRestrictionTransactionDTO' - $ref: '#/components/schemas/AccountOperationRestrictionTransactionDTO' - $ref: '#/components/schemas/EmbeddedAccountOperationRestrictionTransactionDTO' - $ref: '#/components/schemas/MosaicGlobalRestrictionTransactionDTO' - $ref: '#/components/schemas/EmbeddedMosaicGlobalRestrictionTransactionDTO' - $ref: '#/components/schemas/MosaicAddressRestrictionTransactionDTO' - $ref: '#/components/schemas/EmbeddedMosaicAddressRestrictionTransactionDTO' - $ref: '#/components/schemas/TransferTransactionDTO' - $ref: '#/components/schemas/EmbeddedTransferTransactionDTO' TransactionMetaDTO: type: object required: - height - hash - merkleComponentHash - index properties: height: $ref: '#/components/schemas/Height' hash: $ref: '#/components/schemas/Hash256' merkleComponentHash: $ref: '#/components/schemas/Hash256' index: type: integer description: Transaction index within the block. timestamp: $ref: '#/components/schemas/Timestamp' feeMultiplier: $ref: '#/components/schemas/BlockFeeMultiplier' TransactionStatusDTO: type: object required: - group - deadline - hash properties: group: $ref: '#/components/schemas/TransactionGroupEnum' code: $ref: '#/components/schemas/TransactionStatusEnum' hash: $ref: '#/components/schemas/Hash256' deadline: $ref: '#/components/schemas/BlockDuration' height: $ref: '#/components/schemas/Height' AccountKeyLinkNetworkPropertiesDTO: type: object properties: dummy: type: string description: to trigger plugin load AccountKeyLinkTransactionBodyDTO: type: object required: - linkedPublicKey - linkAction properties: linkedPublicKey: $ref: '#/components/schemas/PublicKey' linkAction: $ref: '#/components/schemas/LinkActionEnum' AccountKeyLinkTransactionDTO: type: object description: | Transaction to delegate the account importance score to a proxy account. Required for all accounts willing to activate delegated harvesting. allOf: - $ref: '#/components/schemas/TransactionDTO' - $ref: '#/components/schemas/AccountKeyLinkTransactionBodyDTO' EmbeddedAccountKeyLinkTransactionDTO: type: object allOf: - $ref: '#/components/schemas/EmbeddedTransactionDTO' - $ref: '#/components/schemas/AccountKeyLinkTransactionBodyDTO' NodeKeyLinkNetworkPropertiesDTO: type: object properties: dummy: type: string description: to trigger plugin load NodeKeyLinkTransactionBodyDTO: type: object required: - linkedPublicKey - linkAction properties: linkedPublicKey: $ref: '#/components/schemas/PublicKey' linkAction: $ref: '#/components/schemas/LinkActionEnum' NodeKeyLinkTransactionDTO: type: object description: | Transaction to link a public key to an account. TLS uses the linked public key to create sessions. Required for node operators. allOf: - $ref: '#/components/schemas/TransactionDTO' - $ref: '#/components/schemas/NodeKeyLinkTransactionBodyDTO' EmbeddedNodeKeyLinkTransactionDTO: type: object allOf: - $ref: '#/components/schemas/EmbeddedTransactionDTO' - $ref: '#/components/schemas/NodeKeyLinkTransactionBodyDTO' AggregateNetworkPropertiesDTO: type: object properties: maxTransactionsPerAggregate: type: string description: Maximum number of transactions per aggregate. example: 1'000 maxCosignaturesPerAggregate: type: string description: Maximum number of cosignatures per aggregate. example: '15' enableStrictCosignatureCheck: type: boolean description: Set to true if cosignatures must exactly match component signers. Set to false if cosignatures should be validated externally. example: false enableBondedAggregateSupport: type: boolean description: Set to true if bonded aggregates should be allowed. Set to false if bonded aggregates should be rejected. example: true maxBondedTransactionLifetime: type: string description: Maximum lifetime a bonded transaction can have before it expires. example: 48h AggregateTransactionBodyDTO: type: object required: - transactionsHash - cosignatures properties: transactionsHash: $ref: '#/components/schemas/Hash256' cosignatures: type: array description: Array of transaction cosignatures. items: $ref: '#/components/schemas/CosignatureDTO' AggregateTransactionBodyExtendedDTO: type: object allOf: - $ref: '#/components/schemas/AggregateTransactionBodyDTO' - $ref: '#/components/schemas/EmbeddedTransactionBodyDTO' AggregateTransactionDTO: type: object description: Transaction to combine multiple transactions together. allOf: - $ref: '#/components/schemas/TransactionDTO' - $ref: '#/components/schemas/AggregateTransactionBodyDTO' AggregateTransactionExtendedDTO: type: object description: Transaction to combine multiple transactions together. allOf: - $ref: '#/components/schemas/TransactionDTO' - $ref: '#/components/schemas/AggregateTransactionBodyExtendedDTO' CosignatureDTO: type: object allOf: - $ref: '#/components/schemas/VerifiableEntityDTO' - type: object required: - signerPublicKey - version properties: version: $ref: '#/components/schemas/CosignatureVersion' signerPublicKey: $ref: '#/components/schemas/PublicKey' VrfKeyLinkNetworkPropertiesDTO: type: object properties: dummy: type: string description: to trigger plugin load VrfKeyLinkTransactionBodyDTO: type: object required: - linkedPublicKey - linkAction properties: linkedPublicKey: $ref: '#/components/schemas/PublicKey' linkAction: $ref: '#/components/schemas/LinkActionEnum' VrfKeyLinkTransactionDTO: type: object description: | Transaction to link an account with a VRF public key. The key is used to randomize block production and leader/participant selection. Required for all harvesting eligible accounts. allOf: - $ref: '#/components/schemas/TransactionDTO' - $ref: '#/components/schemas/VrfKeyLinkTransactionBodyDTO' EmbeddedVrfKeyLinkTransactionDTO: type: object allOf: - $ref: '#/components/schemas/EmbeddedTransactionDTO' - $ref: '#/components/schemas/VrfKeyLinkTransactionBodyDTO' VotingKeyLinkNetworkPropertiesDTO: type: object properties: dummy: type: string description: to trigger plugin load VotingKeyLinkTransactionBodyDTO: type: object required: - linkedPublicKey - startEpoch - endEpoch - linkAction properties: linkedPublicKey: $ref: '#/components/schemas/VotingKey' startEpoch: $ref: '#/components/schemas/FinalizationEpoch' endEpoch: $ref: '#/components/schemas/FinalizationEpoch' linkAction: $ref: '#/components/schemas/LinkActionEnum' VotingKeyLinkTransactionDTO: type: object description: | Transaction to associate a BLS public key with an account. Required for node operators willing to vote finalized blocks. allOf: - $ref: '#/components/schemas/TransactionDTO' - $ref: '#/components/schemas/VotingKeyLinkTransactionBodyDTO' EmbeddedVotingKeyLinkTransactionDTO: type: object allOf: - $ref: '#/components/schemas/EmbeddedTransactionDTO' - $ref: '#/components/schemas/VotingKeyLinkTransactionBodyDTO' EmbeddedHashLockTransactionDTO: type: object allOf: - $ref: '#/components/schemas/EmbeddedTransactionDTO' - $ref: '#/components/schemas/HashLockTransactionBodyDTO' HashLockEntryDTO: type: object required: - version - ownerAddress - mosaicId - amount - endHeight - status - hash properties: version: $ref: '#/components/schemas/StateVersion' ownerAddress: $ref: '#/components/schemas/Address' mosaicId: $ref: '#/components/schemas/MosaicId' amount: $ref: '#/components/schemas/Amount' endHeight: $ref: '#/components/schemas/Height' status: $ref: '#/components/schemas/LockStatus' hash: $ref: '#/components/schemas/Hash256' HashLockInfoDTO: type: object required: - id - lock properties: id: type: string lock: $ref: '#/components/schemas/HashLockEntryDTO' HashLockPage: type: object required: - data - pagination properties: data: type: array description: Array of hash locks. items: $ref: '#/components/schemas/HashLockInfoDTO' pagination: $ref: '#/components/schemas/Pagination' HashLockTransactionBodyDTO: type: object required: - mosaicId - amount - duration - hash properties: mosaicId: $ref: '#/components/schemas/UnresolvedMosaicId' amount: $ref: '#/components/schemas/Amount' duration: $ref: '#/components/schemas/BlockDuration' hash: $ref: '#/components/schemas/Hash256' HashLockTransactionDTO: type: object description: Transaction to lock funds before sending an aggregate bonded transaction. allOf: - $ref: '#/components/schemas/TransactionDTO' - $ref: '#/components/schemas/HashLockTransactionBodyDTO' HashLockNetworkPropertiesDTO: type: object properties: lockedFundsPerAggregate: type: string description: Amount that has to be locked per aggregate in partial cache. example: 10'000'000 maxHashLockDuration: type: string description: Maximum number of blocks for which a hash lock can exist. example: 2d LockHashAlgorithmEnum.: type: integer enum: - 0 - 1 - 2 description: | Algorithm used to hash the proof: * 0 (Op_Sha3_256) - Proof is hashed using SHA3-256. * 1 (Op_Hash_160) - Proof is hashed twice: first with SHA-256 and then with RIPEMD-160 (bitcoin's OP_HASH160). * 2 (Op_Hash_256) - Proof is hashed twice with SHA3-256 (bitcoin's OP_HASH256). EmbeddedSecretLockTransactionDTO: type: object allOf: - $ref: '#/components/schemas/EmbeddedTransactionDTO' - $ref: '#/components/schemas/SecretLockTransactionBodyDTO' EmbeddedSecretProofTransactionDTO: type: object allOf: - $ref: '#/components/schemas/EmbeddedTransactionDTO' - $ref: '#/components/schemas/SecretProofTransactionBodyDTO' SecretLockEntryDTO: type: object required: - version - ownerAddress - mosaicId - amount - endHeight - status - hashAlgorithm - secret - recipientAddress - compositeHash properties: version: $ref: '#/components/schemas/StateVersion' ownerAddress: $ref: '#/components/schemas/Address' mosaicId: $ref: '#/components/schemas/MosaicId' amount: $ref: '#/components/schemas/Amount' endHeight: $ref: '#/components/schemas/Height' status: $ref: '#/components/schemas/LockStatus' hashAlgorithm: $ref: '#/components/schemas/LockHashAlgorithmEnum.' secret: $ref: '#/components/schemas/Secret' recipientAddress: $ref: '#/components/schemas/Address' compositeHash: $ref: '#/components/schemas/Hash256' SecretLockInfoDTO: type: object required: - id - lock properties: id: type: string lock: $ref: '#/components/schemas/SecretLockEntryDTO' SecretLockPage: type: object required: - data - pagination properties: data: type: array description: Array of secret locks. items: $ref: '#/components/schemas/SecretLockInfoDTO' pagination: $ref: '#/components/schemas/Pagination' SecretLockNetworkPropertiesDTO: type: object properties: maxSecretLockDuration: type: string description: Maximum number of blocks for which a secret lock can exist. example: 30d minProofSize: type: string description: Minimum size of a proof in bytes. example: '1' maxProofSize: type: string description: Maximum size of a proof in bytes. example: '1000' SecretLockTransactionBodyDTO: type: object required: - recipientAddress - secret - mosaicId - amount - duration - hashAlgorithm properties: recipientAddress: $ref: '#/components/schemas/UnresolvedAddress' secret: $ref: '#/components/schemas/Hash256' mosaicId: $ref: '#/components/schemas/UnresolvedMosaicId' amount: $ref: '#/components/schemas/Amount' duration: $ref: '#/components/schemas/BlockDuration' hashAlgorithm: $ref: '#/components/schemas/LockHashAlgorithmEnum.' SecretLockTransactionDTO: type: object description: 'Transaction to sends mosaics to a recipient if the proof used is revealed. If the duration is reached, the locked funds go back to the sender of the transaction.' allOf: - $ref: '#/components/schemas/TransactionDTO' - $ref: '#/components/schemas/SecretLockTransactionBodyDTO' SecretProofTransactionBodyDTO: type: object required: - recipientAddress - secret - hashAlgorithm - proof properties: recipientAddress: $ref: '#/components/schemas/UnresolvedAddress' secret: $ref: '#/components/schemas/Hash256' hashAlgorithm: $ref: '#/components/schemas/LockHashAlgorithmEnum.' proof: type: string description: Original random set of bytes. SecretProofTransactionDTO: type: object description: Transaction to reveal a proof. allOf: - $ref: '#/components/schemas/TransactionDTO' - $ref: '#/components/schemas/SecretProofTransactionBodyDTO' MetadataTypeEnum: type: integer enum: - 0 - 1 - 2 description: | Metadata type: * 0 - Account. * 1 - Mosaic. * 2 - Namespace. AccountMetadataTransactionBodyDTO: type: object required: - targetAddress - scopedMetadataKey - valueSizeDelta - valueSize - value properties: targetAddress: $ref: '#/components/schemas/UnresolvedAddress' scopedMetadataKey: $ref: '#/components/schemas/MetadataKey' valueSizeDelta: type: integer description: Change in value size in bytes. valueSize: $ref: '#/components/schemas/UInt32' description: Value size in bytes. value: $ref: '#/components/schemas/MetadataValue' AccountMetadataTransactionDTO: type: object description: Transaction to create or modify a multisig account. allOf: - $ref: '#/components/schemas/TransactionDTO' - $ref: '#/components/schemas/AccountMetadataTransactionBodyDTO' EmbeddedAccountMetadataTransactionDTO: type: object allOf: - $ref: '#/components/schemas/EmbeddedTransactionDTO' - $ref: '#/components/schemas/AccountMetadataTransactionBodyDTO' EmbeddedMosaicMetadataTransactionDTO: type: object allOf: - $ref: '#/components/schemas/EmbeddedTransactionDTO' - $ref: '#/components/schemas/MosaicMetadataTransactionBodyDTO' EmbeddedNamespaceMetadataTransactionDTO: type: object allOf: - $ref: '#/components/schemas/EmbeddedTransactionDTO' - $ref: '#/components/schemas/NamespaceMetadataTransactionBodyDTO' MetadataEntryDTO: type: object required: - version - compositeHash - sourceAddress - targetAddress - scopedMetadataKey - metadataType - value properties: version: $ref: '#/components/schemas/StateVersion' compositeHash: $ref: '#/components/schemas/Hash256' sourceAddress: $ref: '#/components/schemas/Address' targetAddress: $ref: '#/components/schemas/Address' scopedMetadataKey: $ref: '#/components/schemas/MetadataKey' targetId: anyOf: - $ref: '#/components/schemas/MosaicId' - $ref: '#/components/schemas/NamespaceId' metadataType: $ref: '#/components/schemas/MetadataTypeEnum' value: type: string format: hex description: Metadata value. MetadataInfoDTO: type: object required: - id - metadataEntry properties: id: type: string metadataEntry: $ref: '#/components/schemas/MetadataEntryDTO' MetadataNetworkPropertiesDTO: type: object properties: maxValueSize: type: string description: Maximum metadata value size. example: '1024' MetadataPage: type: object required: - data - pagination properties: data: type: array description: Array of metadata entries. items: $ref: '#/components/schemas/MetadataInfoDTO' pagination: $ref: '#/components/schemas/Pagination' MosaicMetadataTransactionBodyDTO: type: object required: - targetAddress - scopedMetadataKey - targetMosaicId - valueSizeDelta - valueSize - value properties: targetAddress: $ref: '#/components/schemas/UnresolvedAddress' scopedMetadataKey: $ref: '#/components/schemas/MetadataKey' targetMosaicId: $ref: '#/components/schemas/UnresolvedMosaicId' valueSizeDelta: type: integer description: Change in value size in bytes. valueSize: $ref: '#/components/schemas/UInt32' description: Value size in bytes. value: $ref: '#/components/schemas/MetadataValue' MosaicMetadataTransactionDTO: type: object description: Transaction to create or modify a multisig account. allOf: - $ref: '#/components/schemas/TransactionDTO' - $ref: '#/components/schemas/MosaicMetadataTransactionBodyDTO' NamespaceMetadataTransactionBodyDTO: type: object required: - targetAddress - scopedMetadataKey - targetMosaicId - valueSizeDelta - valueSize - value properties: targetAddress: $ref: '#/components/schemas/UnresolvedAddress' scopedMetadataKey: $ref: '#/components/schemas/MetadataKey' targetNamespaceId: $ref: '#/components/schemas/NamespaceId' valueSizeDelta: type: integer description: Change in value size in bytes. valueSize: $ref: '#/components/schemas/UInt32' description: Value size in bytes. value: $ref: '#/components/schemas/MetadataValue' NamespaceMetadataTransactionDTO: type: object description: Transaction to create or modify a multisig account. allOf: - $ref: '#/components/schemas/TransactionDTO' - $ref: '#/components/schemas/NamespaceMetadataTransactionBodyDTO' MosaicFlagsEnum: type: integer description: | - 0x00 (none) - No flags present. - 0x01 (supplyMutable) - Mosaic supports supply changes even when mosaic owner owns partial supply. - 0x02 (transferable) - Mosaic supports transfers between arbitrary accounts. When not set, mosaic can only be transferred to and from mosaic owner. - 0x04 (restrictable) - Mosaic supports custom restrictions configured by mosaic owner. - 0x08 (revokable) - Mosaic allows creator to revoke balances from another user. MosaicSupplyChangeActionEnum: type: integer enum: - 0 - 1 description: | Direction of the supply change: * 0 - Decrease. * 1 - Increase. example: 0 EmbeddedMosaicDefinitionTransactionDTO: type: object allOf: - $ref: '#/components/schemas/EmbeddedTransactionDTO' - $ref: '#/components/schemas/MosaicDefinitionTransactionBodyDTO' EmbeddedMosaicSupplyChangeTransactionDTO: type: object allOf: - $ref: '#/components/schemas/EmbeddedTransactionDTO' - $ref: '#/components/schemas/MosaicSupplyChangeTransactionBodyDTO' EmbeddedMosaicSupplyRevocationTransactionDTO: type: object allOf: - $ref: '#/components/schemas/EmbeddedTransactionDTO' - $ref: '#/components/schemas/MosaicSupplyRevocationTransactionBodyDTO' MosaicDefinitionTransactionBodyDTO: type: object required: - id - duration - nonce - flags - divisibility properties: id: $ref: '#/components/schemas/MosaicId' duration: $ref: '#/components/schemas/BlockDuration' nonce: $ref: '#/components/schemas/UInt32' description: Random nonce used to generate the mosaic id. example: 0 flags: $ref: '#/components/schemas/MosaicFlagsEnum' divisibility: type: integer description: | Determines up to what decimal place the mosaic can be divided. Divisibility of 3 means that a mosaic can be divided into smallest parts of 0.001 mosaics. The divisibility must be in the range of 0 and 6. MosaicDefinitionTransactionDTO: type: object description: Transaction to create a new mosaic. allOf: - $ref: '#/components/schemas/TransactionDTO' - $ref: '#/components/schemas/MosaicDefinitionTransactionBodyDTO' MosaicDTO: type: object required: - version - id - supply - startHeight - ownerAddress - revision - flags - divisibility - duration properties: version: $ref: '#/components/schemas/StateVersion' id: $ref: '#/components/schemas/MosaicId' supply: $ref: '#/components/schemas/Amount' startHeight: $ref: '#/components/schemas/Height' ownerAddress: $ref: '#/components/schemas/Address' revision: $ref: '#/components/schemas/UInt32' description: Number of definitions for the same mosaic. example: 1 flags: $ref: '#/components/schemas/MosaicFlagsEnum' divisibility: type: integer description: | Determines up to what decimal place the mosaic can be divided. Divisibility of 3 means that a mosaic can be divided into smallest parts of 0.001 mosaics. The divisibility must be in the range of 0 and 6. duration: $ref: '#/components/schemas/BlockDuration' MosaicInfoDTO: type: object required: - id - mosaic properties: id: type: string description: Internal resource identifier. mosaic: $ref: '#/components/schemas/MosaicDTO' MosaicNetworkPropertiesDTO: type: object properties: maxMosaicsPerAccount: type: string description: Maximum number of mosaics that an account can own. example: 10'000 maxMosaicDuration: type: string description: Maximum mosaic duration. example: 3650d maxMosaicDivisibility: type: string description: Maximum mosaic divisibility. example: '6' mosaicRentalFeeSinkAddress: $ref: '#/components/schemas/Address' description: Address of the mosaic rental fee sink account. example: SDKDPA36TE53BO24FD4KA6OPGOUSEVOU3O5SIFI mosaicRentalFee: type: string description: Mosaic rental fee. example: '500' MosaicPage: type: object required: - data - pagination properties: data: type: array description: Array of mosaics. items: $ref: '#/components/schemas/MosaicInfoDTO' pagination: $ref: '#/components/schemas/Pagination' MosaicSupplyChangeTransactionBodyDTO: type: object required: - mosaicId - delta - action properties: mosaicId: $ref: '#/components/schemas/UnresolvedMosaicId' delta: $ref: '#/components/schemas/Amount' action: $ref: '#/components/schemas/MosaicSupplyChangeActionEnum' MosaicSupplyChangeTransactionDTO: type: object description: Transaction to increase or decrease the supply of a mosaic. allOf: - $ref: '#/components/schemas/TransactionDTO' - $ref: '#/components/schemas/MosaicSupplyChangeTransactionBodyDTO' MosaicSupplyRevocationTransactionBodyDTO: type: object required: - sourceAddress - mosaicId - amount properties: sourceAddress: $ref: '#/components/schemas/UnresolvedAddress' mosaicId: $ref: '#/components/schemas/UnresolvedMosaicId' amount: $ref: '#/components/schemas/Amount' MosaicSupplyRevocationTransactionDTO: type: object description: Transaction that allows the mosaic creator to revoke some balance from a user. allOf: - $ref: '#/components/schemas/TransactionDTO' - $ref: '#/components/schemas/MosaicSupplyRevocationTransactionBodyDTO' EmbeddedMultisigAccountModificationTransactionDTO: type: object allOf: - $ref: '#/components/schemas/EmbeddedTransactionDTO' - $ref: '#/components/schemas/MultisigAccountModificationTransactionBodyDTO' MultisigAccountGraphInfoDTO: type: object required: - level - multisigEntries properties: level: type: integer description: Level of the multisig account. example: 0 multisigEntries: type: array description: Array of multisig accounts for this level. items: $ref: '#/components/schemas/MultisigAccountInfoDTO' MultisigAccountInfoDTO: type: object required: - multisig properties: multisig: $ref: '#/components/schemas/MultisigDTO' MultisigAccountModificationTransactionBodyDTO: type: object required: - minRemovalDelta - minApprovalDelta - addressAdditions - addressDeletions properties: minRemovalDelta: type: integer description: | Number of signatures needed to remove a cosignatory. If we are modifying an existing multisig account, this indicates the relative change of the minimum cosignatories. example: 1 minApprovalDelta: type: integer description: | Number of signatures needed to approve a transaction. If we are modifying an existing multisig account, this indicates the relative change of the minimum cosignatories. example: 1 addressAdditions: type: array description: Array of cosignatory accounts to add. items: $ref: '#/components/schemas/UnresolvedAddress' addressDeletions: type: array description: Array of cosignatory accounts to delete. items: $ref: '#/components/schemas/UnresolvedAddress' MultisigAccountModificationTransactionDTO: type: object description: Transaction to create or modify a multisig account. allOf: - $ref: '#/components/schemas/TransactionDTO' - $ref: '#/components/schemas/MultisigAccountModificationTransactionBodyDTO' MultisigDTO: type: object required: - version - accountAddress - minApproval - minRemoval - cosignatoryAddresses - multisigAddresses properties: version: $ref: '#/components/schemas/StateVersion' accountAddress: $ref: '#/components/schemas/Address' minApproval: $ref: '#/components/schemas/UInt32' description: Number of signatures needed to approve a transaction. example: 2 minRemoval: description: Number of signatures needed to remove a cosignatory. $ref: '#/components/schemas/UInt32' example: 1 cosignatoryAddresses: type: array description: Addresses of the cosignatory accounts. items: $ref: '#/components/schemas/Address' multisigAddresses: type: array description: Multisig accounts where the account is cosignatory. example: null items: $ref: '#/components/schemas/Address' MultisigNetworkPropertiesDTO: type: object properties: maxMultisigDepth: type: string description: Maximum number of multisig levels. example: '3' maxCosignatoriesPerAccount: type: string description: Maximum number of cosignatories per account. example: '10' maxCosignedAccountsPerAccount: type: string description: Maximum number of accounts a single account can cosign. example: '5' AliasActionEnum: type: integer enum: - 0 - 1 description: | Alias action: * 0 - Unlink alias. * 1 - Link alias. example: 0 AliasTypeEnum: type: integer enum: - 0 - 1 - 2 description: | Type of alias: * 0 - No alias. * 1 - Mosaic id alias. * 2 - Addres alias. example: 0 NamespaceRegistrationTypeEnum: type: integer enum: - 0 - 1 description: | Type of namespace: * 0 - Root namespace. * 1 - Subnamespace. example: 0 AccountNamesDTO: type: object required: - address - names properties: address: $ref: '#/components/schemas/Address' names: type: array description: Account linked namespace names. example: - alias1 - alias2 items: type: string AccountsNamesDTO: type: object required: - accountNames properties: accountNames: type: array description: Array of account names. items: $ref: '#/components/schemas/AccountNamesDTO' AddressAliasTransactionBodyDTO: type: object required: - namespaceId - address - aliasAction properties: namespaceId: $ref: '#/components/schemas/NamespaceId' address: $ref: '#/components/schemas/Address' aliasAction: $ref: '#/components/schemas/AliasActionEnum' AddressAliasTransactionDTO: type: object description: Transaction to link a namespace to an account. allOf: - $ref: '#/components/schemas/TransactionDTO' - $ref: '#/components/schemas/AddressAliasTransactionBodyDTO' AliasDTO: type: object required: - type properties: type: $ref: '#/components/schemas/AliasTypeEnum' mosaicId: $ref: '#/components/schemas/MosaicId' address: $ref: '#/components/schemas/Address' EmbeddedAddressAliasTransactionDTO: type: object allOf: - $ref: '#/components/schemas/EmbeddedTransactionDTO' - $ref: '#/components/schemas/AddressAliasTransactionBodyDTO' EmbeddedMosaicAliasTransactionDTO: type: object allOf: - $ref: '#/components/schemas/EmbeddedTransactionDTO' - $ref: '#/components/schemas/MosaicAliasTransactionBodyDTO' EmbeddedNamespaceRegistrationTransactionDTO: type: object allOf: - $ref: '#/components/schemas/EmbeddedTransactionDTO' - $ref: '#/components/schemas/NamespaceRegistrationTransactionBodyDTO' MosaicAliasTransactionBodyDTO: type: object required: - namespaceId - mosaicId - aliasAction properties: namespaceId: $ref: '#/components/schemas/NamespaceId' mosaicId: $ref: '#/components/schemas/MosaicId' aliasAction: $ref: '#/components/schemas/AliasActionEnum' MosaicAliasTransactionDTO: type: object description: Transaction to link a namespace to a mosaic. allOf: - $ref: '#/components/schemas/TransactionDTO' - $ref: '#/components/schemas/MosaicAliasTransactionBodyDTO' MosaicNamesDTO: type: object required: - mosaicId - names properties: mosaicId: $ref: '#/components/schemas/MosaicId' names: type: array description: Mosaic linked namespace names. example: - symbol.xym items: type: string MosaicsNamesDTO: type: object required: - mosaicNames properties: mosaicNames: type: array description: Array of mosaic names. items: $ref: '#/components/schemas/MosaicNamesDTO' NamespaceInfoDTO: type: object required: - id - meta - namespace properties: id: type: string description: Internal resource identifier. meta: $ref: '#/components/schemas/NamespaceMetaDTO' namespace: $ref: '#/components/schemas/NamespaceDTO' NamespaceMetaDTO: type: object required: - active - index properties: active: type: boolean description: 'If true, the namespace is active.' index: type: integer NamespaceDTO: type: object required: - version - registrationType - depth - level0 - alias - parentId - ownerAddress - startHeight - endHeight properties: version: $ref: '#/components/schemas/StateVersion' registrationType: $ref: '#/components/schemas/NamespaceRegistrationTypeEnum' depth: type: integer description: Level of the namespace. example: 1 level0: $ref: '#/components/schemas/NamespaceId' level1: $ref: '#/components/schemas/NamespaceId' level2: $ref: '#/components/schemas/NamespaceId' alias: $ref: '#/components/schemas/AliasDTO' parentId: $ref: '#/components/schemas/NamespaceId' ownerAddress: $ref: '#/components/schemas/Address' startHeight: $ref: '#/components/schemas/Height' endHeight: $ref: '#/components/schemas/Height' NamespaceNameDTO: type: object required: - id - name properties: parentId: $ref: '#/components/schemas/NamespaceId' id: $ref: '#/components/schemas/NamespaceId' name: type: string description: Namespace name. example: cat NamespaceNetworkPropertiesDTO: type: object properties: maxNameSize: type: string description: Maximum namespace name size. example: '64' maxChildNamespaces: type: string description: Maximum number of children for a root namespace. example: '500' maxNamespaceDepth: type: string description: Maximum namespace depth. example: '3' minNamespaceDuration: type: string description: Minimum namespace duration. example: 1m maxNamespaceDuration: type: string description: Maximum namespace duration. example: 365d namespaceGracePeriodDuration: type: string description: Grace period during which time only the previous owner can renew an expired namespace. example: 2m reservedRootNamespaceNames: type: string description: Reserved root namespaces that cannot be claimed. example: 'xem, nem, user, account, org, com, biz, net, edu, mil, gov, info' namespaceRentalFeeSinkAddress: $ref: '#/components/schemas/Address' description: Address of the namespace rental fee sink account. example: SDTZ23JBJZP3GTKKM2P6FYCMXS6RQYPB6R477TQ rootNamespaceRentalFeePerBlock: type: string description: Root namespace rental fee per block. example: '1' childNamespaceRentalFee: type: string description: Child namespace rental fee. example: '100' NamespacePage: type: object required: - data - pagination properties: data: type: array description: Array of namespaces. items: $ref: '#/components/schemas/NamespaceInfoDTO' pagination: $ref: '#/components/schemas/Pagination' NamespaceRegistrationTransactionBodyDTO: type: object required: - id - registrationType - name properties: duration: $ref: '#/components/schemas/BlockDuration' parentId: $ref: '#/components/schemas/NamespaceId' id: $ref: '#/components/schemas/NamespaceId' registrationType: $ref: '#/components/schemas/NamespaceRegistrationTypeEnum' name: type: string description: Namespace name. NamespaceRegistrationTransactionDTO: type: object description: Transaction to create or renew a namespace. allOf: - $ref: '#/components/schemas/TransactionDTO' - $ref: '#/components/schemas/NamespaceRegistrationTransactionBodyDTO' ReceiptTypeEnum: type: integer enum: - 4685 - 4942 - 8515 - 8776 - 9032 - 8786 - 9042 - 12616 - 12626 - 16717 - 16718 - 16974 - 20803 - 57667 - 61763 - 62019 description: | Type of receipt: * 0x124D (4685 decimal) - Mosaic_Rental_Fee. * 0x134E (4942 decimal) - Namespace_Rental_Fee. * 0x2143 (8515 decimal) - Harvest_Fee. * 0x2248 (8776 decimal) - LockHash_Completed. * 0x2348 (9032 decimal) - LockHash_Expired. * 0x2252 (8786 decimal) - LockSecret_Completed. * 0x2352 (9042 decimal) - LockSecret_Expired. * 0x3148 (12616 decimal) - LockHash_Created. * 0x3152 (12626 decimal) - LockSecret_Created. * 0x414D (16717 decimal) - Mosaic_Expired. * 0x414E (16718 decimal) - Namespace_Expired. * 0x424E (16974 decimal) - Namespace_Deleted. * 0x5143 (20803 decimal) - Inflation. * 0xE143 (57667 decimal) - Transaction_Group. * 0xF143 (61763 decimal) - Address_Alias_Resolution. * 0xF243 (62019 decimal) - Mosaic_Alias_Resolution. BalanceTransferReceiptDTO: type: object description: Receipt stored when a state change that triggered a mosaic transfer. allOf: - $ref: '#/components/schemas/ReceiptDTO' - type: object required: - mosaicId - amount - senderAddress - recipientAddress properties: mosaicId: $ref: '#/components/schemas/MosaicId' amount: $ref: '#/components/schemas/Amount' senderAddress: $ref: '#/components/schemas/Address' recipientAddress: $ref: '#/components/schemas/Address' BalanceChangeReceiptDTO: type: object description: Receipt stored when a state change modified an account balance. allOf: - $ref: '#/components/schemas/ReceiptDTO' - type: object required: - mosaicId - amount - targetAddress properties: mosaicId: $ref: '#/components/schemas/MosaicId' amount: $ref: '#/components/schemas/Amount' targetAddress: $ref: '#/components/schemas/Address' NamespaceExpiryReceiptDTO: type: object description: Receipt stored when a namespace expires. allOf: - $ref: '#/components/schemas/ReceiptDTO' - type: object required: - artifactId properties: artifactId: $ref: '#/components/schemas/NamespaceId' MosaicExpiryReceiptDTO: type: object description: Receipt stored when a mosaic expires. allOf: - $ref: '#/components/schemas/ReceiptDTO' - type: object required: - artifactId properties: artifactId: $ref: '#/components/schemas/MosaicId' InflationReceiptDTO: type: object description: Receipt stored when network currency mosaics were created due to inflation. allOf: - $ref: '#/components/schemas/ReceiptDTO' - type: object required: - mosaicId - amount properties: mosaicId: $ref: '#/components/schemas/MosaicId' amount: $ref: '#/components/schemas/Amount' ReceiptDTO: type: object required: - version - type properties: version: type: integer description: Version of the receipt. type: $ref: '#/components/schemas/ReceiptTypeEnum' ResolutionEntryDTO: type: object required: - source - resolved properties: source: $ref: '#/components/schemas/SourceDTO' resolved: anyOf: - $ref: '#/components/schemas/Address' - $ref: '#/components/schemas/MosaicId' ResolutionStatementDTO: type: object required: - height - unresolved - resolutionEntries properties: height: $ref: '#/components/schemas/Height' unresolved: anyOf: - $ref: '#/components/schemas/UnresolvedMosaicId' - $ref: '#/components/schemas/UnresolvedAddress' resolutionEntries: type: array description: | Array of resolution entries linked to the unresolved namespaceId. It is an array instead of a single resolution entry since within one block the resolution might change for different sources due to alias related transactions. items: $ref: '#/components/schemas/ResolutionEntryDTO' ResolutionStatementInfoDTO: type: object required: - id - meta - statement description: | A resolution statement keeps the relation between a namespace alias used in a transaction and the real address or mosaicId. properties: id: type: string description: Internal resource identifier. meta: $ref: '#/components/schemas/StatementMetaDTO' statement: $ref: '#/components/schemas/ResolutionStatementDTO' ResolutionStatementPage: type: object required: - data - pagination properties: data: type: array description: Array of transaction address resolution statements. items: $ref: '#/components/schemas/ResolutionStatementInfoDTO' pagination: $ref: '#/components/schemas/Pagination' SourceDTO: type: object description: Transaction that triggered the receipt. required: - primaryId - secondaryId properties: primaryId: $ref: '#/components/schemas/UInt32' description: Transaction index within the block. example: 1 secondaryId: $ref: '#/components/schemas/UInt32' description: | Transaction index within the aggregate transaction. If the transaction is not an embedded transaction, then the secondary id is set to 0. example: 0 StatementMetaDTO: type: object required: - timestamp description: 'Metadata related to the statment, including block information.' properties: timestamp: $ref: '#/components/schemas/Timestamp' TransactionStatementDTO: type: object required: - height - source - receipts properties: height: $ref: '#/components/schemas/Height' source: $ref: '#/components/schemas/SourceDTO' receipts: type: array description: Array of receipts. items: anyOf: - $ref: '#/components/schemas/BalanceTransferReceiptDTO' - $ref: '#/components/schemas/BalanceChangeReceiptDTO' - $ref: '#/components/schemas/NamespaceExpiryReceiptDTO' - $ref: '#/components/schemas/MosaicExpiryReceiptDTO' - $ref: '#/components/schemas/InflationReceiptDTO' TransactionStatementInfoDTO: type: object required: - id - meta - statement description: Collection of receipts related to a transaction. properties: id: type: string description: Internal resource identifier. meta: $ref: '#/components/schemas/StatementMetaDTO' statement: $ref: '#/components/schemas/TransactionStatementDTO' TransactionStatementPage: type: object required: - data - pagination properties: data: type: array description: Array of transaction statements. items: $ref: '#/components/schemas/TransactionStatementInfoDTO' pagination: $ref: '#/components/schemas/Pagination' AccountRestrictionFlagsEnum: type: integer example: 1 enum: - 1 - 2 - 16385 - 16388 - 32769 - 32770 - 49153 - 49156 description: | Type of account restriction: * 0x0001 (1 decimal) - Allow only incoming transactions from a given address. * 0x0002 (2 decimal) - Allow only incoming transactions containing a given mosaic identifier. * 0x4001 (16385 decimal) - Allow only outgoing transactions to a given address. * 0x4004 (16388 decimal) - Allow only outgoing transactions with a given transaction type. * 0x8001 (32769 decimal) - Block incoming transactions from a given address. * 0x8002 (32770 decimal) - Block incoming transactions containing a given mosaic identifier. * 0xC001 (49153 decimal) - Block outgoing transactions to a given address. * 0xC004 (49156 decimal) - Block outgoing transactions with a given transaction type. AccountAddressRestrictionTransactionBodyDTO: type: object required: - restrictionFlags - restrictionAdditions - restrictionDeletions properties: restrictionFlags: $ref: '#/components/schemas/AccountRestrictionFlagsEnum' restrictionAdditions: type: array description: Account restriction additions. items: $ref: '#/components/schemas/UnresolvedAddress' restrictionDeletions: type: array description: Account restriction deletions. items: $ref: '#/components/schemas/UnresolvedAddress' AccountAddressRestrictionTransactionDTO: type: object description: Transaction to prevent incoming and outgoing transactions for a given a set of addresses. allOf: - $ref: '#/components/schemas/TransactionDTO' - $ref: '#/components/schemas/AccountAddressRestrictionTransactionBodyDTO' AccountMosaicRestrictionTransactionBodyDTO: type: object required: - restrictionFlags - restrictionAdditions - restrictionDeletions properties: restrictionFlags: $ref: '#/components/schemas/AccountRestrictionFlagsEnum' restrictionAdditions: type: array description: Account restriction additions. items: $ref: '#/components/schemas/UnresolvedMosaicId' restrictionDeletions: type: array description: Account restriction deletions. items: $ref: '#/components/schemas/UnresolvedMosaicId' AccountMosaicRestrictionTransactionDTO: type: object description: Transaction to prevent incoming transactions containing a given set of mosaics. allOf: - $ref: '#/components/schemas/TransactionDTO' - $ref: '#/components/schemas/AccountMosaicRestrictionTransactionBodyDTO' AccountOperationRestrictionTransactionBodyDTO: type: object required: - restrictionFlags - restrictionAdditions - restrictionDeletions properties: restrictionFlags: $ref: '#/components/schemas/AccountRestrictionFlagsEnum' restrictionAdditions: type: array description: Account restriction additions. items: $ref: '#/components/schemas/TransactionTypeEnum' restrictionDeletions: type: array description: Account restriction deletions. items: $ref: '#/components/schemas/TransactionTypeEnum' AccountOperationRestrictionTransactionDTO: type: object description: Transaction to prevent outgoing transactions by transaction type. allOf: - $ref: '#/components/schemas/TransactionDTO' - $ref: '#/components/schemas/AccountOperationRestrictionTransactionBodyDTO' AccountRestrictionsInfoDTO: type: object required: - accountRestrictions properties: accountRestrictions: $ref: '#/components/schemas/AccountRestrictionsDTO' AccountRestrictionsPage: type: object required: - data - pagination properties: data: type: array description: Array of account restrictions. items: $ref: '#/components/schemas/AccountRestrictionsInfoDTO' pagination: $ref: '#/components/schemas/Pagination' AccountRestrictionsDTO: type: object required: - version - address - restrictions properties: version: $ref: '#/components/schemas/StateVersion' address: $ref: '#/components/schemas/Address' restrictions: type: array items: $ref: '#/components/schemas/AccountRestrictionDTO' AccountRestrictionDTO: type: object required: - restrictionFlags - values properties: restrictionFlags: $ref: '#/components/schemas/AccountRestrictionFlagsEnum' values: type: array description: 'Address, mosaic id, or transaction type to restrict.' items: anyOf: - $ref: '#/components/schemas/UnresolvedAddress' - $ref: '#/components/schemas/UnresolvedMosaicId' - $ref: '#/components/schemas/TransactionTypeEnum' AccountRestrictionNetworkPropertiesDTO: type: object properties: maxAccountRestrictionValues: type: string description: Maximum number of account restriction values. example: '512' EmbeddedAccountAddressRestrictionTransactionDTO: type: object allOf: - $ref: '#/components/schemas/EmbeddedTransactionDTO' - $ref: '#/components/schemas/AccountAddressRestrictionTransactionBodyDTO' EmbeddedAccountMosaicRestrictionTransactionDTO: type: object allOf: - $ref: '#/components/schemas/EmbeddedTransactionDTO' - $ref: '#/components/schemas/AccountMosaicRestrictionTransactionBodyDTO' EmbeddedAccountOperationRestrictionTransactionDTO: type: object allOf: - $ref: '#/components/schemas/EmbeddedTransactionDTO' - $ref: '#/components/schemas/AccountOperationRestrictionTransactionBodyDTO' MosaicRestrictionEntryTypeEnum: type: integer enum: - 0 - 1 description: | - 0 - Mosaic address restriction. - 1 - Mosaic global restriction. MosaicRestrictionTypeEnum: type: integer enum: - 0 - 1 - 2 - 3 - 4 - 5 - 6 description: | Type of mosaic restriction. * 0 - Uninitialized value indicating no restriction. * 1 (EQ) - Allow if equal. * 2 (NE) - Allow if not equal. * 3 (LT) - Allow if less than. * 4 (LE) - Allow if less than or equal. * 5 (GT) - Allow if greater than. * 6 (GE) - Allow if greater than or equal. EmbeddedMosaicAddressRestrictionTransactionDTO: type: object allOf: - $ref: '#/components/schemas/EmbeddedTransactionDTO' - $ref: '#/components/schemas/MosaicAddressRestrictionTransactionBodyDTO' EmbeddedMosaicGlobalRestrictionTransactionDTO: type: object allOf: - $ref: '#/components/schemas/EmbeddedTransactionDTO' - $ref: '#/components/schemas/MosaicGlobalRestrictionTransactionBodyDTO' MosaicRestrictionDTO: type: object description: Generic Mosaic Restriction anyOf: - $ref: '#/components/schemas/MosaicAddressRestrictionDTO' - $ref: '#/components/schemas/MosaicGlobalRestrictionDTO' MosaicAddressRestrictionDTO: type: object required: - id - mosaicRestrictionEntry properties: id: type: string description: Internal resource identifier. mosaicRestrictionEntry: $ref: '#/components/schemas/MosaicAddressRestrictionEntryWrapperDTO' MosaicAddressRestrictionEntryDTO: type: object required: - key - value properties: key: $ref: '#/components/schemas/RestrictionKey' value: type: string description: Restriction value. MosaicAddressRestrictionEntryWrapperDTO: type: object required: - version - compositeHash - entryType - mosaicId - targetAddress - restrictions properties: version: $ref: '#/components/schemas/StateVersion' compositeHash: $ref: '#/components/schemas/Hash256' entryType: $ref: '#/components/schemas/MosaicRestrictionEntryTypeEnum' mosaicId: $ref: '#/components/schemas/MosaicId' targetAddress: $ref: '#/components/schemas/Address' restrictions: type: array items: $ref: '#/components/schemas/MosaicAddressRestrictionEntryDTO' MosaicAddressRestrictionTransactionBodyDTO: type: object required: - mosaicId - restrictionKey - previousRestrictionValue - newRestrictionValue - targetAddress properties: mosaicId: $ref: '#/components/schemas/UnresolvedMosaicId' restrictionKey: $ref: '#/components/schemas/RestrictionKey' previousRestrictionValue: $ref: '#/components/schemas/RestrictionValue' newRestrictionValue: $ref: '#/components/schemas/RestrictionValue' targetAddress: $ref: '#/components/schemas/UnresolvedAddress' MosaicAddressRestrictionTransactionDTO: type: object description: Transaction to set a restriction rule to an address. allOf: - $ref: '#/components/schemas/TransactionDTO' - $ref: '#/components/schemas/MosaicAddressRestrictionTransactionBodyDTO' MosaicGlobalRestrictionDTO: type: object required: - id - mosaicRestrictionEntry properties: id: type: string description: Internal resource identifier. mosaicRestrictionEntry: $ref: '#/components/schemas/MosaicGlobalRestrictionEntryWrapperDTO' MosaicGlobalRestrictionEntryDTO: type: object required: - key - restriction properties: key: $ref: '#/components/schemas/RestrictionKey' restriction: $ref: '#/components/schemas/MosaicGlobalRestrictionEntryRestrictionDTO' MosaicGlobalRestrictionEntryRestrictionDTO: type: object required: - referenceMosaicId - restrictionValue - restrictionType properties: referenceMosaicId: $ref: '#/components/schemas/MosaicId' restrictionValue: $ref: '#/components/schemas/RestrictionValue' restrictionType: $ref: '#/components/schemas/MosaicRestrictionTypeEnum' MosaicGlobalRestrictionEntryWrapperDTO: type: object required: - version - compositeHash - entryType - mosaicId - restrictions properties: version: $ref: '#/components/schemas/StateVersion' compositeHash: $ref: '#/components/schemas/Hash256' entryType: $ref: '#/components/schemas/MosaicRestrictionEntryTypeEnum' mosaicId: $ref: '#/components/schemas/MosaicId' restrictions: type: array items: $ref: '#/components/schemas/MosaicGlobalRestrictionEntryDTO' MosaicGlobalRestrictionTransactionBodyDTO: type: object required: - mosaicId - referenceMosaicId - restrictionKey - previousRestrictionValue - newRestrictionValue - previousRestrictionType - newRestrictionType properties: mosaicId: $ref: '#/components/schemas/UnresolvedMosaicId' referenceMosaicId: $ref: '#/components/schemas/UnresolvedMosaicId' restrictionKey: $ref: '#/components/schemas/RestrictionKey' previousRestrictionValue: $ref: '#/components/schemas/RestrictionValue' newRestrictionValue: $ref: '#/components/schemas/RestrictionValue' previousRestrictionType: $ref: '#/components/schemas/MosaicRestrictionTypeEnum' newRestrictionType: $ref: '#/components/schemas/MosaicRestrictionTypeEnum' MosaicGlobalRestrictionTransactionDTO: type: object description: Transaction to set a network-wide restriction rule to a mosaic. allOf: - $ref: '#/components/schemas/TransactionDTO' - $ref: '#/components/schemas/MosaicGlobalRestrictionTransactionBodyDTO' MosaicRestrictionNetworkPropertiesDTO: type: object properties: maxMosaicRestrictionValues: type: string description: Maximum number of mosaic restriction values. example: '20' MosaicRestrictionsPage: type: object required: - data - pagination properties: data: type: array description: Array of mosaic restrictions. items: anyOf: - $ref: '#/components/schemas/MosaicAddressRestrictionDTO' - $ref: '#/components/schemas/MosaicGlobalRestrictionDTO' pagination: $ref: '#/components/schemas/Pagination' EmbeddedTransferTransactionDTO: type: object allOf: - $ref: '#/components/schemas/EmbeddedTransactionDTO' - $ref: '#/components/schemas/TransferTransactionBodyDTO' TransferNetworkPropertiesDTO: type: object properties: maxMessageSize: type: string description: Maximum transaction message size. example: '1024' TransferTransactionBodyDTO: type: object required: - recipientAddress - mosaics properties: recipientAddress: $ref: '#/components/schemas/UnresolvedAddress' mosaics: type: array description: | Array of mosaics sent to the recipient. items: $ref: '#/components/schemas/UnresolvedMosaic' message: type: string description: Transfer transaction message TransferTransactionDTO: type: object description: Transaction to transfer mosaics and a message to another account. allOf: - $ref: '#/components/schemas/TransactionDTO' - $ref: '#/components/schemas/TransferTransactionBodyDTO' accountIds: type: object properties: publicKeys: type: array description: Array of public keys. items: $ref: '#/components/schemas/PublicKey' addresses: type: array description: Array of addresses. items: $ref: '#/components/schemas/Address' addresses: type: object properties: addresses: type: array description: Array of addresses. items: $ref: '#/components/schemas/Address' cosignature: type: object properties: parentHash: $ref: '#/components/schemas/Hash256' signature: $ref: '#/components/schemas/Signature' signerPublicKey: $ref: '#/components/schemas/PublicKey' version: $ref: '#/components/schemas/CosignatureVersion' mosaicIds: type: object properties: mosaicIds: type: array description: Array of mosaic identifiers. items: $ref: '#/components/schemas/MosaicId' namespaceIds: type: object properties: namespaceIds: type: array description: Array of namespace identifiers. items: $ref: '#/components/schemas/NamespaceId' transactionHashes: type: object properties: hashes: type: array description: Array of transaction hashes. items: $ref: '#/components/schemas/Hash256' transactionIds: type: object properties: transactionIds: type: array description: Array of transaction identifiers. items: type: string example: - 59B8DA0F0CB2720001103922 - 59B8D8E60CB2720001103904 transactionPayload: type: object properties: payload: type: string description: Transaction payload in hexadecimal format. example: 00112233445566778899AABBCCDDEEFF responses: ResourceNotFound: description: ResourceNotFound content: application/json: schema: $ref: '#/components/schemas/ModelError' InvalidContent: description: InvalidContent content: application/json: schema: $ref: '#/components/schemas/ModelError' InvalidArgument: description: InvalidArgument content: application/json: schema: $ref: '#/components/schemas/ModelError'