@silvana-one/api
Version:
Silvana API
797 lines • 22 kB
JavaScript
// This file is auto-generated by @hey-api/openapi-ts
import { client as _heyApiClient } from './client.gen.js';
/**
* Deploy a new NFT Collection contract.
* The `launch` endpoint is used to deploy a new NFT Collection on the Mina blockchain.
* It allows users to create a new NFT Collection with customizable parameters.
*
*/
export const launchNftCollection = (options) => {
return (options.client ?? _heyApiClient).post({
security: [
{
name: 'x-api-key',
type: 'apiKey'
}
],
url: '/nft/launch',
...options,
headers: {
'Content-Type': 'application/json',
...options.headers
}
});
};
/**
* Deploy a new fungible token contract.
* The `launch` endpoint is used to deploy a new fungible token on the Mina blockchain.
* It allows users to create a new token with customizable parameters such as symbol,
* decimals, URI, and admin contract type (standard or advanced).
*
*/
export const launchToken = (options) => {
return (options.client ?? _heyApiClient).post({
security: [
{
name: 'x-api-key',
type: 'apiKey'
}
],
url: '/token/launch',
...options,
headers: {
'Content-Type': 'application/json',
...options.headers
}
});
};
/**
* Retrieve contract info
* Retrieves detailed information about a contract.
*/
export const getContractInfo = (options) => {
return (options.client ?? _heyApiClient).post({
security: [
{
name: 'x-api-key',
type: 'apiKey'
}
],
url: '/info/contract',
...options,
headers: {
'Content-Type': 'application/json',
...options.headers
}
});
};
/**
* Retrieve NFT Info for Mina NFT V3
* Retrieves detailed information about a Mina NFT V3 (NFT standard).
*/
export const getNftInfo = (options) => {
return (options.client ?? _heyApiClient).post({
security: [
{
name: 'x-api-key',
type: 'apiKey'
}
],
url: '/info/nft',
...options,
headers: {
'Content-Type': 'application/json',
...options.headers
}
});
};
/**
* Retrieve NFT Info for Mina NFT V2
* Retrieves detailed information about a Mina NFT V2.
*/
export const getNftV2Info = (options) => {
return (options.client ?? _heyApiClient).post({
security: [
{
name: 'x-api-key',
type: 'apiKey'
}
],
url: '/info/nft-v2',
...options,
headers: {
'Content-Type': 'application/json',
...options.headers
}
});
};
/**
* Request Funds from Faucet
* Requests funds from the faucet for testing purposes.
*/
export const faucet = (options) => {
return (options.client ?? _heyApiClient).post({
security: [
{
name: 'x-api-key',
type: 'apiKey'
}
],
url: '/faucet',
...options,
headers: {
'Content-Type': 'application/json',
...options.headers
}
});
};
/**
* Retrieve information about a fungible token.
* The `info` endpoint retrieves detailed information about a specific fungible token deployed on the Mina blockchain.
*
*/
export const getTokenInfo = (options) => {
return (options.client ?? _heyApiClient).post({
security: [
{
name: 'x-api-key',
type: 'apiKey'
}
],
url: '/info/token',
...options,
headers: {
'Content-Type': 'application/json',
...options.headers
}
});
};
/**
* Retrieve the balance of a specific token for an address.
* The `balance` endpoint retrieves the balance of a specific fungible token for a given Mina address.
*
*/
export const getTokenBalance = (options) => {
return (options.client ?? _heyApiClient).post({
security: [
{
name: 'x-api-key',
type: 'apiKey'
}
],
url: '/info/balance',
...options,
headers: {
'Content-Type': 'application/json',
...options.headers
}
});
};
/**
* Retrieve the nonce for an address
* The `nonce` endpoint retrieves the nonce for a given Mina address, taking into account the pending transactions.
*
*/
export const getNonce = (options) => {
return (options.client ?? _heyApiClient).post({
security: [
{
name: 'x-api-key',
type: 'apiKey'
}
],
url: '/info/nonce',
...options,
headers: {
'Content-Type': 'application/json',
...options.headers
}
});
};
/**
* Retrieve the holders of a token
* The `holders` endpoint retrieves the holders of a token.
*
*/
export const getTokenHolders = (options) => {
return (options.client ?? _heyApiClient).post({
security: [
{
name: 'x-api-key',
type: 'apiKey'
}
],
url: '/info/holders',
...options,
headers: {
'Content-Type': 'application/json',
...options.headers
}
});
};
/**
* Retrieve the transactions of a address
* The `transactions` endpoint retrieves the transactions of a address.
*
*/
export const getTransactions = (options) => {
return (options.client ?? _heyApiClient).post({
security: [
{
name: 'x-api-key',
type: 'apiKey'
}
],
url: '/info/transactions',
...options,
headers: {
'Content-Type': 'application/json',
...options.headers
}
});
};
/**
* Generate proofs for signed token transactions.
* The `prove` endpoint initiates the proof generation process for a set of signed token transactions.
* It returns a job ID which can be used to check the status and retrieve the proofs or tx hashes using the `/proof` endpoint.
*
*/
export const prove = (options) => {
return (options.client ?? _heyApiClient).post({
security: [
{
name: 'x-api-key',
type: 'apiKey'
}
],
url: '/transaction/prove',
...options,
headers: {
'Content-Type': 'application/json',
...options.headers
}
});
};
/**
* Check the status of a proof generation job and retrieve proofs.
* The `proof` endpoint allows you to check the status of a proof generation job initiated via the `/prove` endpoint.
* It returns the status of the job and the proofs or tx hashes if they are ready.
*
*/
export const getProof = (options) => {
return (options.client ?? _heyApiClient).post({
security: [
{
name: 'x-api-key',
type: 'apiKey'
}
],
url: '/transaction/proof',
...options,
headers: {
'Content-Type': 'application/json',
...options.headers
}
});
};
/**
* Send a transaction to the Mina blockchain.
* The `send` endpoint allows you to send a transaction to the Mina blockchain.
*
*/
export const sendTransaction = (options) => {
return (options.client ?? _heyApiClient).post({
security: [
{
name: 'x-api-key',
type: 'apiKey'
}
],
url: '/transaction/send',
...options,
headers: {
'Content-Type': 'application/json',
...options.headers
}
});
};
/**
* Retrieve the status of a transaction by its hash.
* The `tx-status` endpoint allows you to check the current status of a transaction on the Mina blockchain by providing the transaction hash. It returns whether the transaction has been applied, failed, or is still pending.
*
*/
export const txStatus = (options) => {
return (options.client ?? _heyApiClient).post({
security: [
{
name: 'x-api-key',
type: 'apiKey'
}
],
url: '/transaction/status',
...options,
headers: {
'Content-Type': 'application/json',
...options.headers
}
});
};
/**
* Mint new tokens to a specified address.
* The `mint` endpoint allows authorized users to mint new tokens of a fungible token on the Mina blockchain.
* This transaction increases the total supply of the token by creating new tokens and assigning them to a specified address.
* The sender must have the authority to mint tokens, typically the admin of the token contract.
*
*/
export const mintTokens = (options) => {
return (options.client ?? _heyApiClient).post({
security: [
{
name: 'x-api-key',
type: 'apiKey'
}
],
url: '/token/mint',
...options,
headers: {
'Content-Type': 'application/json',
...options.headers
}
});
};
/**
* Mint new NFT to a specified address.
* The `mint` endpoint allows authorized users to mint new NFT on the Mina blockchain.
* This transaction creates new NFT.
* The sender must have the authority to mint NFTs, typically the admin of the NFT contract.
*
*/
export const mintNft = (options) => {
return (options.client ?? _heyApiClient).post({
security: [
{
name: 'x-api-key',
type: 'apiKey'
}
],
url: '/nft/mint',
...options,
headers: {
'Content-Type': 'application/json',
...options.headers
}
});
};
/**
* Transfer NFT to a specified address.
* The `transfer` endpoint allows authorized users to transfer NFT on the Mina blockchain.
* The sender must have the authority to transfer NFTs, being the owner or approved address of the NFT.
*
*/
export const transferNft = (options) => {
return (options.client ?? _heyApiClient).post({
security: [
{
name: 'x-api-key',
type: 'apiKey'
}
],
url: '/nft/transfer',
...options,
headers: {
'Content-Type': 'application/json',
...options.headers
}
});
};
/**
* Store on-demand NFT in CMS
* The `store` endpoint allows collection creators to store on-demand NFT in CMS.
*
*/
export const cmsStoreNft = (options) => {
return (options.client ?? _heyApiClient).post({
security: [
{
name: 'x-api-key',
type: 'apiKey'
}
],
url: '/nft/cms/store',
...options,
headers: {
'Content-Type': 'application/json',
...options.headers
}
});
};
/**
* Read on-demand NFT from CMS
* The `read` endpoint allows collection creators to read on-demand NFT from CMS.
*
*/
export const cmsReadNft = (options) => {
return (options.client ?? _heyApiClient).post({
security: [
{
name: 'x-api-key',
type: 'apiKey'
}
],
url: '/nft/cms/read',
...options,
headers: {
'Content-Type': 'application/json',
...options.headers
}
});
};
/**
* Reserve or remove reserve of on-demand NFT in CMS
* The `reserve` endpoint allows collection admins to reserve or remove reserve of on-demand NFT in CMS.
*
*/
export const cmsReserveNft = (options) => {
return (options.client ?? _heyApiClient).post({
security: [
{
name: 'x-api-key',
type: 'apiKey'
}
],
url: '/nft/cms/reserve',
...options,
headers: {
'Content-Type': 'application/json',
...options.headers
}
});
};
/**
* Approve a specified address to transfer NFT.
* The `approve` endpoint allows authorized users to approve a specified address to transfer NFT.
* The sender must have the authority to approve NFTs, being the owner of the NFT.
*
*/
export const approveNft = (options) => {
return (options.client ?? _heyApiClient).post({
security: [
{
name: 'x-api-key',
type: 'apiKey'
}
],
url: '/nft/approve',
...options,
headers: {
'Content-Type': 'application/json',
...options.headers
}
});
};
/**
* Sell NFT at a specified price by creating a Offer contract.
* The `sell` endpoint allows authorized users to sell NFT on the Mina blockchain.
* The sender must have the authority to sell NFTs, being the owner of the NFT or approved address.
*
*/
export const sellNft = (options) => {
return (options.client ?? _heyApiClient).post({
security: [
{
name: 'x-api-key',
type: 'apiKey'
}
],
url: '/nft/sell',
...options,
headers: {
'Content-Type': 'application/json',
...options.headers
}
});
};
/**
* Buy NFT.
* The `buy` endpoint allows authorized users to buy NFT on the Mina blockchain.
*
*/
export const buyNft = (options) => {
return (options.client ?? _heyApiClient).post({
security: [
{
name: 'x-api-key',
type: 'apiKey'
}
],
url: '/nft/buy',
...options,
headers: {
'Content-Type': 'application/json',
...options.headers
}
});
};
/**
* Transfer tokens from one address to another.
* The `transfer` endpoint allows users to transfer tokens of a fungible token on the Mina blockchain from one address to another.
* The sender must have sufficient balance and appropriate permissions to perform the transfer.
*
*/
export const transferTokens = (options) => {
return (options.client ?? _heyApiClient).post({
security: [
{
name: 'x-api-key',
type: 'apiKey'
}
],
url: '/token/transfer',
...options,
headers: {
'Content-Type': 'application/json',
...options.headers
}
});
};
/**
* Distribute tokens to multiple addresses via airdrop.
* Allows users to distribute tokens to multiple addresses in a single transaction.
* This is efficient for distributing tokens during events like token launches or community rewards.
*
*/
export const airdropTokens = (options) => {
return (options.client ?? _heyApiClient).post({
security: [
{
name: 'x-api-key',
type: 'apiKey'
}
],
url: '/token/airdrop',
...options,
headers: {
'Content-Type': 'application/json',
...options.headers
}
});
};
/**
* Redeem tokens for a MINA (applicable for Fungible Tokens with Bonding Curve Admin)
* The `redeem` endpoint allows users to redeem tokens of a fungible token on the Mina blockchain for a MINA.
* The sender must have sufficient balance and appropriate permissions to perform the transfer.
*
*/
export const redeemTokens = (options) => {
return (options.client ?? _heyApiClient).post({
security: [
{
name: 'x-api-key',
type: 'apiKey'
}
],
url: '/token/redeem',
...options,
headers: {
'Content-Type': 'application/json',
...options.headers
}
});
};
/**
* Burn tokens from one address.
* The `burn` endpoint allows users to burn tokens of a fungible token on the Mina blockchain from one address.
* The sender must have sufficient balance and appropriate permissions to perform the burn.
*
*/
export const burnTokens = (options) => {
return (options.client ?? _heyApiClient).post({
security: [
{
name: 'x-api-key',
type: 'apiKey'
}
],
url: '/token/burn',
...options,
headers: {
'Content-Type': 'application/json',
...options.headers
}
});
};
/**
* Place a bid on a token
* Allows users to place a bid on an token.
*
*/
export const tokenBid = (options) => {
return (options.client ?? _heyApiClient).post({
security: [
{
name: 'x-api-key',
type: 'apiKey'
}
],
url: '/token/bid/create',
...options,
headers: {
'Content-Type': 'application/json',
...options.headers
}
});
};
/**
* Create an offer to sell tokens at a specified price.
* Allows users to create an offer to sell a specified amount of tokens at a given price.
*
*/
export const tokenOffer = (options) => {
return (options.client ?? _heyApiClient).post({
security: [
{
name: 'x-api-key',
type: 'apiKey'
}
],
url: '/token/offer/create',
...options,
headers: {
'Content-Type': 'application/json',
...options.headers
}
});
};
/**
* Purchase tokens from an existing offer.
* Allows users to purchase tokens from an existing offer on the Mina blockchain.
* This endpoint facilitates the transaction where tokens are transferred from the offer address to the buyer's address in exchange for the specified price.
*
*/
export const buyTokens = (options) => {
return (options.client ?? _heyApiClient).post({
security: [
{
name: 'x-api-key',
type: 'apiKey'
}
],
url: '/token/offer/buy',
...options,
headers: {
'Content-Type': 'application/json',
...options.headers
}
});
};
/**
* Sell a token to the Bid contract.
* Allows token owners to sell their tokens to the Bid contract.
*
*/
export const sellTokens = (options) => {
return (options.client ?? _heyApiClient).post({
security: [
{
name: 'x-api-key',
type: 'apiKey'
}
],
url: '/token/bid/sell',
...options,
headers: {
'Content-Type': 'application/json',
...options.headers
}
});
};
/**
* Withdraw a previously placed bid on an token.
* Allows users to withdraw a bid they have previously placed using the `/bid` endpoint.
* This transaction cancels the active bid, releasing any locked funds.
*
*/
export const withdrawTokenBid = (options) => {
return (options.client ?? _heyApiClient).post({
security: [
{
name: 'x-api-key',
type: 'apiKey'
}
],
url: '/token/bid/withdraw',
...options,
headers: {
'Content-Type': 'application/json',
...options.headers
}
});
};
/**
* Withdraw a previously made offer to sell a token.
* Allows users to withdraw an offer they have previously made using the `/offer` endpoint.
* This transaction cancels the active offer, releasing any locked tokens.
*
*/
export const withdrawTokenOffer = (options) => {
return (options.client ?? _heyApiClient).post({
security: [
{
name: 'x-api-key',
type: 'apiKey'
}
],
url: '/token/offer/withdraw',
...options,
headers: {
'Content-Type': 'application/json',
...options.headers
}
});
};
/**
* Update the bid whitelist
* Allows administrators to update the whitelist of addresses permitted to interact with the Bid contract.
* This is essential for managing participation in bidding processes, especially for controlled or private auctions.
*
*/
export const updateTokenBidWhitelist = (options) => {
return (options.client ?? _heyApiClient).post({
security: [
{
name: 'x-api-key',
type: 'apiKey'
}
],
url: '/token/bid/whitelist',
...options,
headers: {
'Content-Type': 'application/json',
...options.headers
}
});
};
/**
* Update the offer whitelist
* Allows administrators to update the whitelist of addresses permitted to interact with the Offer contract.
* This is essential for managing participation in offer processes, especially for controlled or private sales.
*
*/
export const updateTokenOfferWhitelist = (options) => {
return (options.client ?? _heyApiClient).post({
security: [
{
name: 'x-api-key',
type: 'apiKey'
}
],
url: '/token/offer/whitelist',
...options,
headers: {
'Content-Type': 'application/json',
...options.headers
}
});
};
/**
* Update the advanced admin whitelist
* Allows administrators to update the whitelist of admin contracts.
*
*/
export const updateTokenAdminWhitelist = (options) => {
return (options.client ?? _heyApiClient).post({
security: [
{
name: 'x-api-key',
type: 'apiKey'
}
],
url: '/token/admin/whitelist',
...options,
headers: {
'Content-Type': 'application/json',
...options.headers
}
});
};
//# sourceMappingURL=sdk.gen.js.map