Mint Badge
Mint a new badge to a recipient
Mints a new badge to a specified recipient address with associated metadata.
Endpoint: /game/badge/mint
Method: POST
{
nfts: string[]; // Array of badge contract addresses
addresses: string[]; // Array of recipient addresses
metaJsons: object[]; // Array of metadata JSON objects for each badge
chainId?: string; // Optional chain ID (defaults to configured chain ID)
}
{
taskId: string;
data: {
transactionHash: string; // The hash of the mint transaction
tokenId: string; // The ID of the minted badge
}
status: string;
}
{
error: string;
details?: any;
}
The `nfts`, `addresses`, and `metaJsons` arrays must have the same length. Each index represents a mint operation.
Example Usage
// Setup request parameters
const timestamp = Date.now().toString();
const body = {
nfts: ['0x1234567890123456789012345678901234567890'], // Badge contract address
addresses: ['0xabcdef1234567890abcdef1234567890abcdef'], // Recipient address
metaJsons: [
{
name: 'Achievement Badge',
description: 'Awarded for completing the tutorial',
image: 'https://example.com/badge.png',
attributes: [
{ trait_type: 'Type', value: 'Achievement' },
{ trait_type: 'Rarity', value: 'Common' },
{ trait_type: 'Category', value: 'Tutorial' }
]
}
],
chainId: '43114' // Avalanche C-Chain
};
// Generate HMAC signature
const hmac = generateHmacSignature(timestamp, body, secretKey);
// Make the API request
const response = await axios.post(apiEndpoint + '/game/badge/mint', body, {
headers: {
apikey: apiKey,
signature: hmac,
timestamp: timestamp
}
});
// Process the response
console.log('Mint Task ID:', response.data.taskId);
console.log('Transaction Hash:', response.data.data.transactionHash);
console.log('Token ID:', response.data.data.tokenId);
Last updated