Skip to main content

Get Tournament Drops

Retrieve NFT drops associated with a specific tournament.

Endpoint

GET /api/v2/tournament/{id}/drops/

Authentication

This endpoint is public and does not require authentication.

Description

This endpoint returns all NFT drops associated with a specific tournament. These drops include airdrops, NFT collections, and other blockchain assets linked to the tournament.

Path Parameters

ParameterTypeRequiredDescription
idstringYesUnique identifier for the tournament

Request Example

GET /api/v2/tournament/tournament-123/drops/

Response

Success Response (200)

{
"data": [
{
"id": "drop-123",
"name": "Tournament Rewards",
"isActive": true,
"startDate": 1704110400000,
"endDate": 1704715200000,
"contractAddress": "0x1234567890123456789012345678901234567890",
"hasMultipleContracts": false,
"isVIP": false,
"whitelistEnabled": true,
"chain": "ethereum",
"chainId": 1,
"network": "mainnet",
"description": "Exclusive rewards for tournament participants",
"moreInfoUrl": "https://example.com/more-info",
"logo": "https://example.com/drop-logo.jpg",
"numberOfRarities": 3,
"hasDailyCheckIn": false,
"magicEdenGoldTokenName": null,
"slug": "tournament-rewards",
"cards": [
{
"rarity": 1,
"image": "https://example.com/card1.jpg",
"animation": "https://example.com/animation1.mp4",
"burnThreshold": 100,
"name": "Common Card",
"base": 50,
"stack": 10,
"maximum": 1000
},
{
"rarity": 2,
"image": "https://example.com/card2.jpg",
"burnThreshold": 200,
"name": "Rare Card",
"base": 20,
"stack": 5,
"maximum": 500
}
],
"marketplaces": [
{
"name": "OpenSea",
"url": "https://opensea.io/collection/tournament-rewards",
"icon": "https://opensea.io/favicon.ico"
},
{
"name": "Magic Eden",
"url": "https://magiceden.io/collections/tournament-rewards",
"icon": "https://magiceden.io/favicon.ico"
}
],
"phases": [
{
"name": "Early Bird",
"price": 0.05,
"currency": "ETH"
},
{
"name": "Public Sale",
"price": 0.1,
"currency": "ETH"
}
]
}
]
}

Error Response (404)

{
"message": "Tournament not found",
"status": 404
}

Response Fields

Main Drop Fields

FieldTypeDescription
dataarrayArray of drop objects
data[].idstringUnique drop identifier
data[].namestringDrop name
data[].isActivebooleanWhether the drop is currently active
data[].startDatenumberDrop start date (Unix timestamp in ms)
data[].endDatenumberDrop end date (Unix timestamp in ms)
data[].contractAddressstringSmart contract address
data[].hasMultipleContractsbooleanWhether the drop has multiple contracts
data[].isVIPbooleanWhether this is a VIP drop
data[].whitelistEnabledbooleanWhether whitelist is enabled
data[].chainstringBlockchain network name
data[].chainIdnumberBlockchain network ID
data[].networkstringNetwork type (mainnet, testnet, etc.)
data[].descriptionstringDrop description
data[].moreInfoUrlstringURL for additional information
data[].logostringDrop logo image URL
data[].numberOfRaritiesnumberNumber of different rarity levels
data[].hasDailyCheckInbooleanWhether daily check-in is available
data[].magicEdenGoldTokenNamestringMagic Eden gold token name (nullable)
data[].slugstringURL-friendly identifier
data[].cardsarrayArray of rarity card objects
data[].marketplacesarrayArray of marketplace objects (nullable)
data[].phasesarrayArray of mint phase objects (nullable)

Card/Rarity Fields

FieldTypeDescription
data[].cards[].raritynumberRarity level
data[].cards[].imagestringCard image URL
data[].cards[].animationstringCard animation URL (optional)
data[].cards[].burnThresholdnumberBurn threshold value
data[].cards[].namestringCard name
data[].cards[].basenumberBase value
data[].cards[].stacknumberStack value
data[].cards[].maximumnumberMaximum value

Marketplace Fields

FieldTypeDescription
data[].marketplaces[].namestringMarketplace name
data[].marketplaces[].urlstringMarketplace URL
data[].marketplaces[].iconstringMarketplace icon URL

Mint Phase Fields

FieldTypeDescription
data[].phases[].namestringPhase name
data[].phases[].pricenumberPhase price
data[].phases[].currencystringPrice currency

Usage Example

const response = await fetch("https://api.intraverse.io/api/v2/tournament/tournament-123/drops/");

const result = await response.json();

console.log(`Found ${result.data.length} drops for tournament`);

result.data.forEach((drop) => {
console.log(`\n${drop.name} (${drop.slug})`);
console.log(`- ID: ${drop.id}`);
console.log(`- Description: ${drop.description}`);
console.log(`- Active: ${drop.isActive}`);
console.log(`- Chain: ${drop.chain} (${drop.chainId})`);
console.log(`- Network: ${drop.network}`);
console.log(`- Contract: ${drop.contractAddress}`);
console.log(`- VIP: ${drop.isVIP}`);
console.log(`- Whitelist: ${drop.whitelistEnabled}`);
console.log(`- Start: ${new Date(drop.startDate).toISOString()}`);
console.log(`- End: ${new Date(drop.endDate).toISOString()}`);
console.log(`- Rarities: ${drop.numberOfRarities}`);
console.log(`- Daily Check-in: ${drop.hasDailyCheckIn}`);

// Log cards/rarities
console.log(`- Cards: ${drop.cards.length}`);
drop.cards.forEach((card, index) => {
console.log(` ${index + 1}. ${card.name} (Rarity: ${card.rarity})`);
console.log(` Base: ${card.base}, Stack: ${card.stack}, Max: ${card.maximum}`);
});

// Log marketplaces
if (drop.marketplaces && drop.marketplaces.length > 0) {
console.log(`- Marketplaces: ${drop.marketplaces.map((m) => m.name).join(", ")}`);
}

// Log mint phases
if (drop.phases && drop.phases.length > 0) {
console.log(`- Mint Phases:`);
drop.phases.forEach((phase, index) => {
console.log(` ${index + 1}. ${phase.name}: ${phase.price} ${phase.currency}`);
});
}
});

Error Handling

ErrorDescriptionSolution
Tournament not foundTournament ID doesn't existCheck tournament ID

Next Steps