diff --git a/categories/smart_contracts/openapi.yml b/categories/smart_contracts/openapi.yml
index 6eccb72..a2413f7 100644
--- a/categories/smart_contracts/openapi.yml
+++ b/categories/smart_contracts/openapi.yml
@@ -101,6 +101,12 @@ tags:
servers:
- url: https://api.tatum.io
paths:
+ /v1/contract/deploy:
+ post:
+ $ref: categories/smart_contracts/paths/v1_contract_deploy_post.yml
+ /v1/contract/erc721/mint:
+ post:
+ $ref: categories/smart_contracts/paths/v1_contract_erc721_mint_post.yml
/v3/gas-pump:
post:
$ref: categories/smart_contracts/paths/v3_gas-pump_post.yml
diff --git a/categories/smart_contracts/paths/v1_contract_deploy_post.yml b/categories/smart_contracts/paths/v1_contract_deploy_post.yml
new file mode 100644
index 0000000..864f835
--- /dev/null
+++ b/categories/smart_contracts/paths/v1_contract_deploy_post.yml
@@ -0,0 +1,67 @@
+description: "This operation is used to create a new smart contract on the blockchain.\
+ \ The operation is asynchronous and returns a transaction hash. The transaction\
+ \ hash can be used to query the status of the transaction.
\nYou can create\
+ \ the following types of contracts:\n
\n - ERC-20 - Fungible token like USDT
\n\
+ \ - ERC-721 - NFT collection like BAYC
\n - ERC-1155 - MultiToken NFT\
+ \ collection
\n
\nYou can find more information about the contracts on our\
+ \ GitHub page with steps required for verification.
\nIf you deploy NFT collection\
+ \ contract (ERC-721), it is automatically enabled for NFT Express functionality.
\n"
+operationId: deployContract
+requestBody:
+ content:
+ application/json:
+ schema:
+ oneOf:
+ - $ref: '../../../components/migrated_v1.yml#/components/schemas/DeployErc20Contract'
+ - $ref: '../../../components/migrated_v1.yml#/components/schemas/DeployErc721Contract'
+ - $ref: '../../../components/migrated_v1.yml#/components/schemas/DeployErc1155Contract'
+ required: true
+responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '../../../components/migrated_v1.yml#/components/schemas/TransactionHash'
+ description: OK
+ '400':
+ content:
+ application/json:
+ schema:
+ $ref: '../../../components/migrated_v1.yml#/components/schemas/Error400'
+ description: Bad Request. Validation failed for the given object in the HTTP Body
+ or Request parameters.
+ '401':
+ content:
+ application/json:
+ schema:
+ oneOf:
+ - $ref: '../../../components/migrated_v1.yml#/components/schemas/Error401NotActive'
+ - $ref: '../../../components/migrated_v1.yml#/components/schemas/Error401Invalid'
+ description: Unauthorized. Not valid or inactive subscription key present in the
+ HTTP Header.
+ '403':
+ description: Forbidden. The request is authenticated, but it is not possible to
+ required perform operation due to logical error or invalid permissions.
+ content:
+ application/json:
+ schema:
+ oneOf:
+ - $ref: '../../../components/migrated_v1.yml#/components/schemas/Error403PlanNotSupported'
+ - $ref: '../../../components/migrated_v1.yml#/components/schemas/Error403ChainNotSupported'
+ - $ref: '../../../components/migrated_v1.yml#/components/schemas/Error403MainnetNotSupported'
+ - $ref: '../../../components/migrated_v1.yml#/components/schemas/Error403LimitExceeded'
+ '500':
+ content:
+ application/json:
+ schema:
+ $ref: '../../../components/migrated_v1.yml#/components/schemas/Error500'
+ description: Internal server error. There was an error on the server while processing
+ the request.
+security:
+- X-API-Key: []
+x-codeSamples: []
+summary: Deploy smart contract
+tags:
+- General
diff --git a/categories/smart_contracts/paths/v1_contract_erc721_mint_post.yml b/categories/smart_contracts/paths/v1_contract_erc721_mint_post.yml
new file mode 100644
index 0000000..8bd75d7
--- /dev/null
+++ b/categories/smart_contracts/paths/v1_contract_erc721_mint_post.yml
@@ -0,0 +1,63 @@
+description: 'This operation is used to mint NFT on existing NFT collection on the
+ blockchain. The operation is asynchronous and returns a transaction hash. The transaction
+ hash can be used to query the status of the transaction.
+
+ NFT will be minted as NFT Express. See more: NFT Express functionality.
+
+ '
+operationId: mintErc721
+requestBody:
+ content:
+ application/json:
+ schema:
+ oneOf:
+ - $ref: '../../../components/migrated_v1.yml#/components/schemas/EvmErc721Mint'
+ required: true
+responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '../../../components/migrated_v1.yml#/components/schemas/TransactionHash'
+ description: OK
+ '400':
+ content:
+ application/json:
+ schema:
+ $ref: '../../../components/migrated_v1.yml#/components/schemas/Error400'
+ description: Bad Request. Validation failed for the given object in the HTTP Body
+ or Request parameters.
+ '401':
+ content:
+ application/json:
+ schema:
+ oneOf:
+ - $ref: '../../../components/migrated_v1.yml#/components/schemas/Error401NotActive'
+ - $ref: '../../../components/migrated_v1.yml#/components/schemas/Error401Invalid'
+ description: Unauthorized. Not valid or inactive subscription key present in the
+ HTTP Header.
+ '403':
+ description: Forbidden. The request is authenticated, but it is not possible to
+ required perform operation due to logical error or invalid permissions.
+ content:
+ application/json:
+ schema:
+ oneOf:
+ - $ref: '../../../components/migrated_v1.yml#/components/schemas/Error403PlanNotSupported'
+ - $ref: '../../../components/migrated_v1.yml#/components/schemas/Error403ChainNotSupported'
+ - $ref: '../../../components/migrated_v1.yml#/components/schemas/Error403MainnetNotSupported'
+ - $ref: '../../../components/migrated_v1.yml#/components/schemas/Error403LimitExceeded'
+ '500':
+ content:
+ application/json:
+ schema:
+ $ref: '../../../components/migrated_v1.yml#/components/schemas/Error500'
+ description: Internal server error. There was an error on the server while processing
+ the request.
+security:
+- X-API-Key: []
+x-codeSamples: []
+summary: Mint NFT
+tags:
+- General
diff --git a/components/migrated_v1.yml b/components/migrated_v1.yml
new file mode 100644
index 0000000..ae7e9f0
--- /dev/null
+++ b/components/migrated_v1.yml
@@ -0,0 +1,454 @@
+components:
+ schemas:
+ CreateSubscriptionTxInTheBlock:
+ $ref: ./schemas/CreateSubscriptionTxInTheBlock.yml
+ CreateSubscriptionNotification:
+ $ref: ./schemas/CreateSubscriptionNotification.yml
+ CreateContractAddressLogEventSubscription:
+ $ref: ./schemas/CreateContractAddressLogEventSubscription.yml
+ Id:
+ $ref: ./schemas/Id.yml
+ Subscription:
+ $ref: ./schemas/Subscription.yml
+ WebHook:
+ $ref: ./schemas/WebHook.yml
+ DeployAbstractContract:
+ $ref: ./schemas/DeployAbstractContract.yml
+ DeployErc20Contract:
+ $ref: ./schemas/DeployErc20Contract.yml
+ DeployErc721Contract:
+ $ref: ./schemas/DeployErc721Contract.yml
+ DeployErc1155Contract:
+ $ref: ./schemas/DeployErc1155Contract.yml
+ EvmErc721Mint:
+ $ref: ./schemas/EvmErc721Mint.yml
+ TransactionHash:
+ $ref: ./schemas/TransactionHash.yml
+ Error403PlanNotSupported:
+ $ref: ./schemas/Error403PlanNotSupported.yml
+ Error403ChainNotSupported:
+ $ref: ./schemas/Error403ChainNotSupported.yml
+ Error403MainnetNotSupported:
+ $ref: ./schemas/Error403MainnetNotSupported.yml
+ Error403LimitExceeded:
+ $ref: ./schemas/Error403LimitExceeded.yml
+ ExchangeRate:
+ $ref: ./schemas/ExchangeRate.yml
+ RateQuery:
+ $ref: ./schemas/RateQuery.yml
+ FiatCurrency:
+ $ref: ./schemas/FiatCurrency.yml
+ FiatOrCryptoCurrency:
+ $ref: ./schemas/FiatOrCryptoCurrency.yml
+ BalanceItem:
+ $ref: ./schemas/BalanceItem.yml
+ NativeTokenBalance:
+ $ref: ./schemas/NativeTokenBalance.yml
+ NftBalance:
+ $ref: ./schemas/NftBalance.yml
+ FungibleTokenBalance:
+ $ref: ./schemas/FungibleTokenBalance.yml
+ TokenType:
+ $ref: ./schemas/TokenType.yml
+ BlockItem:
+ $ref: ./schemas/BlockItem.yml
+ Event:
+ $ref: ./schemas/Event.yml
+ DecodedDataCommon:
+ $ref: ./schemas/DecodedDataCommon.yml
+ FungibleTransfer:
+ $ref: ./schemas/FungibleTransfer.yml
+ StablecoinTransfer:
+ $ref: ./schemas/StablecoinTransfer.yml
+ NftTransfer:
+ $ref: ./schemas/NftTransfer.yml
+ MultitokenTransfer:
+ $ref: ./schemas/MultitokenTransfer.yml
+ MultitokenTransferSingle:
+ $ref: ./schemas/MultitokenTransferSingle.yml
+ MultitokenTransferBatch:
+ $ref: ./schemas/MultitokenTransferBatch.yml
+ UniswapTrade:
+ $ref: ./schemas/UniswapTrade.yml
+ UniswapTradeV2:
+ $ref: ./schemas/UniswapTradeV2.yml
+ UniswapTradeV3:
+ $ref: ./schemas/UniswapTradeV3.yml
+ RawData:
+ $ref: ./schemas/RawData.yml
+ TxData:
+ $ref: ./schemas/TxData.yml
+ TxType:
+ $ref: ./schemas/TxType.yml
+ TxSubtype:
+ $ref: ./schemas/TxSubtype.yml
+ FungibleInfo:
+ $ref: ./schemas/FungibleInfo.yml
+ FungibleInfoTezos:
+ $ref: ./schemas/FungibleInfoTezos.yml
+ NftInfo:
+ $ref: ./schemas/NftInfo.yml
+ NftInfoTezos:
+ $ref: ./schemas/NftInfoTezos.yml
+ MultitokenInfo:
+ $ref: ./schemas/MultitokenInfo.yml
+ NftTokenInfo:
+ $ref: ./schemas/NftTokenInfo.yml
+ Token:
+ $ref: ./schemas/Token.yml
+ TokenTezos:
+ $ref: ./schemas/TokenTezos.yml
+ Chain:
+ $ref: ./schemas/Chain.yml
+ ChainEnum:
+ $ref: ./schemas/ChainEnum.yml
+ ChainEnumExtended:
+ $ref: ./schemas/ChainEnumExtended.yml
+ ChainUtxoEnum:
+ $ref: ./schemas/ChainUtxoEnum.yml
+ Utxo:
+ $ref: ./schemas/Utxo.yml
+ TokenId:
+ $ref: ./schemas/TokenId.yml
+ TokenIds:
+ $ref: ./schemas/TokenIds.yml
+ TokenAddress:
+ $ref: ./schemas/TokenAddress.yml
+ ExcludeMetadata:
+ $ref: ./schemas/ExcludeMetadata.yml
+ NftMetadataURI:
+ $ref: ./schemas/NftMetadataURI.yml
+ NftMetadata:
+ $ref: ./schemas/NftMetadata.yml
+ BlockNumber:
+ $ref: ./schemas/BlockNumber.yml
+ BlockNumberTo:
+ $ref: ./schemas/BlockNumberTo.yml
+ PageSize:
+ $ref: ./schemas/PageSize.yml
+ Cursor:
+ $ref: ./schemas/Cursor.yml
+ Offset:
+ $ref: ./schemas/Offset.yml
+ CreateSubscriptionKMSError:
+ $ref: ./schemas/CreateSubscriptionKMSError.yml
+ Error:
+ $ref: ./schemas/Error.yml
+ Error400:
+ $ref: ./schemas/Error400.yml
+ Error401Invalid:
+ $ref: ./schemas/Error401Invalid.yml
+ Error401NotActive:
+ $ref: ./schemas/Error401NotActive.yml
+ Error403ComplianceBtc:
+ $ref: ./schemas/Error403ComplianceBtc.yml
+ Error403Libra:
+ $ref: ./schemas/Error403Libra.yml
+ Error403EthBroadcast:
+ $ref: ./schemas/Error403EthBroadcast.yml
+ Error403EthErc20NotFound:
+ $ref: ./schemas/Error403EthErc20NotFound.yml
+ Error403TxNotFound:
+ $ref: ./schemas/Error403TxNotFound.yml
+ Error404TxNotFound:
+ $ref: ./schemas/Error404TxNotFound.yml
+ Error403EthErc20Set:
+ $ref: ./schemas/Error403EthErc20Set.yml
+ Error403EthMnemonicPrivateKey:
+ $ref: ./schemas/Error403EthMnemonicPrivateKey.yml
+ Error403EthErc20Unsupported:
+ $ref: ./schemas/Error403EthErc20Unsupported.yml
+ Error403EthTxHash:
+ $ref: ./schemas/Error403EthTxHash.yml
+ Error403EthTxSign:
+ $ref: ./schemas/Error403EthTxSign.yml
+ Error403EthErc20TxSign:
+ $ref: ./schemas/Error403EthErc20TxSign.yml
+ Error403EthErc721TxSign:
+ $ref: ./schemas/Error403EthErc721TxSign.yml
+ Error403EthErc721Call:
+ $ref: ./schemas/Error403EthErc721Call.yml
+ Error403EthGasCalculation:
+ $ref: ./schemas/Error403EthGasCalculation.yml
+ Error403EthTxBody:
+ $ref: ./schemas/Error403EthTxBody.yml
+ Error403EthScBody:
+ $ref: ./schemas/Error403EthScBody.yml
+ Error403EthGasPrice:
+ $ref: ./schemas/Error403EthGasPrice.yml
+ Error403ComplianceEth:
+ $ref: ./schemas/Error403ComplianceEth.yml
+ Error403AccountTestnet:
+ $ref: ./schemas/Error403AccountTestnet.yml
+ Error403AccountXpub:
+ $ref: ./schemas/Error403AccountXpub.yml
+ Error403AddressXpub:
+ $ref: ./schemas/Error403AddressXpub.yml
+ Error403AccountCurrency:
+ $ref: ./schemas/Error403AccountCurrency.yml
+ Error403AccountIncompatibleXpub:
+ $ref: ./schemas/Error403AccountIncompatibleXpub.yml
+ Error403AccountIncompatibleXpubBtc:
+ $ref: ./schemas/Error403AccountIncompatibleXpubBtc.yml
+ Error403AccountAddressGeneral:
+ $ref: ./schemas/Error403AccountAddressGeneral.yml
+ Error403BnbFailed:
+ $ref: ./schemas/Error403BnbFailed.yml
+ Error403BnbAddressFailed:
+ $ref: ./schemas/Error403BnbAddressFailed.yml
+ Error403BnbBroadcatSigFailed:
+ $ref: ./schemas/Error403BnbBroadcatSigFailed.yml
+ Error403BnbTxStateFailed:
+ $ref: ./schemas/Error403BnbTxStateFailed.yml
+ Error403BnbTxFailed:
+ $ref: ./schemas/Error403BnbTxFailed.yml
+ Error403BtcTxFailed:
+ $ref: ./schemas/Error403BtcTxFailed.yml
+ Error403BtcTx:
+ $ref: ./schemas/Error403BtcTx.yml
+ Error403AccountNotExists:
+ $ref: ./schemas/Error403AccountNotExists.yml
+ Error403BlockageNotExists:
+ $ref: ./schemas/Error403BlockageNotExists.yml
+ Error403BlockageAmount:
+ $ref: ./schemas/Error403BlockageAmount.yml
+ Error403SubscriptionNotExists:
+ $ref: ./schemas/Error403SubscriptionNotExists.yml
+ Error403SubscriptionType:
+ $ref: ./schemas/Error403SubscriptionType.yml
+ Error403SubscriptionCurrency:
+ $ref: ./schemas/Error403SubscriptionCurrency.yml
+ Error403SubscriptionInterval:
+ $ref: ./schemas/Error403SubscriptionInterval.yml
+ Error403SubscriptionBalance:
+ $ref: ./schemas/Error403SubscriptionBalance.yml
+ Error403SubscriptionId:
+ $ref: ./schemas/Error403SubscriptionId.yml
+ Error403SubscriptionPendingId:
+ $ref: ./schemas/Error403SubscriptionPendingId.yml
+ Error403ReportNotAvailable:
+ $ref: ./schemas/Error403ReportNotAvailable.yml
+ Error403AccountInactive:
+ $ref: ./schemas/Error403AccountInactive.yml
+ Error403AccountActive:
+ $ref: ./schemas/Error403AccountActive.yml
+ Error403AccountFrozen:
+ $ref: ./schemas/Error403AccountFrozen.yml
+ Error403AccountNotFrozen:
+ $ref: ./schemas/Error403AccountNotFrozen.yml
+ Error403CustomerInternalNotExists:
+ $ref: ./schemas/Error403CustomerInternalNotExists.yml
+ Error403CustomerActive:
+ $ref: ./schemas/Error403CustomerActive.yml
+ Error403CustomerInactive:
+ $ref: ./schemas/Error403CustomerInactive.yml
+ Error403CustomerDisabled:
+ $ref: ./schemas/Error403CustomerDisabled.yml
+ Error403CustomerEnabled:
+ $ref: ./schemas/Error403CustomerEnabled.yml
+ Error403CustomerDeactivateActiveAccounts:
+ $ref: ./schemas/Error403CustomerDeactivateActiveAccounts.yml
+ Error403CustomerNotExists:
+ $ref: ./schemas/Error403CustomerNotExists.yml
+ Error403BlockDelete:
+ $ref: ./schemas/Error403BlockDelete.yml
+ Error403CustomerNotActive:
+ $ref: ./schemas/Error403CustomerNotActive.yml
+ Error403VCNoAccount:
+ $ref: ./schemas/Error403VCNoAccount.yml
+ Error403VCTxFailed:
+ $ref: ./schemas/Error403VCTxFailed.yml
+ Error403VCRevokeBalance:
+ $ref: ./schemas/Error403VCRevokeBalance.yml
+ Error403VCCreateFailed:
+ $ref: ./schemas/Error403VCCreateFailed.yml
+ Error403VCPrefix:
+ $ref: ./schemas/Error403VCPrefix.yml
+ Error403VCDuplicate:
+ $ref: ./schemas/Error403VCDuplicate.yml
+ Error403AccountCustomerInactive:
+ $ref: ./schemas/Error403AccountCustomerInactive.yml
+ Error403AccountBalanceNonZero:
+ $ref: ./schemas/Error403AccountBalanceNonZero.yml
+ Error403TradeBalanceNonZero:
+ $ref: ./schemas/Error403TradeBalanceNonZero.yml
+ Error403AmountFormat:
+ $ref: ./schemas/Error403AmountFormat.yml
+ Error403RecipientFormat:
+ $ref: ./schemas/Error403RecipientFormat.yml
+ Error403AccountCurrencyVC:
+ $ref: ./schemas/Error403AccountCurrencyVC.yml
+ Error403VCNotFound:
+ $ref: ./schemas/Error403VCNotFound.yml
+ Error403AddressUsed:
+ $ref: ./schemas/Error403AddressUsed.yml
+ Error403AddressNotFound:
+ $ref: ./schemas/Error403AddressNotFound.yml
+ Error403AddressAccountXpubMissing:
+ $ref: ./schemas/Error403AddressAccountXpubMissing.yml
+ Error403AddressIndexUsed:
+ $ref: ./schemas/Error403AddressIndexUsed.yml
+ Error403BtcBlockchain:
+ $ref: ./schemas/Error403BtcBlockchain.yml
+ Error404BlockNotExists:
+ $ref: ./schemas/Error404BlockNotExists.yml
+ Error403Broadcast:
+ $ref: ./schemas/Error403Broadcast.yml
+ Error403BlockchainPrivateFailed:
+ $ref: ./schemas/Error403BlockchainPrivateFailed.yml
+ Error403BtcUTXO:
+ $ref: ./schemas/Error403BtcUTXO.yml
+ Error403BcashBroadcast:
+ $ref: ./schemas/Error403BcashBroadcast.yml
+ Error403WithdrawalNotFound:
+ $ref: ./schemas/Error403WithdrawalNotFound.yml
+ Error403KMSNotExists:
+ $ref: ./schemas/Error403KMSNotExists.yml
+ Error403OffchainNotCancelled:
+ $ref: ./schemas/Error403OffchainNotCancelled.yml
+ Error403XlmFailed:
+ $ref: ./schemas/Error403XlmFailed.yml
+ Error403XrpFailed:
+ $ref: ./schemas/Error403XrpFailed.yml
+ Error403XrpCode:
+ $ref: ./schemas/Error403XrpCode.yml
+ Error403XrpLedger:
+ $ref: ./schemas/Error403XrpLedger.yml
+ Error403XrpBroadcast:
+ $ref: ./schemas/Error403XrpBroadcast.yml
+ Error403XrpMultiple:
+ $ref: ./schemas/Error403XrpMultiple.yml
+ Error403XrpAttr:
+ $ref: ./schemas/Error403XrpAttr.yml
+ Error403XrpFee:
+ $ref: ./schemas/Error403XrpFee.yml
+ Error403XrpSign:
+ $ref: ./schemas/Error403XrpSign.yml
+ Error403XlmTxFailed:
+ $ref: ./schemas/Error403XlmTxFailed.yml
+ Error403VetFailed:
+ $ref: ./schemas/Error403VetFailed.yml
+ Error403VetGas:
+ $ref: ./schemas/Error403VetGas.yml
+ Error403VetTxHash:
+ $ref: ./schemas/Error403VetTxHash.yml
+ Error403EgldGasCalculation:
+ $ref: ./schemas/Error403EgldGasCalculation.yml
+ Error403OffchainBroadcastState:
+ $ref: ./schemas/Error403OffchainBroadcastState.yml
+ Error403OffchainCancelled:
+ $ref: ./schemas/Error403OffchainCancelled.yml
+ Error403OffchainNotSupported:
+ $ref: ./schemas/Error403OffchainNotSupported.yml
+ Error403AddressAccountXpubUsed:
+ $ref: ./schemas/Error403AddressAccountXpubUsed.yml
+ Error403RateNotFound:
+ $ref: ./schemas/Error403RateNotFound.yml
+ Error403OffchainBroadcast:
+ $ref: ./schemas/Error403OffchainBroadcast.yml
+ Error403OffchainCheck:
+ $ref: ./schemas/Error403OffchainCheck.yml
+ Error403BtcTxUtxoFailed:
+ $ref: ./schemas/Error403BtcTxUtxoFailed.yml
+ Error403BtcMnemonicTxFailed:
+ $ref: ./schemas/Error403BtcMnemonicTxFailed.yml
+ Error403WithdrawalFailed:
+ $ref: ./schemas/Error403WithdrawalFailed.yml
+ Error403WithdrawalCancelled:
+ $ref: ./schemas/Error403WithdrawalCancelled.yml
+ Error403FeeFormat:
+ $ref: ./schemas/Error403FeeFormat.yml
+ Error403TxSenderNotFound:
+ $ref: ./schemas/Error403TxSenderNotFound.yml
+ Error403TxSenderFrozen:
+ $ref: ./schemas/Error403TxSenderFrozen.yml
+ Error403TxSenderCustomerDisabled:
+ $ref: ./schemas/Error403TxSenderCustomerDisabled.yml
+ Error403TxRecipientNotFound:
+ $ref: ./schemas/Error403TxRecipientNotFound.yml
+ Error403TxCurrency:
+ $ref: ./schemas/Error403TxCurrency.yml
+ Error403TxBalance:
+ $ref: ./schemas/Error403TxBalance.yml
+ Error403TxAmountBtc:
+ $ref: ./schemas/Error403TxAmountBtc.yml
+ Error403TxAmountBtcOffchain:
+ $ref: ./schemas/Error403TxAmountBtcOffchain.yml
+ Error403TxAmountAda:
+ $ref: ./schemas/Error403TxAmountAda.yml
+ Error403TxAmountAdaOffchain:
+ $ref: ./schemas/Error403TxAmountAdaOffchain.yml
+ Error403WithdrawalPending:
+ $ref: ./schemas/Error403WithdrawalPending.yml
+ Error403TxAmountEth:
+ $ref: ./schemas/Error403TxAmountEth.yml
+ Error403TxAmountEthOffchain:
+ $ref: ./schemas/Error403TxAmountEthOffchain.yml
+ Error403TxNotCompliant:
+ $ref: ./schemas/Error403TxNotCompliant.yml
+ Error403WithdrawalVC:
+ $ref: ./schemas/Error403WithdrawalVC.yml
+ Error403Erc20Prefix:
+ $ref: ./schemas/Error403Erc20Prefix.yml
+ Error403Erc20XpubBoth:
+ $ref: ./schemas/Error403Erc20XpubBoth.yml
+ Error403Erc20XpubMissing:
+ $ref: ./schemas/Error403Erc20XpubMissing.yml
+ Error403Erc20NameDuplicate:
+ $ref: ./schemas/Error403Erc20NameDuplicate.yml
+ Error403OrderCurrency1NotFound:
+ $ref: ./schemas/Error403OrderCurrency1NotFound.yml
+ Error403OrderFeeNotFound:
+ $ref: ./schemas/Error403OrderFeeNotFound.yml
+ Error403OrderFeeIncompatible:
+ $ref: ./schemas/Error403OrderFeeIncompatible.yml
+ Error403OrderCurrency1Frozen:
+ $ref: ./schemas/Error403OrderCurrency1Frozen.yml
+ Error403OrderCurrency1CustomerDisabled:
+ $ref: ./schemas/Error403OrderCurrency1CustomerDisabled.yml
+ Error403OrderCurrency2NotFound:
+ $ref: ./schemas/Error403OrderCurrency2NotFound.yml
+ Error403OrderCurrency2Frozen:
+ $ref: ./schemas/Error403OrderCurrency2Frozen.yml
+ Error403OrderCurrency2CustomerDisabled:
+ $ref: ./schemas/Error403OrderCurrency2CustomerDisabled.yml
+ Error403OrderCurrency1Pair:
+ $ref: ./schemas/Error403OrderCurrency1Pair.yml
+ Error403OrderCurrency2Pair:
+ $ref: ./schemas/Error403OrderCurrency2Pair.yml
+ Error403OrderCurrency1Balance:
+ $ref: ./schemas/Error403OrderCurrency1Balance.yml
+ Error403OrderCurrency2Balance:
+ $ref: ./schemas/Error403OrderCurrency2Balance.yml
+ Error500:
+ $ref: ./schemas/Error500.yml
+ Error403:
+ $ref: ./schemas/Error403.yml
+ Error401:
+ $ref: ./schemas/Error401.yml
+ securitySchemes:
+ X-API-Key:
+ type: apiKey
+ name: x-api-key
+ in: header
+ description: "The **API key** represents your [pricing plan](https://tatum.com/pricing)\
+ \ and defines how many API calls \nyou can make per second and what the total\
+ \ number of API calls per month is available for you.\n\nOne API key must\
+ \ be used by only one person.\n\nChoose one of the following authentication\
+ \ methods:\n\n* **Provide the API key in each API call.**\n\n To obtain the\
+ \ API key, [create a Tatum account](https://dashboard.tatum.com). Once you\
+ \ are logged in,\n you are automatically assigned the Free plan.\n\n With\
+ \ the Free plan:\n * You get two API keys, one tied to the testnet of a blockchain\
+ \ and the other to the mainnet.\n * You can make up to five API calls per\
+ \ second.\n\n When making an API call, provide the appropriate API key (testnet\
+ \ or mainnet) as either an HTTP header.\n\n If you ever need your API keys,\
+ \ you can find them in [your Tatum account](https://dashboard.tatum.com/).\n\
+ \n* **Get an auto-generated API key attached to API calls.**\n\n Make an\
+ \ API call without any API key provided. The API key will be generated and\
+ \ tied to your IP address.\n This API key is stored within the Tatum platform\
+ \ and is automatically attached to all your API calls.\n\n With the auto-generated\
+ \ API key:\n * You can make up to five API calls per second.\n\n These limits\
+ \ are applied to both the testnet and mainnet.\n\n By default, API calls\
+ \ with the auto-generated API key are executed against the mainnet.\n To\
+ \ make an API call to the testnet, add the `type` query parameter set to `testnet`\
+ \ to the endpoint URL,\n for example:\n\n `https://api.tatum.com/v1/subscription?type=testnet`\n"
\ No newline at end of file
diff --git a/components/schemas/CreateContractAddressLogEventSubscription.yml b/components/schemas/CreateContractAddressLogEventSubscription.yml
new file mode 100644
index 0000000..ba69f72
--- /dev/null
+++ b/components/schemas/CreateContractAddressLogEventSubscription.yml
@@ -0,0 +1,47 @@
+type: object
+required:
+- type
+- attr
+properties:
+ type:
+ type: string
+ description: Type of the subscription.
+ example: CONTRACT_ADDRESS_LOG_EVENT
+ attr:
+ type: object
+ description: Additional attributes based on the subscription type.
+ required:
+ - chain
+ - address
+ - url
+ properties:
+ address:
+ description: Blockchain address to watch.
+ example: FykfMwA9WNShzPJbbb9DNXsfgDgS3XZzWiFgrVXfWoPJ
+ maxLength: 128
+ minLength: 13
+ type: string
+ chain:
+ description: Blockchain of the address.
+ example: SOL
+ type: string
+ enum:
+ - ETH
+ - MATIC
+ - CELO
+ - KLAY
+ - BSC
+ - TEZOS
+ url:
+ type: string
+ description: URL of the endpoint, where HTTP POST request will be sent, when
+ transaction is detected on the address.
+ example: https://dashboard.tatum.io/webhook-handler
+ maxLength: 500
+ event:
+ type: string
+ description: Event to watch. In case of EVM chains it is usually a hash of
+ the event signature. In case of Tezos it is a name of the event and max
+ length is not enforced.
+ example: 1.0038928713678618e+77
+ maxLength: 66
diff --git a/components/schemas/DeployAbstractContract.yml b/components/schemas/DeployAbstractContract.yml
new file mode 100644
index 0000000..adbdc8f
--- /dev/null
+++ b/components/schemas/DeployAbstractContract.yml
@@ -0,0 +1,26 @@
+type: object
+required:
+- chain
+- owner
+properties:
+ chain:
+ type: string
+ enum:
+ - bsc-mainnet
+ - bsc-testnet
+ - ethereum-mainnet
+ - ethereum-sepolia
+ - polygon-mainnet
+ - polygon-mumbai
+ - celo-mainnet
+ - celo-alfajores
+ description: The blockchain network where the contract will be deployed.
+ owner:
+ type: string
+ pattern: ^0x[a-fA-F0-9]{40}$
+ description: The address of the owner of the contract.
+ minter:
+ type: string
+ pattern: ^0x[a-fA-F0-9]{40}$
+ description: The address of the minter of the contract. If not provided, the owner
+ will be the minter.
diff --git a/components/schemas/DeployErc1155Contract.yml b/components/schemas/DeployErc1155Contract.yml
new file mode 100644
index 0000000..c1983f2
--- /dev/null
+++ b/components/schemas/DeployErc1155Contract.yml
@@ -0,0 +1,16 @@
+allOf:
+- $ref: '../migrated_v1.yml#/components/schemas/DeployAbstractContract'
+- type: object
+ required:
+ - contractType
+ properties:
+ contractType:
+ type: string
+ enum:
+ - multitoken
+ description: The type of contract to deploy.
+ baseURI:
+ type: string
+ maxLength: 500
+ description: The base URI for the ERC1155 token metadata. If not provided, the
+ token will not have any base URI prefixed.
diff --git a/components/schemas/DeployErc20Contract.yml b/components/schemas/DeployErc20Contract.yml
new file mode 100644
index 0000000..306f486
--- /dev/null
+++ b/components/schemas/DeployErc20Contract.yml
@@ -0,0 +1,41 @@
+allOf:
+- $ref: '../migrated_v1.yml#/components/schemas/DeployAbstractContract'
+- type: object
+ required:
+ - name
+ - symbol
+ - contractType
+ - initialSupply
+ - initialHolder
+ properties:
+ name:
+ type: string
+ maxLength: 255
+ description: The name of the ERC20 token.
+ symbol:
+ type: string
+ maxLength: 255
+ description: The symbol of the ERC20 token.
+ contractType:
+ type: string
+ enum:
+ - fungible
+ description: The type of contract to deploy.
+ initialSupply:
+ type: string
+ description: The initial supply of the ERC20 token.
+ initialHolder:
+ type: string
+ pattern: ^0x[a-fA-F0-9]{40}$
+ description: The address that will hold the initial supply of the token.
+ decimals:
+ type: integer
+ minimum: 0
+ maximum: 30
+ description: The number of decimals the ERC20 token will have. If not provided,
+ the default value is 18.
+ pauser:
+ type: string
+ pattern: ^0x[a-fA-F0-9]{40}$
+ description: The address that can pause the token contract. If not provided,
+ the pauser is the owner.
diff --git a/components/schemas/DeployErc721Contract.yml b/components/schemas/DeployErc721Contract.yml
new file mode 100644
index 0000000..0079e85
--- /dev/null
+++ b/components/schemas/DeployErc721Contract.yml
@@ -0,0 +1,26 @@
+allOf:
+- $ref: '../migrated_v1.yml#/components/schemas/DeployAbstractContract'
+- type: object
+ required:
+ - name
+ - symbol
+ - contractType
+ properties:
+ name:
+ type: string
+ maxLength: 255
+ description: The name of the ERC721 token.
+ symbol:
+ type: string
+ maxLength: 255
+ description: The symbol of the ERC721 token.
+ contractType:
+ type: string
+ enum:
+ - nft
+ description: The type of contract to deploy.
+ baseURI:
+ type: string
+ maxLength: 500
+ description: The base URI for the ERC721 token metadata. If not provided, the
+ token will not have any base URI prefixed.
diff --git a/components/schemas/Error403ChainNotSupported.yml b/components/schemas/Error403ChainNotSupported.yml
new file mode 100644
index 0000000..0d80270
--- /dev/null
+++ b/components/schemas/Error403ChainNotSupported.yml
@@ -0,0 +1,17 @@
+properties:
+ errorCode:
+ description: chain.not.supported
+ example: chain.not.supported
+ type: string
+ message:
+ description: Chain ${chain} is not supported for this operation.
+ example: Chain ${chain} is not supported for this operation.
+ type: string
+ statusCode:
+ description: '403'
+ example: 403
+ type: number
+required:
+- errorCode
+- message
+- statusCode
diff --git a/components/schemas/Error403LimitExceeded.yml b/components/schemas/Error403LimitExceeded.yml
new file mode 100644
index 0000000..5d5fe83
--- /dev/null
+++ b/components/schemas/Error403LimitExceeded.yml
@@ -0,0 +1,19 @@
+properties:
+ errorCode:
+ description: limit.exceeded
+ example: limit.exceeded
+ type: string
+ message:
+ description: Your plan limit is exceeded, you can't perform this operation more
+ then ${limit}x. You can upgrade at https://dashboard.tatum.com.
+ example: Your plan limit is exceeded, you can't perform this operation more then
+ ${limit}x. You can upgrade at https://dashboard.tatum.com.
+ type: string
+ statusCode:
+ description: '403'
+ example: 403
+ type: number
+required:
+- errorCode
+- message
+- statusCode
diff --git a/components/schemas/Error403MainnetNotSupported.yml b/components/schemas/Error403MainnetNotSupported.yml
new file mode 100644
index 0000000..97fc021
--- /dev/null
+++ b/components/schemas/Error403MainnetNotSupported.yml
@@ -0,0 +1,19 @@
+properties:
+ errorCode:
+ description: mainnet.not.supported
+ example: mainnet.not.supported
+ type: string
+ message:
+ description: Mainnet is not supported for this operation for your plan. You can
+ upgrade at https://dashboard.tatum.com.
+ example: Mainnet is not supported for this operation for your plan. You can upgrade
+ at https://dashboard.tatum.com.
+ type: string
+ statusCode:
+ description: '403'
+ example: 403
+ type: number
+required:
+- errorCode
+- message
+- statusCode
diff --git a/components/schemas/Error403PlanNotSupported.yml b/components/schemas/Error403PlanNotSupported.yml
new file mode 100644
index 0000000..4e95452
--- /dev/null
+++ b/components/schemas/Error403PlanNotSupported.yml
@@ -0,0 +1,19 @@
+properties:
+ errorCode:
+ description: product.not.supported
+ example: product.not.supported
+ type: string
+ message:
+ description: Your plan is not supported to perform this operation. You can subscribe
+ at https://dashboard.tatum.com.
+ example: Your plan is not supported to perform this operation. You can subscribe
+ at https://dashboard.tatum.com.
+ type: string
+ statusCode:
+ description: '403'
+ example: 403
+ type: number
+required:
+- errorCode
+- message
+- statusCode
diff --git a/components/schemas/EvmErc721Mint.yml b/components/schemas/EvmErc721Mint.yml
new file mode 100644
index 0000000..9473490
--- /dev/null
+++ b/components/schemas/EvmErc721Mint.yml
@@ -0,0 +1,45 @@
+type: object
+properties:
+ chain:
+ type: string
+ enum:
+ - bsc-mainnet
+ - bsc-testnet
+ - ethereum-mainnet
+ - ethereum-sepolia
+ - polygon-mainnet
+ - polygon-mumbai
+ - celo-mainnet
+ - celo-alfajores
+ - one-mainnet-s0
+ - one-testnet-s0
+ - kcs-mainnet
+ - kcs-testnet
+ description: The blockchain network where to mint NFT.
+ to:
+ type: string
+ pattern: ^0x[a-fA-F0-9]{40}$
+ description: The address of the NFT receiver.
+ url:
+ type: string
+ pattern: ipfs://[a-f0-9]{60}
+ description: The URL pointing to the NFT metadata; for more information, see EIP-721
+ tokenId:
+ type: string
+ pattern: ^[0-9]+$
+ description: Token Id of NFT to be minted
+ contractAddress:
+ type: string
+ pattern: ^0x[a-fA-F0-9]{40}$
+ description: Smart contract address of the NFT collection
+ minter:
+ type: string
+ pattern: ^0x[a-fA-F0-9]{40}$
+ description: The address of the minter of the contract. If not provided, the owner
+ will be the minter.
+required:
+- chain
+- to
+- url
+- tokenId
+- contractAddress
diff --git a/components/schemas/Utxo.yml b/components/schemas/Utxo.yml
new file mode 100644
index 0000000..09ece85
--- /dev/null
+++ b/components/schemas/Utxo.yml
@@ -0,0 +1,31 @@
+type: object
+required:
+- chain
+- address
+- txHash
+- index
+- value
+- valueAsString
+properties:
+ chain:
+ $ref: '../migrated_v1.yml#/components/schemas/ChainUtxoEnum'
+ address:
+ type: string
+ description: Address of the UTXO
+ example: bc1qmfp2r68cde646jv5ns7x2qvah8v5qtfw8gznj2
+ txHash:
+ type: string
+ description: Hash of the transaction this UTXO is present in
+ example: '0x1b5b3e8a671434bf5d0d38e3e52dcafac484441a48bfae4a3f71e5b0b3093d8e'
+ index:
+ type: number
+ description: Index of the UTXO in the transaction
+ example: 0
+ value:
+ type: number
+ description: Value of the UTXO, in BTC, LTC or DOGE.
+ example: 0.0001
+ valueAsString:
+ type: string
+ description: String representation of the value of the UTXO, in BTC, LTC or DOGE.
+ example: '0.0001'