{"info":{"description":"An entry point to the GalaChain network.\n\n\u003ca href=\"/docs\"\u003edocs\u003c/a\u003e / `asset/token-contract`","title":"GalaChain Gateway","version":"3.0.2"},"openapi":"3.0.0","paths":{"/api/asset/token-contract/BatchFillTokenSwap":{"post":{"description":" Transaction updates the chain (submit). Allowed roles: SUBMIT.","operationId":"asset_token-contract_BatchFillTokenSwap","parameters":[],"requestBody":{"content":{"application/json":{"schema":{"description":"Fill multiple swaps in a single transaction, potentially swaps offered by many different users.","properties":{"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"swapDtos":{"description":"Array of FillTokenSwapDto objects each representing a swap to fulfill","items":{"description":"Defines a swap fill object, i.e. a response of another user for a swap request.","properties":{"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"expectedTokenSwap":{"description":"Expected token swap trade to be validated before filling the swap. Defines an expected token swap trade, i.e. offered and wanted tokens.","properties":{"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"offered":{"description":"A list of offered token instances. The order of this array must match the order of the TokenSwapRequest stored on chain.","items":{"properties":{"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"quantity":{"description":"Number provided as a string.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"tokenInstance":{"description":"Object representing the chain identifier of token instance.","minLength":1,"properties":{"additionalKey":{"not":{"type":"null"}},"category":{"minLength":1,"type":"string"},"collection":{"minLength":1,"type":"string"},"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"instance":{"description":"Number provided as a string.","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"type":{"minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["collection","category","type","additionalKey","instance"],"type":"object"},"tokenMetadata":{"description":"The TokenClass metadata corresponding to the TokenBalance on this DTO.","type":"object"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["tokenInstance","quantity"],"type":"object"},"minItems":1,"type":"array","uniqueItems":true},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"},"wanted":{"description":"A list of wanted token instances. The order of this array must match the order of the TokenSwapRequest stored on chain.","items":{"properties":{"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"quantity":{"description":"Number provided as a string.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"tokenInstance":{"description":"Object representing the chain identifier of token instance.","minLength":1,"properties":{"additionalKey":{"not":{"type":"null"}},"category":{"minLength":1,"type":"string"},"collection":{"minLength":1,"type":"string"},"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"instance":{"description":"Number provided as a string.","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"type":{"minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["collection","category","type","additionalKey","instance"],"type":"object"},"tokenMetadata":{"description":"The TokenClass metadata corresponding to the TokenBalance on this DTO.","type":"object"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["tokenInstance","quantity"],"type":"object"},"minItems":1,"type":"array","uniqueItems":true}},"required":["offered","wanted"],"type":"object"},"filledBy":{"description":"User who fills the swap, an owner of tokens wanted in swap. Optional field, by default set to chaincode calling user.","type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"swapRequestId":{"description":"Swap request ID to be filled","minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"},"uses":{"description":"How many uses are filled with this swap fill. In most cases it will be 1, and this is the default value for it. Number provided as a string.","type":"string"}},"required":["swapRequestId"],"type":"object"},"maxItems":1000,"minItems":1,"type":"array"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["swapDtos"],"type":"object"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"properties":{"Data":{"items":{"properties":{"created":{"description":"Unix epoch timestamp in milliseconds (ms) when this swap fill was recorded.","exclusiveMinimum":0,"type":"number"},"filledBy":{"description":"Allowed value is string following the format of 'client|\u003cuser-id\u003e', or 'eth|\u003cchecksumed-eth-addr\u003e', or valid system-level username.","type":"string"},"swapRequestId":{"minLength":1,"type":"string"},"uses":{"description":"Number provided as a string.","type":"string"}},"required":["swapRequestId","filledBy","created","uses"],"type":"object"},"type":"array"},"Message":{"type":"string"},"Status":{"description":"Indicates Error (0) or Success (1)","enum":[0,1]}},"required":["Status"],"type":"object"}}},"description":"","headers":{"x-transaction-id":{"description":"Transaction ID of submitted transaction on the chain"}}}},"tags":["Methods"]}},"/api/asset/token-contract/BatchMintToken":{"post":{"description":" Transaction updates the chain (submit). Allowed roles: SUBMIT.","operationId":"asset_token-contract_BatchMintToken","parameters":[],"requestBody":{"content":{"application/json":{"schema":{"description":"Describes an action to transferToken a token. For NFTs you can mint up to 1000 tokens.","properties":{"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"mintDtos":{"description":"DTOs of tokens to mint.","items":{"description":"Describes an action to mint a token. For NFTs you can mint up to 1000 tokens.","properties":{"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"owner":{"description":"The owner of minted tokens. If the value is missing, chaincode caller is used.","type":"string"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"quantity":{"description":"How many units of Fungible/NonFungible Token will be minted. Number provided as a string.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"tokenClass":{"description":"Token class of token to be minted. Object representing the chain identifier of token class.","minLength":1,"properties":{"additionalKey":{"not":{"type":"null"}},"category":{"minLength":1,"type":"string"},"collection":{"minLength":1,"type":"string"},"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"type":{"minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["collection","category","type","additionalKey"],"type":"object"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["tokenClass","quantity"],"type":"object"},"maxItems":1000,"minItems":1,"type":"array"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["mintDtos"],"type":"object"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"properties":{"Data":{"items":{"description":"Object representing the chain identifier of token instance.","properties":{"additionalKey":{"not":{"type":"null"}},"category":{"minLength":1,"type":"string"},"collection":{"minLength":1,"type":"string"},"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"instance":{"description":"Number provided as a string.","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"type":{"minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["collection","category","type","additionalKey","instance"],"type":"object"},"type":"array"},"Message":{"type":"string"},"Status":{"description":"Indicates Error (0) or Success (1)","enum":[0,1]}},"required":["Status"],"type":"object"}}},"description":"","headers":{"x-transaction-id":{"description":"Transaction ID of submitted transaction on the chain"}}}},"tags":["Methods"]}},"/api/asset/token-contract/BatchRequestTokenBridgeOut":{"post":{"description":" Transaction updates the chain (submit). Allowed roles: SUBMIT. Allowed orgs: CuratorOrg, GalaUsersOrg, UsersOrg1.","operationId":"asset_token-contract_BatchRequestTokenBridgeOut","parameters":[],"requestBody":{"content":{"application/json":{"schema":{"description":"Contains properties of bridge request for multiple tokens, i.e. a request to bridge tokens out from GalaChain.","properties":{"destinationChainId":{"description":"The type of the bridge.","enum":[1,10,1001,1002,11,12,13,14,15,16,17,18,19,2,20,21,22,23,24,25,26,27,3,4,5,6,7,8,9],"minLength":1,"type":"number"},"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"recipient":{"description":"Recipient address for destination chain","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"tokenInstanceQuantity":{"description":"The quantity of token units to be bridged out.","items":{"properties":{"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"quantity":{"description":"Number provided as a string.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"tokenInstance":{"description":"Object representing the chain identifier of token instance.","minLength":1,"properties":{"additionalKey":{"not":{"type":"null"}},"category":{"minLength":1,"type":"string"},"collection":{"minLength":1,"type":"string"},"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"instance":{"description":"Number provided as a string.","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"type":{"minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["collection","category","type","additionalKey","instance"],"type":"object"},"tokenMetadata":{"description":"The TokenClass metadata corresponding to the TokenBalance on this DTO.","type":"object"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["tokenInstance","quantity"],"type":"object"},"minLength":1,"type":"array"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["destinationChainId","tokenInstanceQuantity","recipient"],"type":"object"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"properties":{"Data":{"type":"string"},"Message":{"type":"string"},"Status":{"description":"Indicates Error (0) or Success (1)","enum":[0,1]}},"required":["Status"],"type":"object"}}},"description":"","headers":{"x-transaction-id":{"description":"Transaction ID of submitted transaction on the chain"}}}},"tags":["Methods"]}},"/api/asset/token-contract/BridgeTokenOut":{"post":{"description":" Transaction updates the chain (submit). Allowed roles: SUBMIT. Allowed orgs: CuratorOrg.","operationId":"asset_token-contract_BridgeTokenOut","parameters":[],"requestBody":{"content":{"application/json":{"schema":{"description":"Describes bridge out operation to be performed.","properties":{"bridgeRequestId":{"description":"Bridge request ID to be fulfilled.","minLength":1,"type":"string"},"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["bridgeRequestId"],"type":"object"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"properties":{"Data":{"properties":{"chainId":{"description":"Chain where the token is being bridged from.","enum":[1,10,1001,1002,11,12,13,14,15,16,17,18,19,2,20,21,22,23,24,25,26,27,3,4,5,6,7,8,9],"minLength":1,"type":"number"},"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"emitter":{"description":"Emitter of the message. Must be a 32-byte long hex string. Typically calculated as keccak256 hash of the channel name.","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"nonce":{"description":"String value of the nonce bytes32 value output from solidity keccak256 function.","minLength":1,"type":"string"},"payload":{"description":"Hex-encoded payload which is in specific format.","minLength":1,"type":"string"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"sequence":{"description":"Sequential number corresponding to how many bridge transactions have been made.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["emitter","chainId","sequence","nonce","payload"],"type":"object"},"Message":{"type":"string"},"Status":{"description":"Indicates Error (0) or Success (1)","enum":[0,1]}},"required":["Status"],"type":"object"}}},"description":"","headers":{"x-transaction-id":{"description":"Transaction ID of submitted transaction on the chain"}}}},"tags":["Methods"]}},"/api/asset/token-contract/BurnTokens":{"post":{"description":" Transaction updates the chain (submit). Allowed roles: SUBMIT.","operationId":"asset_token-contract_BurnTokens","parameters":[],"requestBody":{"content":{"application/json":{"schema":{"description":"Defines burns to be created.","properties":{"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"owner":{"description":"Owner of the tokens to be burned. If not provided, the calling user is assumed to be the owner.","type":"string"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"tokenInstances":{"description":"Array of token instances of token to be burned. In case of fungible tokens, tokenInstance.instance field should be set to 0 and quantity set to 1.","items":{"properties":{"quantity":{"description":"Number provided as a string.","type":"string"},"tokenInstanceKey":{"description":"Object representing the chain identifier of token instance.","minLength":1,"properties":{"additionalKey":{"not":{"type":"null"}},"category":{"minLength":1,"type":"string"},"collection":{"minLength":1,"type":"string"},"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"instance":{"description":"Number provided as a string.","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"type":{"minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["collection","category","type","additionalKey","instance"],"type":"object"}},"required":["tokenInstanceKey","quantity"],"type":"object"},"minItems":1,"type":"array"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["tokenInstances"],"type":"object"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"properties":{"Data":{"items":{"properties":{"additionalKey":{"not":{"type":"null"}},"burnedBy":{"description":"Allowed value is string following the format of 'client|\u003cuser-id\u003e', or 'eth|\u003cchecksumed-eth-addr\u003e', or valid system-level username.","type":"string"},"category":{"minLength":1,"type":"string"},"collection":{"minLength":1,"type":"string"},"created":{"description":"Unix epoch timestamp in milliseconds (ms) when this burn was recorded.","exclusiveMinimum":0,"type":"number"},"instance":{"description":"Number provided as a string.","minLength":1,"type":"string"},"quantity":{"description":"Number provided as a string.","minLength":1,"type":"string"},"type":{"minLength":1,"type":"string"}},"required":["burnedBy","collection","category","type","additionalKey","instance","created","quantity"],"type":"object"},"type":"array"},"Message":{"type":"string"},"Status":{"description":"Indicates Error (0) or Success (1)","enum":[0,1]}},"required":["Status"],"type":"object"}}},"description":"","headers":{"x-transaction-id":{"description":"Transaction ID of submitted transaction on the chain"}}}},"tags":["Methods"]}},"/api/asset/token-contract/CreateNftCollection":{"post":{"description":" Transaction updates the chain (submit). Allowed roles: SUBMIT.","operationId":"asset_token-contract_CreateNftCollection","parameters":[],"requestBody":{"content":{"application/json":{"schema":{"description":"DTO for creating an NFT collection. Requires prior authorization for the collection name.","properties":{"additionalKey":{"description":"Additional key for the NFT collection.","minLength":1,"type":"string"},"authorities":{"description":"List of user aliases who should become token authorities. Defaults to the calling user.","items":{"description":"Allowed value is a user alias ('client|\u003cuser-id\u003e', or 'eth|\u003cchecksumed-eth-addr\u003e', or valid system-level username), or valid Ethereum address.","type":"string"},"type":"array"},"category":{"description":"The category of the NFT collection.","minLength":1,"type":"string"},"collection":{"description":"The collection name. Must match an authorization the calling user has been granted.","minLength":1,"type":"string"},"contractAddress":{"description":"Optional contract address for the NFT collection.","type":"string"},"description":{"description":"Description of the NFT collection.","minLength":1,"type":"string"},"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"image":{"description":"Image URL for the NFT collection.","minLength":1,"type":"string"},"maxCapacity":{"description":"Maximum capacity for the NFT collection. Number provided as a string.","type":"string"},"maxSupply":{"description":"Maximum supply for the NFT collection. Number provided as a string.","type":"string"},"metadataAddress":{"description":"Optional metadata address for the NFT collection.","type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"name":{"description":"The name of the NFT collection.","minLength":1,"type":"string"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"rarity":{"description":"Optional rarity information for the NFT collection.","type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"symbol":{"description":"The symbol of the NFT collection.","type":"string"},"type":{"description":"The type of the NFT collection.","minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["collection","category","type","additionalKey","name","symbol","description","image"],"type":"object"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"properties":{"Data":{"description":"Object representing the chain identifier of token class.","properties":{"additionalKey":{"not":{"type":"null"}},"category":{"minLength":1,"type":"string"},"collection":{"minLength":1,"type":"string"},"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"type":{"minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["collection","category","type","additionalKey"],"type":"object"},"Message":{"type":"string"},"Status":{"description":"Indicates Error (0) or Success (1)","enum":[0,1]}},"required":["Status"],"type":"object"}}},"description":"","headers":{"x-transaction-id":{"description":"Transaction ID of submitted transaction on the chain"}}}},"tags":["Methods"]}},"/api/asset/token-contract/DryRun":{"post":{"description":" Transaction is read only (evaluate). Allowed roles: EVALUATE.","operationId":"asset_token-contract_DryRun","parameters":[],"requestBody":{"content":{"application/json":{"schema":{"properties":{"callerPublicKey":{"minLength":1,"type":"string"},"dto":{"minLength":1,"type":"string"},"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"method":{"minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["method"],"type":"object"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"Data":{"properties":{"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"type":"object"},"Message":{"type":"string"},"Status":{"description":"Indicates Error (0) or Success (1)","enum":[0,1]}},"required":["Status"],"type":"object"}}},"description":"","headers":{"x-transaction-id":{"description":"Transaction ID of evaluated transaction on the chain"}}}},"tags":["Methods"]}},"/api/asset/token-contract/FetchAllowances":{"post":{"deprecated":true,"description":" Transaction is read only (evaluate). Allowed roles: EVALUATE.","operationId":"asset_token-contract_FetchAllowances","parameters":[],"requestBody":{"content":{"application/json":{"schema":{"description":"Contains parameters for fetching allowances. Deprecated since 2023-05-29. Please use version with pagination.","properties":{"additionalKey":{"description":"Token additionalKey. Optional, but required if instance is provided.","minLength":1,"type":"string"},"allowanceType":{"description":"0 - Use, 1 - Lock, 2 - Spend, 3 - Transfer, 4 - Mint, 5 - Swap, 6 - Burn","enum":[0,1,2,3,4,5,6],"type":"number"},"bookmark":{"description":"Page bookmark. If it is undefined, then the first page is returned.","minLength":1,"type":"string"},"category":{"description":"Token category. Optional, but required if type is provided.","minLength":1,"type":"string"},"collection":{"description":"Token collection. Optional, but required if category is provided.","minLength":1,"type":"string"},"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"grantedBy":{"description":"User who granted allowances.","type":"string"},"grantedTo":{"description":"A user who can use an allowance.","type":"string"},"instance":{"description":"Token instance. Optional, but required if allowanceType is provided","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"type":{"description":"Token type. Optional, but required if additionalKey is provided.","minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["grantedTo"],"type":"object"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"Data":{"items":{"properties":{"additionalKey":{"not":{"type":"null"}},"allowanceType":{"description":"0 - Use, 1 - Lock, 2 - Spend, 3 - Transfer, 4 - Mint, 5 - Swap, 6 - Burn","enum":[0,1,2,3,4,5,6],"type":"number"},"category":{"minLength":1,"type":"string"},"collection":{"minLength":1,"type":"string"},"created":{"description":"Unix epoch timestamp in milliseconds (ms) when this allowance was created.","exclusiveMinimum":0,"type":"number"},"expires":{"description":"Unix epoch timestamp in milliseconds (ms) when this allowance expires. 0 means it never expires.","minimum":0,"type":"number"},"grantedBy":{"description":"Allowed value is string following the format of 'client|\u003cuser-id\u003e', or 'eth|\u003cchecksumed-eth-addr\u003e', or valid system-level username.","type":"string"},"grantedTo":{"description":"Allowed value is string following the format of 'client|\u003cuser-id\u003e', or 'eth|\u003cchecksumed-eth-addr\u003e', or valid system-level username.","type":"string"},"instance":{"description":"Number provided as a string.","minLength":1,"type":"string"},"quantity":{"description":"Number provided as a string.","minLength":1,"type":"string"},"quantitySpent":{"description":"Number provided as a string.","type":"string"},"type":{"minLength":1,"type":"string"},"uses":{"description":"Number provided as a string.","minLength":1,"type":"string"},"usesSpent":{"description":"Number provided as a string.","type":"string"}},"required":["grantedTo","collection","category","type","additionalKey","instance","allowanceType","grantedBy","created","uses","expires","quantity"],"type":"object"},"type":"array"},"Message":{"type":"string"},"Status":{"description":"Indicates Error (0) or Success (1)","enum":[0,1]}},"required":["Status"],"type":"object"}}},"description":"","headers":{"x-transaction-id":{"description":"Transaction ID of evaluated transaction on the chain"}}}},"tags":["Methods"]}},"/api/asset/token-contract/FetchAllowancesWithPagination":{"post":{"description":" Transaction is read only (evaluate). Allowed roles: EVALUATE.","operationId":"asset_token-contract_FetchAllowancesWithPagination","parameters":[],"requestBody":{"content":{"application/json":{"schema":{"description":"Contains parameters for fetching allowances with pagination.","properties":{"additionalKey":{"description":"Token additionalKey. Optional, but required if instance is provided.","minLength":1,"type":"string"},"allowanceType":{"description":"0 - Use, 1 - Lock, 2 - Spend, 3 - Transfer, 4 - Mint, 5 - Swap, 6 - Burn","enum":[0,1,2,3,4,5,6],"type":"number"},"bookmark":{"description":"Page bookmark. If it is undefined, then the first page is returned.","minLength":1,"type":"string"},"category":{"description":"Token category. Optional, but required if type is provided.","minLength":1,"type":"string"},"collection":{"description":"Token collection. Optional, but required if category is provided.","minLength":1,"type":"string"},"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"grantedBy":{"description":"User who granted allowances.","type":"string"},"grantedTo":{"description":"A user who can use an allowance.","type":"string"},"instance":{"description":"Token instance. Optional, but required if allowanceType is provided","minLength":1,"type":"string"},"limit":{"description":"Page size limit. Defaults to 1000, max possible value 10000. Note you will likely get less results than the limit, because the limit is applied before additional filtering.","maximum":10000,"minimum":1,"type":"number"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"type":{"description":"Token type. Optional, but required if additionalKey is provided.","minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["grantedTo"],"type":"object"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"Data":{"properties":{"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"nextPageBookmark":{"description":"Next page bookmark.","type":"string"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"results":{"description":"List of allowances.","items":{"properties":{"additionalKey":{"not":{"type":"null"}},"allowanceType":{"description":"0 - Use, 1 - Lock, 2 - Spend, 3 - Transfer, 4 - Mint, 5 - Swap, 6 - Burn","enum":[0,1,2,3,4,5,6],"type":"number"},"category":{"minLength":1,"type":"string"},"collection":{"minLength":1,"type":"string"},"created":{"description":"Unix epoch timestamp in milliseconds (ms) when this allowance was created.","exclusiveMinimum":0,"type":"number"},"expires":{"description":"Unix epoch timestamp in milliseconds (ms) when this allowance expires. 0 means it never expires.","minimum":0,"type":"number"},"grantedBy":{"description":"Allowed value is string following the format of 'client|\u003cuser-id\u003e', or 'eth|\u003cchecksumed-eth-addr\u003e', or valid system-level username.","type":"string"},"grantedTo":{"description":"Allowed value is string following the format of 'client|\u003cuser-id\u003e', or 'eth|\u003cchecksumed-eth-addr\u003e', or valid system-level username.","type":"string"},"instance":{"description":"Number provided as a string.","minLength":1,"type":"string"},"quantity":{"description":"Number provided as a string.","minLength":1,"type":"string"},"quantitySpent":{"description":"Number provided as a string.","type":"string"},"type":{"minLength":1,"type":"string"},"uses":{"description":"Number provided as a string.","minLength":1,"type":"string"},"usesSpent":{"description":"Number provided as a string.","type":"string"}},"required":["grantedTo","collection","category","type","additionalKey","instance","allowanceType","grantedBy","created","uses","expires","quantity"],"type":"object"},"type":"array"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["results"],"type":"object"},"Message":{"type":"string"},"Status":{"description":"Indicates Error (0) or Success (1)","enum":[0,1]}},"required":["Status"],"type":"object"}}},"description":"","headers":{"x-transaction-id":{"description":"Transaction ID of evaluated transaction on the chain"}}}},"tags":["Methods"]}},"/api/asset/token-contract/FetchBalances":{"post":{"description":" Transaction is read only (evaluate). Allowed roles: EVALUATE.","operationId":"asset_token-contract_FetchBalances","parameters":[],"requestBody":{"content":{"application/json":{"schema":{"description":"Contains parameters for fetching balances. Each parameter is optional.","properties":{"additionalKey":{"description":"Token additionalKey."},"category":{"description":"Token category. Optional, but required if type is provided.","minLength":1,"type":"string"},"collection":{"description":"Token collection. Optional, but required if category is provided.","minLength":1,"type":"string"},"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"owner":{"description":"Person who owns the balance. If the value is missing, chaincode caller is used.","type":"string"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"type":{"description":"Token type. Optional, but required if additionalKey is provided.","minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"type":"object"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"Data":{"items":{"properties":{"additionalKey":{"not":{"type":"null"}},"category":{"minLength":1,"type":"string"},"collection":{"minLength":1,"type":"string"},"instanceIds":{},"lockedHolds":{"items":{"properties":{"created":{"description":"Unix epoch timestamp in milliseconds (ms) when the hold was created (typically the transaction time).","exclusiveMinimum":0,"type":"number"},"createdBy":{"description":"Allowed value is string following the format of 'client|\u003cuser-id\u003e', or 'eth|\u003cchecksumed-eth-addr\u003e', or valid system-level username.","type":"string"},"expires":{"description":"Unix epoch timestamp in milliseconds (ms) when the hold expires. 0 means no expiration.","minimum":0,"type":"number"},"instanceId":{"description":"Number provided as a string.","minLength":1,"type":"string"},"lockAuthority":{"description":"User who will be able to unlock token. If the value is missing, then token owner and lock creator can unlock in all cases token authority can unlock token.","type":"string"},"name":{"type":"string"},"quantity":{"description":"Number provided as a string.","type":"string"},"vestingPeriodStart":{"description":"Unix epoch timestamp in milliseconds (ms) for vestingPeriodStart on vesting holds; undefined for non-vesting holds.","minimum":0,"type":"number"}},"required":["createdBy","instanceId","quantity","created","expires"],"type":"object"},"type":"array"},"owner":{"description":"Allowed value is string following the format of 'client|\u003cuser-id\u003e', or 'eth|\u003cchecksumed-eth-addr\u003e', or valid system-level username.","type":"string"},"quantity":{"description":"Number provided as a string.","type":"string"},"type":{"minLength":1,"type":"string"},"vestingPeriodStart":{"description":"Unix epoch timestamp in milliseconds (ms) for vestingPeriodStart. For vesting locks, this is the beginning of the vesting period.","minimum":0,"type":"number"}},"required":["owner","collection","category","type","additionalKey","quantity"],"type":"object"},"type":"array"},"Message":{"type":"string"},"Status":{"description":"Indicates Error (0) or Success (1)","enum":[0,1]}},"required":["Status"],"type":"object"}}},"description":"","headers":{"x-transaction-id":{"description":"Transaction ID of evaluated transaction on the chain"}}}},"tags":["Methods"]}},"/api/asset/token-contract/FetchBalancesWithTokenMetadata":{"post":{"description":" Transaction is read only (evaluate). Allowed roles: EVALUATE.","operationId":"asset_token-contract_FetchBalancesWithTokenMetadata","parameters":[],"requestBody":{"content":{"application/json":{"schema":{"description":"Contains parameters for fetching balances. Each parameter is optional.","properties":{"additionalKey":{"description":"Token additionalKey."},"bookmark":{"description":"Page bookmark. If it is undefined, then the first page is returned.","minLength":1,"type":"string"},"category":{"description":"Token category. Optional, but required if type is provided.","minLength":1,"type":"string"},"collection":{"description":"Token collection. Optional, but required if category is provided.","minLength":1,"type":"string"},"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"limit":{"description":"Page size limit. Defaults to 1000, max possible value 10000. Note you will likely get less results than the limit, because the limit is applied before additional filtering.","maximum":10000,"minimum":1,"type":"number"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"owner":{"description":"Person who owns the balance. If the value is missing, chaincode caller is used.","type":"string"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"type":{"description":"Token type. Optional, but required if additionalKey is provided.","minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"type":"object"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"Data":{"properties":{"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"nextPageBookmark":{"description":"Next page bookmark.","type":"string"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"results":{"description":"List of balances with token metadata.","items":{"description":"Response DTO containing a TokenBalance and the balance's corresponding TokenClass.","properties":{"balance":{"description":"A TokenBalance read of chain.","properties":{"additionalKey":{"not":{"type":"null"}},"category":{"minLength":1,"type":"string"},"collection":{"minLength":1,"type":"string"},"instanceIds":{},"lockedHolds":{"items":{"properties":{"created":{"description":"Unix epoch timestamp in milliseconds (ms) when the hold was created (typically the transaction time).","exclusiveMinimum":0,"type":"number"},"createdBy":{"description":"Allowed value is string following the format of 'client|\u003cuser-id\u003e', or 'eth|\u003cchecksumed-eth-addr\u003e', or valid system-level username.","type":"string"},"expires":{"description":"Unix epoch timestamp in milliseconds (ms) when the hold expires. 0 means no expiration.","minimum":0,"type":"number"},"instanceId":{"description":"Number provided as a string.","minLength":1,"type":"string"},"lockAuthority":{"description":"User who will be able to unlock token. If the value is missing, then token owner and lock creator can unlock in all cases token authority can unlock token.","type":"string"},"name":{"type":"string"},"quantity":{"description":"Number provided as a string.","type":"string"},"vestingPeriodStart":{"description":"Unix epoch timestamp in milliseconds (ms) for vestingPeriodStart on vesting holds; undefined for non-vesting holds.","minimum":0,"type":"number"}},"required":["createdBy","instanceId","quantity","created","expires"],"type":"object"},"type":"array"},"owner":{"description":"Allowed value is string following the format of 'client|\u003cuser-id\u003e', or 'eth|\u003cchecksumed-eth-addr\u003e', or valid system-level username.","type":"string"},"quantity":{"description":"Number provided as a string.","type":"string"},"type":{"minLength":1,"type":"string"},"vestingPeriodStart":{"description":"Unix epoch timestamp in milliseconds (ms) for vestingPeriodStart. For vesting locks, this is the beginning of the vesting period.","minimum":0,"type":"number"}},"required":["owner","collection","category","type","additionalKey","quantity"],"type":"object"},"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"token":{"description":"The TokenClass metadata corresponding to the TokenBalance on this DTO.","type":"object"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["balance","token"],"type":"object"},"type":"array"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["results"],"type":"object"},"Message":{"type":"string"},"Status":{"description":"Indicates Error (0) or Success (1)","enum":[0,1]}},"required":["Status"],"type":"object"}}},"description":"","headers":{"x-transaction-id":{"description":"Transaction ID of evaluated transaction on the chain"}}}},"tags":["Methods"]}},"/api/asset/token-contract/FetchBurns":{"post":{"description":" Transaction is read only (evaluate). Allowed roles: EVALUATE.","operationId":"asset_token-contract_FetchBurns","parameters":[],"requestBody":{"content":{"application/json":{"schema":{"description":"Contains parameters for fetching burns.","properties":{"additionalKey":{"description":"Token additionalKey. Optional, but required if instance is provided.","minLength":1,"type":"string"},"burnedBy":{"description":"The user who burned the token.","type":"string"},"category":{"description":"Token category. Optional, but required if type is provided.","minLength":1,"type":"string"},"collection":{"description":"Token collection. Optional, but required if category is provided.","minLength":1,"type":"string"},"created":{"description":"Unix epoch timestamp in milliseconds (ms) of burn creation, for partial queries. Optional.","exclusiveMinimum":0,"type":"number"},"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"instance":{"description":"Token instance. Optional, but required if allowanceType is provided.","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"type":{"description":"Token type. Optional, but required if additionalKey is provided.","minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["burnedBy"],"type":"object"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"Data":{"items":{"properties":{"additionalKey":{"not":{"type":"null"}},"burnedBy":{"description":"Allowed value is string following the format of 'client|\u003cuser-id\u003e', or 'eth|\u003cchecksumed-eth-addr\u003e', or valid system-level username.","type":"string"},"category":{"minLength":1,"type":"string"},"collection":{"minLength":1,"type":"string"},"created":{"description":"Unix epoch timestamp in milliseconds (ms) when this burn was recorded.","exclusiveMinimum":0,"type":"number"},"instance":{"description":"Number provided as a string.","minLength":1,"type":"string"},"quantity":{"description":"Number provided as a string.","minLength":1,"type":"string"},"type":{"minLength":1,"type":"string"}},"required":["burnedBy","collection","category","type","additionalKey","instance","created","quantity"],"type":"object"},"type":"array"},"Message":{"type":"string"},"Status":{"description":"Indicates Error (0) or Success (1)","enum":[0,1]}},"required":["Status"],"type":"object"}}},"description":"","headers":{"x-transaction-id":{"description":"Transaction ID of evaluated transaction on the chain"}}}},"tags":["Methods"]}},"/api/asset/token-contract/FetchNftCollectionAuthorizationsWithPagination":{"post":{"description":" Transaction is read only (evaluate). Allowed roles: EVALUATE.","operationId":"asset_token-contract_FetchNftCollectionAuthorizationsWithPagination","parameters":[],"requestBody":{"content":{"application/json":{"schema":{"description":"DTO for fetching all NFT collection authorizations with pagination support.","properties":{"bookmark":{"description":"Optional bookmark for pagination. Use the bookmark from the previous response to fetch the next page.","type":"string"},"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"limit":{"description":"Optional limit for the number of results to return per page.","type":"number"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"type":"object"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"Data":{"description":"Response containing paginated NFT collection authorizations.","properties":{"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"nextPageBookmark":{"description":"Bookmark for the next page of results. Present if there are more results available.","type":"string"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"results":{"description":"Array of NFT collection authorization objects.","items":{"type":"object"},"type":"array"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["results"],"type":"object"},"Message":{"type":"string"},"Status":{"description":"Indicates Error (0) or Success (1)","enum":[0,1]}},"required":["Status"],"type":"object"}}},"description":"","headers":{"x-transaction-id":{"description":"Transaction ID of evaluated transaction on the chain"}}}},"tags":["Methods"]}},"/api/asset/token-contract/FetchProposedFee":{"post":{"description":" Transaction is read only (evaluate). Allowed roles: EVALUATE.","operationId":"asset_token-contract_FetchProposedFee","parameters":[],"requestBody":{"content":{"application/json":{"schema":{"description":"Fetch Fee Threshold Uses for a Fee Code and User.","properties":{"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"feeCode":{"description":"feeCode identifier for which this fee was paid.","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"},"user":{"description":"user who paid this fee.","type":"string"}},"required":["feeCode","user"],"type":"object"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"Data":{},"Message":{"type":"string"},"Status":{"description":"Indicates Error (0) or Success (1)","enum":[0,1]}},"required":["Status"],"type":"object"}}},"description":"","headers":{"x-transaction-id":{"description":"Transaction ID of evaluated transaction on the chain"}}}},"tags":["Methods"]}},"/api/asset/token-contract/FetchTokenBridgeStatus":{"post":{"description":" Transaction is read only (evaluate). Allowed roles: EVALUATE.","operationId":"asset_token-contract_FetchTokenBridgeStatus","parameters":[],"requestBody":{"content":{"application/json":{"schema":{"description":"Fetch a bridge status.","properties":{"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"otherChainId":{"description":"Unique id corresponding to specific chain","enum":[1,10,1001,1002,11,12,13,14,15,16,17,18,19,2,20,21,22,23,24,25,26,27,3,4,5,6,7,8,9],"minLength":1,"type":"number"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["otherChainId"],"type":"object"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"Data":{"properties":{"bridgeType":{"minLength":1,"type":"string"},"isPaused":{"type":"boolean"}},"required":["bridgeType"],"type":"object"},"Message":{"type":"string"},"Status":{"description":"Indicates Error (0) or Success (1)","enum":[0,1]}},"required":["Status"],"type":"object"}}},"description":"","headers":{"x-transaction-id":{"description":"Transaction ID of evaluated transaction on the chain"}}}},"tags":["Methods"]}},"/api/asset/token-contract/FetchTokenClasses":{"post":{"description":" Transaction is read only (evaluate). Allowed roles: EVALUATE.","operationId":"asset_token-contract_FetchTokenClasses","parameters":[],"requestBody":{"content":{"application/json":{"schema":{"description":"Contains list of objects representing token classes to fetch.","properties":{"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"tokenClasses":{"items":{"description":"Object representing the chain identifier of token class.","properties":{"additionalKey":{"not":{"type":"null"}},"category":{"minLength":1,"type":"string"},"collection":{"minLength":1,"type":"string"},"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"type":{"minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["collection","category","type","additionalKey"],"type":"object"},"minItems":1,"type":"array"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["tokenClasses"],"type":"object"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"Data":{"items":{"properties":{"additionalKey":{"not":{"type":"null"}},"authorities":{"items":{"description":"Allowed value is string following the format of 'client|\u003cuser-id\u003e', or 'eth|\u003cchecksumed-eth-addr\u003e', or valid system-level username.","type":"string"},"type":"array"},"category":{"minLength":1,"type":"string"},"collection":{"minLength":1,"type":"string"},"contractAddress":{"maxLength":500,"type":"string"},"decimals":{"maximum":32,"minimum":0,"type":"number"},"description":{"maxLength":1000,"minLength":1,"type":"string"},"image":{"maxLength":500,"minLength":1,"type":"string"},"isNonFungible":{"type":"boolean"},"knownMintAllowanceSupply":{"description":"Number provided as a string.","type":"string"},"knownMintSupply":{"description":"Number provided as a string.","type":"string"},"maxCapacity":{"description":"Number provided as a string.","minLength":1,"type":"string"},"maxSupply":{"description":"Number provided as a string.","minLength":1,"type":"string"},"metadataAddress":{"maxLength":500,"type":"string"},"name":{"minLength":1,"type":"string"},"network":{"enum":["GC"],"minLength":1,"type":"string"},"rarity":{"pattern":"^[0-9a-zA-Z]+$","type":"string"},"symbol":{"minLength":1,"pattern":"^[0-9a-zA-Z]+$","type":"string"},"totalBurned":{"description":"Number provided as a string.","type":"string"},"totalMintAllowance":{"description":"Number provided as a string.","type":"string"},"totalSupply":{"description":"Number provided as a string.","type":"string"},"type":{"minLength":1,"type":"string"}},"required":["collection","category","type","additionalKey","network","decimals","maxSupply","isNonFungible","maxCapacity","authorities","name","symbol","description","image","totalBurned","totalMintAllowance","totalSupply"],"type":"object"},"type":"array"},"Message":{"type":"string"},"Status":{"description":"Indicates Error (0) or Success (1)","enum":[0,1]}},"required":["Status"],"type":"object"}}},"description":"","headers":{"x-transaction-id":{"description":"Transaction ID of evaluated transaction on the chain"}}}},"tags":["Methods"]}},"/api/asset/token-contract/FetchTokenClassesWithPagination":{"post":{"description":" Transaction is read only (evaluate). Allowed roles: EVALUATE.","operationId":"asset_token-contract_FetchTokenClassesWithPagination","parameters":[],"requestBody":{"content":{"application/json":{"schema":{"description":"Fetch token classes currently available in world state. Supports filtering, pagination, and optionality of TokenClassKey properties.","properties":{"additionalKey":{"description":"Token additionalKey. Optional, but required if instance is provided.","minLength":1,"type":"string"},"bookmark":{"description":"Page bookmark. If it is undefined, then the first page is returned.","minLength":1,"type":"string"},"category":{"description":"Token category. Optional, but required if type is provided.","minLength":1,"type":"string"},"collection":{"description":"Token collection. Optional, but required if category is provided.","minLength":1,"type":"string"},"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"limit":{"description":"Page size limit. Defaults to 1000, max possible value 10000. Note you will likely get less results than the limit, because the limit is applied before additional filtering.","maximum":10000,"minimum":1,"type":"number"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"type":{"description":"Token type. Optional, but required if additionalKey is provided.","minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"type":"object"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"Data":{"properties":{"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"nextPageBookmark":{"description":"Next page bookmark.","type":"string"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"results":{"description":"List of Token Classes.","items":{"properties":{"additionalKey":{"not":{"type":"null"}},"authorities":{"items":{"description":"Allowed value is string following the format of 'client|\u003cuser-id\u003e', or 'eth|\u003cchecksumed-eth-addr\u003e', or valid system-level username.","type":"string"},"type":"array"},"category":{"minLength":1,"type":"string"},"collection":{"minLength":1,"type":"string"},"contractAddress":{"maxLength":500,"type":"string"},"decimals":{"maximum":32,"minimum":0,"type":"number"},"description":{"maxLength":1000,"minLength":1,"type":"string"},"image":{"maxLength":500,"minLength":1,"type":"string"},"isNonFungible":{"type":"boolean"},"knownMintAllowanceSupply":{"description":"Number provided as a string.","type":"string"},"knownMintSupply":{"description":"Number provided as a string.","type":"string"},"maxCapacity":{"description":"Number provided as a string.","minLength":1,"type":"string"},"maxSupply":{"description":"Number provided as a string.","minLength":1,"type":"string"},"metadataAddress":{"maxLength":500,"type":"string"},"name":{"minLength":1,"type":"string"},"network":{"enum":["GC"],"minLength":1,"type":"string"},"rarity":{"pattern":"^[0-9a-zA-Z]+$","type":"string"},"symbol":{"minLength":1,"pattern":"^[0-9a-zA-Z]+$","type":"string"},"totalBurned":{"description":"Number provided as a string.","type":"string"},"totalMintAllowance":{"description":"Number provided as a string.","type":"string"},"totalSupply":{"description":"Number provided as a string.","type":"string"},"type":{"minLength":1,"type":"string"}},"required":["collection","category","type","additionalKey","network","decimals","maxSupply","isNonFungible","maxCapacity","authorities","name","symbol","description","image","totalBurned","totalMintAllowance","totalSupply"],"type":"object"},"type":"array"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["results"],"type":"object"},"Message":{"type":"string"},"Status":{"description":"Indicates Error (0) or Success (1)","enum":[0,1]}},"required":["Status"],"type":"object"}}},"description":"","headers":{"x-transaction-id":{"description":"Transaction ID of evaluated transaction on the chain"}}}},"tags":["Methods"]}},"/api/asset/token-contract/FetchTokenClassesWithSupply":{"post":{"description":" Transaction is read only (evaluate). Allowed roles: EVALUATE.","operationId":"asset_token-contract_FetchTokenClassesWithSupply","parameters":[],"requestBody":{"content":{"application/json":{"schema":{"description":"Contains list of objects representing token classes to fetch.","properties":{"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"tokenClasses":{"items":{"description":"Object representing the chain identifier of token class.","properties":{"additionalKey":{"not":{"type":"null"}},"category":{"minLength":1,"type":"string"},"collection":{"minLength":1,"type":"string"},"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"type":{"minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["collection","category","type","additionalKey"],"type":"object"},"minItems":1,"type":"array"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["tokenClasses"],"type":"object"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"Data":{"items":{"properties":{"additionalKey":{"not":{"type":"null"}},"authorities":{"items":{"description":"Allowed value is string following the format of 'client|\u003cuser-id\u003e', or 'eth|\u003cchecksumed-eth-addr\u003e', or valid system-level username.","type":"string"},"type":"array"},"category":{"minLength":1,"type":"string"},"collection":{"minLength":1,"type":"string"},"contractAddress":{"maxLength":500,"type":"string"},"decimals":{"maximum":32,"minimum":0,"type":"number"},"description":{"maxLength":1000,"minLength":1,"type":"string"},"image":{"maxLength":500,"minLength":1,"type":"string"},"isNonFungible":{"type":"boolean"},"knownMintAllowanceSupply":{"description":"Number provided as a string.","type":"string"},"knownMintSupply":{"description":"Number provided as a string.","type":"string"},"maxCapacity":{"description":"Number provided as a string.","minLength":1,"type":"string"},"maxSupply":{"description":"Number provided as a string.","minLength":1,"type":"string"},"metadataAddress":{"maxLength":500,"type":"string"},"name":{"minLength":1,"type":"string"},"network":{"enum":["GC"],"minLength":1,"type":"string"},"rarity":{"pattern":"^[0-9a-zA-Z]+$","type":"string"},"symbol":{"minLength":1,"pattern":"^[0-9a-zA-Z]+$","type":"string"},"totalBurned":{"description":"Number provided as a string.","type":"string"},"totalMintAllowance":{"description":"Number provided as a string.","type":"string"},"totalSupply":{"description":"Number provided as a string.","type":"string"},"type":{"minLength":1,"type":"string"}},"required":["collection","category","type","additionalKey","network","decimals","maxSupply","isNonFungible","maxCapacity","authorities","name","symbol","description","image","totalBurned","totalMintAllowance","totalSupply"],"type":"object"},"type":"array"},"Message":{"type":"string"},"Status":{"description":"Indicates Error (0) or Success (1)","enum":[0,1]}},"required":["Status"],"type":"object"}}},"description":"","headers":{"x-transaction-id":{"description":"Transaction ID of evaluated transaction on the chain"}}}},"tags":["Methods"]}},"/api/asset/token-contract/FetchTokenSwapByRequestId":{"post":{"description":" Transaction is read only (evaluate). Allowed roles: EVALUATE.","operationId":"asset_token-contract_FetchTokenSwapByRequestId","parameters":[],"requestBody":{"content":{"application/json":{"schema":{"properties":{"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"swapRequestId":{"description":"Token swap request ID.","minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["swapRequestId"],"type":"object"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"Data":{"properties":{"created":{"description":"Unix epoch timestamp in milliseconds (ms) when this swap request was created.","type":"number"},"expires":{"description":"Unix epoch timestamp in milliseconds (ms) when this swap request expires. 0 means it never expires.","minimum":0,"type":"number"},"fillIds":{"minLength":1,"type":"string"},"offered":{"items":{"properties":{"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"quantity":{"description":"Number provided as a string.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"tokenInstance":{"description":"Object representing the chain identifier of token instance.","minLength":1,"properties":{"additionalKey":{"not":{"type":"null"}},"category":{"minLength":1,"type":"string"},"collection":{"minLength":1,"type":"string"},"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"instance":{"description":"Number provided as a string.","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"type":{"minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["collection","category","type","additionalKey","instance"],"type":"object"},"tokenMetadata":{"description":"The TokenClass metadata corresponding to the TokenBalance on this DTO.","type":"object"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["tokenInstance","quantity"],"type":"object"},"minItems":1,"type":"array"},"offeredBy":{"description":"Allowed value is string following the format of 'client|\u003cuser-id\u003e', or 'eth|\u003cchecksumed-eth-addr\u003e', or valid system-level username.","type":"string"},"offeredTo":{"description":"Allowed value is string following the format of 'client|\u003cuser-id\u003e', or 'eth|\u003cchecksumed-eth-addr\u003e', or valid system-level username.","type":"string"},"swapRequestId":{"minLength":1,"type":"string"},"txid":{"minLength":1,"type":"string"},"uses":{"description":"Number provided as a string.","type":"string"},"usesSpent":{"description":"Number provided as a string.","type":"string"},"wanted":{"items":{"properties":{"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"quantity":{"description":"Number provided as a string.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"tokenInstance":{"description":"Object representing the chain identifier of token instance.","minLength":1,"properties":{"additionalKey":{"not":{"type":"null"}},"category":{"minLength":1,"type":"string"},"collection":{"minLength":1,"type":"string"},"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"instance":{"description":"Number provided as a string.","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"type":{"minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["collection","category","type","additionalKey","instance"],"type":"object"},"tokenMetadata":{"description":"The TokenClass metadata corresponding to the TokenBalance on this DTO.","type":"object"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["tokenInstance","quantity"],"type":"object"},"minItems":1,"type":"array"}},"required":["created","txid","swapRequestId","offered","wanted","offeredBy","fillIds","uses","usesSpent","expires"],"type":"object"},"Message":{"type":"string"},"Status":{"description":"Indicates Error (0) or Success (1)","enum":[0,1]}},"required":["Status"],"type":"object"}}},"description":"","headers":{"x-transaction-id":{"description":"Transaction ID of evaluated transaction on the chain"}}}},"tags":["Methods"]}},"/api/asset/token-contract/FetchTokenSwaps":{"post":{"description":" Transaction is read only (evaluate). Allowed roles: EVALUATE.","operationId":"asset_token-contract_FetchTokenSwaps","parameters":[],"requestBody":{"content":{"application/json":{"schema":{"description":"Legacy FetchTokenSwapsDto. Provide a created-time lower bound as a Unix epoch timestamp in milliseconds (ms) to limit results, or leave empty to query all swaps.","properties":{"created":{"description":"(optional) ChainKey 0 — Unix epoch timestamp in milliseconds (ms) of swap creation; partial query lower bound.","type":"number"},"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"type":"object"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"Data":{"items":{"properties":{"created":{"description":"Unix epoch timestamp in milliseconds (ms) when this swap request was created.","type":"number"},"expires":{"description":"Unix epoch timestamp in milliseconds (ms) when this swap request expires. 0 means it never expires.","minimum":0,"type":"number"},"fillIds":{"minLength":1,"type":"string"},"offered":{"items":{"properties":{"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"quantity":{"description":"Number provided as a string.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"tokenInstance":{"description":"Object representing the chain identifier of token instance.","minLength":1,"properties":{"additionalKey":{"not":{"type":"null"}},"category":{"minLength":1,"type":"string"},"collection":{"minLength":1,"type":"string"},"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"instance":{"description":"Number provided as a string.","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"type":{"minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["collection","category","type","additionalKey","instance"],"type":"object"},"tokenMetadata":{"description":"The TokenClass metadata corresponding to the TokenBalance on this DTO.","type":"object"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["tokenInstance","quantity"],"type":"object"},"minItems":1,"type":"array"},"offeredBy":{"description":"Allowed value is string following the format of 'client|\u003cuser-id\u003e', or 'eth|\u003cchecksumed-eth-addr\u003e', or valid system-level username.","type":"string"},"offeredTo":{"description":"Allowed value is string following the format of 'client|\u003cuser-id\u003e', or 'eth|\u003cchecksumed-eth-addr\u003e', or valid system-level username.","type":"string"},"swapRequestId":{"minLength":1,"type":"string"},"txid":{"minLength":1,"type":"string"},"uses":{"description":"Number provided as a string.","type":"string"},"usesSpent":{"description":"Number provided as a string.","type":"string"},"wanted":{"items":{"properties":{"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"quantity":{"description":"Number provided as a string.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"tokenInstance":{"description":"Object representing the chain identifier of token instance.","minLength":1,"properties":{"additionalKey":{"not":{"type":"null"}},"category":{"minLength":1,"type":"string"},"collection":{"minLength":1,"type":"string"},"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"instance":{"description":"Number provided as a string.","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"type":{"minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["collection","category","type","additionalKey","instance"],"type":"object"},"tokenMetadata":{"description":"The TokenClass metadata corresponding to the TokenBalance on this DTO.","type":"object"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["tokenInstance","quantity"],"type":"object"},"minItems":1,"type":"array"}},"required":["created","txid","swapRequestId","offered","wanted","offeredBy","fillIds","uses","usesSpent","expires"],"type":"object"},"type":"array"},"Message":{"type":"string"},"Status":{"description":"Indicates Error (0) or Success (1)","enum":[0,1]}},"required":["Status"],"type":"object"}}},"description":"","headers":{"x-transaction-id":{"description":"Transaction ID of evaluated transaction on the chain"}}}},"tags":["Methods"]}},"/api/asset/token-contract/FetchTokenSwapsByInstanceOffered":{"post":{"description":" Transaction is read only (evaluate). Allowed roles: EVALUATE.","operationId":"asset_token-contract_FetchTokenSwapsByInstanceOffered","parameters":[],"requestBody":{"content":{"application/json":{"schema":{"description":"Query for TokenSwapRequests by Token Instance properties. Supports pagination.","properties":{"additionalKey":{"description":"Token additionalKey. Optional, but required if instance is provided.","minLength":1,"type":"string"},"bookmark":{"description":"Page bookmark. If it is undefined, then the first page is returned.","minLength":1,"type":"string"},"category":{"description":"Token category. Optional, but required if type is provided.","minLength":1,"type":"string"},"collection":{"description":"Token collection. Optional, but required if category is provided.","minLength":1,"type":"string"},"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"instance":{"description":"Token instance. Optional, but required if allowanceType is provided","minLength":1,"type":"string"},"limit":{"description":"Page size limit. Defaults to 1000, max possible value 10000. Note you will likely get less results than the limit, because the limit is applied before additional filtering.","maximum":10000,"minimum":1,"type":"number"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"type":{"description":"Token type. Optional, but required if additionalKey is provided.","minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"type":"object"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"Data":{"description":"Response DTO for FetchTokenSwaps{ByInstanceOffered|ByInstanceWanted|OfferedBy|OfferedTo} methods. Supports pagination.","properties":{"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"nextPageBookmark":{},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"results":{"items":{"properties":{"created":{"description":"Unix epoch timestamp in milliseconds (ms) when this swap request was created.","type":"number"},"expires":{"description":"Unix epoch timestamp in milliseconds (ms) when this swap request expires. 0 means it never expires.","minimum":0,"type":"number"},"fillIds":{"minLength":1,"type":"string"},"offered":{"items":{"properties":{"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"quantity":{"description":"Number provided as a string.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"tokenInstance":{"description":"Object representing the chain identifier of token instance.","minLength":1,"properties":{"additionalKey":{"not":{"type":"null"}},"category":{"minLength":1,"type":"string"},"collection":{"minLength":1,"type":"string"},"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"instance":{"description":"Number provided as a string.","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"type":{"minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["collection","category","type","additionalKey","instance"],"type":"object"},"tokenMetadata":{"description":"The TokenClass metadata corresponding to the TokenBalance on this DTO.","type":"object"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["tokenInstance","quantity"],"type":"object"},"minItems":1,"type":"array"},"offeredBy":{"description":"Allowed value is string following the format of 'client|\u003cuser-id\u003e', or 'eth|\u003cchecksumed-eth-addr\u003e', or valid system-level username.","type":"string"},"offeredTo":{"description":"Allowed value is string following the format of 'client|\u003cuser-id\u003e', or 'eth|\u003cchecksumed-eth-addr\u003e', or valid system-level username.","type":"string"},"swapRequestId":{"minLength":1,"type":"string"},"txid":{"minLength":1,"type":"string"},"uses":{"description":"Number provided as a string.","type":"string"},"usesSpent":{"description":"Number provided as a string.","type":"string"},"wanted":{"items":{"properties":{"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"quantity":{"description":"Number provided as a string.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"tokenInstance":{"description":"Object representing the chain identifier of token instance.","minLength":1,"properties":{"additionalKey":{"not":{"type":"null"}},"category":{"minLength":1,"type":"string"},"collection":{"minLength":1,"type":"string"},"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"instance":{"description":"Number provided as a string.","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"type":{"minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["collection","category","type","additionalKey","instance"],"type":"object"},"tokenMetadata":{"description":"The TokenClass metadata corresponding to the TokenBalance on this DTO.","type":"object"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["tokenInstance","quantity"],"type":"object"},"minItems":1,"type":"array"}},"required":["created","txid","swapRequestId","offered","wanted","offeredBy","fillIds","uses","usesSpent","expires"],"type":"object"},"type":"array"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["results"],"type":"object"},"Message":{"type":"string"},"Status":{"description":"Indicates Error (0) or Success (1)","enum":[0,1]}},"required":["Status"],"type":"object"}}},"description":"","headers":{"x-transaction-id":{"description":"Transaction ID of evaluated transaction on the chain"}}}},"tags":["Methods"]}},"/api/asset/token-contract/FetchTokenSwapsByInstanceWanted":{"post":{"description":" Transaction is read only (evaluate). Allowed roles: EVALUATE.","operationId":"asset_token-contract_FetchTokenSwapsByInstanceWanted","parameters":[],"requestBody":{"content":{"application/json":{"schema":{"description":"Query for TokenSwapRequests by Token Instance properties. Supports pagination.","properties":{"additionalKey":{"description":"Token additionalKey. Optional, but required if instance is provided.","minLength":1,"type":"string"},"bookmark":{"description":"Page bookmark. If it is undefined, then the first page is returned.","minLength":1,"type":"string"},"category":{"description":"Token category. Optional, but required if type is provided.","minLength":1,"type":"string"},"collection":{"description":"Token collection. Optional, but required if category is provided.","minLength":1,"type":"string"},"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"instance":{"description":"Token instance. Optional, but required if allowanceType is provided","minLength":1,"type":"string"},"limit":{"description":"Page size limit. Defaults to 1000, max possible value 10000. Note you will likely get less results than the limit, because the limit is applied before additional filtering.","maximum":10000,"minimum":1,"type":"number"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"type":{"description":"Token type. Optional, but required if additionalKey is provided.","minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"type":"object"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"Data":{"description":"Response DTO for FetchTokenSwaps{ByInstanceOffered|ByInstanceWanted|OfferedBy|OfferedTo} methods. Supports pagination.","properties":{"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"nextPageBookmark":{},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"results":{"items":{"properties":{"created":{"description":"Unix epoch timestamp in milliseconds (ms) when this swap request was created.","type":"number"},"expires":{"description":"Unix epoch timestamp in milliseconds (ms) when this swap request expires. 0 means it never expires.","minimum":0,"type":"number"},"fillIds":{"minLength":1,"type":"string"},"offered":{"items":{"properties":{"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"quantity":{"description":"Number provided as a string.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"tokenInstance":{"description":"Object representing the chain identifier of token instance.","minLength":1,"properties":{"additionalKey":{"not":{"type":"null"}},"category":{"minLength":1,"type":"string"},"collection":{"minLength":1,"type":"string"},"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"instance":{"description":"Number provided as a string.","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"type":{"minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["collection","category","type","additionalKey","instance"],"type":"object"},"tokenMetadata":{"description":"The TokenClass metadata corresponding to the TokenBalance on this DTO.","type":"object"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["tokenInstance","quantity"],"type":"object"},"minItems":1,"type":"array"},"offeredBy":{"description":"Allowed value is string following the format of 'client|\u003cuser-id\u003e', or 'eth|\u003cchecksumed-eth-addr\u003e', or valid system-level username.","type":"string"},"offeredTo":{"description":"Allowed value is string following the format of 'client|\u003cuser-id\u003e', or 'eth|\u003cchecksumed-eth-addr\u003e', or valid system-level username.","type":"string"},"swapRequestId":{"minLength":1,"type":"string"},"txid":{"minLength":1,"type":"string"},"uses":{"description":"Number provided as a string.","type":"string"},"usesSpent":{"description":"Number provided as a string.","type":"string"},"wanted":{"items":{"properties":{"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"quantity":{"description":"Number provided as a string.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"tokenInstance":{"description":"Object representing the chain identifier of token instance.","minLength":1,"properties":{"additionalKey":{"not":{"type":"null"}},"category":{"minLength":1,"type":"string"},"collection":{"minLength":1,"type":"string"},"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"instance":{"description":"Number provided as a string.","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"type":{"minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["collection","category","type","additionalKey","instance"],"type":"object"},"tokenMetadata":{"description":"The TokenClass metadata corresponding to the TokenBalance on this DTO.","type":"object"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["tokenInstance","quantity"],"type":"object"},"minItems":1,"type":"array"}},"required":["created","txid","swapRequestId","offered","wanted","offeredBy","fillIds","uses","usesSpent","expires"],"type":"object"},"type":"array"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["results"],"type":"object"},"Message":{"type":"string"},"Status":{"description":"Indicates Error (0) or Success (1)","enum":[0,1]}},"required":["Status"],"type":"object"}}},"description":"","headers":{"x-transaction-id":{"description":"Transaction ID of evaluated transaction on the chain"}}}},"tags":["Methods"]}},"/api/asset/token-contract/FetchTokenSwapsOfferedByUser":{"post":{"description":" Transaction is read only (evaluate). Allowed roles: EVALUATE.","operationId":"asset_token-contract_FetchTokenSwapsOfferedByUser","parameters":[],"requestBody":{"content":{"application/json":{"schema":{"description":"Query for TokenSwapRequests by User properties (offeredBy/offeredTo). Supports pagination.","properties":{"bookmark":{"description":"Page bookmark. If it is undefined, then the first page is returned.","minLength":1,"type":"string"},"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"limit":{"description":"Page size limit. Defaults to 1000, max possible value 10000. Note you will likely get less results than the limit, because the limit is applied before additional filtering.","maximum":10000,"minimum":1,"type":"number"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"},"user":{"description":"Allowed value is a user alias ('client|\u003cuser-id\u003e', or 'eth|\u003cchecksumed-eth-addr\u003e', or valid system-level username), or valid Ethereum address.","type":"string"}},"type":"object"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"Data":{"description":"Response DTO for FetchTokenSwaps{ByInstanceOffered|ByInstanceWanted|OfferedBy|OfferedTo} methods. Supports pagination.","properties":{"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"nextPageBookmark":{},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"results":{"items":{"properties":{"created":{"description":"Unix epoch timestamp in milliseconds (ms) when this swap request was created.","type":"number"},"expires":{"description":"Unix epoch timestamp in milliseconds (ms) when this swap request expires. 0 means it never expires.","minimum":0,"type":"number"},"fillIds":{"minLength":1,"type":"string"},"offered":{"items":{"properties":{"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"quantity":{"description":"Number provided as a string.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"tokenInstance":{"description":"Object representing the chain identifier of token instance.","minLength":1,"properties":{"additionalKey":{"not":{"type":"null"}},"category":{"minLength":1,"type":"string"},"collection":{"minLength":1,"type":"string"},"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"instance":{"description":"Number provided as a string.","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"type":{"minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["collection","category","type","additionalKey","instance"],"type":"object"},"tokenMetadata":{"description":"The TokenClass metadata corresponding to the TokenBalance on this DTO.","type":"object"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["tokenInstance","quantity"],"type":"object"},"minItems":1,"type":"array"},"offeredBy":{"description":"Allowed value is string following the format of 'client|\u003cuser-id\u003e', or 'eth|\u003cchecksumed-eth-addr\u003e', or valid system-level username.","type":"string"},"offeredTo":{"description":"Allowed value is string following the format of 'client|\u003cuser-id\u003e', or 'eth|\u003cchecksumed-eth-addr\u003e', or valid system-level username.","type":"string"},"swapRequestId":{"minLength":1,"type":"string"},"txid":{"minLength":1,"type":"string"},"uses":{"description":"Number provided as a string.","type":"string"},"usesSpent":{"description":"Number provided as a string.","type":"string"},"wanted":{"items":{"properties":{"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"quantity":{"description":"Number provided as a string.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"tokenInstance":{"description":"Object representing the chain identifier of token instance.","minLength":1,"properties":{"additionalKey":{"not":{"type":"null"}},"category":{"minLength":1,"type":"string"},"collection":{"minLength":1,"type":"string"},"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"instance":{"description":"Number provided as a string.","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"type":{"minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["collection","category","type","additionalKey","instance"],"type":"object"},"tokenMetadata":{"description":"The TokenClass metadata corresponding to the TokenBalance on this DTO.","type":"object"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["tokenInstance","quantity"],"type":"object"},"minItems":1,"type":"array"}},"required":["created","txid","swapRequestId","offered","wanted","offeredBy","fillIds","uses","usesSpent","expires"],"type":"object"},"type":"array"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["results"],"type":"object"},"Message":{"type":"string"},"Status":{"description":"Indicates Error (0) or Success (1)","enum":[0,1]}},"required":["Status"],"type":"object"}}},"description":"","headers":{"x-transaction-id":{"description":"Transaction ID of evaluated transaction on the chain"}}}},"tags":["Methods"]}},"/api/asset/token-contract/FetchTokenSwapsOfferedToUser":{"post":{"description":" Transaction is read only (evaluate). Allowed roles: EVALUATE.","operationId":"asset_token-contract_FetchTokenSwapsOfferedToUser","parameters":[],"requestBody":{"content":{"application/json":{"schema":{"description":"Query for TokenSwapRequests by User properties (offeredBy/offeredTo). Supports pagination.","properties":{"bookmark":{"description":"Page bookmark. If it is undefined, then the first page is returned.","minLength":1,"type":"string"},"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"limit":{"description":"Page size limit. Defaults to 1000, max possible value 10000. Note you will likely get less results than the limit, because the limit is applied before additional filtering.","maximum":10000,"minimum":1,"type":"number"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"},"user":{"description":"Allowed value is a user alias ('client|\u003cuser-id\u003e', or 'eth|\u003cchecksumed-eth-addr\u003e', or valid system-level username), or valid Ethereum address.","type":"string"}},"type":"object"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"Data":{"description":"Response DTO for FetchTokenSwaps{ByInstanceOffered|ByInstanceWanted|OfferedBy|OfferedTo} methods. Supports pagination.","properties":{"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"nextPageBookmark":{},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"results":{"items":{"properties":{"created":{"description":"Unix epoch timestamp in milliseconds (ms) when this swap request was created.","type":"number"},"expires":{"description":"Unix epoch timestamp in milliseconds (ms) when this swap request expires. 0 means it never expires.","minimum":0,"type":"number"},"fillIds":{"minLength":1,"type":"string"},"offered":{"items":{"properties":{"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"quantity":{"description":"Number provided as a string.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"tokenInstance":{"description":"Object representing the chain identifier of token instance.","minLength":1,"properties":{"additionalKey":{"not":{"type":"null"}},"category":{"minLength":1,"type":"string"},"collection":{"minLength":1,"type":"string"},"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"instance":{"description":"Number provided as a string.","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"type":{"minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["collection","category","type","additionalKey","instance"],"type":"object"},"tokenMetadata":{"description":"The TokenClass metadata corresponding to the TokenBalance on this DTO.","type":"object"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["tokenInstance","quantity"],"type":"object"},"minItems":1,"type":"array"},"offeredBy":{"description":"Allowed value is string following the format of 'client|\u003cuser-id\u003e', or 'eth|\u003cchecksumed-eth-addr\u003e', or valid system-level username.","type":"string"},"offeredTo":{"description":"Allowed value is string following the format of 'client|\u003cuser-id\u003e', or 'eth|\u003cchecksumed-eth-addr\u003e', or valid system-level username.","type":"string"},"swapRequestId":{"minLength":1,"type":"string"},"txid":{"minLength":1,"type":"string"},"uses":{"description":"Number provided as a string.","type":"string"},"usesSpent":{"description":"Number provided as a string.","type":"string"},"wanted":{"items":{"properties":{"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"quantity":{"description":"Number provided as a string.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"tokenInstance":{"description":"Object representing the chain identifier of token instance.","minLength":1,"properties":{"additionalKey":{"not":{"type":"null"}},"category":{"minLength":1,"type":"string"},"collection":{"minLength":1,"type":"string"},"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"instance":{"description":"Number provided as a string.","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"type":{"minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["collection","category","type","additionalKey","instance"],"type":"object"},"tokenMetadata":{"description":"The TokenClass metadata corresponding to the TokenBalance on this DTO.","type":"object"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["tokenInstance","quantity"],"type":"object"},"minItems":1,"type":"array"}},"required":["created","txid","swapRequestId","offered","wanted","offeredBy","fillIds","uses","usesSpent","expires"],"type":"object"},"type":"array"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["results"],"type":"object"},"Message":{"type":"string"},"Status":{"description":"Indicates Error (0) or Success (1)","enum":[0,1]}},"required":["Status"],"type":"object"}}},"description":"","headers":{"x-transaction-id":{"description":"Transaction ID of evaluated transaction on the chain"}}}},"tags":["Methods"]}},"/api/asset/token-contract/FillTokenSwap":{"post":{"description":" Transaction updates the chain (submit). Allowed roles: SUBMIT.","operationId":"asset_token-contract_FillTokenSwap","parameters":[],"requestBody":{"content":{"application/json":{"schema":{"description":"Defines a swap fill object, i.e. a response of another user for a swap request.","properties":{"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"expectedTokenSwap":{"description":"Expected token swap trade to be validated before filling the swap. Defines an expected token swap trade, i.e. offered and wanted tokens.","properties":{"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"offered":{"description":"A list of offered token instances. The order of this array must match the order of the TokenSwapRequest stored on chain.","items":{"properties":{"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"quantity":{"description":"Number provided as a string.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"tokenInstance":{"description":"Object representing the chain identifier of token instance.","minLength":1,"properties":{"additionalKey":{"not":{"type":"null"}},"category":{"minLength":1,"type":"string"},"collection":{"minLength":1,"type":"string"},"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"instance":{"description":"Number provided as a string.","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"type":{"minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["collection","category","type","additionalKey","instance"],"type":"object"},"tokenMetadata":{"description":"The TokenClass metadata corresponding to the TokenBalance on this DTO.","type":"object"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["tokenInstance","quantity"],"type":"object"},"minItems":1,"type":"array","uniqueItems":true},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"},"wanted":{"description":"A list of wanted token instances. The order of this array must match the order of the TokenSwapRequest stored on chain.","items":{"properties":{"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"quantity":{"description":"Number provided as a string.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"tokenInstance":{"description":"Object representing the chain identifier of token instance.","minLength":1,"properties":{"additionalKey":{"not":{"type":"null"}},"category":{"minLength":1,"type":"string"},"collection":{"minLength":1,"type":"string"},"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"instance":{"description":"Number provided as a string.","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"type":{"minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["collection","category","type","additionalKey","instance"],"type":"object"},"tokenMetadata":{"description":"The TokenClass metadata corresponding to the TokenBalance on this DTO.","type":"object"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["tokenInstance","quantity"],"type":"object"},"minItems":1,"type":"array","uniqueItems":true}},"required":["offered","wanted"],"type":"object"},"filledBy":{"description":"User who fills the swap, an owner of tokens wanted in swap. Optional field, by default set to chaincode calling user.","type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"swapRequestId":{"description":"Swap request ID to be filled","minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"},"uses":{"description":"How many uses are filled with this swap fill. In most cases it will be 1, and this is the default value for it. Number provided as a string.","type":"string"}},"required":["swapRequestId"],"type":"object"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"properties":{"Data":{"properties":{"created":{"description":"Unix epoch timestamp in milliseconds (ms) when this swap fill was recorded.","exclusiveMinimum":0,"type":"number"},"filledBy":{"description":"Allowed value is string following the format of 'client|\u003cuser-id\u003e', or 'eth|\u003cchecksumed-eth-addr\u003e', or valid system-level username.","type":"string"},"swapRequestId":{"minLength":1,"type":"string"},"uses":{"description":"Number provided as a string.","type":"string"}},"required":["swapRequestId","filledBy","created","uses"],"type":"object"},"Message":{"type":"string"},"Status":{"description":"Indicates Error (0) or Success (1)","enum":[0,1]}},"required":["Status"],"type":"object"}}},"description":"","headers":{"x-transaction-id":{"description":"Transaction ID of submitted transaction on the chain"}}}},"tags":["Methods"]}},"/api/asset/token-contract/GrantAllowance":{"post":{"description":" Transaction updates the chain (submit). Allowed roles: SUBMIT.","operationId":"asset_token-contract_GrantAllowance","parameters":[],"requestBody":{"content":{"application/json":{"schema":{"description":"Defines allowances to be created.","properties":{"allowanceType":{"description":"0 - Use, 1 - Lock, 2 - Spend, 3 - Transfer, 4 - Mint, 5 - Swap, 6 - Burn","enum":[0,1,2,3,4,5,6],"minLength":1,"type":"string"},"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"expires":{"description":"Unix epoch timestamp in milliseconds (ms) when the allowances should expire. 0 means they never expire. By default set to 0."},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"quantities":{"$ref":"#/definitions/Array","description":"List of objects with user and token quantities. The user fields must be unique","items":{"properties":{"quantity":{"description":"Number provided as a string.","type":"string"},"user":{"description":"Allowed value is string following the format of 'client|\u003cuser-id\u003e', or 'eth|\u003cchecksumed-eth-addr\u003e', or valid system-level username.","minLength":1,"type":"string"}},"required":["user","quantity"],"type":"object"},"minItems":1,"type":"array"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"tokenInstance":{"description":"Token instance of token which the allowance concerns. In case of fungible tokens, tokenInstance.instance field should be set to 0. A full or partial key of a TokenInstance, for querying or actioning one or more instances of a token.","minLength":1,"properties":{"additionalKey":{},"category":{},"collection":{"minLength":1,"type":"string"},"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"instance":{"description":"Number provided as a string.","type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"type":{},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["collection"],"type":"object"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"},"uses":{"description":"How many times each allowance can be used. Number provided as a string.","type":"string"}},"required":["tokenInstance","quantities","allowanceType","uses"],"type":"object"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"properties":{"Data":{"items":{"properties":{"additionalKey":{"not":{"type":"null"}},"allowanceType":{"description":"0 - Use, 1 - Lock, 2 - Spend, 3 - Transfer, 4 - Mint, 5 - Swap, 6 - Burn","enum":[0,1,2,3,4,5,6],"type":"number"},"category":{"minLength":1,"type":"string"},"collection":{"minLength":1,"type":"string"},"created":{"description":"Unix epoch timestamp in milliseconds (ms) when this allowance was created.","exclusiveMinimum":0,"type":"number"},"expires":{"description":"Unix epoch timestamp in milliseconds (ms) when this allowance expires. 0 means it never expires.","minimum":0,"type":"number"},"grantedBy":{"description":"Allowed value is string following the format of 'client|\u003cuser-id\u003e', or 'eth|\u003cchecksumed-eth-addr\u003e', or valid system-level username.","type":"string"},"grantedTo":{"description":"Allowed value is string following the format of 'client|\u003cuser-id\u003e', or 'eth|\u003cchecksumed-eth-addr\u003e', or valid system-level username.","type":"string"},"instance":{"description":"Number provided as a string.","minLength":1,"type":"string"},"quantity":{"description":"Number provided as a string.","minLength":1,"type":"string"},"quantitySpent":{"description":"Number provided as a string.","type":"string"},"type":{"minLength":1,"type":"string"},"uses":{"description":"Number provided as a string.","minLength":1,"type":"string"},"usesSpent":{"description":"Number provided as a string.","type":"string"}},"required":["grantedTo","collection","category","type","additionalKey","instance","allowanceType","grantedBy","created","uses","expires","quantity"],"type":"object"},"type":"array"},"Message":{"type":"string"},"Status":{"description":"Indicates Error (0) or Success (1)","enum":[0,1]}},"required":["Status"],"type":"object"}}},"description":"","headers":{"x-transaction-id":{"description":"Transaction ID of submitted transaction on the chain"}}}},"tags":["Methods"]}},"/api/asset/token-contract/GrantNftCollectionAuthorization":{"post":{"description":" Transaction updates the chain (submit). Allowed roles: SUBMIT.","operationId":"asset_token-contract_GrantNftCollectionAuthorization","parameters":[],"requestBody":{"content":{"application/json":{"schema":{"description":"DTO for granting authorization to a user to create NFT collections for a specific collection name.","properties":{"authorizedUser":{"description":"User alias or secp256k1 public key of the user to authorize for creating NFT collections.","minLength":1,"type":"string"},"collection":{"description":"The collection name for which authorization is being granted.","minLength":1,"type":"string"},"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["collection","authorizedUser"],"type":"object"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"properties":{"Data":{"properties":{"authorizedUsers":{"items":{"description":"Allowed value is string following the format of 'client|\u003cuser-id\u003e', or 'eth|\u003cchecksumed-eth-addr\u003e', or valid system-level username.","type":"string"},"minItems":0,"type":"array"},"collection":{"minLength":1,"type":"string"}},"required":["collection","authorizedUsers"],"type":"object"},"Message":{"type":"string"},"Status":{"description":"Indicates Error (0) or Success (1)","enum":[0,1]}},"required":["Status"],"type":"object"}}},"description":"","headers":{"x-transaction-id":{"description":"Transaction ID of submitted transaction on the chain"}}}},"tags":["Methods"]}},"/api/asset/token-contract/LockTokens":{"post":{"description":" Transaction updates the chain (submit). Allowed roles: SUBMIT.","operationId":"asset_token-contract_LockTokens","parameters":[],"requestBody":{"content":{"application/json":{"schema":{"description":"Describes an action to lock multiple tokens.","properties":{"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"expires":{"description":"Unix epoch timestamp in milliseconds (ms) when token holds created by this lock expire. 0 means no expiration. The optional name applies to all holds from this lock.","minimum":0,"type":"number"},"lockAuthority":{"description":"User who will be able to unlock token. If the value is missing, then token owner and lock creator can unlock in all cases token authority can unlock token.","type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"name":{"description":"Name for the token holds (optional). This name will be applied to all token holds created by this Lock.","type":"string"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"tokenInstances":{"description":"Array of token instances of token to be locked. In case of fungible tokens, tokenInstance.instance field should be set to 0.","items":{"properties":{"owner":{"description":"The current owner of tokens. If the value is missing, chaincode caller is used.","type":"string"},"quantity":{"description":"Number provided as a string.","type":"string"},"tokenInstanceKey":{"description":"Object representing the chain identifier of token instance.","minLength":1,"properties":{"additionalKey":{"not":{"type":"null"}},"category":{"minLength":1,"type":"string"},"collection":{"minLength":1,"type":"string"},"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"instance":{"description":"Number provided as a string.","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"type":{"minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["collection","category","type","additionalKey","instance"],"type":"object"}},"required":["tokenInstanceKey","quantity"],"type":"object"},"minItems":1,"type":"array"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["tokenInstances"],"type":"object"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"properties":{"Data":{"items":{"properties":{"additionalKey":{"not":{"type":"null"}},"category":{"minLength":1,"type":"string"},"collection":{"minLength":1,"type":"string"},"instanceIds":{},"lockedHolds":{"items":{"properties":{"created":{"description":"Unix epoch timestamp in milliseconds (ms) when the hold was created (typically the transaction time).","exclusiveMinimum":0,"type":"number"},"createdBy":{"description":"Allowed value is string following the format of 'client|\u003cuser-id\u003e', or 'eth|\u003cchecksumed-eth-addr\u003e', or valid system-level username.","type":"string"},"expires":{"description":"Unix epoch timestamp in milliseconds (ms) when the hold expires. 0 means no expiration.","minimum":0,"type":"number"},"instanceId":{"description":"Number provided as a string.","minLength":1,"type":"string"},"lockAuthority":{"description":"User who will be able to unlock token. If the value is missing, then token owner and lock creator can unlock in all cases token authority can unlock token.","type":"string"},"name":{"type":"string"},"quantity":{"description":"Number provided as a string.","type":"string"},"vestingPeriodStart":{"description":"Unix epoch timestamp in milliseconds (ms) for vestingPeriodStart on vesting holds; undefined for non-vesting holds.","minimum":0,"type":"number"}},"required":["createdBy","instanceId","quantity","created","expires"],"type":"object"},"type":"array"},"owner":{"description":"Allowed value is string following the format of 'client|\u003cuser-id\u003e', or 'eth|\u003cchecksumed-eth-addr\u003e', or valid system-level username.","type":"string"},"quantity":{"description":"Number provided as a string.","type":"string"},"type":{"minLength":1,"type":"string"},"vestingPeriodStart":{"description":"Unix epoch timestamp in milliseconds (ms) for vestingPeriodStart. For vesting locks, this is the beginning of the vesting period.","minimum":0,"type":"number"}},"required":["owner","collection","category","type","additionalKey","quantity"],"type":"object"},"type":"array"},"Message":{"type":"string"},"Status":{"description":"Indicates Error (0) or Success (1)","enum":[0,1]}},"required":["Status"],"type":"object"}}},"description":"","headers":{"x-transaction-id":{"description":"Transaction ID of submitted transaction on the chain"}}}},"tags":["Methods"]}},"/api/asset/token-contract/MintToken":{"post":{"description":" Transaction updates the chain (submit). Allowed roles: SUBMIT.","operationId":"asset_token-contract_MintToken","parameters":[],"requestBody":{"content":{"application/json":{"schema":{"description":"Describes an action to mint a token. For NFTs you can mint up to 1000 tokens.","properties":{"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"owner":{"description":"The owner of minted tokens. If the value is missing, chaincode caller is used.","type":"string"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"quantity":{"description":"How many units of Fungible/NonFungible Token will be minted. Number provided as a string.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"tokenClass":{"description":"Token class of token to be minted. Object representing the chain identifier of token class.","minLength":1,"properties":{"additionalKey":{"not":{"type":"null"}},"category":{"minLength":1,"type":"string"},"collection":{"minLength":1,"type":"string"},"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"type":{"minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["collection","category","type","additionalKey"],"type":"object"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["tokenClass","quantity"],"type":"object"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"properties":{"Data":{"items":{"description":"Object representing the chain identifier of token instance.","properties":{"additionalKey":{"not":{"type":"null"}},"category":{"minLength":1,"type":"string"},"collection":{"minLength":1,"type":"string"},"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"instance":{"description":"Number provided as a string.","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"type":{"minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["collection","category","type","additionalKey","instance"],"type":"object"},"type":"array"},"Message":{"type":"string"},"Status":{"description":"Indicates Error (0) or Success (1)","enum":[0,1]}},"required":["Status"],"type":"object"}}},"description":"","headers":{"x-transaction-id":{"description":"Transaction ID of submitted transaction on the chain"}}}},"tags":["Methods"]}},"/api/asset/token-contract/MintTokenWithAllowance":{"post":{"description":" Transaction updates the chain (submit). Allowed roles: SUBMIT.","operationId":"asset_token-contract_MintTokenWithAllowance","parameters":[],"requestBody":{"content":{"application/json":{"schema":{"description":"Describes an action to grant allowance to self and mint token to owner in single transaction. This action will fail is the calling user lacks the authority to grant MINT allowances.","properties":{"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"owner":{"description":"The owner of minted tokens. If the value is missing, chaincode caller is used.","type":"string"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"quantity":{"description":"How many units of Fungible/NonFungible Token will be minted. Number provided as a string.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"tokenClass":{"description":"Token class of token to be minted. Object representing the chain identifier of token class.","minLength":1,"properties":{"additionalKey":{"not":{"type":"null"}},"category":{"minLength":1,"type":"string"},"collection":{"minLength":1,"type":"string"},"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"type":{"minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["collection","category","type","additionalKey"],"type":"object"},"tokenInstance":{"description":"Instance of token to be minted Number provided as a string.","minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["tokenClass","tokenInstance","quantity"],"type":"object"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"properties":{"Data":{"items":{"description":"Object representing the chain identifier of token instance.","properties":{"additionalKey":{"not":{"type":"null"}},"category":{"minLength":1,"type":"string"},"collection":{"minLength":1,"type":"string"},"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"instance":{"description":"Number provided as a string.","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"type":{"minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["collection","category","type","additionalKey","instance"],"type":"object"},"type":"array"},"Message":{"type":"string"},"Status":{"description":"Indicates Error (0) or Success (1)","enum":[0,1]}},"required":["Status"],"type":"object"}}},"description":"","headers":{"x-transaction-id":{"description":"Transaction ID of submitted transaction on the chain"}}}},"tags":["Methods"]}},"/api/asset/token-contract/RefreshAllowances":{"post":{"description":" Transaction updates the chain (submit). Allowed roles: SUBMIT.","operationId":"asset_token-contract_RefreshAllowances","parameters":[],"requestBody":{"content":{"application/json":{"schema":{"description":"Refresh the uses or expiration date of an existing allowance. If quantity needs updating, grant a new allowance instead.","properties":{"allowances":{"items":{"description":"Refresh the uses or expiration date of an existing allowance. If quantity needs updating, grant a new allowance instead.","properties":{"allowanceKey":{"minLength":1,"type":"string"},"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"expires":{"description":"Unix epoch timestamp in milliseconds (ms) when the allowance expires. 0 means it never expires.","minimum":0,"type":"number"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"},"uses":{"description":"Number provided as a string.","type":"string"}},"required":["allowanceKey","uses","expires"],"type":"object"},"minItems":1,"type":"array"},"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["allowances"],"type":"object"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"properties":{"Data":{"items":{"properties":{"additionalKey":{"not":{"type":"null"}},"allowanceType":{"description":"0 - Use, 1 - Lock, 2 - Spend, 3 - Transfer, 4 - Mint, 5 - Swap, 6 - Burn","enum":[0,1,2,3,4,5,6],"type":"number"},"category":{"minLength":1,"type":"string"},"collection":{"minLength":1,"type":"string"},"created":{"description":"Unix epoch timestamp in milliseconds (ms) when this allowance was created.","exclusiveMinimum":0,"type":"number"},"expires":{"description":"Unix epoch timestamp in milliseconds (ms) when this allowance expires. 0 means it never expires.","minimum":0,"type":"number"},"grantedBy":{"description":"Allowed value is string following the format of 'client|\u003cuser-id\u003e', or 'eth|\u003cchecksumed-eth-addr\u003e', or valid system-level username.","type":"string"},"grantedTo":{"description":"Allowed value is string following the format of 'client|\u003cuser-id\u003e', or 'eth|\u003cchecksumed-eth-addr\u003e', or valid system-level username.","type":"string"},"instance":{"description":"Number provided as a string.","minLength":1,"type":"string"},"quantity":{"description":"Number provided as a string.","minLength":1,"type":"string"},"quantitySpent":{"description":"Number provided as a string.","type":"string"},"type":{"minLength":1,"type":"string"},"uses":{"description":"Number provided as a string.","minLength":1,"type":"string"},"usesSpent":{"description":"Number provided as a string.","type":"string"}},"required":["grantedTo","collection","category","type","additionalKey","instance","allowanceType","grantedBy","created","uses","expires","quantity"],"type":"object"},"type":"array"},"Message":{"type":"string"},"Status":{"description":"Indicates Error (0) or Success (1)","enum":[0,1]}},"required":["Status"],"type":"object"}}},"description":"","headers":{"x-transaction-id":{"description":"Transaction ID of submitted transaction on the chain"}}}},"tags":["Methods"]}},"/api/asset/token-contract/RequestTokenBridgeOut":{"post":{"description":" Transaction updates the chain (submit). Allowed roles: SUBMIT. Allowed orgs: CuratorOrg, GalaUsersOrg, UsersOrg1.","operationId":"asset_token-contract_RequestTokenBridgeOut","parameters":[],"requestBody":{"content":{"application/json":{"schema":{"description":"Contains properties of bridge request, i.e. a request to bridge token out from GalaChain.","properties":{"destinationChainId":{"description":"The type of the bridge.","enum":[1,10,1001,1002,11,12,13,14,15,16,17,18,19,2,20,21,22,23,24,25,26,27,3,4,5,6,7,8,9],"minLength":1,"type":"number"},"destinationChainTxFee":{"description":"(Experimetnal) Serialzed OracleBridgeFeeAssertionDto signed by a valid Oracle Authority. To cover the gas fee on the other side Response with signed bridging fee data.","properties":{"bridgeToken":{"description":"The token requested to bridge. Token Class used to query the estimated transaction fee units. Object representing the chain identifier of token class.","properties":{"additionalKey":{"not":{"type":"null"}},"category":{"minLength":1,"type":"string"},"collection":{"minLength":1,"type":"string"},"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"type":{"minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["collection","category","type","additionalKey"],"type":"object"},"bridgeTokenIsNonFungible":{"description":"Set to true if the query to the bridge validator for the bridge-request token included ?nft=true. Otherwise false.","type":"boolean"},"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"estimatedPricePerTxFeeUnit":{"description":"Estimated price per unit of gas, as retrieved approximately at the time of assertion. Number provided as a string.","type":"string"},"estimatedTotalTxFeeInExternalToken":{"description":"The sum total of the estimated transaction fee denominated in the destinaton chain's native currency, token, or unit. The denomination used is identified in the `externalToken` property. The unit, currency, and/or token used to denominate the `estimatedTotalTxFeeInExternalToken` property is specified in the galaExchangeRate.externalQuoteToken property. This total is calculated by multiplying the `estimatedTxFeeUnitsTotal` times the `estimatedPricePerTxFeeUnit`, and then, if necessary, converting the result to the `galaExchangeRate.externalQuoteToken unit denomination.` Number provided as a string.","type":"string"},"estimatedTotalTxFeeInGala":{"description":"Conversion of the estimated transaction fee calculated for the destination chain, converted to $GALA, for payment on GalaChain Number provided as a string.","type":"string"},"estimatedTxFeeUnitsTotal":{"description":"Estimated number of gas units required for the transaction. Number provided as a string.","type":"string"},"galaDecimals":{"description":"Rounding decimals used for estimatedTotalTxFeeInGala. Expected to match $GALA TokenClass.decimals.","maximum":32,"minimum":0,"type":"number"},"galaExchangeCrossRate":{"description":"Cross-Rate Exchange Rate used to calculate Gas Fee Cross Rate Exchange price assertion. E.g. compare $GALA to $ETH via price in $USD for each.","properties":{"baseTokenCrossRate":{"description":"Cross rate for First currency in the described currency pair. Unit of exchange. Price data for exchanging two tokens/currenices signed by an Authoritative Oracle","properties":{"baseToken":{"description":"First currency in the described currency pair. Unit of exchange. Optional, but required if externalBaseToken is not provided. Object representing the chain identifier of token instance.","properties":{"additionalKey":{"not":{"type":"null"}},"category":{"minLength":1,"type":"string"},"collection":{"minLength":1,"type":"string"},"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"instance":{"description":"Number provided as a string.","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"type":{"minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["collection","category","type","additionalKey","instance"],"type":"object"},"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"exchangeRate":{"description":"How much of the quoteToken is needed to purchase one unit of the baseToken. Number provided as a string.","type":"string"},"externalBaseToken":{"description":"External token representing the first currency in the described currency pair. Unit of exchange. Optional, but required if baseToken is not provided. External token/currency definition. Use to specify an external currency that does not have a TokenClass defined on GalaChain.","properties":{"name":{"description":"Name of the external currency, e.g. \"Ethereum\"","minLength":1,"type":"string"}},"required":["name"],"type":"object"},"externalQuoteToken":{"description":"Second token/currency in the pair. Token/Currency in which the baseToken is quoted. Optional, but required if quoteToken is not provided. External token/currency definition. Use to specify an external currency that does not have a TokenClass defined on GalaChain.","properties":{"name":{"description":"Name of the external currency, e.g. \"Ethereum\"","minLength":1,"type":"string"}},"required":["name"],"type":"object"},"identity":{"description":"Signing identity making the assertion contained within the DTO.","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"oracle":{"description":"Name of the oracle defined on chain.","minLength":1,"type":"string"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"quoteToken":{"description":"Second token/currency in the pair. Token/Currency in which the baseToken is quoted. Optional, but required if externalQuoteToken is not provided. Object representing the chain identifier of token instance.","properties":{"additionalKey":{"not":{"type":"null"}},"category":{"minLength":1,"type":"string"},"collection":{"minLength":1,"type":"string"},"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"instance":{"description":"Number provided as a string.","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"type":{"minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["collection","category","type","additionalKey","instance"],"type":"object"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"source":{"description":"(Optional) Source of price data. Name of Third Party data source.","minLength":1,"type":"string"},"sourceUrl":{"description":"(Optional) URL referencing source data.","minLength":1,"type":"string"},"timestamp":{"description":"Unix epoch timestamp in milliseconds (ms) for the date/time at which this price / exchange rate was calculated or estimated.","type":"number"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["oracle","identity","exchangeRate","timestamp"],"type":"object"},"crossRate":{"description":"Cross rate for baseToken and quoteToken, calculated from the crossRateToken exchange rates. Number provided as a string.","type":"string"},"crossRateToken":{"description":"Comparative token used to price both the base and quote tokens in order to calculate an exchange cross-rate. Optional, but required if externalCrossRateToken is not provided. Object representing the chain identifier of token instance.","properties":{"additionalKey":{"not":{"type":"null"}},"category":{"minLength":1,"type":"string"},"collection":{"minLength":1,"type":"string"},"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"instance":{"description":"Number provided as a string.","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"type":{"minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["collection","category","type","additionalKey","instance"],"type":"object"},"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"externalCrossRateToken":{"description":"Comparative token used to price both the base and quote tokens in order to calculate an exchange cross-rate. Optional, but required if crossRateToken is not provided. External token/currency definition. Use to specify an external currency that does not have a TokenClass defined on GalaChain.","properties":{"name":{"description":"Name of the external currency, e.g. \"Ethereum\"","minLength":1,"type":"string"}},"required":["name"],"type":"object"},"identity":{"description":"Signing identity making the assertion contained within the DTO.","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"oracle":{"description":"Name of the oracle defined on chain.","minLength":1,"type":"string"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"quoteTokenCrossRate":{"description":"Cross rate for Second token/currency in the pair. Token/Currency in which the baseToken is quoted. Price data for exchanging two tokens/currenices signed by an Authoritative Oracle","properties":{"baseToken":{"description":"First currency in the described currency pair. Unit of exchange. Optional, but required if externalBaseToken is not provided. Object representing the chain identifier of token instance.","properties":{"additionalKey":{"not":{"type":"null"}},"category":{"minLength":1,"type":"string"},"collection":{"minLength":1,"type":"string"},"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"instance":{"description":"Number provided as a string.","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"type":{"minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["collection","category","type","additionalKey","instance"],"type":"object"},"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"exchangeRate":{"description":"How much of the quoteToken is needed to purchase one unit of the baseToken. Number provided as a string.","type":"string"},"externalBaseToken":{"description":"External token representing the first currency in the described currency pair. Unit of exchange. Optional, but required if baseToken is not provided. External token/currency definition. Use to specify an external currency that does not have a TokenClass defined on GalaChain.","properties":{"name":{"description":"Name of the external currency, e.g. \"Ethereum\"","minLength":1,"type":"string"}},"required":["name"],"type":"object"},"externalQuoteToken":{"description":"Second token/currency in the pair. Token/Currency in which the baseToken is quoted. Optional, but required if quoteToken is not provided. External token/currency definition. Use to specify an external currency that does not have a TokenClass defined on GalaChain.","properties":{"name":{"description":"Name of the external currency, e.g. \"Ethereum\"","minLength":1,"type":"string"}},"required":["name"],"type":"object"},"identity":{"description":"Signing identity making the assertion contained within the DTO.","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"oracle":{"description":"Name of the oracle defined on chain.","minLength":1,"type":"string"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"quoteToken":{"description":"Second token/currency in the pair. Token/Currency in which the baseToken is quoted. Optional, but required if externalQuoteToken is not provided. Object representing the chain identifier of token instance.","properties":{"additionalKey":{"not":{"type":"null"}},"category":{"minLength":1,"type":"string"},"collection":{"minLength":1,"type":"string"},"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"instance":{"description":"Number provided as a string.","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"type":{"minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["collection","category","type","additionalKey","instance"],"type":"object"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"source":{"description":"(Optional) Source of price data. Name of Third Party data source.","minLength":1,"type":"string"},"sourceUrl":{"description":"(Optional) URL referencing source data.","minLength":1,"type":"string"},"timestamp":{"description":"Unix epoch timestamp in milliseconds (ms) for the date/time at which this price / exchange rate was calculated or estimated.","type":"number"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["oracle","identity","exchangeRate","timestamp"],"type":"object"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["oracle","identity","baseTokenCrossRate","quoteTokenCrossRate","crossRate"],"type":"object"},"galaExchangeRate":{"description":"Exchange Rate Price Assertion used to calculate Gas Fee Price data for exchanging two tokens/currenices signed by an Authoritative Oracle","properties":{"baseToken":{"description":"First currency in the described currency pair. Unit of exchange. Optional, but required if externalBaseToken is not provided. Object representing the chain identifier of token instance.","properties":{"additionalKey":{"not":{"type":"null"}},"category":{"minLength":1,"type":"string"},"collection":{"minLength":1,"type":"string"},"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"instance":{"description":"Number provided as a string.","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"type":{"minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["collection","category","type","additionalKey","instance"],"type":"object"},"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"exchangeRate":{"description":"How much of the quoteToken is needed to purchase one unit of the baseToken. Number provided as a string.","type":"string"},"externalBaseToken":{"description":"External token representing the first currency in the described currency pair. Unit of exchange. Optional, but required if baseToken is not provided. External token/currency definition. Use to specify an external currency that does not have a TokenClass defined on GalaChain.","properties":{"name":{"description":"Name of the external currency, e.g. \"Ethereum\"","minLength":1,"type":"string"}},"required":["name"],"type":"object"},"externalQuoteToken":{"description":"Second token/currency in the pair. Token/Currency in which the baseToken is quoted. Optional, but required if quoteToken is not provided. External token/currency definition. Use to specify an external currency that does not have a TokenClass defined on GalaChain.","properties":{"name":{"description":"Name of the external currency, e.g. \"Ethereum\"","minLength":1,"type":"string"}},"required":["name"],"type":"object"},"identity":{"description":"Signing identity making the assertion contained within the DTO.","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"oracle":{"description":"Name of the oracle defined on chain.","minLength":1,"type":"string"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"quoteToken":{"description":"Second token/currency in the pair. Token/Currency in which the baseToken is quoted. Optional, but required if externalQuoteToken is not provided. Object representing the chain identifier of token instance.","properties":{"additionalKey":{"not":{"type":"null"}},"category":{"minLength":1,"type":"string"},"collection":{"minLength":1,"type":"string"},"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"instance":{"description":"Number provided as a string.","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"type":{"minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["collection","category","type","additionalKey","instance"],"type":"object"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"source":{"description":"(Optional) Source of price data. Name of Third Party data source.","minLength":1,"type":"string"},"sourceUrl":{"description":"(Optional) URL referencing source data.","minLength":1,"type":"string"},"timestamp":{"description":"Unix epoch timestamp in milliseconds (ms) for the date/time at which this price / exchange rate was calculated or estimated.","type":"number"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["oracle","identity","exchangeRate","timestamp"],"type":"object"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"signingIdentity":{"description":"Oracle identity / alias. Used with signature and GalaChain SDK authorize() function for verification/validation.","minLength":1,"type":"string"},"timestamp":{"description":"Unix epoch timestamp in milliseconds (ms) for the date/time at which this assertion was calculated and/or estimated.","type":"number"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["galaDecimals","bridgeToken","bridgeTokenIsNonFungible","estimatedTxFeeUnitsTotal","estimatedPricePerTxFeeUnit","estimatedTotalTxFeeInExternalToken","estimatedTotalTxFeeInGala","timestamp","signingIdentity"],"type":"object"},"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"quantity":{"description":"The quantity of token units to be bridged out. Number provided as a string.","minLength":1,"type":"string"},"recipient":{"description":"Recipient address for destination chain","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"tokenInstance":{"description":"Token instance of token to be bridged out. In case of fungible tokens, tokenInstance.instance field should be set to 0. Object representing the chain identifier of token instance.","minLength":1,"properties":{"additionalKey":{"not":{"type":"null"}},"category":{"minLength":1,"type":"string"},"collection":{"minLength":1,"type":"string"},"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"instance":{"description":"Number provided as a string.","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"type":{"minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["collection","category","type","additionalKey","instance"],"type":"object"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["destinationChainId","tokenInstance","quantity","recipient"],"type":"object"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"properties":{"Data":{"type":"string"},"Message":{"type":"string"},"Status":{"description":"Indicates Error (0) or Success (1)","enum":[0,1]}},"required":["Status"],"type":"object"}}},"description":"","headers":{"x-transaction-id":{"description":"Transaction ID of submitted transaction on the chain"}}}},"tags":["Methods"]}},"/api/asset/token-contract/RequestTokenSwap":{"post":{"description":" Transaction updates the chain (submit). Allowed roles: SUBMIT.","operationId":"asset_token-contract_RequestTokenSwap","parameters":[],"requestBody":{"content":{"application/json":{"schema":{"description":"Defines a swap request to be created, i.e. a request when a requester offers some tokens to another user in exchange of another tokens.","properties":{"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"expires":{"description":"Unix epoch timestamp in milliseconds (ms) when the swap request should expire. 0 means it never expires. By default set to 0.","minimum":0,"type":"number"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"offered":{"description":"A list of offered token instances.","items":{"properties":{"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"quantity":{"description":"Number provided as a string.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"tokenInstance":{"description":"Object representing the chain identifier of token instance.","minLength":1,"properties":{"additionalKey":{"not":{"type":"null"}},"category":{"minLength":1,"type":"string"},"collection":{"minLength":1,"type":"string"},"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"instance":{"description":"Number provided as a string.","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"type":{"minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["collection","category","type","additionalKey","instance"],"type":"object"},"tokenMetadata":{"description":"The TokenClass metadata corresponding to the TokenBalance on this DTO.","type":"object"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["tokenInstance","quantity"],"type":"object"},"minItems":1,"type":"array","uniqueItems":true},"offeredBy":{"description":"User who requests the swap, typically an owner of tokens. Optional field, by default set to chaincode calling user.","type":"string"},"offeredTo":{"description":"User who probably has tokens the requester wants.","minLength":1,"type":"string"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"},"uses":{"description":"How many times swap can filled. Number provided as a string.","type":"string"},"wanted":{"description":"A list of wanted token instances.","items":{"properties":{"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"quantity":{"description":"Number provided as a string.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"tokenInstance":{"description":"Object representing the chain identifier of token instance.","minLength":1,"properties":{"additionalKey":{"not":{"type":"null"}},"category":{"minLength":1,"type":"string"},"collection":{"minLength":1,"type":"string"},"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"instance":{"description":"Number provided as a string.","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"type":{"minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["collection","category","type","additionalKey","instance"],"type":"object"},"tokenMetadata":{"description":"The TokenClass metadata corresponding to the TokenBalance on this DTO.","type":"object"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["tokenInstance","quantity"],"type":"object"},"minItems":1,"type":"array","uniqueItems":true}},"required":["offered","wanted","uses"],"type":"object"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"properties":{"Data":{"properties":{"created":{"description":"Unix epoch timestamp in milliseconds (ms) when this swap request was created.","type":"number"},"expires":{"description":"Unix epoch timestamp in milliseconds (ms) when this swap request expires. 0 means it never expires.","minimum":0,"type":"number"},"fillIds":{"minLength":1,"type":"string"},"offered":{"items":{"properties":{"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"quantity":{"description":"Number provided as a string.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"tokenInstance":{"description":"Object representing the chain identifier of token instance.","minLength":1,"properties":{"additionalKey":{"not":{"type":"null"}},"category":{"minLength":1,"type":"string"},"collection":{"minLength":1,"type":"string"},"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"instance":{"description":"Number provided as a string.","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"type":{"minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["collection","category","type","additionalKey","instance"],"type":"object"},"tokenMetadata":{"description":"The TokenClass metadata corresponding to the TokenBalance on this DTO.","type":"object"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["tokenInstance","quantity"],"type":"object"},"minItems":1,"type":"array"},"offeredBy":{"description":"Allowed value is string following the format of 'client|\u003cuser-id\u003e', or 'eth|\u003cchecksumed-eth-addr\u003e', or valid system-level username.","type":"string"},"offeredTo":{"description":"Allowed value is string following the format of 'client|\u003cuser-id\u003e', or 'eth|\u003cchecksumed-eth-addr\u003e', or valid system-level username.","type":"string"},"swapRequestId":{"minLength":1,"type":"string"},"txid":{"minLength":1,"type":"string"},"uses":{"description":"Number provided as a string.","type":"string"},"usesSpent":{"description":"Number provided as a string.","type":"string"},"wanted":{"items":{"properties":{"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"quantity":{"description":"Number provided as a string.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"tokenInstance":{"description":"Object representing the chain identifier of token instance.","minLength":1,"properties":{"additionalKey":{"not":{"type":"null"}},"category":{"minLength":1,"type":"string"},"collection":{"minLength":1,"type":"string"},"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"instance":{"description":"Number provided as a string.","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"type":{"minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["collection","category","type","additionalKey","instance"],"type":"object"},"tokenMetadata":{"description":"The TokenClass metadata corresponding to the TokenBalance on this DTO.","type":"object"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["tokenInstance","quantity"],"type":"object"},"minItems":1,"type":"array"}},"required":["created","txid","swapRequestId","offered","wanted","offeredBy","fillIds","uses","usesSpent","expires"],"type":"object"},"Message":{"type":"string"},"Status":{"description":"Indicates Error (0) or Success (1)","enum":[0,1]}},"required":["Status"],"type":"object"}}},"description":"","headers":{"x-transaction-id":{"description":"Transaction ID of submitted transaction on the chain"}}}},"tags":["Methods"]}},"/api/asset/token-contract/RevokeNftCollectionAuthorization":{"post":{"description":" Transaction updates the chain (submit). Allowed roles: SUBMIT. Allowed orgs: CuratorOrg.","operationId":"asset_token-contract_RevokeNftCollectionAuthorization","parameters":[],"requestBody":{"content":{"application/json":{"schema":{"description":"DTO for revoking authorization from a user to create NFT collections for a specific collection name.","properties":{"authorizedUser":{"description":"User alias or secp256k1 public key of the user to revoke authorization from.","minLength":1,"type":"string"},"collection":{"description":"The collection name for which authorization is being revoked.","minLength":1,"type":"string"},"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["collection","authorizedUser"],"type":"object"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"properties":{"Data":{"properties":{"authorizedUsers":{"items":{"description":"Allowed value is string following the format of 'client|\u003cuser-id\u003e', or 'eth|\u003cchecksumed-eth-addr\u003e', or valid system-level username.","type":"string"},"minItems":0,"type":"array"},"collection":{"minLength":1,"type":"string"}},"required":["collection","authorizedUsers"],"type":"object"},"Message":{"type":"string"},"Status":{"description":"Indicates Error (0) or Success (1)","enum":[0,1]}},"required":["Status"],"type":"object"}}},"description":"","headers":{"x-transaction-id":{"description":"Transaction ID of submitted transaction on the chain"}}}},"tags":["Methods"]}},"/api/asset/token-contract/TerminateTokenSwap":{"post":{"description":" Transaction updates the chain (submit). Allowed roles: SUBMIT.","operationId":"asset_token-contract_TerminateTokenSwap","parameters":[],"requestBody":{"content":{"application/json":{"schema":{"properties":{"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"swapRequestId":{"description":"Swap request ID to be terminated.","minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["swapRequestId"],"type":"object"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"properties":{"Data":{"properties":{"created":{"description":"Unix epoch timestamp in milliseconds (ms) when this swap request was created.","type":"number"},"expires":{"description":"Unix epoch timestamp in milliseconds (ms) when this swap request expires. 0 means it never expires.","minimum":0,"type":"number"},"fillIds":{"minLength":1,"type":"string"},"offered":{"items":{"properties":{"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"quantity":{"description":"Number provided as a string.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"tokenInstance":{"description":"Object representing the chain identifier of token instance.","minLength":1,"properties":{"additionalKey":{"not":{"type":"null"}},"category":{"minLength":1,"type":"string"},"collection":{"minLength":1,"type":"string"},"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"instance":{"description":"Number provided as a string.","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"type":{"minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["collection","category","type","additionalKey","instance"],"type":"object"},"tokenMetadata":{"description":"The TokenClass metadata corresponding to the TokenBalance on this DTO.","type":"object"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["tokenInstance","quantity"],"type":"object"},"minItems":1,"type":"array"},"offeredBy":{"description":"Allowed value is string following the format of 'client|\u003cuser-id\u003e', or 'eth|\u003cchecksumed-eth-addr\u003e', or valid system-level username.","type":"string"},"offeredTo":{"description":"Allowed value is string following the format of 'client|\u003cuser-id\u003e', or 'eth|\u003cchecksumed-eth-addr\u003e', or valid system-level username.","type":"string"},"swapRequestId":{"minLength":1,"type":"string"},"txid":{"minLength":1,"type":"string"},"uses":{"description":"Number provided as a string.","type":"string"},"usesSpent":{"description":"Number provided as a string.","type":"string"},"wanted":{"items":{"properties":{"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"quantity":{"description":"Number provided as a string.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"tokenInstance":{"description":"Object representing the chain identifier of token instance.","minLength":1,"properties":{"additionalKey":{"not":{"type":"null"}},"category":{"minLength":1,"type":"string"},"collection":{"minLength":1,"type":"string"},"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"instance":{"description":"Number provided as a string.","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"type":{"minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["collection","category","type","additionalKey","instance"],"type":"object"},"tokenMetadata":{"description":"The TokenClass metadata corresponding to the TokenBalance on this DTO.","type":"object"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["tokenInstance","quantity"],"type":"object"},"minItems":1,"type":"array"}},"required":["created","txid","swapRequestId","offered","wanted","offeredBy","fillIds","uses","usesSpent","expires"],"type":"object"},"Message":{"type":"string"},"Status":{"description":"Indicates Error (0) or Success (1)","enum":[0,1]}},"required":["Status"],"type":"object"}}},"description":"","headers":{"x-transaction-id":{"description":"Transaction ID of submitted transaction on the chain"}}}},"tags":["Methods"]}},"/api/asset/token-contract/TransferToken":{"post":{"description":" Transaction updates the chain (submit). Allowed roles: SUBMIT.","operationId":"asset_token-contract_TransferToken","parameters":[],"requestBody":{"content":{"application/json":{"schema":{"description":"Experimental: After submitting request to RequestMintAllowance, follow up with FulfillMintAllowance.","properties":{"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"from":{"description":"The current owner of tokens. If the value is missing, chaincode caller is used.","type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"quantity":{"description":"The quantity of token units to be transferred. Number provided as a string.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"to":{"description":"Allowed value is a user alias ('client|\u003cuser-id\u003e', or 'eth|\u003cchecksumed-eth-addr\u003e', or valid system-level username), or valid Ethereum address.","type":"string"},"tokenInstance":{"description":"Token instance of token to be transferred. In case of fungible tokens, tokenInstance.instance field should be set to 0. Object representing the chain identifier of token instance.","minLength":1,"properties":{"additionalKey":{"not":{"type":"null"}},"category":{"minLength":1,"type":"string"},"collection":{"minLength":1,"type":"string"},"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"instance":{"description":"Number provided as a string.","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"type":{"minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["collection","category","type","additionalKey","instance"],"type":"object"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["to","tokenInstance","quantity"],"type":"object"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"properties":{"Data":{"items":{"properties":{"additionalKey":{"not":{"type":"null"}},"category":{"minLength":1,"type":"string"},"collection":{"minLength":1,"type":"string"},"instanceIds":{},"lockedHolds":{"items":{"properties":{"created":{"description":"Unix epoch timestamp in milliseconds (ms) when the hold was created (typically the transaction time).","exclusiveMinimum":0,"type":"number"},"createdBy":{"description":"Allowed value is string following the format of 'client|\u003cuser-id\u003e', or 'eth|\u003cchecksumed-eth-addr\u003e', or valid system-level username.","type":"string"},"expires":{"description":"Unix epoch timestamp in milliseconds (ms) when the hold expires. 0 means no expiration.","minimum":0,"type":"number"},"instanceId":{"description":"Number provided as a string.","minLength":1,"type":"string"},"lockAuthority":{"description":"User who will be able to unlock token. If the value is missing, then token owner and lock creator can unlock in all cases token authority can unlock token.","type":"string"},"name":{"type":"string"},"quantity":{"description":"Number provided as a string.","type":"string"},"vestingPeriodStart":{"description":"Unix epoch timestamp in milliseconds (ms) for vestingPeriodStart on vesting holds; undefined for non-vesting holds.","minimum":0,"type":"number"}},"required":["createdBy","instanceId","quantity","created","expires"],"type":"object"},"type":"array"},"owner":{"description":"Allowed value is string following the format of 'client|\u003cuser-id\u003e', or 'eth|\u003cchecksumed-eth-addr\u003e', or valid system-level username.","type":"string"},"quantity":{"description":"Number provided as a string.","type":"string"},"type":{"minLength":1,"type":"string"},"vestingPeriodStart":{"description":"Unix epoch timestamp in milliseconds (ms) for vestingPeriodStart. For vesting locks, this is the beginning of the vesting period.","minimum":0,"type":"number"}},"required":["owner","collection","category","type","additionalKey","quantity"],"type":"object"},"type":"array"},"Message":{"type":"string"},"Status":{"description":"Indicates Error (0) or Success (1)","enum":[0,1]}},"required":["Status"],"type":"object"}}},"description":"","headers":{"x-transaction-id":{"description":"Transaction ID of submitted transaction on the chain"}}}},"tags":["Methods"]}},"/api/asset/token-contract/UnlockTokens":{"post":{"description":" Transaction updates the chain (submit). Allowed roles: SUBMIT.","operationId":"asset_token-contract_UnlockTokens","parameters":[],"requestBody":{"content":{"application/json":{"schema":{"description":"Describes an action to unlock multiple tokens.","properties":{"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"name":{"description":"Name for the token holds (optional). Only token holds with this name will be Unlocked if provided.","type":"string"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"tokenInstances":{"description":"Array of token instances of token to be locked. In case of fungible tokens, tokenInstance.instance field should be set to 0.","items":{"properties":{"owner":{"description":"The current owner of tokens. If the value is missing, chaincode caller is used.","type":"string"},"quantity":{"description":"Number provided as a string.","type":"string"},"tokenInstanceKey":{"description":"Object representing the chain identifier of token instance.","minLength":1,"properties":{"additionalKey":{"not":{"type":"null"}},"category":{"minLength":1,"type":"string"},"collection":{"minLength":1,"type":"string"},"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"instance":{"description":"Number provided as a string.","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"type":{"minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["collection","category","type","additionalKey","instance"],"type":"object"}},"required":["tokenInstanceKey","quantity"],"type":"object"},"minItems":1,"type":"array"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["tokenInstances"],"type":"object"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"properties":{"Data":{"items":{"properties":{"additionalKey":{"not":{"type":"null"}},"category":{"minLength":1,"type":"string"},"collection":{"minLength":1,"type":"string"},"instanceIds":{},"lockedHolds":{"items":{"properties":{"created":{"description":"Unix epoch timestamp in milliseconds (ms) when the hold was created (typically the transaction time).","exclusiveMinimum":0,"type":"number"},"createdBy":{"description":"Allowed value is string following the format of 'client|\u003cuser-id\u003e', or 'eth|\u003cchecksumed-eth-addr\u003e', or valid system-level username.","type":"string"},"expires":{"description":"Unix epoch timestamp in milliseconds (ms) when the hold expires. 0 means no expiration.","minimum":0,"type":"number"},"instanceId":{"description":"Number provided as a string.","minLength":1,"type":"string"},"lockAuthority":{"description":"User who will be able to unlock token. If the value is missing, then token owner and lock creator can unlock in all cases token authority can unlock token.","type":"string"},"name":{"type":"string"},"quantity":{"description":"Number provided as a string.","type":"string"},"vestingPeriodStart":{"description":"Unix epoch timestamp in milliseconds (ms) for vestingPeriodStart on vesting holds; undefined for non-vesting holds.","minimum":0,"type":"number"}},"required":["createdBy","instanceId","quantity","created","expires"],"type":"object"},"type":"array"},"owner":{"description":"Allowed value is string following the format of 'client|\u003cuser-id\u003e', or 'eth|\u003cchecksumed-eth-addr\u003e', or valid system-level username.","type":"string"},"quantity":{"description":"Number provided as a string.","type":"string"},"type":{"minLength":1,"type":"string"},"vestingPeriodStart":{"description":"Unix epoch timestamp in milliseconds (ms) for vestingPeriodStart. For vesting locks, this is the beginning of the vesting period.","minimum":0,"type":"number"}},"required":["owner","collection","category","type","additionalKey","quantity"],"type":"object"},"type":"array"},"Message":{"type":"string"},"Status":{"description":"Indicates Error (0) or Success (1)","enum":[0,1]}},"required":["Status"],"type":"object"}}},"description":"","headers":{"x-transaction-id":{"description":"Transaction ID of submitted transaction on the chain"}}}},"tags":["Methods"]}},"/api/asset/token-contract/UpdateTokenClass":{"post":{"description":" Transaction updates the chain (submit). Allowed roles: SUBMIT.","operationId":"asset_token-contract_UpdateTokenClass","parameters":[],"requestBody":{"content":{"application/json":{"schema":{"properties":{"authorities":{"description":"List of chain user identifiers who should become token authorities. Only token authorities can give mint allowances. By default the calling user becomes a single token authority. ","items":{"description":"Allowed value is a user alias ('client|\u003cuser-id\u003e', or 'eth|\u003cchecksumed-eth-addr\u003e', or valid system-level username), or valid Ethereum address.","type":"string"},"minItems":1,"type":"array"},"contractAddress":{"maxLength":500,"type":"string"},"description":{"maxLength":1000,"minLength":1,"type":"string"},"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"image":{"format":"url","type":"string"},"metadataAddress":{"maxLength":500,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"name":{"maxLength":200,"type":"string"},"overwriteAuthorities":{"description":"Overwrite existing authorities completely with new values. Default: false. The default behavior will augment the existing authorities with new values. Set this to true and provide a full list to remove one or more existing authorities."},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"rarity":{"description":"How rare is the NFT","pattern":"^[0-9a-zA-Z]+$","type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"symbol":{"maxLength":20,"pattern":"^[0-9a-zA-Z]+$","type":"string"},"tokenClass":{"description":"The unique identifier of the existing token which will be updated. Object representing the chain identifier of token class.","minLength":1,"properties":{"additionalKey":{"not":{"type":"null"}},"category":{"minLength":1,"type":"string"},"collection":{"minLength":1,"type":"string"},"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"type":{"minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["collection","category","type","additionalKey"],"type":"object"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["tokenClass"],"type":"object"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"properties":{"Data":{"description":"Object representing the chain identifier of token class.","properties":{"additionalKey":{"not":{"type":"null"}},"category":{"minLength":1,"type":"string"},"collection":{"minLength":1,"type":"string"},"dtoExpiresAt":{"description":"Unix epoch timestamp in milliseconds (ms) when the DTO expires. If this time is before the current time, the DTO is not valid.","type":"number"},"dtoOperation":{"description":"Full operation identifier that is called on chain with this DTO. The format is `channelId_chaincodeId_methodName`. It is required for multisig DTOs, and optional for single signed DTOs. ","minLength":1,"type":"string"},"multisig":{"description":"List of signatures for this DTO if there are multiple signers. If there are multiple signatures, 'signerAddress' is required, and it is not allowed to provide 'signature' or 'signerPublicKey' fields, and the signing scheme must be ETH.","items":{},"minItems":2,"type":"array"},"prefix":{"description":"Prefix for Metamask transaction signatures. Necessary to format payloads correctly to recover publicKey from web3 signatures.","minLength":1,"type":"string"},"signature":{"description":"Signature of the DTO signed with caller's private key to be verified with user's public key saved on chain. The 'signature' field is optional for DTO, but is required for a transaction to be executed on chain. \nPlease consult [GalaChain SDK documentation](https://github.com/GalaChain/sdk/blob/main/docs/authorization.md#signature-based-authorization) on how to create signatures.","minLength":1,"type":"string"},"signerAddress":{"description":"Address of the user who signed the DTO. Typically Ethereum address, or user alias.","minLength":1,"type":"string"},"signerPublicKey":{"description":"Public key of the user who signed the DTO.","minLength":1,"type":"string"},"type":{"minLength":1,"type":"string"},"uniqueKey":{"description":"Unique key of the DTO. It is used to prevent double execution of the same transaction on chain. The key is saved on chain and checked before execution. If a DTO with already saved key is used in transaction, the transaction will fail with UniqueTransactionConflict error, which is mapped to HTTP 409 Conflict error. In case of the error, no changes are saved to chain state.\nThe key is generated by the caller and should be unique for each DTO. You can use `nanoid` library, UUID scheme, or any tool to generate unique string keys.","minLength":1,"type":"string"}},"required":["collection","category","type","additionalKey"],"type":"object"},"Message":{"type":"string"},"Status":{"description":"Indicates Error (0) or Success (1)","enum":[0,1]}},"required":["Status"],"type":"object"}}},"description":"","headers":{"x-transaction-id":{"description":"Transaction ID of submitted transaction on the chain"}}}},"tags":["Methods"]}}}}