Skip to content

Commit

Permalink
migrate v1 smart contract operations
Browse files Browse the repository at this point in the history
  • Loading branch information
juraj.bacovcin committed Feb 5, 2024
1 parent 089de95 commit 7aca55d
Show file tree
Hide file tree
Showing 15 changed files with 896 additions and 0 deletions.
6 changes: 6 additions & 0 deletions categories/smart_contracts/openapi.yml
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down
67 changes: 67 additions & 0 deletions categories/smart_contracts/paths/v1_contract_deploy_post.yml
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_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
63 changes: 63 additions & 0 deletions categories/smart_contracts/paths/v1_contract_erc721_mint_post.yml
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_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
Loading

0 comments on commit 7aca55d

Please sign in to comment.