Mint NFT

Mint a new NFT to a recipient

Mints a new NFT to a specified recipient address with associated metadata.

Endpoint: /game/nft/mint Method: POST

{
    nfts: string[];           // Array of NFT contract addresses
    addresses: string[];      // Array of recipient addresses
    metaJsons: object[];      // Array of metadata JSON objects for each NFT
    chainId?: string;         // Optional chain ID (defaults to configured MINT_NFT_CHAIN_ID)
}

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'], // NFT contract address
	addresses: ['0xabcdef1234567890abcdef1234567890abcdef'], // Recipient address
	metaJsons: [
		{
			name: 'Rare Sword',
			description: 'A powerful sword with magical properties',
			image: 'https://example.com/sword.png',
			attributes: [
				{ trait_type: 'Rarity', value: 'Rare' },
				{ trait_type: 'Damage', value: 50 },
				{ trait_type: 'Element', value: 'Fire' }
			]
		}
	],
	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/nft/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