Minting a Drop via API
This guide will walk you through minting a drop using Holaplex Hub.
You can try it out using our GraphiQL explorer: https://api.holaplex.com/.
We'll assume you've already created an account in Hub and set up an organization, project, and drop. If you haven't, please take a look at ADDLINK.
Step 1: Authenticate
All API calls need a header of the form
{ "Authorization": "Your_API_Token" }
To get an API token:
a. Log into Hub
b. On your organization's page, open the "Credentials" tab
c. Click "Generate token"
Step 2: Create a customer and destination wallet
Each Hub token is minted to a specific customer and into a customer's wallet. Thus, the first step to mint a token is to create a customer and associated wallet where that token will be sent.
If you've already created a customer and customer wallet, skip to step N.
Create a customer
Customers are assigned to a
Minting a Drop
To mint a drop, you need to send the mintEdition
mutation with the required input parameters.
Mutation
mutation MintNft($input: MintDropInput!) {
mintEdition(input: $input) {
collectionMint {
address
owner
}
}
}
Input Parameters
$input
: AMintDropInput
object containing the details of the drop.
Example:
{
"drop": "drop-id",
"recipient": "wallet-address"
}
Example Request
mutation {
mintEdition(
input: {
drop: "drop-id",
recipient: "wallet-address"
}
) {
collectionMint {
address
owner
}
}
}
CURL:
curl 'https://api.holaplex.com/graphql' -H 'Accept-Encoding: gzip, deflate, br' -H 'Content-Type: application/json' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'DNT: 1' -H 'Origin: file://' -H 'Authorization: ACCESS-TOKEN' --data-binary '{"query":"mutation MintNft($input: MintDropInput!) {\n mintEdition(input: $input) {\n collectionMint {\n address\n owner\n }\n }\n}\n","variables":{"input":{"drop":"DROP-ID","recipient":"RECIPIENT-WALLET-ADDRESS"}}}' --compressed
Replace ACCESS-TOKEN
, DROP-ID
, and RECIPIENT-WALLET-ADDRESS
Example Response
{
"data": {
"mintEdition": {
"collectionMint": {
"address": "collection-address",
"owner": "wallet-address"
}
}
}
}
Input Parameters Explained
drop
: The UUID of the drop that you want to mint. It can be found in the URL of the Hub's drops pagerecipient
: The wallet address where the minted drop should be sent. This should be the address of the wallet created on the Holaplex Hub.
Note to find a customer's wallet address, perform the following query, e.g.:
{
project(id: "a56e7745-37a2-40b7-9d25-d5c20b6fc137") {
name
customer(id: "33dedde4-543d-4653-bc10-db0a38e719cc") {
wallet {
address
}
}
}
}
CURL:
curl 'https://api.holaplex.com/graphql' -H 'Accept-Encoding: gzip, deflate, br' -H 'Content-Type: application/json' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'DNT: 1' -H 'Origin: file://' -H 'Authorization: ACCESS-TOKEN' --data-binary '{"query":"{\n project(id:\"PROJECT-ID\") {\n\t\tname\n customer(id:\"CUSTOMER-ID\") {\n wallet {\n address\n }\n }\n }\n}"}' --compressed
Replace ACCESS-TOKEN
, PROJECT-ID
, and CUSTOMER-ID
After successfully minting the drop, you will receive a response containing the collection address and the owner wallet address. The collection address can be used to manage and query the drop on the Holaplex Hub platform.
Next Steps
After minting a drop, you can perform additional actions, such as querying the drop, etc. Check out the API docs to figure out what is possible!