PLYR GAMING UNIVERSE
  • API Endpoint
  • API Quickstart
  • API REFERENCE
    • Users
      • Authentication
        • PLYR[ID]
          • Login
          • Login and Approve
          • Logout
        • InstantPlayPass
          • RegisterIPP
          • RevealClaimingCode
          • VerifyClaimingCode
        • PLYR[CONNECT]
      • Check Session JWT
      • Get Basic User Info
      • Get Avatar
    • Game room
      • Create Game Room
      • Join Game Room
      • Pay Game Room
      • Earn Game Room
      • Leave Game Room
      • End Game Room
      • Helpers
        • Is Joined Game Room
        • Join and Pay
        • Earn and Leave
        • Create, Join and Pay
        • Earn, Leave and End
    • Assets
      • Tokens ( ERC-20 )
        • Get PLYR L1 Token List
        • Get User Token Balance
        • Get User Token Allowance
        • Approve User Token Spending
        • Revoke User Token Allowance
        • In-Game Chips
          • Create Chip
          • Mint Chip
          • Burn Chip
          • Transfer Chip
          • Get Chip Balance
          • Get Chip Info
      • NFTs ( ERC-721 )
        • Create NFT
        • Mint NFT
        • Transfer NFT
        • Burn NFT
        • Get NFT Balance
        • List NFTs
        • Check NFT Holding
        • Get NFT Credit
        • Get NFT Info
        • Get Zoo Genes
        • Official PLYR NFTs
          • Get User Zoo Genes
          • Get User Zoo Boosters
          • Get User Zoo Elixirs
      • Badge
        • Create Badge
        • Mint Badge
        • Remove Badge
        • Burn Badge
        • Transfer Badge
        • Get Badge Balance
        • List Badges
        • Get Badge Info
        • Get Badge Count
        • Get Badge by ID
        • Get Badge Owner
        • Check Badge Burn Status
    • Misc
      • Get Session JWT Public Key
      • Verify JWT Locally
      • Activity Logs
      • Get Task Message Status
Powered by GitBook
On this page
  1. API REFERENCE
  2. Assets
  3. Badge

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);
PreviousCreate BadgeNextRemove Badge

Last updated 11 days ago