What are SFTs?
SFTs (semi-fungible tokens) follow the ERC-1155 standard. Each token is a replica of a predefined template. Each collection (smart contract) can contain multiple templates, which can contain many tokens.This API only supports EVM chains self-serve. Contact us if you need support for another chain.
Integration steps
1. Create a Developer Account
To get started, create a developer account in the Crossmint Staging Console. Open that link, sign in, and accept the dialog to continue.Crossmint offers two consoles: staging, for development and testing, and
production.
2. Get an API Key
Once you log in to the console, the next step is to create an . Click the "Integrate" tab and click on the "API Keys" option on top. Within the “Server-side keys” section, click the “Create new key” button in the top right. Then, check the scopesnfts.create
, nfts.read
, and collections.create
under the “Minting API”
category and create your key. Save this key for the next step.
3. Create an SFT collection
With our key created, we’re now going to create an SFT collection to hold our templates.createCollection.js
Example response
Example response
JSON
id
from the response as your COLLECTION_ID
for the next steps.
4. Create a template within that collection
Now, let’s create a template within our collection:createTemplate.js
Example response
Example response
JSON
templateId
from the response for the next step.
5. Mint an SFT from a template
Now, let’s mint an SFT from our template and send it to a wallet or email address:mintSFT.js
Example response
Example response
JSON
6. Confirm Delivery of the SFT
The mint has started processing. However, blockchains can take a few seconds (or, at times of extreme network congestion, even minutes) to confirm the operation. Before showing the user a success screen, the next step is checking the status of the mint. To do this, grab theactionId
received at the end of step 5 and use it
alongside your API key in one of the snippets below.
Example response
Example response
Here is an example response from calling the status API:
JSON
Congratulations. You have minted your first SFT 🥷 🎉
For scalable production applications, consider using webhooks to
determine when your SFT has been minted, instead of periodically polling for its status via the API.
View your SFTs
-
If the SFTs were delivered to an , the recipient can see them by:
- Logging into their wallet from Crossmint’s website. For staging, they must use https://staging.crossmint.com.
- From your website if you use embedded wallets. See the API for getting the NFTs in a wallet.
- If the SFTs were delivered to a wallet address, the user will be able to see them there directly, connecting to testnet if needed, or on the testnet blockchain explorer.
Launching in Production
For production, the steps are almost identical, but some changes are required:- Create a developer account on the production console.
- Add credits to your account from Billing & Usage.
- Then, create a production key on the API Keys page with the same API scopes.
- Modify all code snippets with
const env = "www"
, so they use the production APIs. You may also need to change thechain
variable to match your production blockchain. - Check the guide with best practices