-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
migrate v1 smart contract operations
- Loading branch information
juraj.bacovcin
committed
Feb 5, 2024
1 parent
089de95
commit 4792964
Showing
14 changed files
with
442 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
67 changes: 67 additions & 0 deletions
67
categories/smart_contracts/paths/v1_contract_deploy_post.yml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -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.<br/>\nYou can create\ | ||
\ the following types of contracts:\n<ul>\n <li>ERC-20 - Fungible token like USDT</li>\n\ | ||
\ <li>ERC-721 - NFT collection like BAYC</li>\n <li>ERC-1155 - MultiToken NFT\ | ||
\ collection</li>\n</ul>\nYou can find more information about the contracts on our\ | ||
\ <a href=\"https://github.com/tatumio/smart-contract-library\" target=\"_blank\"\ | ||
>GitHub page</a> with steps required for verification.<br/>\nIf you deploy NFT collection\ | ||
\ contract (ERC-721), it is automatically enabled for <a href=\"https://docs.tatum.io/nft-express/what-is-nft-express\"\ | ||
\ target=\"_blank\">NFT Express functionality.</a><br/>\n" | ||
operationId: deployContract | ||
requestBody: | ||
content: | ||
application/json: | ||
schema: | ||
oneOf: | ||
- $ref: '../../../components/migrated.yml#/components/schemas/DeployErc20Contract' | ||
- $ref: '../../../components/migrated.yml#/components/schemas/DeployErc721Contract' | ||
- $ref: '../../../components/migrated.yml#/components/schemas/DeployErc1155Contract' | ||
required: true | ||
responses: | ||
'200': | ||
content: | ||
application/json: | ||
schema: | ||
$ref: '../../../components/migrated.yml#/components/schemas/TransactionHash' | ||
description: OK | ||
'400': | ||
content: | ||
application/json: | ||
schema: | ||
$ref: '../../../components/migrated.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.yml#/components/schemas/Error401NotActive' | ||
- $ref: '../../../components/migrated.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.yml#/components/schemas/Error403PlanNotSupported' | ||
- $ref: '../../../components/migrated.yml#/components/schemas/Error403ChainNotSupported' | ||
- $ref: '../../../components/migrated.yml#/components/schemas/Error403MainnetNotSupported' | ||
- $ref: '../../../components/migrated.yml#/components/schemas/Error403LimitExceeded' | ||
'500': | ||
content: | ||
application/json: | ||
schema: | ||
$ref: '../../../components/migrated.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: | ||
- Smart Contract interactions |
63 changes: 63 additions & 0 deletions
63
categories/smart_contracts/paths/v1_contract_erc721_mint_post.yml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -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.<br/> | ||
NFT will be minted as NFT Express. See more: <a href="https://docs.tatum.io/nft-express/what-is-nft-express" | ||
target="_blank">NFT Express functionality.</a><br/> | ||
' | ||
operationId: mintErc721 | ||
requestBody: | ||
content: | ||
application/json: | ||
schema: | ||
oneOf: | ||
- $ref: '../../../components/migrated.yml#/components/schemas/EvmErc721Mint' | ||
required: true | ||
responses: | ||
'200': | ||
content: | ||
application/json: | ||
schema: | ||
$ref: '../../../components/migrated.yml#/components/schemas/TransactionHash' | ||
description: OK | ||
'400': | ||
content: | ||
application/json: | ||
schema: | ||
$ref: '../../../components/migrated.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.yml#/components/schemas/Error401NotActive' | ||
- $ref: '../../../components/migrated.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.yml#/components/schemas/Error403PlanNotSupported' | ||
- $ref: '../../../components/migrated.yml#/components/schemas/Error403ChainNotSupported' | ||
- $ref: '../../../components/migrated.yml#/components/schemas/Error403MainnetNotSupported' | ||
- $ref: '../../../components/migrated.yml#/components/schemas/Error403LimitExceeded' | ||
'500': | ||
content: | ||
application/json: | ||
schema: | ||
$ref: '../../../components/migrated.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: | ||
- Smart Contract interactions |
47 changes: 47 additions & 0 deletions
47
components/schemas/CreateContractAddressLogEventSubscription.yml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -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 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -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. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,16 @@ | ||
allOf: | ||
- $ref: '../../../components/migrated.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. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,41 @@ | ||
allOf: | ||
- $ref: '../../../components/migrated.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. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,26 @@ | ||
allOf: | ||
- $ref: '../../../components/migrated.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. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -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 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -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 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -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 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -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 |
Oops, something went wrong.