# API Features

Add these endpoints to your [curl](https://docs.nmkr.io/get-started-with-the-api#example-curl), in order to use the in your applications.\
Example:

```
curl -X 'GET' \
  'https://studio-api.nmkr.io/v2/endpoint...
  -H 'accept: text/plain' \
  -H 'Authorization: Bearer xxxxxxxxxxxxxxxxxxxxxxx'
```

If you want to try these endpoints before integrating them, please use the [Swagger](https://studio-api.nmkr.io/swagger/index.html).

### User

| Add a payout wallet to your account     | /v2/AddPayoutWallet/{walletaddress}         |
| --------------------------------------- | ------------------------------------------- |
| List all payout wallets in your account | /v2/GetPayoutWallets                        |
| Create subcustomer                      | /v2/CreateSubcustomer/{customerid}          |
| Create API key for subcustomer          | /v2/CreateApikeyForSubcustomer/{customerid} |

### Asset (Token)

| Block/Unblock an nft (nft uid)                                                                  | /v2/BlockUnblockNft/{nftuid}/{blockNft}             |
| ----------------------------------------------------------------------------------------------- | --------------------------------------------------- |
| Check if the metadata are valid                                                                 | /v2/CheckMetadata/{nftuid}                          |
| Delete all nfts from the database                                                               | /v2/DeleteAllNftsFromProject/{projectuid}           |
| Delete a nft from the database (nft uid)                                                        | /v2/DeleteNft/{nftuid}                              |
| Duplicate a token inside a project. If a token already exists, it will be skipped               | /v2/DuplicateNft/{nftuid}                           |
| List detail information about one nft specified by Id (nft uid)                                 | /v2/GetNftDetailsById/{nftuid}                      |
| List detail information about one nft specified by its name                                     | /v2/GetNftDetailsByTokenname/{projectuid}/{nftname} |
| List detail information about nfts with a specific state with Pagination support. (project uid) | /v2/GetNfts/{projectuid}/{state}/{count}/{page}     |
| Update the Metadata for one specific NFT                                                        | /v2/UpdateMetadata/{projectuid}/{nftuid}            |
| Upload a File to a project and pin it to IPFS                                                   | /v2/UploadNft/{projectuid}                          |

### Project

| Create a burning endpoint for a specific address                                         | /v2/CreateBurningAddress/{projectuid}/{addressactiveinhours} |
| ---------------------------------------------------------------------------------------- | ------------------------------------------------------------ |
| Create a new Project                                                                     | /v2/CreateProject                                            |
| Delete a project                                                                         | /v2/DeleteProject/{projectuid}                               |
| Return the count of the sold, reserved and free nfts (project uid)                       | /v2/Counts/{projectuid}                                      |
| Return the discounts for this project (project uid)                                      | /v2/Discounts/{projectuid}                                   |
| Return information about the identities (if the identity token was created) of a project | /v2/IdentityAccounts/{policyid}                              |
| Return the notifications for this project (project uid)                                  | /v2/Notifications/{projectuid}                               |
| Return the actual valid pricelist for this project (project uid)                         | /v2/Pricelist/{projectuid}                                   |
| Return detail information about a project                                                | /v2/ProjectDetails/{projectuid}                              |
| Return the saleconditions for this project (project uid)                                 | /v2/SaleConditions/{projectuid}                              |
| List all your projects                                                                   | /v2/ListProjects                                             |
| List all your projects with pagination                                                   | /v2/ListProjects/{count}/{page}                              |
| Update the discounts of a project                                                        | /v2/UpdateDiscounts/{projectuid}                             |
| Update the notifications of a project                                                    | /v2/UpdateNotifications/{projectuid}                         |
| Update a pricelist of a project                                                          | /v2/UpdatePricelist/{projectuid}                             |
| Update the saleconditions of a project                                                   | /v2/UpdateSaleConditions/{projectuid}                        |

### Payment transactions

| Create a payment transaction                         | /v2/CreatePaymentTransaction                                                              |
| ---------------------------------------------------- | ----------------------------------------------------------------------------------------- |
| Return payment transaction state                     | /v2/ProceedPaymentTransaction/{paymenttransactionuid}/GetTransactionState                 |
| Return payment address                               | /v2/ProceedPaymentTransaction/{paymenttransactionuid}/PaymentAddress                      |
| Sign MultiSig                                        | /v2/ProceedPaymentTransaction/{paymenttransactionuid}/SignDecentralPayment                |
| Check payment address                                | /v2/ProceedPaymentTransaction/{paymenttransactionuid}/CheckPaymentAddress                 |
| Cancel payment transaction                           | /v2/ProceedPaymentTransaction/{paymenttransactionuid}/CancelTransaction                   |
| Return Pricelist of project                          | /v2/ProceedPaymentTransaction/{paymenttransactionuid}/GetPriceListForProject              |
| Lock NFT                                             | /v2/ProceedPaymentTransaction/{paymenttransactionuid}/LockNft                             |
| Lock ADA                                             | /v2/ProceedPaymentTransaction/{paymenttransactionuid}/LockAda                             |
| Submit Transaction                                   | /v2/ProceedPaymentTransaction/{paymenttransactionuid}/SubmitTransaction                   |
| Place bid on auction                                 | /v2/ProceedPaymentTransaction/{paymenttransactionuid}/BetOnAuction                        |
| Buy direct sale                                      | /v2/ProceedPaymentTransaction/{paymenttransactionuid}/BuyDirectsale                       |
| Buy from secondary sale (direct sale) smart contract | /v2/ProceedPaymentTransaction/{paymenttransactionuid}/BuyoutSmartcontractAddress          |
| Directsale offer                                     | /v2/ProceedPaymentTransaction/{paymenttransactionuid}/SellDirectsaleOffer                 |
| End transaction                                      | /v2/ProceedPaymentTransaction/{paymenttransactionuid}/EndTransaction                      |
| Reserve vie paymentgateway for mint and send         | /v2/ProceedPaymentTransaction/{paymenttransactionuid}/ReservePaymentgatewayMintAndSendNft |
| Mint and send                                        | /v2/ProceedPaymentTransaction/{paymenttransactionuid}/MintAndSendPaymentgatewayNft        |
| Add custom properties                                | /v2/ProceedPaymentTransaction/{paymenttransactionuid}/UpdateCustomProperties              |

### Whitelist

| Return all entries of a projects whitelist | /v2/ManageWhitelist/{projectuid}                         |
| ------------------------------------------ | -------------------------------------------------------- |
| Add an entry to a projects whitelist       | /v2/ManageWhitelist/{projectuid}/{address}/{countofnfts} |
| Delete an entry from a projects whitelist  | /v2/ManageWhitelist/{projectuid}/{address}               |

### Mint

| Mints random Nfts and sends it to an Address          | /v2/MintAndSendRandom/{projectuid}/{countnft}/{receiveraddress}              |
| ----------------------------------------------------- | ---------------------------------------------------------------------------- |
| Mints a specific Nft and sends it to an Address       | /v2/MintAndSendSpecific/{projectuid}/{nftuid}/{tokencount}/{receiveraddress} |
| Mints the royalty token                               | /v2/MintRoyaltyToken/{projectuid}/{royaltyaddress}/{percentage}              |
| ReMints a specific Nft and sends it to a burn address | /v2/RemintAndBurn/{projectuid}/{nftuid}                                      |

### Tools

| Check if there applies a discount for an address                          | /v2/CheckIfEglibleForDiscount/{projectuid}/{address}                  |
| ------------------------------------------------------------------------- | --------------------------------------------------------------------- |
| Check, if an address matches the sale condtions                           | /v2/CheckIfSaleCondtionsMet/{projectuid}/{address}/{countnft}         |
| Return the utxo of an address                                             | /v2/CheckUtxo/{address}                                               |
| Return active direct sale listings of a stake address                     | /v2/GetActiveDirectsaleListings/{stakeaddress}                        |
| Return the actual price in EUR and USD for ADA                            | /v2/GetAdaRates                                                       |
| Return all assets that are in a wallet                                    | /v2/GetAllAssetsInWallet/{address}                                    |
| Return the quantity of a specific token in a wallet                       | /v2/GetAmountOfSpecificTokenInWallet/{address}/{policyid}/{tokenname} |
| Return the quantity of a specific token in a wallet                       | /v2/GetAmountOfSpecificTokenInWallet/{policyid}/{tokenname}           |
| Return the Token Registry Information for a specific token (if available) | /v2/GetCardanoTokenRegistryInformation/{policyid}/{tokenname}         |
| Return a snapshot with all addresses and tokens for a specific policyid   | /v2/GetPolicySnapshot/{policyid}/{cumulateStakeAddresses}             |
| Return the royalty information for a specific policyid                    | /v2/GetRoyaltyInformation/{policyid}                                  |

### Address reservation (sale)

| Cancel a address reservation (project uid)                                                                                           | /v2/CancelAddressReservation/{projectuid}/{paymentaddress}                                   |
| ------------------------------------------------------------------------------------------------------------------------------------ | -------------------------------------------------------------------------------------------- |
| Check an address for state changes (project uid)                                                                                     | /v2/CheckAddress/{projectuid}/{address}                                                      |
| Check an custom property for state changes (project uid)                                                                             | /v2/CheckAddressWithCustomproperty/{projectuid}/{customproperty}                             |
| Return an address for a random nft sale (project id)                                                                                 | /v2/GetPaymentAddressForRandomNftSale/{projectuid}/{countnft}/{lovelace}/{customeripaddress} |
| Return an address for a random nft sale (price from pricelist) (project id)                                                          | /v2/GetPaymentAddressForRandomNftSale/{projectuid}/{countnft}/{customeripaddress}            |
| Return an address for a specific nft sale (no random distribution) (project and nft id)                                              | /v2/GetPaymentAddressForSpecificNftSale/{nftuid}/{tokencount}/{lovelace}/{customeripaddress} |
| Return an address for a specific nft sale (no random distribution) - price from pricelist or specific nft price (project and nft id) | /v2/GetPaymentAddressForSpecificNftSale/{nftuid}/{tokencount}/{customeripaddress}            |
| Return an address for a multiple specific nfts sale (no random distribution) (project id)                                            | /v2/GetPaymentAddressForSpecificNftSale/{customeripaddress}                                  |

### Wallet validation

| Return the result of a wallet validation | /v2/CheckWalletValidation/{validationuid}       |
| ---------------------------------------- | ----------------------------------------------- |
| Return  an address for wallet validation | /v2/GetWalletValidationAddress/{validationname} |
| Return an address for wallet validation  | /v2/GetWalletValidationAddress                  |

### Managed wallets

| Create an Managed Wallet               | /v2/CreateWallet/{customerid}/{walletpassword}/{enterpriseaddress}/{walletname} |
| -------------------------------------- | ------------------------------------------------------------------------------- |
| Create an Managed Wallet               | /v2/CreateWallet/{customerid}/{walletpassword}/{enterpriseaddress}              |
| Return the utxo of an Managed Wallet   | /v2/GetWalletUtxo/{address}                                                     |
| Import an Wallet                       | /v2/ImportWallet/{customerid}                                                   |
| Return the utxo of an Managed Wallet   | /v2/ListAllWallets/{customerid}                                                 |
| Make a transaction on a managed Wallet | /v2/MakeTransaction/{customerid}/{senderaddress}/{walletpassword}               |

### Auctions

| Returns the state - and the last bids of a auction project | /v2/AuctionState/{auctionuid} |
| ---------------------------------------------------------- | ----------------------------- |
|                                                            |                               |

### Smart Contract

| Return smart contract address                                           | /v2/GetBuyOutSmartcontractAddress/{customerid}/{txHashLockedinAssets} |
| ----------------------------------------------------------------------- | --------------------------------------------------------------------- |
| Return the datum information for a smartcontract directsale transaction | /v2/GetDatumInformationForSmartcontractDirectsaleTransaction/{txhash} |
| Return listed Assets in Payment transaction                             | /v2/GetListedAssetPaymentTransaction/{policyid}/{assetnameinhex}      |

### IPFS

| Upload a File pin it to IPFS | /v2/UploadToIpfs/{customerid} |
| ---------------------------- | ----------------------------- |
|                              |                               |


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.nmkr.io/nmkr-studio-api/api-features.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
