openapi: 3.0.1 info: description: REST API for the Wasp node title: Wasp API version: "0" externalDocs: description: Find out more about Wasp url: https://wiki.iota.org/smart-contracts/overview servers: - url: / tags: - name: auth - name: chains - name: metrics - name: node - name: requests - name: users - name: corecontracts paths: /auth: post: operationId: authenticate requestBody: content: application/json: schema: $ref: '#/components/schemas/LoginRequest' description: The login request required: true responses: "200": content: application/json: schema: $ref: '#/components/schemas/LoginResponse' description: Login was successful "401": content: {} description: "Unauthorized (Wrong permissions, missing token)" "405": content: {} description: "auth type: none" summary: Authenticate towards the node tags: - auth x-codegen-request-body-name: "" /auth/info: get: operationId: authInfo responses: "200": content: application/json: schema: $ref: '#/components/schemas/AuthInfoModel' description: Login was successful summary: Get information about the current authentication mode tags: - auth /health: get: operationId: getHealth responses: "200": content: {} description: The node is healthy. summary: Returns 200 if the node is healthy. /v1/chains: get: operationId: getChains responses: "200": content: application/json: schema: items: $ref: '#/components/schemas/ChainInfoResponse' type: array description: A list of all available chains "401": content: application/json: schema: $ref: '#/components/schemas/ValidationError' description: "Unauthorized (Wrong permissions, missing token)" security: - Authorization: [] summary: Get a list of all chains tags: - chains /v1/chains/{chainID}: get: operationId: getChainInfo parameters: - description: ChainID (Bech32) in: path name: chainID required: true schema: format: string type: string - description: Block index or trie root in: query name: block schema: format: string type: string responses: "200": content: application/json: schema: $ref: '#/components/schemas/ChainInfoResponse' description: Information about a specific chain summary: Get information about a specific chain tags: - chains /v1/chains/{chainID}/access-node/{peer}: delete: operationId: removeAccessNode parameters: - description: ChainID (Bech32) in: path name: chainID required: true schema: format: string type: string - description: Name or PubKey (hex) of the trusted peer in: path name: peer required: true schema: format: string type: string responses: "200": content: {} description: Access node was successfully removed "401": content: application/json: schema: $ref: '#/components/schemas/ValidationError' description: "Unauthorized (Wrong permissions, missing token)" security: - Authorization: [] summary: Remove an access node. tags: - chains put: operationId: addAccessNode parameters: - description: ChainID (Bech32) in: path name: chainID required: true schema: format: string type: string - description: Name or PubKey (hex) of the trusted peer in: path name: peer required: true schema: format: string type: string responses: "201": content: {} description: Access node was successfully added "401": content: application/json: schema: $ref: '#/components/schemas/ValidationError' description: "Unauthorized (Wrong permissions, missing token)" security: - Authorization: [] summary: Configure a trusted node to be an access node. tags: - chains /v1/chains/{chainID}/activate: post: operationId: activateChain parameters: - description: ChainID (Bech32) in: path name: chainID required: true schema: format: string type: string responses: "200": content: {} description: Chain was successfully activated "304": content: {} description: Chain was not activated "401": content: application/json: schema: $ref: '#/components/schemas/ValidationError' description: "Unauthorized (Wrong permissions, missing token)" security: - Authorization: [] summary: Activate a chain tags: - chains /v1/chains/{chainID}/callview: post: description: "Execute a view call. Either use HName or Name properties. If both\ \ are supplied, HName are used." operationId: callView parameters: - description: ChainID (Bech32) in: path name: chainID required: true schema: format: string type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/ContractCallViewRequest' description: Parameters required: true responses: "200": content: application/json: schema: $ref: '#/components/schemas/JSONDict_' description: Result summary: Call a view function on a contract by Hname tags: - chains x-codegen-request-body-name: "" /v1/chains/{chainID}/chainrecord: post: operationId: setChainRecord parameters: - description: ChainID (Bech32) in: path name: chainID required: true schema: format: string type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/ChainRecord' description: Chain Record required: true responses: "201": content: {} description: Chain record was saved "401": content: application/json: schema: $ref: '#/components/schemas/ValidationError' description: "Unauthorized (Wrong permissions, missing token)" security: - Authorization: [] summary: Sets the chain record. tags: - chains x-codegen-request-body-name: ChainRecord /v1/chains/{chainID}/committee: get: operationId: getCommitteeInfo parameters: - description: ChainID (Bech32) in: path name: chainID required: true schema: format: string type: string - description: Block index or trie root in: query name: block schema: format: string type: string responses: "200": content: application/json: schema: $ref: '#/components/schemas/CommitteeInfoResponse' description: A list of all nodes tied to the chain "401": content: application/json: schema: $ref: '#/components/schemas/ValidationError' description: "Unauthorized (Wrong permissions, missing token)" security: - Authorization: [] summary: Get information about the deployed committee tags: - chains /v1/chains/{chainID}/contracts: get: operationId: getContracts parameters: - description: ChainID (Bech32) in: path name: chainID required: true schema: format: string type: string - description: Block index or trie root in: query name: block schema: format: string type: string responses: "200": content: application/json: schema: items: $ref: '#/components/schemas/ContractInfoResponse' type: array description: A list of all available contracts "401": content: application/json: schema: $ref: '#/components/schemas/ValidationError' description: "Unauthorized (Wrong permissions, missing token)" security: - Authorization: [] summary: Get all available chain contracts tags: - chains /v1/chains/{chainID}/core/accounts/account/{agentID}/balance: get: operationId: accountsGetAccountBalance parameters: - description: ChainID (Bech32) in: path name: chainID required: true schema: format: string type: string - description: AgentID (Bech32 for WasmVM | Hex for EVM) in: path name: agentID required: true schema: format: string type: string - description: Block index or trie root in: query name: block schema: format: string type: string responses: "200": content: application/json: schema: $ref: '#/components/schemas/AssetsResponse' description: All assets belonging to an account "401": content: application/json: schema: $ref: '#/components/schemas/ValidationError' description: "Unauthorized (Wrong permissions, missing token)" summary: Get all assets belonging to an account tags: - corecontracts /v1/chains/{chainID}/core/accounts/account/{agentID}/foundries: get: operationId: accountsGetAccountFoundries parameters: - description: ChainID (Bech32) in: path name: chainID required: true schema: format: string type: string - description: AgentID (Bech32 for WasmVM | Hex for EVM) in: path name: agentID required: true schema: format: string type: string - description: Block index or trie root in: query name: block schema: format: string type: string responses: "200": content: application/json: schema: $ref: '#/components/schemas/AccountFoundriesResponse' description: All foundries owned by an account "401": content: application/json: schema: $ref: '#/components/schemas/ValidationError' description: "Unauthorized (Wrong permissions, missing token)" summary: Get all foundries owned by an account tags: - corecontracts /v1/chains/{chainID}/core/accounts/account/{agentID}/nfts: get: operationId: accountsGetAccountNFTIDs parameters: - description: ChainID (Bech32) in: path name: chainID required: true schema: format: string type: string - description: AgentID (Bech32 for WasmVM | Hex for EVM) in: path name: agentID required: true schema: format: string type: string - description: Block index or trie root in: query name: block schema: format: string type: string responses: "200": content: application/json: schema: $ref: '#/components/schemas/AccountNFTsResponse' description: All NFT ids belonging to an account "401": content: application/json: schema: $ref: '#/components/schemas/ValidationError' description: "Unauthorized (Wrong permissions, missing token)" summary: Get all NFT ids belonging to an account tags: - corecontracts /v1/chains/{chainID}/core/accounts/account/{agentID}/nonce: get: operationId: accountsGetAccountNonce parameters: - description: ChainID (Bech32) in: path name: chainID required: true schema: format: string type: string - description: AgentID (Bech32 for WasmVM | Hex for EVM) in: path name: agentID required: true schema: format: string type: string - description: Block index or trie root in: query name: block schema: format: string type: string responses: "200": content: application/json: schema: $ref: '#/components/schemas/AccountNonceResponse' description: The current nonce of an account "401": content: application/json: schema: $ref: '#/components/schemas/ValidationError' description: "Unauthorized (Wrong permissions, missing token)" summary: Get the current nonce of an account tags: - corecontracts /v1/chains/{chainID}/core/accounts/foundry_output/{serialNumber}: get: operationId: accountsGetFoundryOutput parameters: - description: ChainID (Bech32) in: path name: chainID required: true schema: format: string type: string - description: Serial Number (uint32) in: path name: serialNumber required: true schema: format: int32 minimum: 1 type: integer - description: Block index or trie root in: query name: block schema: format: string type: string responses: "200": content: application/json: schema: $ref: '#/components/schemas/FoundryOutputResponse' description: The foundry output "401": content: application/json: schema: $ref: '#/components/schemas/ValidationError' description: "Unauthorized (Wrong permissions, missing token)" summary: Get the foundry output tags: - corecontracts /v1/chains/{chainID}/core/accounts/nftdata/{nftID}: get: operationId: accountsGetNFTData parameters: - description: ChainID (Bech32) in: path name: chainID required: true schema: format: string type: string - description: NFT ID (Hex) in: path name: nftID required: true schema: format: string type: string - description: Block index or trie root in: query name: block schema: format: string type: string responses: "200": content: application/json: schema: $ref: '#/components/schemas/NFTJSON' description: The NFT data "401": content: application/json: schema: $ref: '#/components/schemas/ValidationError' description: "Unauthorized (Wrong permissions, missing token)" summary: Get the NFT data by an ID tags: - corecontracts /v1/chains/{chainID}/core/accounts/token_registry: get: operationId: accountsGetNativeTokenIDRegistry parameters: - description: ChainID (Bech32) in: path name: chainID required: true schema: format: string type: string - description: Block index or trie root in: query name: block schema: format: string type: string responses: "200": content: application/json: schema: $ref: '#/components/schemas/NativeTokenIDRegistryResponse' description: A list of all registries "401": content: application/json: schema: $ref: '#/components/schemas/ValidationError' description: "Unauthorized (Wrong permissions, missing token)" summary: Get a list of all registries tags: - corecontracts /v1/chains/{chainID}/core/accounts/total_assets: get: operationId: accountsGetTotalAssets parameters: - description: ChainID (Bech32) in: path name: chainID required: true schema: format: string type: string - description: Block index or trie root in: query name: block schema: format: string type: string responses: "200": content: application/json: schema: $ref: '#/components/schemas/AssetsResponse' description: All stored assets "401": content: application/json: schema: $ref: '#/components/schemas/ValidationError' description: "Unauthorized (Wrong permissions, missing token)" summary: Get all stored assets tags: - corecontracts /v1/chains/{chainID}/core/blobs/{blobHash}: get: operationId: blobsGetBlobInfo parameters: - description: ChainID (Bech32) in: path name: chainID required: true schema: format: string type: string - description: BlobHash (Hex) in: path name: blobHash required: true schema: format: string type: string - description: Block index or trie root in: query name: block schema: format: string type: string responses: "200": content: application/json: schema: $ref: '#/components/schemas/BlobInfoResponse' description: All blob fields and their values "401": content: application/json: schema: $ref: '#/components/schemas/ValidationError' description: "Unauthorized (Wrong permissions, missing token)" summary: Get all fields of a blob tags: - corecontracts /v1/chains/{chainID}/core/blobs/{blobHash}/data/{fieldKey}: get: operationId: blobsGetBlobValue parameters: - description: ChainID (Bech32) in: path name: chainID required: true schema: format: string type: string - description: BlobHash (Hex) in: path name: blobHash required: true schema: format: string type: string - description: FieldKey (String) in: path name: fieldKey required: true schema: format: string type: string - description: Block index or trie root in: query name: block schema: format: string type: string responses: "200": content: application/json: schema: $ref: '#/components/schemas/BlobValueResponse' description: The value of the supplied field (key) "401": content: application/json: schema: $ref: '#/components/schemas/ValidationError' description: "Unauthorized (Wrong permissions, missing token)" summary: Get the value of the supplied field (key) tags: - corecontracts /v1/chains/{chainID}/core/blocklog/blocks/latest: get: operationId: blocklogGetLatestBlockInfo parameters: - description: ChainID (Bech32) in: path name: chainID required: true schema: format: string type: string - description: Block index or trie root in: query name: block schema: format: string type: string responses: "200": content: application/json: schema: $ref: '#/components/schemas/BlockInfoResponse' description: The block info "401": content: application/json: schema: $ref: '#/components/schemas/ValidationError' description: "Unauthorized (Wrong permissions, missing token)" summary: Get the block info of the latest block tags: - corecontracts /v1/chains/{chainID}/core/blocklog/blocks/latest/receipts: get: operationId: blocklogGetRequestReceiptsOfLatestBlock parameters: - description: ChainID (Bech32) in: path name: chainID required: true schema: format: string type: string - description: Block index or trie root in: query name: block schema: format: string type: string responses: "200": content: application/json: schema: items: $ref: '#/components/schemas/ReceiptResponse' type: array description: The receipts "401": content: application/json: schema: $ref: '#/components/schemas/ValidationError' description: "Unauthorized (Wrong permissions, missing token)" summary: Get all receipts of the latest block tags: - corecontracts /v1/chains/{chainID}/core/blocklog/blocks/latest/requestids: get: operationId: blocklogGetRequestIDsForLatestBlock parameters: - description: ChainID (Bech32) in: path name: chainID required: true schema: format: string type: string - description: Block index or trie root in: query name: block schema: format: string type: string responses: "200": content: application/json: schema: $ref: '#/components/schemas/RequestIDsResponse' description: "A list of request ids (ISCRequestID[])" "401": content: application/json: schema: $ref: '#/components/schemas/ValidationError' description: "Unauthorized (Wrong permissions, missing token)" summary: Get the request ids for the latest block tags: - corecontracts /v1/chains/{chainID}/core/blocklog/blocks/{blockIndex}: get: operationId: blocklogGetBlockInfo parameters: - description: ChainID (Bech32) in: path name: chainID required: true schema: format: string type: string - description: BlockIndex (uint32) in: path name: blockIndex required: true schema: format: int32 minimum: 1 type: integer - description: Block index or trie root in: query name: block schema: format: string type: string responses: "200": content: application/json: schema: $ref: '#/components/schemas/BlockInfoResponse' description: The block info "401": content: application/json: schema: $ref: '#/components/schemas/ValidationError' description: "Unauthorized (Wrong permissions, missing token)" summary: Get the block info of a certain block index tags: - corecontracts /v1/chains/{chainID}/core/blocklog/blocks/{blockIndex}/receipts: get: operationId: blocklogGetRequestReceiptsOfBlock parameters: - description: ChainID (Bech32) in: path name: chainID required: true schema: format: string type: string - description: BlockIndex (uint32) in: path name: blockIndex required: true schema: format: int32 minimum: 1 type: integer - description: Block index or trie root in: query name: block schema: format: string type: string responses: "200": content: application/json: schema: items: $ref: '#/components/schemas/ReceiptResponse' type: array description: The receipts "401": content: application/json: schema: $ref: '#/components/schemas/ValidationError' description: "Unauthorized (Wrong permissions, missing token)" summary: Get all receipts of a certain block tags: - corecontracts /v1/chains/{chainID}/core/blocklog/blocks/{blockIndex}/requestids: get: operationId: blocklogGetRequestIDsForBlock parameters: - description: ChainID (Bech32) in: path name: chainID required: true schema: format: string type: string - description: BlockIndex (uint32) in: path name: blockIndex required: true schema: format: int32 minimum: 1 type: integer - description: Block index or trie root in: query name: block schema: format: string type: string responses: "200": content: application/json: schema: $ref: '#/components/schemas/RequestIDsResponse' description: "A list of request ids (ISCRequestID[])" "401": content: application/json: schema: $ref: '#/components/schemas/ValidationError' description: "Unauthorized (Wrong permissions, missing token)" summary: Get the request ids for a certain block index tags: - corecontracts /v1/chains/{chainID}/core/blocklog/controladdresses: get: operationId: blocklogGetControlAddresses parameters: - description: ChainID (Bech32) in: path name: chainID required: true schema: format: string type: string - description: Block index or trie root in: query name: block schema: format: string type: string responses: "200": content: application/json: schema: $ref: '#/components/schemas/ControlAddressesResponse' description: The chain info "401": content: application/json: schema: $ref: '#/components/schemas/ValidationError' description: "Unauthorized (Wrong permissions, missing token)" summary: Get the control addresses tags: - corecontracts /v1/chains/{chainID}/core/blocklog/events/block/latest: get: operationId: blocklogGetEventsOfLatestBlock parameters: - description: ChainID (Bech32) in: path name: chainID required: true schema: format: string type: string - description: Block index or trie root in: query name: block schema: format: string type: string responses: "200": content: application/json: schema: $ref: '#/components/schemas/EventsResponse' description: The receipts "401": content: application/json: schema: $ref: '#/components/schemas/ValidationError' description: "Unauthorized (Wrong permissions, missing token)" summary: Get events of the latest block tags: - corecontracts /v1/chains/{chainID}/core/blocklog/events/block/{blockIndex}: get: operationId: blocklogGetEventsOfBlock parameters: - description: ChainID (Bech32) in: path name: chainID required: true schema: format: string type: string - description: BlockIndex (uint32) in: path name: blockIndex required: true schema: format: int32 minimum: 1 type: integer - description: Block index or trie root in: query name: block schema: format: string type: string responses: "200": content: application/json: schema: $ref: '#/components/schemas/EventsResponse' description: The events "401": content: application/json: schema: $ref: '#/components/schemas/ValidationError' description: "Unauthorized (Wrong permissions, missing token)" summary: Get events of a block tags: - corecontracts /v1/chains/{chainID}/core/blocklog/events/request/{requestID}: get: operationId: blocklogGetEventsOfRequest parameters: - description: ChainID (Bech32) in: path name: chainID required: true schema: format: string type: string - description: RequestID (Hex) in: path name: requestID required: true schema: format: string type: string - description: Block index or trie root in: query name: block schema: format: string type: string responses: "200": content: application/json: schema: $ref: '#/components/schemas/EventsResponse' description: The events "401": content: application/json: schema: $ref: '#/components/schemas/ValidationError' description: "Unauthorized (Wrong permissions, missing token)" summary: Get events of a request tags: - corecontracts /v1/chains/{chainID}/core/blocklog/requests/{requestID}: get: operationId: blocklogGetRequestReceipt parameters: - description: ChainID (Bech32) in: path name: chainID required: true schema: format: string type: string - description: RequestID (Hex) in: path name: requestID required: true schema: format: string type: string - description: Block index or trie root in: query name: block schema: format: string type: string responses: "200": content: application/json: schema: $ref: '#/components/schemas/ReceiptResponse' description: The receipt "401": content: application/json: schema: $ref: '#/components/schemas/ValidationError' description: "Unauthorized (Wrong permissions, missing token)" summary: Get the receipt of a certain request id tags: - corecontracts /v1/chains/{chainID}/core/blocklog/requests/{requestID}/is_processed: get: operationId: blocklogGetRequestIsProcessed parameters: - description: ChainID (Bech32) in: path name: chainID required: true schema: format: string type: string - description: RequestID (Hex) in: path name: requestID required: true schema: format: string type: string - description: Block index or trie root in: query name: block schema: format: string type: string responses: "200": content: application/json: schema: $ref: '#/components/schemas/RequestProcessedResponse' description: The processing result "401": content: application/json: schema: $ref: '#/components/schemas/ValidationError' description: "Unauthorized (Wrong permissions, missing token)" summary: Get the request processing status tags: - corecontracts /v1/chains/{chainID}/core/errors/{contractHname}/message/{errorID}: get: operationId: errorsGetErrorMessageFormat parameters: - description: ChainID (Bech32) in: path name: chainID required: true schema: format: string type: string - description: Contract (Hname as Hex) in: path name: contractHname required: true schema: format: string type: string - description: Error Id (uint16) in: path name: errorID required: true schema: format: int32 minimum: 1 type: integer - description: Block index or trie root in: query name: block schema: format: string type: string responses: "200": content: application/json: schema: $ref: '#/components/schemas/ErrorMessageFormatResponse' description: The error message format "401": content: application/json: schema: $ref: '#/components/schemas/ValidationError' description: "Unauthorized (Wrong permissions, missing token)" summary: Get the error message format of a specific error id tags: - corecontracts /v1/chains/{chainID}/core/governance/allowedstatecontrollers: get: description: Returns the allowed state controller addresses operationId: governanceGetAllowedStateControllerAddresses parameters: - description: ChainID (Bech32) in: path name: chainID required: true schema: format: string type: string - description: Block index or trie root in: query name: block schema: format: string type: string responses: "200": content: application/json: schema: $ref: '#/components/schemas/GovAllowedStateControllerAddressesResponse' description: The state controller addresses "401": content: application/json: schema: $ref: '#/components/schemas/ValidationError' description: "Unauthorized (Wrong permissions, missing token)" summary: Get the allowed state controller addresses tags: - corecontracts /v1/chains/{chainID}/core/governance/chaininfo: get: description: "If you are using the common API functions, you most likely rather\ \ want to use '/v1/chains/:chainID' to get information about a chain." operationId: governanceGetChainInfo parameters: - description: ChainID (Bech32) in: path name: chainID required: true schema: format: string type: string - description: Block index or trie root in: query name: block schema: format: string type: string responses: "200": content: application/json: schema: $ref: '#/components/schemas/GovChainInfoResponse' description: The chain info "401": content: application/json: schema: $ref: '#/components/schemas/ValidationError' description: "Unauthorized (Wrong permissions, missing token)" summary: Get the chain info tags: - corecontracts /v1/chains/{chainID}/core/governance/chainowner: get: description: Returns the chain owner operationId: governanceGetChainOwner parameters: - description: ChainID (Bech32) in: path name: chainID required: true schema: format: string type: string - description: Block index or trie root in: query name: block schema: format: string type: string responses: "200": content: application/json: schema: $ref: '#/components/schemas/GovChainOwnerResponse' description: The chain owner "401": content: application/json: schema: $ref: '#/components/schemas/ValidationError' description: "Unauthorized (Wrong permissions, missing token)" summary: Get the chain owner tags: - corecontracts /v1/chains/{chainID}/deactivate: post: operationId: deactivateChain parameters: - description: ChainID (Bech32) in: path name: chainID required: true schema: format: string type: string responses: "200": content: {} description: Chain was successfully deactivated "304": content: {} description: Chain was not deactivated "401": content: application/json: schema: $ref: '#/components/schemas/ValidationError' description: "Unauthorized (Wrong permissions, missing token)" security: - Authorization: [] summary: Deactivate a chain tags: - chains /v1/chains/{chainID}/dump-accounts: post: operationId: dump-accounts parameters: - description: ChainID (Bech32) in: path name: chainID required: true schema: format: string type: string responses: "200": content: {} description: Accounts dump will be produced "401": content: application/json: schema: $ref: '#/components/schemas/ValidationError' description: "Unauthorized (Wrong permissions, missing token)" security: - Authorization: [] summary: dump accounts information into a humanly-readable format tags: - chains /v1/chains/{chainID}/estimategas-offledger: post: operationId: estimateGasOffledger parameters: - description: ChainID (Bech32) in: path name: chainID required: true schema: format: string type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/EstimateGasRequestOffledger' description: Request required: true responses: "200": content: application/json: schema: $ref: '#/components/schemas/ReceiptResponse' description: ReceiptResponse summary: Estimates gas for a given off-ledger ISC request tags: - chains x-codegen-request-body-name: Request /v1/chains/{chainID}/estimategas-onledger: post: operationId: estimateGasOnledger parameters: - description: ChainID (Bech32) in: path name: chainID required: true schema: format: string type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/EstimateGasRequestOnledger' description: Request required: true responses: "200": content: application/json: schema: $ref: '#/components/schemas/ReceiptResponse' description: ReceiptResponse summary: Estimates gas for a given on-ledger ISC request tags: - chains x-codegen-request-body-name: Request /v1/chains/{chainID}/evm: post: parameters: - description: ChainID (Bech32) in: path name: chainID required: true schema: format: string type: string responses: default: content: {} description: successful operation summary: Ethereum JSON-RPC tags: - chains /v1/chains/{chainID}/evm/ws: get: parameters: - description: ChainID (Bech32) in: path name: chainID required: true schema: format: string type: string responses: default: content: {} description: successful operation summary: Ethereum JSON-RPC (Websocket transport) tags: - chains /v1/chains/{chainID}/mempool: get: operationId: getMempoolContents parameters: - description: ChainID (Bech32) in: path name: chainID required: true schema: format: string type: string responses: "200": content: application/octet-stream: schema: items: format: int32 type: integer type: array description: stream of JSON representation of the requests in the mempool "401": content: application/octet-stream: schema: $ref: '#/components/schemas/ValidationError' description: "Unauthorized (Wrong permissions, missing token)" security: - Authorization: [] summary: Get the contents of the mempool. tags: - chains /v1/chains/{chainID}/receipts/{requestID}: get: operationId: getReceipt parameters: - description: ChainID (Bech32) in: path name: chainID required: true schema: format: string type: string - description: RequestID (Hex) in: path name: requestID required: true schema: format: string type: string responses: "200": content: application/json: schema: $ref: '#/components/schemas/ReceiptResponse' description: ReceiptResponse "404": content: {} description: Chain or request id not found summary: Get a receipt from a request ID tags: - chains /v1/chains/{chainID}/requests/{requestID}/wait: get: operationId: waitForRequest parameters: - description: ChainID (Bech32) in: path name: chainID required: true schema: format: string type: string - description: RequestID (Hex) in: path name: requestID required: true schema: format: string type: string - description: "The timeout in seconds, maximum 60s" in: query name: timeoutSeconds schema: format: int32 type: integer - description: Wait for the block to be confirmed on L1 in: query name: waitForL1Confirmation schema: format: boolean type: boolean responses: "200": content: application/json: schema: $ref: '#/components/schemas/ReceiptResponse' description: The request receipt "404": content: {} description: The chain or request id not found "408": content: {} description: The waiting time has reached the defined limit summary: Wait until the given request has been processed by the node tags: - chains /v1/chains/{chainID}/state/{stateKey}: get: operationId: getStateValue parameters: - description: ChainID (Bech32) in: path name: chainID required: true schema: format: string type: string - description: State Key (Hex) in: path name: stateKey required: true schema: format: string type: string responses: "200": content: application/json: schema: $ref: '#/components/schemas/StateResponse' description: Result summary: Fetch the raw value associated with the given key in the chain state tags: - chains /v1/metrics/chain/{chainID}/messages: get: operationId: getChainMessageMetrics parameters: - description: ChainID (Bech32) in: path name: chainID required: true schema: format: string type: string responses: "200": content: application/json: schema: $ref: '#/components/schemas/ChainMessageMetrics' description: A list of all available metrics. "401": content: application/json: schema: $ref: '#/components/schemas/ValidationError' description: "Unauthorized (Wrong permissions, missing token)" "404": content: {} description: Chain not found security: - Authorization: [] summary: Get chain specific message metrics. tags: - metrics /v1/metrics/chain/{chainID}/pipe: get: operationId: getChainPipeMetrics parameters: - description: ChainID (Bech32) in: path name: chainID required: true schema: format: string type: string responses: "200": content: application/json: schema: $ref: '#/components/schemas/ConsensusPipeMetrics' description: A list of all available metrics. "401": content: application/json: schema: $ref: '#/components/schemas/ValidationError' description: "Unauthorized (Wrong permissions, missing token)" "404": content: {} description: Chain not found security: - Authorization: [] summary: Get chain pipe event metrics. tags: - metrics /v1/metrics/chain/{chainID}/workflow: get: operationId: getChainWorkflowMetrics parameters: - description: ChainID (Bech32) in: path name: chainID required: true schema: format: string type: string responses: "200": content: application/json: schema: $ref: '#/components/schemas/ConsensusWorkflowMetrics' description: A list of all available metrics. "401": content: application/json: schema: $ref: '#/components/schemas/ValidationError' description: "Unauthorized (Wrong permissions, missing token)" "404": content: {} description: Chain not found security: - Authorization: [] summary: Get chain workflow metrics. tags: - metrics /v1/metrics/node/messages: get: operationId: getNodeMessageMetrics responses: "200": content: application/json: schema: $ref: '#/components/schemas/NodeMessageMetrics' description: A list of all available metrics. "401": content: application/json: schema: $ref: '#/components/schemas/ValidationError' description: "Unauthorized (Wrong permissions, missing token)" security: - Authorization: [] summary: Get accumulated message metrics. tags: - metrics /v1/node/config: get: operationId: getConfiguration responses: "200": content: application/json: schema: additionalProperties: example: "true" format: string type: string type: object description: Dumped configuration "401": content: application/json: schema: $ref: '#/components/schemas/ValidationError' description: "Unauthorized (Wrong permissions, missing token)" security: - Authorization: [] summary: Return the Wasp configuration tags: - node /v1/node/dks: post: operationId: generateDKS requestBody: content: application/json: schema: $ref: '#/components/schemas/DKSharesPostRequest' description: Request parameters required: true responses: "200": content: application/json: schema: $ref: '#/components/schemas/DKSharesInfo' description: DK shares info "401": content: application/json: schema: $ref: '#/components/schemas/ValidationError' description: "Unauthorized (Wrong permissions, missing token)" security: - Authorization: [] summary: Generate a new distributed key tags: - node x-codegen-request-body-name: DKSharesPostRequest /v1/node/dks/{sharedAddress}: get: operationId: getDKSInfo parameters: - description: SharedAddress (Bech32) in: path name: sharedAddress required: true schema: format: string type: string responses: "200": content: application/json: schema: $ref: '#/components/schemas/DKSharesInfo' description: DK shares info "401": content: application/json: schema: $ref: '#/components/schemas/ValidationError' description: "Unauthorized (Wrong permissions, missing token)" "404": content: {} description: Shared address not found security: - Authorization: [] summary: Get information about the shared address DKS configuration tags: - node /v1/node/info: get: operationId: getInfo responses: "200": content: application/json: schema: $ref: '#/components/schemas/InfoResponse' description: Returns information about this node. "401": content: application/json: schema: $ref: '#/components/schemas/ValidationError' description: "Unauthorized (Wrong permissions, missing token)" security: - Authorization: [] summary: Returns private information about this node. tags: - node /v1/node/owner/certificate: get: operationId: ownerCertificate responses: "200": content: application/json: schema: $ref: '#/components/schemas/NodeOwnerCertificateResponse' description: Node Certificate "401": content: application/json: schema: $ref: '#/components/schemas/ValidationError' description: "Unauthorized (Wrong permissions, missing token)" security: - Authorization: [] summary: Gets the node owner tags: - node /v1/node/peers: get: operationId: getAllPeers responses: "200": content: application/json: schema: items: $ref: '#/components/schemas/PeeringNodeStatusResponse_' type: array description: A list of all peers "401": content: application/json: schema: $ref: '#/components/schemas/ValidationError' description: "Unauthorized (Wrong permissions, missing token)" security: - Authorization: [] summary: Get basic information about all configured peers tags: - node /v1/node/peers/identity: get: operationId: getPeeringIdentity responses: "200": content: application/json: schema: $ref: '#/components/schemas/PeeringNodeIdentityResponse' description: This node peering identity "401": content: application/json: schema: $ref: '#/components/schemas/ValidationError' description: "Unauthorized (Wrong permissions, missing token)" security: - Authorization: [] summary: Get basic peer info of the current node tags: - node /v1/node/peers/trusted: get: operationId: getTrustedPeers responses: "200": content: application/json: schema: items: $ref: '#/components/schemas/PeeringNodeIdentityResponse' type: array description: A list of trusted peers "401": content: application/json: schema: $ref: '#/components/schemas/ValidationError' description: "Unauthorized (Wrong permissions, missing token)" security: - Authorization: [] summary: Get trusted peers tags: - node post: operationId: trustPeer requestBody: content: application/json: schema: $ref: '#/components/schemas/PeeringTrustRequest' description: Info of the peer to trust required: true responses: "200": content: {} description: Peer was successfully trusted "401": content: application/json: schema: $ref: '#/components/schemas/ValidationError' description: "Unauthorized (Wrong permissions, missing token)" security: - Authorization: [] summary: Trust a peering node tags: - node x-codegen-request-body-name: "" /v1/node/peers/trusted/{peer}: delete: operationId: distrustPeer parameters: - description: Name or PubKey (hex) of the trusted peer in: path name: peer required: true schema: format: string type: string responses: "200": content: {} description: Peer was successfully distrusted "401": content: application/json: schema: $ref: '#/components/schemas/ValidationError' description: "Unauthorized (Wrong permissions, missing token)" "404": content: {} description: Peer not found security: - Authorization: [] summary: Distrust a peering node tags: - node /v1/node/shutdown: post: operationId: shutdownNode responses: "200": content: {} description: The node has been shut down "401": content: application/json: schema: $ref: '#/components/schemas/ValidationError' description: "Unauthorized (Wrong permissions, missing token)" security: - Authorization: [] summary: Shut down the node tags: - node /v1/node/version: get: operationId: getVersion responses: "200": content: application/json: schema: $ref: '#/components/schemas/VersionResponse' description: Returns the version of the node. summary: Returns the node version. tags: - node /v1/requests/offledger: post: operationId: offLedger requestBody: content: application/json: schema: $ref: '#/components/schemas/OffLedgerRequest' description: Offledger request as JSON. Request encoded in Hex required: true responses: "202": content: {} description: Request submitted summary: Post an off-ledger request tags: - requests x-codegen-request-body-name: "" /v1/users: get: operationId: getUsers responses: "200": content: application/json: schema: items: $ref: '#/components/schemas/User' type: array description: A list of all users "401": content: application/json: schema: $ref: '#/components/schemas/ValidationError' description: "Unauthorized (Wrong permissions, missing token)" security: - Authorization: [] summary: Get a list of all users tags: - users post: operationId: addUser requestBody: content: application/json: schema: $ref: '#/components/schemas/AddUserRequest' description: The user data required: true responses: "201": content: {} description: User successfully added "400": content: {} description: Invalid request "401": content: application/json: schema: $ref: '#/components/schemas/ValidationError' description: "Unauthorized (Wrong permissions, missing token)" security: - Authorization: [] summary: Add a user tags: - users x-codegen-request-body-name: "" /v1/users/{username}: delete: operationId: deleteUser parameters: - description: The username in: path name: username required: true schema: format: string type: string responses: "200": content: {} description: Deletes a specific user "401": content: application/json: schema: $ref: '#/components/schemas/ValidationError' description: "Unauthorized (Wrong permissions, missing token)" "404": content: {} description: User not found security: - Authorization: [] summary: Deletes a user tags: - users get: operationId: getUser parameters: - description: The username in: path name: username required: true schema: format: string type: string responses: "200": content: application/json: schema: $ref: '#/components/schemas/User' description: Returns a specific user "401": content: application/json: schema: $ref: '#/components/schemas/ValidationError' description: "Unauthorized (Wrong permissions, missing token)" "404": content: {} description: User not found security: - Authorization: [] summary: Get a user tags: - users /v1/users/{username}/password: put: operationId: changeUserPassword parameters: - description: The username in: path name: username required: true schema: format: string type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/UpdateUserPasswordRequest' description: The users new password required: true responses: "200": content: {} description: User successfully updated "400": content: {} description: Invalid request "401": content: application/json: schema: $ref: '#/components/schemas/ValidationError' description: "Unauthorized (Wrong permissions, missing token)" "404": content: {} description: User not found security: - Authorization: [] summary: Change user password tags: - users x-codegen-request-body-name: "" /v1/users/{username}/permissions: put: operationId: changeUserPermissions parameters: - description: The username in: path name: username required: true schema: format: string type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/UpdateUserPermissionsRequest' description: The users new permissions required: true responses: "200": content: {} description: User successfully updated "400": content: {} description: Invalid request "401": content: application/json: schema: $ref: '#/components/schemas/ValidationError' description: "Unauthorized (Wrong permissions, missing token)" "404": content: {} description: User not found security: - Authorization: [] summary: Change user permissions tags: - users x-codegen-request-body-name: "" /v1/ws: get: responses: default: content: {} description: successful operation summary: The websocket connection service components: schemas: AccountFoundriesResponse: example: foundrySerialNumbers: - 0 - 0 properties: foundrySerialNumbers: items: format: int32 type: integer type: array xml: name: FoundrySerialNumbers wrapped: true required: - foundrySerialNumbers type: object xml: name: AccountFoundriesResponse AccountNFTsResponse: example: nftIds: - nftIds - nftIds properties: nftIds: items: format: string type: string type: array xml: name: NFTIDs wrapped: true required: - nftIds type: object xml: name: AccountNFTsResponse AccountNonceResponse: example: nonce: nonce properties: nonce: description: The nonce (uint64 as string) format: string type: string xml: name: Nonce required: - nonce type: object xml: name: AccountNonceResponse AddUserRequest: example: password: password permissions: - permissions - permissions username: username properties: password: format: string type: string xml: name: Password permissions: items: format: string type: string type: array xml: name: Permissions wrapped: true username: format: string type: string xml: name: Username required: - password - permissions - username type: object xml: name: AddUserRequest AliasOutputMetricItem: example: lastMessage: outputType: 0 raw: raw messages: 1 timestamp: 2000-01-23T04:56:07.000+00:00 properties: lastMessage: $ref: '#/components/schemas/Output' messages: format: int32 minimum: 1 type: integer xml: name: Messages timestamp: format: date-time type: string xml: name: Timestamp required: - lastMessage - messages - timestamp type: object xml: name: AliasOutputMetricItem AssetsJSON: example: nfts: - nfts - nfts baseTokens: baseTokens nativeTokens: - amount: amount id: id - amount: amount id: id properties: baseTokens: description: The base tokens (uint64 as string) format: string type: string xml: name: BaseTokens nativeTokens: items: $ref: '#/components/schemas/NativeTokenJSON' type: array xml: name: NativeTokens wrapped: true nfts: items: format: string type: string type: array xml: name: NFTs wrapped: true required: - baseTokens - nativeTokens - nfts type: object xml: name: AssetsJSON AssetsResponse: example: baseTokens: baseTokens nativeTokens: - amount: amount id: id - amount: amount id: id properties: baseTokens: description: The base tokens (uint64 as string) format: string type: string xml: name: BaseTokens nativeTokens: items: $ref: '#/components/schemas/NativeTokenJSON' type: array xml: name: NativeTokens wrapped: true required: - baseTokens - nativeTokens type: object xml: name: AssetsResponse AuthInfoModel: example: authURL: /auth scheme: jwt properties: authURL: description: JWT only example: /auth format: string type: string xml: name: AuthURL scheme: example: jwt format: string type: string xml: name: Scheme required: - authURL - scheme type: object xml: name: AuthInfoModel BaseToken: example: unit: TEST decimals: 6 name: TestCoin tickerSymbol: TEST subunit: testies useMetricPrefix: true properties: decimals: description: The token decimals example: 6 format: int32 type: integer xml: name: Decimals name: description: The base token name example: TestCoin format: string type: string xml: name: Name subunit: description: The token subunit example: testies format: string type: string xml: name: Subunit tickerSymbol: description: The ticker symbol example: TEST format: string type: string xml: name: TickerSymbol unit: description: The token unit example: TEST format: string type: string xml: name: Unit useMetricPrefix: description: Whether or not the token uses a metric prefix format: boolean type: boolean xml: name: UseMetricPrefix required: - decimals - name - subunit - tickerSymbol - unit - useMetricPrefix type: object xml: name: BaseToken BlobInfoResponse: example: fields: key: 0 properties: fields: additionalProperties: format: int32 type: integer type: object xml: name: Fields required: - fields type: object xml: name: BlobInfoResponse BlobValueResponse: example: valueData: valueData properties: valueData: description: The blob data (Hex) format: string type: string xml: name: ValueData required: - valueData type: object xml: name: BlobValueResponse BlockInfoResponse: example: blockIndex: 1 numSuccessfulRequests: 1 gasFeeCharged: gasFeeCharged previousAliasOutput: previousAliasOutput gasBurned: gasBurned totalRequests: 1 numOffLedgerRequests: 1 timestamp: 2000-01-23T04:56:07.000+00:00 properties: blockIndex: format: int32 minimum: 1 type: integer xml: name: BlockIndex gasBurned: description: The burned gas (uint64 as string) format: string type: string xml: name: GasBurned gasFeeCharged: description: The charged gas fee (uint64 as string) format: string type: string xml: name: GasFeeCharged numOffLedgerRequests: format: int32 minimum: 1 type: integer xml: name: NumOffLedgerRequests numSuccessfulRequests: format: int32 minimum: 1 type: integer xml: name: NumSuccessfulRequests previousAliasOutput: format: string type: string xml: name: PreviousAliasOutput timestamp: format: date-time type: string xml: name: Timestamp totalRequests: format: int32 minimum: 1 type: integer xml: name: TotalRequests required: - blockIndex - gasBurned - gasFeeCharged - numOffLedgerRequests - numSuccessfulRequests - previousAliasOutput - timestamp - totalRequests type: object xml: name: BlockInfoResponse BurnRecord: example: code: 6 gasBurned: 1 properties: code: format: int32 type: integer xml: name: Code gasBurned: format: int64 type: integer xml: name: GasBurned required: - code - gasBurned type: object xml: name: BurnRecord CallTargetJSON: example: contractHName: contractHName functionHName: functionHName properties: contractHName: description: The contract name as HName (Hex) format: string type: string xml: name: ContractHName functionHName: description: The function name as HName (Hex) format: string type: string xml: name: FunctionHName required: - contractHName - functionHName type: object xml: name: CallTargetJSON ChainInfoResponse: example: chainOwnerId: tst1qzjsxstc0k850jevpqu08tj0suql9u7hvh3vq3eaaem3gkx7r646zqpdn6e metadata: website: website evmWebSocketURL: evmWebSocketURL name: name description: description evmJsonRpcURL: evmJsonRpcURL gasLimits: maxGasExternalViewCall: 6 minGasPerRequest: 5 maxGasPerBlock: 1 maxGasPerRequest: 5 chainID: tst1prcw42l5u4g24tqg628d7qzh7n6m4k4ktvgayh44dyt68y930qzy2lr054v evmChainId: 1074 publicURL: publicURL gasFeePolicy: gasPerToken: a: 1 b: 100 validatorFeeShare: 0 evmGasRatio: a: 1 b: 1 isActive: true properties: chainID: description: ChainID (Bech32-encoded) example: tst1prcw42l5u4g24tqg628d7qzh7n6m4k4ktvgayh44dyt68y930qzy2lr054v format: string type: string xml: name: ChainID chainOwnerId: description: The chain owner address (Bech32-encoded) example: tst1qzjsxstc0k850jevpqu08tj0suql9u7hvh3vq3eaaem3gkx7r646zqpdn6e format: string type: string xml: name: ChainOwnerID evmChainId: description: The EVM chain ID example: 1074 format: int32 minimum: 1 type: integer xml: name: EVMChainID gasFeePolicy: $ref: '#/components/schemas/FeePolicy' gasLimits: $ref: '#/components/schemas/Limits' isActive: description: Whether or not the chain is active format: boolean type: boolean xml: name: IsActive metadata: $ref: '#/components/schemas/PublicChainMetadata' publicURL: description: The fully qualified public url leading to the chains metadata format: string type: string xml: name: PublicURL required: - chainID - chainOwnerId - evmChainId - gasFeePolicy - gasLimits - isActive - metadata - publicURL type: object xml: name: ChainInfoResponse ChainMessageMetrics: example: outPublishGovernanceTransaction: lastMessage: txId: txId messages: 1 timestamp: 2000-01-23T04:56:07.000+00:00 outPublisherStateTransaction: lastMessage: stateIndex: 1 txId: txId messages: 1 timestamp: 2000-01-23T04:56:07.000+00:00 inTxInclusionState: lastMessage: txId: txId state: state messages: 1 timestamp: 2000-01-23T04:56:07.000+00:00 inOnLedgerRequest: lastMessage: output: outputType: 0 raw: raw outputId: outputId raw: raw id: id messages: 1 timestamp: 2000-01-23T04:56:07.000+00:00 inOutput: lastMessage: output: outputType: 0 raw: raw outputId: outputId messages: 1 timestamp: 2000-01-23T04:56:07.000+00:00 inAliasOutput: lastMessage: outputType: 0 raw: raw messages: 1 timestamp: 2000-01-23T04:56:07.000+00:00 inStateOutput: lastMessage: output: outputType: 0 raw: raw outputId: outputId messages: 1 timestamp: 2000-01-23T04:56:07.000+00:00 outPullTxInclusionState: lastMessage: txId: txId messages: 1 timestamp: 2000-01-23T04:56:07.000+00:00 outPullLatestOutput: lastMessage: lastMessage messages: 1 timestamp: 2000-01-23T04:56:07.000+00:00 outPullOutputByID: lastMessage: outputId: outputId messages: 1 timestamp: 2000-01-23T04:56:07.000+00:00 properties: inAliasOutput: $ref: '#/components/schemas/AliasOutputMetricItem' inOnLedgerRequest: $ref: '#/components/schemas/OnLedgerRequestMetricItem' inOutput: $ref: '#/components/schemas/InOutputMetricItem' inStateOutput: $ref: '#/components/schemas/InStateOutputMetricItem' inTxInclusionState: $ref: '#/components/schemas/TxInclusionStateMsgMetricItem' outPublishGovernanceTransaction: $ref: '#/components/schemas/TransactionMetricItem' outPublisherStateTransaction: $ref: '#/components/schemas/PublisherStateTransactionItem' outPullLatestOutput: $ref: '#/components/schemas/InterfaceMetricItem' outPullOutputByID: $ref: '#/components/schemas/UTXOInputMetricItem' outPullTxInclusionState: $ref: '#/components/schemas/TransactionIDMetricItem' required: - inAliasOutput - inOnLedgerRequest - inOutput - inStateOutput - inTxInclusionState - outPublishGovernanceTransaction - outPublisherStateTransaction - outPullLatestOutput - outPullOutputByID - outPullTxInclusionState type: object xml: name: ChainMessageMetrics ChainRecord: example: accessNodes: - accessNodes - accessNodes isActive: true properties: accessNodes: items: format: string type: string type: array xml: name: AccessNodes wrapped: true isActive: format: boolean type: boolean xml: name: IsActive required: - accessNodes - isActive type: object xml: name: ChainRecord CommitteeInfoResponse: example: candidateNodes: - node: isAlive: true peeringURL: peeringURL name: name publicKey: publicKey numUsers: 0 isTrusted: true accessAPI: accessAPI - node: isAlive: true peeringURL: peeringURL name: name publicKey: publicKey numUsers: 0 isTrusted: true accessAPI: accessAPI committeeNodes: - node: isAlive: true peeringURL: localhost:4000 name: name publicKey: 0x0000 numUsers: 1 isTrusted: true accessAPI: accessAPI - node: isAlive: true peeringURL: localhost:4000 name: name publicKey: 0x0000 numUsers: 1 isTrusted: true accessAPI: accessAPI chainId: tst1pqm5ckama06xhkl080mmvz6l3xy8c8lulrwy7mx4ll0fc69krxfgka70j0e accessNodes: - node: isAlive: true peeringURL: peeringURL name: name publicKey: publicKey numUsers: 0 isTrusted: true accessAPI: accessAPI - node: isAlive: true peeringURL: peeringURL name: name publicKey: publicKey numUsers: 0 isTrusted: true accessAPI: accessAPI stateAddress: 0xff97a3eb5c56f6a3bc4fb729dedff9bffe37583d81d6c72ac12f2438cc94fb43 active: true properties: accessNodes: description: A list of all access nodes and their peering info. items: $ref: '#/components/schemas/CommitteeNode' type: array xml: name: AccessNodes wrapped: true active: description: Whether or not the chain is active. example: true format: boolean type: boolean xml: name: Active candidateNodes: description: A list of all candidate nodes and their peering info. items: $ref: '#/components/schemas/CommitteeNode' type: array xml: name: CandidateNodes wrapped: true chainId: description: ChainID (Bech32-encoded). example: tst1pqm5ckama06xhkl080mmvz6l3xy8c8lulrwy7mx4ll0fc69krxfgka70j0e format: string type: string xml: name: ChainID committeeNodes: description: A list of all committee nodes and their peering info. items: $ref: '#/components/schemas/CommitteeNode_' type: array xml: name: CommitteeNodes wrapped: true stateAddress: example: 0xff97a3eb5c56f6a3bc4fb729dedff9bffe37583d81d6c72ac12f2438cc94fb43 format: string type: string xml: name: StateAddress required: - accessNodes - active - candidateNodes - chainId - committeeNodes - stateAddress type: object xml: name: CommitteeInfoResponse CommitteeNode: example: node: isAlive: true peeringURL: peeringURL name: name publicKey: publicKey numUsers: 0 isTrusted: true accessAPI: accessAPI properties: accessAPI: format: string type: string xml: name: AccessAPI node: $ref: '#/components/schemas/PeeringNodeStatusResponse' required: - accessAPI - node type: object xml: name: CommitteeNode CommitteeNode_: example: node: isAlive: true peeringURL: localhost:4000 name: name publicKey: 0x0000 numUsers: 1 isTrusted: true accessAPI: accessAPI properties: accessAPI: format: string type: string xml: name: AccessAPI node: $ref: '#/components/schemas/PeeringNodeStatusResponse_' required: - accessAPI - node type: object xml: name: CommitteeNode ConsensusPipeMetrics: example: eventACSMsgPipeSize: 0 eventPeerLogIndexMsgPipeSize: 6 eventVMResultMsgPipeSize: 5 eventStateTransitionMsgPipeSize: 1 eventTimerMsgPipeSize: 5 properties: eventACSMsgPipeSize: format: int32 type: integer xml: name: EventACSMsgPipeSize eventPeerLogIndexMsgPipeSize: format: int32 type: integer xml: name: EventPeerLogIndexMsgPipeSize eventStateTransitionMsgPipeSize: format: int32 type: integer xml: name: EventStateTransitionMsgPipeSize eventTimerMsgPipeSize: format: int32 type: integer xml: name: EventTimerMsgPipeSize eventVMResultMsgPipeSize: format: int32 type: integer xml: name: EventVMResultMsgPipeSize required: - eventACSMsgPipeSize - eventPeerLogIndexMsgPipeSize - eventStateTransitionMsgPipeSize - eventTimerMsgPipeSize - eventVMResultMsgPipeSize type: object xml: name: ConsensusPipeMetrics ConsensusWorkflowMetrics: example: flagStateReceived: true flagTransactionPosted: true flagVMStarted: true timeTransactionSeen: 2000-01-23T04:56:07.000+00:00 flagConsensusBatchKnown: true timeTransactionFinalized: 2000-01-23T04:56:07.000+00:00 timeVMStarted: 2000-01-23T04:56:07.000+00:00 flagVMResultSigned: true timeBatchProposalSent: 2000-01-23T04:56:07.000+00:00 timeVMResultSigned: 2000-01-23T04:56:07.000+00:00 timeCompleted: 2000-01-23T04:56:07.000+00:00 timeTransactionPosted: 2000-01-23T04:56:07.000+00:00 flagTransactionSeen: true timeConsensusBatchKnown: 2000-01-23T04:56:07.000+00:00 currentStateIndex: 1 flagInProgress: true flagBatchProposalSent: true flagTransactionFinalized: true properties: currentStateIndex: description: Shows current state index of the consensus format: int32 minimum: 1 type: integer xml: name: CurrentStateIndex flagBatchProposalSent: description: Shows if batch proposal is sent out in current consensus iteration format: boolean type: boolean xml: name: FlagBatchProposalSent flagConsensusBatchKnown: description: Shows if consensus on batch is reached and known in current consensus iteration format: boolean type: boolean xml: name: FlagConsensusBatchKnown flagInProgress: description: Shows if consensus algorithm is still not completed in current consensus iteration format: boolean type: boolean xml: name: FlagInProgress flagStateReceived: description: Shows if state output is received in current consensus iteration format: boolean type: boolean xml: name: FlagStateReceived flagTransactionFinalized: description: Shows if consensus on transaction is reached in current consensus iteration format: boolean type: boolean xml: name: FlagTransactionFinalized flagTransactionPosted: description: Shows if transaction is posted to L1 in current consensus iteration format: boolean type: boolean xml: name: FlagTransactionPosted flagTransactionSeen: description: Shows if L1 reported that it has seen the transaction of current consensus iteration format: boolean type: boolean xml: name: FlagTransactionSeen flagVMResultSigned: description: Shows if virtual machine has returned its results in current consensus iteration format: boolean type: boolean xml: name: FlagVMResultSigned flagVMStarted: description: Shows if virtual machine is started in current consensus iteration format: boolean type: boolean xml: name: FlagVMStarted timeBatchProposalSent: description: Shows when batch proposal was last sent out in current consensus iteration format: date-time type: string xml: name: TimeBatchProposalSent timeCompleted: description: Shows when algorithm was last completed in current consensus iteration format: date-time type: string xml: name: TimeCompleted timeConsensusBatchKnown: description: Shows when ACS results of consensus on batch was last received in current consensus iteration format: date-time type: string xml: name: TimeConsensusBatchKnown timeTransactionFinalized: description: Shows when algorithm last noted that all the data for consensus on transaction had been received in current consensus iteration format: date-time type: string xml: name: TimeTransactionFinalized timeTransactionPosted: description: Shows when transaction was last posted to L1 in current consensus iteration format: date-time type: string xml: name: TimeTransactionPosted timeTransactionSeen: description: Shows when algorithm last noted that transaction had been seen by L1 in current consensus iteration format: date-time type: string xml: name: TimeTransactionSeen timeVMResultSigned: description: Shows when virtual machine results were last received and signed in current consensus iteration format: date-time type: string xml: name: TimeVMResultSigned timeVMStarted: description: Shows when virtual machine was last started in current consensus iteration format: date-time type: string xml: name: TimeVMStarted required: - flagBatchProposalSent - flagConsensusBatchKnown - flagInProgress - flagStateReceived - flagTransactionFinalized - flagTransactionPosted - flagTransactionSeen - flagVMResultSigned - flagVMStarted - timeBatchProposalSent - timeCompleted - timeConsensusBatchKnown - timeTransactionFinalized - timeTransactionPosted - timeTransactionSeen - timeVMResultSigned - timeVMStarted type: object xml: name: ConsensusWorkflowMetrics ContractCallViewRequest: example: contractHName: contractHName functionName: functionName functionHName: functionHName arguments: Items: - value: value key: key - value: value key: key block: block contractName: contractName properties: arguments: $ref: '#/components/schemas/JSONDict' block: format: string type: string xml: name: Block contractHName: description: The contract name as HName (Hex) format: string type: string xml: name: ContractHName contractName: description: The contract name format: string type: string xml: name: ContractName functionHName: description: The function name as HName (Hex) format: string type: string xml: name: FunctionHName functionName: description: The function name format: string type: string xml: name: FunctionName required: - arguments - contractHName - contractName - functionHName - functionName type: object xml: name: ContractCallViewRequest ContractInfoResponse: example: programHash: 0xc102cb078eb7a8c59b65c3682c878e3189cc696b86098d8c5883d08d0d215a87 name: evm hName: 07cb02c1 properties: hName: description: The id (HName as Hex)) of the contract. example: 07cb02c1 format: string type: string xml: name: HName name: description: The name of the contract. example: evm format: string type: string xml: name: Name programHash: description: The hash of the contract. (Hex encoded) example: 0xc102cb078eb7a8c59b65c3682c878e3189cc696b86098d8c5883d08d0d215a87 format: string type: string xml: name: ProgramHash required: - hName - name - programHash type: object xml: name: ContractInfoResponse ControlAddressesResponse: example: governingAddress: governingAddress sinceBlockIndex: 1 stateAddress: stateAddress properties: governingAddress: description: The governing address (Bech32) format: string type: string xml: name: GoverningAddress sinceBlockIndex: description: The block index (uint32 format: int32 minimum: 1 type: integer xml: name: SinceBlockIndex stateAddress: description: The state address (Bech32) format: string type: string xml: name: StateAddress required: - governingAddress - sinceBlockIndex - stateAddress type: object xml: name: ControlAddressesResponse DKSharesInfo: example: publicKeyShares: - publicKeyShares - publicKeyShares address: address peerIdentities: - peerIdentities - peerIdentities threshold: 1 publicKey: publicKey peerIndex: 1 properties: address: description: New generated shared address. format: string type: string xml: name: Address peerIdentities: description: Identities of the nodes sharing the key. (Hex) items: format: string type: string type: array xml: name: PeerIdentities wrapped: true peerIndex: format: int32 minimum: 1 type: integer xml: name: PeerIndex publicKey: description: Used public key. (Hex) format: string type: string xml: name: PublicKey publicKeyShares: description: Public key shares for all the peers. (Hex) items: format: string type: string type: array xml: name: PublicKeyShares wrapped: true threshold: format: int32 minimum: 1 type: integer xml: name: Threshold required: - address - peerIdentities - peerIndex - publicKey - publicKeyShares - threshold type: object xml: name: DKSharesInfo DKSharesPostRequest: example: peerIdentities: - peerIdentities - peerIdentities timeoutMS: 1 threshold: 1 properties: peerIdentities: description: Names or hex encoded public keys of trusted peers to run DKG on. items: format: string type: string type: array xml: name: PeerPubKeysOrNames wrapped: true threshold: description: Should be =< len(PeerPublicIdentities) format: int32 minimum: 1 type: integer xml: name: Threshold timeoutMS: description: Timeout in milliseconds. format: int32 minimum: 1 type: integer xml: name: TimeoutMS required: - peerIdentities - threshold - timeoutMS type: object xml: name: DKSharesPostRequest ErrorMessageFormatResponse: example: messageFormat: messageFormat properties: messageFormat: format: string type: string xml: name: MessageFormat required: - messageFormat type: object xml: name: ErrorMessageFormatResponse EstimateGasRequestOffledger: example: requestBytes: requestBytes fromAddress: fromAddress properties: fromAddress: description: The address to estimate gas for(Hex) format: string type: string xml: name: FromAddress requestBytes: description: Offledger Request (Hex) format: string type: string xml: name: Request required: - fromAddress - requestBytes type: object xml: name: EstimateGasRequestOffledger EstimateGasRequestOnledger: example: outputBytes: outputBytes properties: outputBytes: description: Serialized Output (Hex) format: string type: string xml: name: Output required: - outputBytes type: object xml: name: EstimateGasRequestOnledger EventJSON: example: payload: payload contractID: 1 topic: topic timestamp: 6 properties: contractID: description: ID of the Contract that issued the event format: int32 minimum: 1 type: integer xml: name: ContractID payload: description: payload format: string type: string xml: name: Payload timestamp: description: timestamp format: int64 type: integer xml: name: Timestamp topic: description: topic format: string type: string xml: name: Topic required: - contractID - payload - timestamp - topic type: object xml: name: EventJSON EventsResponse: example: events: - payload: payload contractID: 1 topic: topic timestamp: 6 - payload: payload contractID: 1 topic: topic timestamp: 6 properties: events: items: $ref: '#/components/schemas/EventJSON' type: array xml: name: Events wrapped: true required: - events type: object xml: name: EventsResponse FeePolicy: example: gasPerToken: a: 1 b: 100 validatorFeeShare: 0 evmGasRatio: a: 1 b: 1 properties: evmGasRatio: $ref: '#/components/schemas/Ratio32' gasPerToken: $ref: '#/components/schemas/Ratio32_' validatorFeeShare: description: The validator fee share. format: int32 type: integer xml: name: ValidatorFeeShare required: - evmGasRatio - gasPerToken - validatorFeeShare type: object xml: name: FeePolicy FeePolicy_: example: gasPerToken: a: 0 b: 0 validatorFeeShare: 1 evmGasRatio: a: 0 b: 0 properties: evmGasRatio: $ref: '#/components/schemas/Ratio32__' gasPerToken: $ref: '#/components/schemas/Ratio32__' validatorFeeShare: description: The validator fee share. format: int32 type: integer xml: name: ValidatorFeeShare required: - evmGasRatio - gasPerToken - validatorFeeShare type: object xml: name: FeePolicy FoundryOutputResponse: example: assets: baseTokens: baseTokens nativeTokens: - amount: amount id: id - amount: amount id: id foundryId: foundryId properties: assets: $ref: '#/components/schemas/AssetsResponse' foundryId: format: string type: string xml: name: FoundryID required: - assets - foundryId type: object xml: name: FoundryOutputResponse GovAllowedStateControllerAddressesResponse: example: addresses: - addresses - addresses properties: addresses: description: The allowed state controller addresses (Bech32-encoded) items: format: string type: string type: array xml: name: Addresses wrapped: true type: object xml: name: GovAllowedStateControllerAddressesResponse GovChainInfoResponse: example: chainOwnerId: chainOwnerId metadata: website: website evmWebSocketURL: evmWebSocketURL name: name description: description evmJsonRpcURL: evmJsonRpcURL gasLimits: maxGasExternalViewCall: 6 minGasPerRequest: 5 maxGasPerBlock: 1 maxGasPerRequest: 5 chainID: chainID publicURL: publicURL gasFeePolicy: gasPerToken: a: 0 b: 0 validatorFeeShare: 1 evmGasRatio: a: 0 b: 0 properties: chainID: description: ChainID (Bech32-encoded). format: string type: string xml: name: ChainID chainOwnerId: description: The chain owner address (Bech32-encoded). format: string type: string xml: name: ChainOwnerID gasFeePolicy: $ref: '#/components/schemas/FeePolicy_' gasLimits: $ref: '#/components/schemas/Limits' metadata: $ref: '#/components/schemas/GovPublicChainMetadata' publicURL: description: The fully qualified public url leading to the chains metadata format: string type: string xml: name: PublicURL required: - chainID - chainOwnerId - gasFeePolicy - gasLimits - metadata - publicURL type: object xml: name: GovChainInfoResponse GovChainOwnerResponse: example: chainOwner: chainOwner properties: chainOwner: description: The chain owner (Bech32-encoded) format: string type: string xml: name: ChainOwner type: object xml: name: GovChainOwnerResponse GovPublicChainMetadata: example: website: website evmWebSocketURL: evmWebSocketURL name: name description: description evmJsonRpcURL: evmJsonRpcURL properties: description: description: The description of the chain. format: string type: string xml: name: Description evmJsonRpcURL: description: The EVM json rpc url format: string type: string xml: name: EVMJsonRPCURL evmWebSocketURL: description: The EVM websocket url) format: string type: string xml: name: EVMWebSocketURL name: description: The name of the chain format: string type: string xml: name: Name website: description: The official website of the chain. format: string type: string xml: name: Website required: - description - evmJsonRpcURL - evmWebSocketURL - name - website type: object xml: name: GovPublicChainMetadata InOutput: example: output: outputType: 0 raw: raw outputId: outputId properties: output: $ref: '#/components/schemas/Output' outputId: description: The output ID format: string type: string xml: name: OutputID required: - output - outputId type: object xml: name: InOutput InOutputMetricItem: example: lastMessage: output: outputType: 0 raw: raw outputId: outputId messages: 1 timestamp: 2000-01-23T04:56:07.000+00:00 properties: lastMessage: $ref: '#/components/schemas/InOutput' messages: format: int32 minimum: 1 type: integer xml: name: Messages timestamp: format: date-time type: string xml: name: Timestamp required: - lastMessage - messages - timestamp type: object xml: name: InOutputMetricItem InStateOutput: example: output: outputType: 0 raw: raw outputId: outputId properties: output: $ref: '#/components/schemas/Output' outputId: description: The output ID format: string type: string xml: name: OutputID required: - output - outputId type: object xml: name: InStateOutput InStateOutputMetricItem: example: lastMessage: output: outputType: 0 raw: raw outputId: outputId messages: 1 timestamp: 2000-01-23T04:56:07.000+00:00 properties: lastMessage: $ref: '#/components/schemas/InStateOutput' messages: format: int32 minimum: 1 type: integer xml: name: Messages timestamp: format: date-time type: string xml: name: Timestamp required: - lastMessage - messages - timestamp type: object xml: name: InStateOutputMetricItem InfoResponse: example: peeringURL: 0.0.0.0:4000 l1Params: protocol: rentStructure: vByteFactorData: 1 vByteCost: 500 vByteFactorKey: 10 minPowScore: 1 tokenSupply: "2779530283277761" networkName: private_tangle1 belowMaxDepth: 15 version: 2 bech32Hrp: tst maxPayloadSize: 32498 baseToken: unit: TEST decimals: 6 name: TestCoin tickerSymbol: TEST subunit: testies useMetricPrefix: true publicKey: 0x8fb9555a17393f0e01aadd90f8b6bc8a64b1c5c37c99915942e40b2af99e72d6 version: 0.4.0-alpha.2-390-g5470f1925 properties: l1Params: $ref: '#/components/schemas/L1Params' peeringURL: description: The net id of the node example: 0.0.0.0:4000 format: string type: string xml: name: PeeringURL publicKey: description: The public key of the node (Hex) example: 0x8fb9555a17393f0e01aadd90f8b6bc8a64b1c5c37c99915942e40b2af99e72d6 format: string type: string xml: name: PublicKey version: description: The version of the node example: 0.4.0-alpha.2-390-g5470f1925 format: string type: string xml: name: Version required: - l1Params - peeringURL - publicKey - version type: object xml: name: InfoResponse InterfaceMetricItem: example: lastMessage: lastMessage messages: 1 timestamp: 2000-01-23T04:56:07.000+00:00 properties: lastMessage: format: string type: string xml: name: LastMessage messages: format: int32 minimum: 1 type: integer xml: name: Messages timestamp: format: date-time type: string xml: name: Timestamp required: - lastMessage - messages - timestamp type: object xml: name: InterfaceMetricItem Item: example: value: value key: key properties: key: description: key (hex-encoded) format: string type: string xml: name: Key value: description: value (hex-encoded) format: string type: string xml: name: Value required: - key - value type: object xml: name: Item Item_: example: value: 0x76616c756531 key: 0x6b657931 properties: key: description: key (hex-encoded) example: 0x6b657931 format: string type: string xml: name: Key value: description: value (hex-encoded) example: 0x76616c756531 format: string type: string xml: name: Value required: - key - value type: object xml: name: Item JSONDict: example: Items: - value: value key: key - value: value key: key properties: Items: items: $ref: '#/components/schemas/Item' type: array xml: name: Items wrapped: true type: object xml: name: JSONDict JSONDict_: example: Items: - value: 0x76616c756531 key: 0x6b657931 - value: 0x76616c756531 key: 0x6b657931 properties: Items: items: $ref: '#/components/schemas/Item_' type: array xml: name: Items wrapped: true type: object xml: name: JSONDict L1Params: example: protocol: rentStructure: vByteFactorData: 1 vByteCost: 500 vByteFactorKey: 10 minPowScore: 1 tokenSupply: "2779530283277761" networkName: private_tangle1 belowMaxDepth: 15 version: 2 bech32Hrp: tst maxPayloadSize: 32498 baseToken: unit: TEST decimals: 6 name: TestCoin tickerSymbol: TEST subunit: testies useMetricPrefix: true properties: baseToken: $ref: '#/components/schemas/BaseToken' maxPayloadSize: description: The max payload size example: 32498 format: int32 type: integer xml: name: MaxPayloadSize protocol: $ref: '#/components/schemas/ProtocolParameters' required: - baseToken - maxPayloadSize - protocol type: object xml: name: L1Params Limits: example: maxGasExternalViewCall: 6 minGasPerRequest: 5 maxGasPerBlock: 1 maxGasPerRequest: 5 properties: maxGasExternalViewCall: description: The maximum gas per external view call format: int64 type: integer xml: name: MaxGasExternalViewCall maxGasPerBlock: description: The maximum gas per block format: int64 type: integer xml: name: MaxGasPerBlock maxGasPerRequest: description: The maximum gas per request format: int64 type: integer xml: name: MaxGasPerRequest minGasPerRequest: description: The minimum gas per request format: int64 type: integer xml: name: MinGasPerRequest required: - maxGasExternalViewCall - maxGasPerBlock - maxGasPerRequest - minGasPerRequest type: object xml: name: Limits LoginRequest: example: password: wasp username: wasp properties: password: example: wasp format: string type: string xml: name: Password username: example: wasp format: string type: string xml: name: Username required: - password - username type: object xml: name: LoginRequest LoginResponse: example: jwt: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJ3YXNwIiwic3ViIjoid2FzcCIsImF1ZCI6WyJ3YXNwIl0sImV4cCI6MTY4OTk1MTAyNCwibmJmIjoxNjg5ODY0NjI0LCJpYXQiOjE2ODk4NjQ2MjQsImp0aSI6IjE2ODk4NjQ2MjQiLCJwZXJtaXNzaW9ucyI6eyJ3cml0ZSI6e319fQ.LNUuTaoRjEPQyD2nQ00O6NeadiG7nmOEyVIQmGNb1a0 error: error properties: error: format: string type: string xml: name: Error jwt: example: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJ3YXNwIiwic3ViIjoid2FzcCIsImF1ZCI6WyJ3YXNwIl0sImV4cCI6MTY4OTk1MTAyNCwibmJmIjoxNjg5ODY0NjI0LCJpYXQiOjE2ODk4NjQ2MjQsImp0aSI6IjE2ODk4NjQ2MjQiLCJwZXJtaXNzaW9ucyI6eyJ3cml0ZSI6e319fQ.LNUuTaoRjEPQyD2nQ00O6NeadiG7nmOEyVIQmGNb1a0 format: string type: string xml: name: JWT required: - error - jwt type: object xml: name: LoginResponse MilestoneInfo: example: milestoneId: milestoneId index: 0 timestamp: 0 properties: index: format: int32 minimum: 0 type: integer xml: name: Index milestoneId: format: string type: string xml: name: MilestoneID timestamp: format: int32 minimum: 0 type: integer xml: name: Timestamp type: object xml: name: MilestoneInfo MilestoneMetricItem: example: lastMessage: milestoneId: milestoneId index: 0 timestamp: 0 messages: 1 timestamp: 2000-01-23T04:56:07.000+00:00 properties: lastMessage: $ref: '#/components/schemas/MilestoneInfo' messages: format: int32 minimum: 1 type: integer xml: name: Messages timestamp: format: date-time type: string xml: name: Timestamp required: - lastMessage - messages - timestamp type: object xml: name: MilestoneMetricItem NFTJSON: example: owner: owner metadata: metadata id: id issuer: issuer properties: id: format: string type: string xml: name: ID issuer: format: string type: string xml: name: Issuer metadata: format: string type: string xml: name: Metadata owner: format: string type: string xml: name: Owner required: - id - issuer - metadata - owner type: object xml: name: NFTJSON NativeTokenIDRegistryResponse: example: nativeTokenRegistryIds: - nativeTokenRegistryIds - nativeTokenRegistryIds properties: nativeTokenRegistryIds: items: format: string type: string type: array xml: name: NativeTokenRegistryIDs wrapped: true required: - nativeTokenRegistryIds type: object xml: name: NativeTokenIDRegistryResponse NativeTokenJSON: example: amount: amount id: id properties: amount: format: string type: string xml: name: Amount id: format: string type: string xml: name: ID required: - amount - id type: object xml: name: NativeTokenJSON NodeMessageMetrics: example: outPublishGovernanceTransaction: lastMessage: txId: txId messages: 1 timestamp: 2000-01-23T04:56:07.000+00:00 outPublisherStateTransaction: lastMessage: stateIndex: 1 txId: txId messages: 1 timestamp: 2000-01-23T04:56:07.000+00:00 inTxInclusionState: lastMessage: txId: txId state: state messages: 1 timestamp: 2000-01-23T04:56:07.000+00:00 inOnLedgerRequest: lastMessage: output: outputType: 0 raw: raw outputId: outputId raw: raw id: id messages: 1 timestamp: 2000-01-23T04:56:07.000+00:00 inOutput: lastMessage: output: outputType: 0 raw: raw outputId: outputId messages: 1 timestamp: 2000-01-23T04:56:07.000+00:00 inMilestone: lastMessage: milestoneId: milestoneId index: 0 timestamp: 0 messages: 1 timestamp: 2000-01-23T04:56:07.000+00:00 inAliasOutput: lastMessage: outputType: 0 raw: raw messages: 1 timestamp: 2000-01-23T04:56:07.000+00:00 inStateOutput: lastMessage: output: outputType: 0 raw: raw outputId: outputId messages: 1 timestamp: 2000-01-23T04:56:07.000+00:00 outPullTxInclusionState: lastMessage: txId: txId messages: 1 timestamp: 2000-01-23T04:56:07.000+00:00 registeredChainIDs: - registeredChainIDs - registeredChainIDs outPullLatestOutput: lastMessage: lastMessage messages: 1 timestamp: 2000-01-23T04:56:07.000+00:00 outPullOutputByID: lastMessage: outputId: outputId messages: 1 timestamp: 2000-01-23T04:56:07.000+00:00 properties: inAliasOutput: $ref: '#/components/schemas/AliasOutputMetricItem' inMilestone: $ref: '#/components/schemas/MilestoneMetricItem' inOnLedgerRequest: $ref: '#/components/schemas/OnLedgerRequestMetricItem' inOutput: $ref: '#/components/schemas/InOutputMetricItem' inStateOutput: $ref: '#/components/schemas/InStateOutputMetricItem' inTxInclusionState: $ref: '#/components/schemas/TxInclusionStateMsgMetricItem' outPublishGovernanceTransaction: $ref: '#/components/schemas/TransactionMetricItem' outPublisherStateTransaction: $ref: '#/components/schemas/PublisherStateTransactionItem' outPullLatestOutput: $ref: '#/components/schemas/InterfaceMetricItem' outPullOutputByID: $ref: '#/components/schemas/UTXOInputMetricItem' outPullTxInclusionState: $ref: '#/components/schemas/TransactionIDMetricItem' registeredChainIDs: items: format: string type: string type: array xml: name: RegisteredChainIDs wrapped: true required: - inAliasOutput - inMilestone - inOnLedgerRequest - inOutput - inStateOutput - inTxInclusionState - outPublishGovernanceTransaction - outPublisherStateTransaction - outPullLatestOutput - outPullOutputByID - outPullTxInclusionState - registeredChainIDs type: object xml: name: NodeMessageMetrics NodeOwnerCertificateResponse: example: certificate: certificate properties: certificate: description: Certificate stating the ownership. (Hex) format: string type: string xml: name: Certificate required: - certificate type: object xml: name: NodeOwnerCertificateResponse OffLedgerRequest: example: request: Hex string chainId: chainId properties: chainId: description: The chain id format: string type: string xml: name: ChainID request: description: Offledger Request (Hex) example: Hex string format: string type: string xml: name: Request required: - chainId - request type: object xml: name: OffLedgerRequest OnLedgerRequest: example: output: outputType: 0 raw: raw outputId: outputId raw: raw id: id properties: id: description: The request ID format: string type: string xml: name: ID output: $ref: '#/components/schemas/Output' outputId: description: The output ID format: string type: string xml: name: OutputID raw: description: The raw data of the request (Hex) format: string type: string xml: name: Raw required: - id - output - outputId - raw type: object xml: name: OnLedgerRequest OnLedgerRequestMetricItem: example: lastMessage: output: outputType: 0 raw: raw outputId: outputId raw: raw id: id messages: 1 timestamp: 2000-01-23T04:56:07.000+00:00 properties: lastMessage: $ref: '#/components/schemas/OnLedgerRequest' messages: format: int32 minimum: 1 type: integer xml: name: Messages timestamp: format: date-time type: string xml: name: Timestamp required: - lastMessage - messages - timestamp type: object xml: name: OnLedgerRequestMetricItem Output: example: outputType: 0 raw: raw properties: outputType: description: The output type format: int32 type: integer xml: name: OutputType raw: description: The raw data of the output (Hex) format: string type: string xml: name: Raw required: - outputType - raw type: object xml: name: Output OutputID: example: outputId: outputId properties: outputId: description: The output ID format: string type: string xml: name: OutputID required: - outputId type: object xml: name: OutputID PeeringNodeIdentityResponse: example: peeringURL: localhost:4000 name: name publicKey: 0x0000 isTrusted: true properties: isTrusted: example: true format: boolean type: boolean xml: name: IsTrusted name: format: string type: string xml: name: Name peeringURL: description: The peering URL of the peer example: localhost:4000 format: string type: string xml: name: PeeringURL publicKey: description: The peers public key encoded in Hex example: 0x0000 format: string type: string xml: name: PublicKey required: - isTrusted - name - peeringURL - publicKey type: object xml: name: PeeringNodeIdentityResponse PeeringNodeStatusResponse: example: isAlive: true peeringURL: peeringURL name: name publicKey: publicKey numUsers: 0 isTrusted: true properties: isAlive: description: Whether or not the peer is activated format: boolean type: boolean xml: name: IsAlive isTrusted: format: boolean type: boolean xml: name: IsTrusted name: format: string type: string xml: name: Name numUsers: description: The amount of users attached to the peer format: int32 type: integer xml: name: NumUsers peeringURL: description: The peering URL of the peer format: string type: string xml: name: PeeringURL publicKey: description: The peers public key encoded in Hex format: string type: string xml: name: PublicKey required: - isAlive - isTrusted - name - numUsers - peeringURL - publicKey type: object xml: name: PeeringNodeStatusResponse PeeringNodeStatusResponse_: example: isAlive: true peeringURL: localhost:4000 name: name publicKey: 0x0000 numUsers: 1 isTrusted: true properties: isAlive: description: Whether or not the peer is activated example: true format: boolean type: boolean xml: name: IsAlive isTrusted: example: true format: boolean type: boolean xml: name: IsTrusted name: format: string type: string xml: name: Name numUsers: description: The amount of users attached to the peer example: 1 format: int32 type: integer xml: name: NumUsers peeringURL: description: The peering URL of the peer example: localhost:4000 format: string type: string xml: name: PeeringURL publicKey: description: The peers public key encoded in Hex example: 0x0000 format: string type: string xml: name: PublicKey required: - isAlive - isTrusted - name - numUsers - peeringURL - publicKey type: object xml: name: PeeringNodeStatusResponse PeeringTrustRequest: example: peeringURL: localhost:4000 name: name publicKey: 0x0000 properties: name: format: string type: string xml: name: Name peeringURL: description: The peering URL of the peer example: localhost:4000 format: string type: string xml: name: PeeringURL publicKey: description: The peers public key encoded in Hex example: 0x0000 format: string type: string xml: name: PublicKey required: - name - peeringURL - publicKey type: object xml: name: PeeringTrustRequest ProtocolParameters: example: rentStructure: vByteFactorData: 1 vByteCost: 500 vByteFactorKey: 10 minPowScore: 1 tokenSupply: "2779530283277761" networkName: private_tangle1 belowMaxDepth: 15 version: 2 bech32Hrp: tst properties: bech32Hrp: description: The human readable network prefix example: tst format: string type: string xml: name: Bech32HRP belowMaxDepth: description: The networks max depth example: 15 format: int32 minimum: 1 type: integer xml: name: BelowMaxDepth minPowScore: description: The minimal PoW score format: int32 minimum: 1 type: integer xml: name: MinPoWScore networkName: description: The network name example: private_tangle1 format: string type: string xml: name: NetworkName rentStructure: $ref: '#/components/schemas/RentStructure' tokenSupply: description: The token supply example: "2779530283277761" format: string type: string xml: name: TokenSupply version: description: The protocol version example: 2 format: int32 type: integer xml: name: Version required: - bech32Hrp - belowMaxDepth - minPowScore - networkName - rentStructure - tokenSupply - version type: object xml: name: ProtocolParameters PublicChainMetadata: example: website: website evmWebSocketURL: evmWebSocketURL name: name description: description evmJsonRpcURL: evmJsonRpcURL properties: description: description: The description of the chain. format: string type: string xml: name: Description evmJsonRpcURL: description: The EVM json rpc url format: string type: string xml: name: EVMJsonRPCURL evmWebSocketURL: description: The EVM websocket url) format: string type: string xml: name: EVMWebSocketURL name: description: The name of the chain format: string type: string xml: name: Name website: description: The official website of the chain. format: string type: string xml: name: Website required: - description - evmJsonRpcURL - evmWebSocketURL - name - website type: object xml: name: PublicChainMetadata PublisherStateTransactionItem: example: lastMessage: stateIndex: 1 txId: txId messages: 1 timestamp: 2000-01-23T04:56:07.000+00:00 properties: lastMessage: $ref: '#/components/schemas/StateTransaction' messages: format: int32 minimum: 1 type: integer xml: name: Messages timestamp: format: date-time type: string xml: name: Timestamp required: - lastMessage - messages - timestamp type: object xml: name: PublisherStateTransactionItem Ratio32: example: a: 1 b: 1 properties: a: example: 1 format: int32 minimum: 0 type: integer xml: name: A b: example: 1 format: int32 minimum: 0 type: integer xml: name: B required: - a - b type: object xml: name: Ratio32 Ratio32_: example: a: 1 b: 100 properties: a: example: 1 format: int32 minimum: 0 type: integer xml: name: A b: example: 100 format: int32 minimum: 0 type: integer xml: name: B required: - a - b type: object xml: name: Ratio32 Ratio32__: example: a: 0 b: 0 properties: a: format: int32 minimum: 0 type: integer xml: name: A b: format: int32 minimum: 0 type: integer xml: name: B required: - a - b type: object xml: name: Ratio32 ReceiptResponse: example: gasBurnLog: - code: 6 gasBurned: 1 - code: 6 gasBurned: 1 request: fungibleTokens: nfts: - nfts - nfts baseTokens: baseTokens nativeTokens: - amount: amount id: id - amount: amount id: id senderAccount: senderAccount isOffLedger: true requestId: requestId callTarget: contractHName: contractHName functionHName: functionHName gasBudget: gasBudget targetAddress: targetAddress allowance: nfts: - nfts - nfts baseTokens: baseTokens nativeTokens: - amount: amount id: id - amount: amount id: id params: Items: - value: value key: key - value: value key: key nft: owner: owner metadata: metadata id: id issuer: issuer isEVM: true blockIndex: 1 rawError: code: code params: - params - params requestIndex: 1 storageDepositCharged: storageDepositCharged gasFeeCharged: gasFeeCharged errorMessage: errorMessage gasBudget: gasBudget gasBurned: gasBurned properties: blockIndex: format: int32 minimum: 1 type: integer xml: name: BlockIndex errorMessage: format: string type: string xml: name: ErrorMessage gasBudget: description: The gas budget (uint64 as string) format: string type: string xml: name: GasBudget gasBurnLog: items: $ref: '#/components/schemas/BurnRecord' type: array xml: name: GasBurnLog wrapped: true gasBurned: description: The burned gas (uint64 as string) format: string type: string xml: name: GasBurned gasFeeCharged: description: The charged gas fee (uint64 as string) format: string type: string xml: name: GasFeeCharged rawError: $ref: '#/components/schemas/UnresolvedVMErrorJSON' request: $ref: '#/components/schemas/RequestJSON' requestIndex: format: int32 minimum: 1 type: integer xml: name: RequestIndex storageDepositCharged: description: Storage deposit charged (uint64 as string) format: string type: string xml: name: SDCharged required: - blockIndex - gasBudget - gasBurnLog - gasBurned - gasFeeCharged - request - requestIndex - storageDepositCharged type: object xml: name: ReceiptResponse RentStructure: example: vByteFactorData: 1 vByteCost: 500 vByteFactorKey: 10 properties: vByteCost: description: The virtual byte cost example: 500 format: int32 minimum: 1 type: integer xml: name: VByteCost vByteFactorData: description: The virtual byte factor for data fields example: 1 format: int32 type: integer xml: name: VBFactorData vByteFactorKey: description: The virtual byte factor for key/lookup generating fields example: 10 format: int32 type: integer xml: name: VBFactorKey required: - vByteCost - vByteFactorData - vByteFactorKey type: object xml: name: RentStructure RequestIDsResponse: example: requestIds: - requestIds - requestIds properties: requestIds: items: format: string type: string type: array xml: name: RequestIDs wrapped: true required: - requestIds type: object xml: name: RequestIDsResponse RequestJSON: example: fungibleTokens: nfts: - nfts - nfts baseTokens: baseTokens nativeTokens: - amount: amount id: id - amount: amount id: id senderAccount: senderAccount isOffLedger: true requestId: requestId callTarget: contractHName: contractHName functionHName: functionHName gasBudget: gasBudget targetAddress: targetAddress allowance: nfts: - nfts - nfts baseTokens: baseTokens nativeTokens: - amount: amount id: id - amount: amount id: id params: Items: - value: value key: key - value: value key: key nft: owner: owner metadata: metadata id: id issuer: issuer isEVM: true properties: allowance: $ref: '#/components/schemas/AssetsJSON' callTarget: $ref: '#/components/schemas/CallTargetJSON' fungibleTokens: $ref: '#/components/schemas/AssetsJSON' gasBudget: description: The gas budget (uint64 as string) format: string type: string xml: name: GasBudget isEVM: format: boolean type: boolean xml: name: IsEVM isOffLedger: format: boolean type: boolean xml: name: IsOffLedger nft: $ref: '#/components/schemas/NFTJSON' params: $ref: '#/components/schemas/JSONDict' requestId: format: string type: string xml: name: RequestID senderAccount: format: string type: string xml: name: SenderAccount targetAddress: format: string type: string xml: name: TargetAddress required: - allowance - callTarget - fungibleTokens - gasBudget - isEVM - isOffLedger - nft - params - requestId - senderAccount - targetAddress type: object xml: name: RequestJSON RequestProcessedResponse: example: chainId: chainId requestId: requestId isProcessed: true properties: chainId: format: string type: string xml: name: ChainID isProcessed: format: boolean type: boolean xml: name: IsProcessed requestId: format: string type: string xml: name: RequestID required: - chainId - isProcessed - requestId type: object xml: name: RequestProcessedResponse StateResponse: example: state: state properties: state: description: The state of the requested key (Hex-encoded) format: string type: string xml: name: State required: - state type: object xml: name: StateResponse StateTransaction: example: stateIndex: 1 txId: txId properties: stateIndex: description: The state index format: int32 minimum: 1 type: integer xml: name: StateIndex txId: description: The transaction ID format: string type: string xml: name: TransactionID required: - stateIndex - txId type: object xml: name: StateTransaction Transaction: example: txId: txId properties: txId: description: The transaction ID format: string type: string xml: name: TransactionID required: - txId type: object xml: name: Transaction TransactionIDMetricItem: example: lastMessage: txId: txId messages: 1 timestamp: 2000-01-23T04:56:07.000+00:00 properties: lastMessage: $ref: '#/components/schemas/Transaction' messages: format: int32 minimum: 1 type: integer xml: name: Messages timestamp: format: date-time type: string xml: name: Timestamp required: - lastMessage - messages - timestamp type: object xml: name: TransactionIDMetricItem TransactionMetricItem: example: lastMessage: txId: txId messages: 1 timestamp: 2000-01-23T04:56:07.000+00:00 properties: lastMessage: $ref: '#/components/schemas/Transaction' messages: format: int32 minimum: 1 type: integer xml: name: Messages timestamp: format: date-time type: string xml: name: Timestamp required: - lastMessage - messages - timestamp type: object xml: name: TransactionMetricItem TxInclusionStateMsg: example: txId: txId state: state properties: state: description: The inclusion state format: string type: string xml: name: State txId: description: The transaction ID format: string type: string xml: name: TransactionID required: - state - txId type: object xml: name: TxInclusionStateMsg TxInclusionStateMsgMetricItem: example: lastMessage: txId: txId state: state messages: 1 timestamp: 2000-01-23T04:56:07.000+00:00 properties: lastMessage: $ref: '#/components/schemas/TxInclusionStateMsg' messages: format: int32 minimum: 1 type: integer xml: name: Messages timestamp: format: date-time type: string xml: name: Timestamp required: - lastMessage - messages - timestamp type: object xml: name: TxInclusionStateMsgMetricItem UTXOInputMetricItem: example: lastMessage: outputId: outputId messages: 1 timestamp: 2000-01-23T04:56:07.000+00:00 properties: lastMessage: $ref: '#/components/schemas/OutputID' messages: format: int32 minimum: 1 type: integer xml: name: Messages timestamp: format: date-time type: string xml: name: Timestamp required: - lastMessage - messages - timestamp type: object xml: name: UTXOInputMetricItem UnresolvedVMErrorJSON: example: code: code params: - params - params properties: code: format: string type: string xml: name: ErrorCode params: items: format: string type: string type: array xml: name: Params wrapped: true type: object xml: name: UnresolvedVMErrorJSON UpdateUserPasswordRequest: example: password: password properties: password: format: string type: string xml: name: Password required: - password type: object xml: name: UpdateUserPasswordRequest UpdateUserPermissionsRequest: example: permissions: - permissions - permissions properties: permissions: items: format: string type: string type: array xml: name: Permissions wrapped: true required: - permissions type: object xml: name: UpdateUserPermissionsRequest User: example: permissions: - permissions - permissions username: username properties: permissions: items: format: string type: string type: array xml: name: Permissions wrapped: true username: format: string type: string xml: name: Username required: - permissions - username type: object xml: name: User ValidationError: properties: error: format: string type: string xml: name: Error missingPermission: format: string type: string xml: name: MissingPermission required: - error - missingPermission type: object xml: name: ValidationError VersionResponse: example: version: version properties: version: description: The version of the node format: string type: string xml: name: Version required: - version type: object xml: name: VersionResponse securitySchemes: Authorization: description: JWT Token in: header name: Authorization type: apiKey x-original-swagger-version: "2.0"