List NFTs

List NFTs owned by a user

Retrieves a list of NFTs owned by a specified PLYR ID, with optional filtering by NFT contract address and game ID.

Endpoint: /game/nft/list Method: GET

{
    plyrId: string;        // The PLYR ID of the user
    chainId: string;       // Chain ID (required)
    nft?: string;          // Optional NFT contract address to filter by
    gameId?: string;       // Optional game ID
}

Example Usage

// Setup request parameters
const timestamp = Date.now().toString();
const plyrId = 'player123';
const chainId = '43114'; // Avalanche C-Chain
const nftAddress = '0x1234567890123456789012345678901234567890'; // Optional
const gameId = 'game456'; // Optional

// For GET requests with no body, pass null as the body for HMAC
const hmac = generateHmacSignature(timestamp, null, secretKey);

// Make the API request with optional filters
let url = apiEndpoint + `/game/nft/list?plyrId=${plyrId}&chainId=${chainId}&gameId=${gameId}&nft=${nftAddress}`;

const response = await axios.get(url, {
	headers: {
		apikey: apiKey,
		signature: hmac,
		timestamp: timestamp
	}
});

// Process the response
console.log(`User has ${response.data.tokens.length} NFTs`);
response.data.tokens.forEach((token) => {
	console.log(`NFT Contract: ${token.contract}`);
	console.log(`Token ID: ${token.tokenId}`);
	if (token.metadata) {
		console.log(`Name: ${token.metadata.name}`);
		console.log(`Description: ${token.metadata.description}`);
		console.log(`Image: ${token.metadata.image}`);
	}
	console.log('---');
});

Last updated