Launch Guild Tournament
Launch an accepted guild tournament. Requires the guilds.owner permission.
Endpoint
POST /api/v2/guild-tournaments/:id/launch
Authentication
This endpoint requires:
- JWT Token: User authentication
- Permission:
guilds.ownerrole (you must own the guild that owns this tournament)
Authorization: Bearer user-jwt-token-here
Description
Launches a guild tournament that has been accepted by a reviewer. The tournament must be in accepted status. Launching creates the actual tournament and transitions the guild tournament to launched status.
Path Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
id | string | Yes | Guild tournament ID |
Request Example
POST /api/v2/guild-tournaments/gt-123/launch
Response
Success Response (200)
{
"message": "Guild tournament launched successfully"
}
Error Response (400)
{
"message": "Cannot launch guild tournament with status pending",
"status": 400
}
Error Response (401)
{
"message": "Unauthorized",
"status": 401
}
Error Response (403)
{
"message": "You are not allowed to launch this tournament",
"status": 403
}
Error Response (404)
{
"message": "You don't have a guild",
"status": 404
}
Preconditions
- You must own a guild
- The guild tournament must belong to your guild
- The guild tournament must be in
acceptedstatus - For automatic prize distribution: treasury must have sufficient balance
Usage Example
// First check that the tournament is accepted
const getResponse = await fetch("https://api-stage.intraverse.io/api/v2/guild-tournaments/gt-123", {
headers: { Authorization: `Bearer ${jwtToken}` },
});
const tournament = await getResponse.json();
if (tournament.status === "accepted") {
const launchResponse = await fetch("https://api-stage.intraverse.io/api/v2/guild-tournaments/gt-123/launch", {
method: "POST",
headers: {
Authorization: `Bearer ${jwtToken}`,
},
});
if (launchResponse.ok) {
const result = await launchResponse.json();
console.log(result.message);
}
}