Tournaments API
Below, you'll find all endpoints needed to fetch all available data about tournaments in a guild.
info
For these endpoints, there is an exception from our API Rules:
You MAY store leaderboard data permanently in your systems as that would be required to build power rankings or similar things, and share it with users of your systems. All other rules remain unchanged.
warning
Note that these endpoints require a separate Authorization scope, so you might have to re-authorize existing guilds.
GET
Get list of tournaments
https://yunite.xyz/api/v3/guild/{guildId}/tournaments
- Request
- Response
Path Parameters
Query Parameters
Name | Value type | Description |
---|---|---|
guildId | Guild ID Snowflake | The ID of the guild you want to access |
tournamentId | UUIDv4 | The ID of the tournament you want to access |
Name | Value type | Description |
---|---|---|
before | ISO timestamp | Optional; Only return tournaments that have started before this timestamp |
after | ISO timestamp | Optional; Only return tournaments that have started after this timestamp |
- Schema
- Example
{ "type": "array", "itemSchema": { "type": "object", "properties": { "id": { "type": "string/UUIDv4", "value": "A unique tournament ID" }, "name": { "type": "string", "value": "public name of the tournament" }, "description": { "type": "string", "value": "public description of the tournament" }, "queueSize": { "type": "integer", "value": "how many players per team" }, "pointSystem": { "type": "object", "properties": { "pointsPerKill": { "type": "integer", "value": "amount of points awared per kill" }, "pointsPerPlacement": { "type": "object", "value": "keys: placement, value: points for this placement" } } }, "consensusMin": { "type": "integer", "value": "how many player per match to get the match counted" }, "requireAllMembersOnDiscord": { "type": "boolean", "value": "wether or not all players must be on discord and linked" }, "resetPointsOnTeamChange": { "type": "boolean", "value": "wether only points played on the latest team config are counted" }, "allowFillOnlySessions": { "type": "boolean", "value": "wether Yunite should try to count additional sessions that have not been announced to it on game start" }, "allowRankDuplicates": { "type": "boolean", "value": "true if tiebreaking should be disabled" }, "allowTeamMateSwap": { "type": "boolean", "value": "wether the TO allowd mid-tournament team changes" }, "maxGamesScored": { "type": "integer", "value": "max. amount of games that should be counted per team; best matches will be used" }, "maxGamesPlayable": { "type": "integer", "value": "max. amount of games that a team should be allowed to play" }, "tiebreakers": { "type": "array", "itemSchema": { "type": "string", "value": "tiebreakers in order they are used; options: WINS, AVERAGE_ELIMINATIONS, SUM_ELIMINATIONS, AVERAGE_PLACEMENT, SCORE_PER_MATCH, SUM_TIME_SURVIVED, AVERAGE_TIME_SURVIVED" } }, "startDate": { "type": "string", "value": "ISO timestamp of the tournament start" }, "endDate": { "type": "string", "value": "ISO timestamp of the tournament end" }, "matchTemplate": { "type": "object", "properties": { "type": { "type": "string", "value": "selected mode" }, "region": { "type": "string", "value": "selected region as short code" }, "ruleText": { "type": "string", "value": "user defined rules" }, "leakDetectionEnabled": { "type": "boolean", "value": "wether or not leak detection is enabled" }, "useComplexCode": { "type": "boolean", "value": "wether or not a complex custom code will be used" }, "priorityLevels": { "type": "array", "itemSchema": { "type": "object", "properties": { "roles": { "type": "array", "itemSchema": { "type": "string", "value": "ids of roles of this level" } }, "timeout": { "type": "int", "value": "timeout in seconds" } } } }, "allowedPlatforms": { "type": "array", "itemSchema": { "type": "string", "value": "one of ['PC', 'PS4', 'XB1', 'SWITCH', 'MOBILE']. Note: PS4/XB1 may include next gen console players" } }, "roleToPing": { "type": "string?", "value": "role that will be pinged if sign up phase opened" }, "resultChannelID": { "type": "string?", "value": "channel for matchmaking results" }, "signUpChannelID": { "type": "string", "value": "channel for the sign up message" }, "leakDetectionChannelID": { "type": "string?", "value": "channel for potential leak notifications" }, "liveTrackingChannelID": { "type": "string?", "value": "channel in which Yunite posts the live tracking embed" }, "maxPlayers": { "type": "int", "value": "amount of max players receiving the code (note: not parties or signed up users, we mean overall ingame players)" } } } } } }
[ { "id": "12345-1234-1234-123456", "name": "My tournament", "description": "This is an awesome tournament", "queueSize": 3, "pointSystem": { "pointsPerKill": 1, "pointsPerPlacement": { "1": 30, "2": 20, "3": 10, "5": 5, "10": 2 } }, "requireAllMembersOnDiscord": true, "resetPointsOnTeamChange": false, "allowFillOnlySessions": false, "allowRankDuplicates": false, "consensusMin": 25, "allowTeamMateSwap": false, "maxGamesScored": 6, "maxGamesPlayable": 10, "tiebreakers": [ "WINS", "AVERAGE_ELIMINATIONS", "AVERAGE_PLACEMENT" ], "startDate": "2021-02-04T19:00:00Z", "endDate": "2021-02-04T23:00:00Z", "matchTemplate": { "type": "ARENA_SOLO", "region": "EU", "ruleText": "Don't W key", "leakDetectionEnabled": true, "useComplexCode": true, "priorityLevels": [ { "roles": [ "123", "456" ], "timeout": 30 } ], "allowedPlatforms": [ "PC", "PS4", "XB1" ], "roleToPing": "8738320394", "resultChannelID": "1234567890123", "signUpChannelID": "1234567890123", "leakDetectionChannelID": "1234455678765434", "liveTrackingChannelID": "345678976545678987654", "maxPlayers": 120 } } ]
GET
Get single tournament
https://yunite.xyz/api/v3/guild/{guildId}/tournaments/{tournamentId}
- Request
- Response
Path Parameters
Name | Value type | Description |
---|---|---|
guildId | Guild ID Snowflake | The ID of the guild you want to access |
- Schema
- Example
{ "type": "object", "properties": { "id": { "type": "string/UUIDv4", "value": "A unique tournament ID" }, "name": { "type": "string", "value": "public name of the tournament" }, "description": { "type": "string", "value": "public description of the tournament" }, "queueSize": { "type": "integer", "value": "how many players per team" }, "pointSystem": { "type": "object", "properties": { "pointsPerKill": { "type": "integer", "value": "amount of points awared per kill" }, "pointsPerPlacement": { "type": "object", "value": "keys: placement, value: points for this placement" } } }, "consensusMin": { "type": "integer", "value": "how many player per match to get the match counted" }, "requireAllMembersOnDiscord": { "type": "boolean", "value": "wether or not all players must be on discord and linked" }, "resetPointsOnTeamChange": { "type": "boolean", "value": "wether only points played on the latest team config are counted" }, "allowFillOnlySessions": { "type": "boolean", "value": "wether Yunite should try to count additional sessions that have not been announced to it on game start" }, "allowRankDuplicates": { "type": "boolean", "value": "true if tiebreaking should be disabled" }, "allowTeamMateSwap": { "type": "boolean", "value": "wether the TO allowd mid-tournament team changes" }, "maxGamesScored": { "type": "integer", "value": "max. amount of games that should be counted per team; best matches will be used" }, "maxGamesPlayable": { "type": "integer", "value": "max. amount of games that a team should be allowed to play" }, "tiebreakers": { "type": "array", "itemSchema": { "type": "string", "value": "tiebreakers in order they are used; options: WINS, AVERAGE_ELIMINATIONS, SUM_ELIMINATIONS, AVERAGE_PLACEMENT, SCORE_PER_MATCH, SUM_TIME_SURVIVED, AVERAGE_TIME_SURVIVED" } }, "startDate": { "type": "string", "value": "ISO timestamp of the tournament start" }, "endDate": { "type": "string", "value": "ISO timestamp of the tournament end" }, "matchTemplate": { "type": "object", "properties": { "type": { "type": "string", "value": "selected mode" }, "region": { "type": "string", "value": "selected region as short code" }, "ruleText": { "type": "string", "value": "user defined rules" }, "leakDetectionEnabled": { "type": "boolean", "value": "wether or not leak detection is enabled" }, "useComplexCode": { "type": "boolean", "value": "wether or not a complex custom code will be used" }, "priorityLevels": { "type": "array", "itemSchema": { "type": "object", "properties": { "roles": { "type": "array", "itemSchema": { "type": "string", "value": "ids of roles of this level" } }, "timeout": { "type": "int", "value": "timeout in seconds" } } } }, "allowedPlatforms": { "type": "array", "itemSchema": { "type": "string", "value": "one of ['PC', 'PS4', 'XB1', 'SWITCH', 'MOBILE']. Note: PS4/XB1 may include next gen console players" } }, "roleToPing": { "type": "string?", "value": "role that will be pinged if sign up phase opened" }, "resultChannelID": { "type": "string?", "value": "channel for matchmaking results" }, "signUpChannelID": { "type": "string", "value": "channel for the sign up message" }, "leakDetectionChannelID": { "type": "string?", "value": "channel for potential leak notifications" }, "liveTrackingChannelID": { "type": "string?", "value": "channel in which Yunite posts the live tracking embed" }, "maxPlayers": { "type": "int", "value": "amount of max players receiving the code (note: not parties or signed up users, we mean overall ingame players)" } } } } }
{ "id": "12345-1234-1234-123456", "name": "My tournament", "description": "This is an awesome tournament", "queueSize": 3, "pointSystem": { "pointsPerKill": 1, "pointsPerPlacement": { "1": 30, "2": 20, "3": 10, "5": 5, "10": 2 } }, "requireAllMembersOnDiscord": true, "resetPointsOnTeamChange": false, "allowFillOnlySessions": false, "allowRankDuplicates": false, "consensusMin": 25, "allowTeamMateSwap": false, "maxGamesScored": 6, "maxGamesPlayable": 10, "tiebreakers": [ "WINS", "AVERAGE_ELIMINATIONS", "AVERAGE_PLACEMENT" ], "startDate": "2021-02-04T19:00:00Z", "endDate": "2021-02-04T23:00:00Z", "matchTemplate": { "type": "ARENA_SOLO", "region": "EU", "ruleText": "Don't W key", "leakDetectionEnabled": true, "useComplexCode": true, "priorityLevels": [ { "roles": [ "123", "456" ], "timeout": 30 } ], "allowedPlatforms": [ "PC", "PS4", "XB1" ], "roleToPing": "8738320394", "resultChannelID": "1234567890123", "signUpChannelID": "1234567890123", "leakDetectionChannelID": "1234455678765434", "liveTrackingChannelID": "345678976545678987654", "maxPlayers": 120 } }
GET
Get leaderboard of tournament
https://yunite.xyz/api/v3/guild/{guildId}/tournaments/{tournamentId}/leaderboard
- Request
- Response
Path Parameters
Name | Value type | Description |
---|---|---|
guildId | Guild ID Snowflake | The ID of the guild you want to access |
tournamentId | UUIDv4 | The ID of the tournament you want to access |
- Schema
- Example
{ "type": "array", "itemSchema": { "type": "object", "properties": { "teamId": { "type": "UUIDv4", "value": "ID of the team" }, "users": { "type": "array", "itemSchema": { "type": "object", "properties": { "index": { "type": "integer", "value": "internal team player index" }, "discordId": { "type": "string", "value": "discord ID of the player, if present, null otherwise" }, "epicId": { "type": "string", "value": "epic ID of the player" } } } }, "placement": { "type": "integer", "value": "the placement of the team" }, "kills": { "type": "integer", "value": "overall kills of the team" }, "countedKills": { "type": "integer", "value": "counted kills of the team (kills in counted matches)" }, "games": { "type": "integer", "value": "overall amount of games played" }, "countedGames": { "type": "integer", "value": "amount of counted games the team played" }, "wins": { "type": "integer", "value": "amount of wins" }, "countedWins": { "type": "integer", "value": "amount of counted wins" }, "placementScore": { "type": "integer", "value": "amount of points resulting coming from placement in matches" }, "eliminationScore": { "type": "integer", "value": "amount of points resulting coming from kills in matches" }, "score": { "type": "integer", "value": "amount of points" }, "kpm": { "type": "double", "value": "kills per match (avg)" }, "averagePlacement": { "type": "double", "value": "average placement" }, "sumSecondsSurvived": { "type": "double", "value": "sum of seconds survived, might be used for tiebreaking" }, "averageSecondsSurvived": { "type": "double", "value": "average seconds survived in a single match, might be used for tiebreaking" }, "gameList": { "type": "array", "itemSchema": { "type": "object", "properties": { "placement": { "type": "integer", "value": "placement in this single match" }, "kills": { "type": "integer", "value": "kills in this single match" }, "survivalTime": { "type": "double", "value": "seconds survived in this single match (time from start until last team mate died)" }, "score": { "type": "integer", "value": "score of this team in this match" }, "sessionId": { "type": "string", "value": "the session id of the match" }, "counts": { "type": "boolean", "value": "true if this match is counted; false if not counted (can happen if not enough players or admin excluded it)" } } } }, "corrections": { "type": "array", "itemSchema": { "type": "object", "properties": { "amount": { "type": "integer", "value": "amount of points added; can be negative to substract points" }, "reason": { "type": "string", "value": "the reason for this correction" }, "executorId": { "type": "string", "value": "discord ID of the user that added the correction" }, "timestamp": { "type": "timestamp", "value": "time when this correction was added" } } } } } } }
[ { "users": [ { "discordId": "12345678901234", "epicId": "abcdef1234567890abcdef" } ], "placement": 1, "kills": 21, "countedKills": 21, "games": 3, "countedGames": 3, "wins": 2, "countedWins": 2, "placementScore": 200, "eliminationScore": 21, "score": 221, "kpm": 7, "averagePlacement": 1.33, "gameList": [ { "placement": 1, "kills": 7, "survivalTime": 1610.2, "score": 10, "sessionId": "abcdef1234567890abcdef", "counts": true }, { "placement": 1, "kills": 7, "survivalTime": 1610.2, "score": 10, "sessionId": "abcdef1234567890abcdef", "counts": true }, { "placement": 2, "kills": 7, "survivalTime": 1570.2, "score": 8, "sessionId": "abcdef1234567890abcdef", "counts": true } ] } ]
GET
Get list of matches in tournament
https://yunite.xyz/api/v3/guild/{guildId}/tournaments/{tournamentId}/matches
- Request
- Response
Path Parameters
Name | Value type | Description |
---|---|---|
guildId | Guild ID Snowflake | The ID of the guild you want to access |
tournamentId | UUIDv4 | The ID of the tournament you want to access |
- Schema
- Example
{ "type": "array", "itemSchema": { "type": "object", "properties": { "sessionId": { "type": "string", "value": "epic games hex session id of the match" }, "timestamp": { "type": "string", "value": "ISO timestamp of match start" }, "scoreCount": { "type": "integer", "value": "number of replay submissions" }, "players": { "type": "integer", "value": "player count of this match; match will not count if this number is below 'consensusMin' of the tournament" }, "ignored": { "type": "boolean", "value": "true if the TO decided to ignore this match; it will not count towards the leaderboard" }, "status": { "type": "string", "value": "one of ['NOT_SCORED', 'PARTIALLY_SCORED', 'SCORED']" } } } }
[ { "sessionId": "1234567890abcdef123456", "timestamp": "2021-02-04T19:00:00Z", "scoreCount": 3, "players": 93, "ignored": false, "status": "SCORED" } ]
GET
Get leaderboard of single match
https://yunite.xyz/api/v3/guild/{guildId}/tournaments/{tournamentId}/matches/{sessionId}
- Request
- Response
Path Parameters
Name | Value type | Description |
---|---|---|
guildId | Guild ID Snowflake | The ID of the guild you want to access |
tournamentId | UUIDv4 | The ID of the tournament you want to access |
sessionId | string | The ID of the match you want to access |
- Schema
- Example
{ "type": "array", "itemSchema": { "type": "object", "properties": { "team": { "type": "object", "properties": { "id": { "type": "string", "value": "internal team id" }, "players": { "type": "array", "itemSchema": { "type": "object", "properties": { "index": { "type": "integer", "value": "internal team player index" }, "discordId": { "type": "string", "value": "discord id of the player, if present, may be null" }, "epicId": { "type": "string", "value": "epic id of the player" } } } }, "sessionPlayers": { "type": "array", "itemSchema": { "type": "object", "properties": { "discordId": { "type": "string", "value": "discord id of one of the players that played this match for this session only, may be null" }, "epicId": { "type": "string", "value": "epic id of one of the players that played this match for this session only" } } } } } }, "placement": { "type": "integer", "value": "placement of this team in this match" }, "kills": { "type": "integer", "value": "kills of this team in this match" }, "survivalTime": { "type": "double", "value": "seconds survived in this match (time from start until last team mate died)" }, "score": { "type": "integer", "value": "score of this team in this match" }, "landingSpots": { "type": "map (as JSON object)", "keys": "User ID (Discord if present, Epic otherwise)", "values": { "type": "object", "properties": { "x": { "type": "double", "value": "x-coordinate" }, "y": { "type": "double", "value": "y-coordinate" } } } }, "deathLocations": { "type": "map (as JSON object)", "keys": "User ID (Discord if present, Epic otherwise)", "values": { "type": "object", "properties": { "x": { "type": "double", "value": "x-coordinate" }, "y": { "type": "double", "value": "y-coordinate" } } } }, "killFeeds": { "type": "map (as JSON object)", "keys": "User ID (Discord if present, Epic otherwise)", "values": { "type": "array", "itemSchema": { "type": "object", "properties": { "player": { "type": "string", "value": "ID of killed player (Discord if present, Epic otherwise)" }, "cause": { "type": "int", "value": "internal death cause" }, "knock": { "type": "boolean", "value": "true if this event is DBNO; false otherwise" }, "finish": { "type": "boolean", "value": "true if this event finished a DBNO player; false otherwise" }, "time": { "type": "double", "value": "time in seconds of this event since start of game" } } } } }, "locations": { "type": "map (as JSON object)", "keys": "User ID (Discord if present, Epic otherwise)", "values": { "type": "array", "itemSchema": { "type": "object", "properties": { "x": { "type": "double", "value": "x-coordinate" }, "y": { "type": "double", "value": "y-coordinate" } } } } } } } }
[ { "team": { "id": "12345-1234-1234-1234567", "players": [ { "index": 0, "discordId": "123456678891231", "epicId": "abcdef1234567890abcdef" }, { "index": 1, "discordId": "123456678891231", "epicId": "abcdef1234567890abcdef" } ], "sessionPlayers": [ { "discordId": "123456678891231", "epicId": "1234567890abcdef123456789" }, { "discordId": "123456678891231", "epicId": "1234567890abcdef123456789" } ] }, "placement": 1, "kills": 10, "survivalTime": 1532.4, "score": 234, "landingSpots": { "123456678891231": { "x": 32662.3, "y": 104322.3 }, "123456678891232": { "x": 32662.3, "y": 104322.3 } }, "deathLocations": { "123456678891231": { "x": 32662.3, "y": 104322.3 }, "123456678891232": { "x": 32662.3, "y": 104322.3 } }, "locations": { "123456678891231": [ { "x": 32662.3, "y": 104322.3 }, { "x": 32662.3, "y": 104322.3 } ], "123456678891232": [ { "x": 32662.3, "y": 104322.3 }, { "x": 32662.3, "y": 104322.3 } ] } } ]
GET
Get all teams
https://yunite.xyz/api/v3/guild/{guildId}/tournaments/{tournamentId}/teams
- Request
- Response
Path Parameters
Name | Value type | Description |
---|---|---|
guildId | Guild ID Snowflake | The ID of the guild you want to access |
tournamentId | UUIDv4 | The ID of the tournament you want to access |
- Schema
- Example
{ "type": "array", "itemSchema": { "type": "object", "properties": { "id": { "type": "UUIDv4", "value": "ID of the team" }, "players": { "type": "array", "itemSchema": { "type": "object", "properties": { "index": { "type": "integer", "value": "internal team player index" }, "discordId": { "type": "string", "value": "discord ID of the player, if present, null otherwise" }, "epicId": { "type": "string", "value": "epic ID of the player" } } } }, "disqualified": { "type": "boolean", "value": "wether or not the team has been disqualified" } } } }
[ { "id": "825cea40-8cbc-4952-b3d5-40db7fb701eb", "players": [ { "index": 0, "discordId": "112345678901234", "epicId": "abcdef1234567890abcdef" }, { "index": 1, "discordId": "112345678901234", "epicId": "abcdef1234567890abcdef" } ], "disqualified": false }, { "id": "d08bf9d2-e7ec-40ad-8390-f56ed4b587e8", "players": [ { "index": 0, "discordId": "112345678901234", "epicId": "abcdef1234567890abcdef" }, { "index": 1, "discordId": null, "epicId": "abcdef1234567890abcdef" } ], "disqualified": true } ]
POST
Add or update team
https://yunite.xyz/api/v3/guild/{guildId}/tournaments/{tournamentId}/teams
- Request
- Response
Path Parameters
Request Body
Name | Value type | Description |
---|---|---|
guildId | Guild ID Snowflake | The ID of the guild you want to access |
tournamentId | UUIDv4 | The ID of the tournament you want to access |
- Schema
- Example
{ "type": "object", "properties": { "id": { "type": "UUIDv4", "value": "ID of the team if you want to edit an existing team; omit or 'null' if you want to create a new team", "optional": true }, "players": { "type": "array", "itemSchema": { "type": "object", "properties": { "discordId": { "type": "string", "value": "discord ID of the player (at least one of discordId and epicId required; will be overridden if epicId present)", "optional": true }, "epicId": { "type": "string", "value": "epic ID of the player (at least one of discordId and epicId required)", "optional": true } } }, "optional": true }, "disqualified": { "type": "boolean", "value": "wether or not the team has been disqualified; if you want to disqualify a team, change this field (and leave the players array as 'null'); will be ignored on team creation", "optional": true } } }
{ "id": null, "players": [ { "epicId": "abcdef1234567890abcdef" }, { "discordId": "112345678901234" } ] }
- Schema
- Example
{ "type": "object", "properties": { "id": { "type": "UUIDv4", "value": "ID of the team" }, "players": { "type": "array", "itemSchema": { "type": "object", "properties": { "index": { "type": "integer", "value": "internal team player index" }, "discordId": { "type": "string", "value": "discord ID of the player, if present, null otherwise" }, "epicId": { "type": "string", "value": "epic ID of the player" } } } }, "disqualified": { "type": "boolean", "value": "wether or not the team has been disqualified" } } }
{ "id": "825cea40-8cbc-4952-b3d5-40db7fb701eb", "players": [ { "index": 0, "discordId": "112345678901234", "epicId": "abcdef1234567890abcdef" }, { "index": 1, "discordId": "112345678901234", "epicId": "abcdef1234567890abcdef" } ], "disqualified": false }
POST
Add or update teams in bulk
https://yunite.xyz/api/v3/guild/{guildId}/tournaments/{tournamentId}/teams/bulk
- Request
- Response
Path Parameters
Request Body
Name | Value type | Description |
---|---|---|
guildId | Guild ID Snowflake | The ID of the guild you want to access |
tournamentId | UUIDv4 | The ID of the tournament you want to access |
- Schema
- Example
{ "type": "array", "itemSchema": { "type": "object", "properties": { "id": { "type": "UUIDv4", "value": "ID of the team if you want to edit an existing team; omit or 'null' if you want to create a new team", "optional": true }, "players": { "type": "array", "itemSchema": { "type": "object", "properties": { "discordId": { "type": "string", "value": "discord ID of the player (at least one of discordId and epicId required; will be overridden if epicId present)", "optional": true }, "epicId": { "type": "string", "value": "epic ID of the player (at least one of discordId and epicId required)", "optional": true } } }, "optional": true }, "disqualified": { "type": "boolean", "value": "wether or not the team has been disqualified; if you want to disqualify a team, change this field (and leave the players array as 'null'); will be ignored on team creation", "optional": true } } } }
[ { "id": null, "players": [ { "epicId": "abcdef1234567890abcdef" }, { "discordId": "112345678901234" } ] }, { "id": null, "players": [ { "discordId": "740203287347420" }, { "discordId": "112345678901234" } ] } ]
- Schema
- Example
{ "type": "object", "properties": { "successTeams": { "type": "array", "itemSchema": { "type": "object", "properties": { "id": { "type": "UUIDv4", "value": "ID of the team" }, "players": { "type": "array", "itemSchema": { "type": "object", "properties": { "index": { "type": "integer", "value": "internal team player index" }, "discordId": { "type": "string", "value": "discord ID of the player, if present, null otherwise" }, "epicId": { "type": "string", "value": "epic ID of the player" } } } }, "disqualified": { "type": "boolean", "value": "wether or not the team has been disqualified" } } } }, "errorTeams": { "type": "array", "itemSchema": { "type": "object", "properties": { "statusCode": { "type": "int", "value": "a HTTP-equivalent status code that you would have received when trying to add this team over the single-team endpoint" }, "errorMessage": { "type": "string", "value": "the reason why this team could not be processed; in the single-team endpoint you would have received this string as body" }, "team": { "type": "object", "properties": { "id": { "type": "string", "value": "the id of the team; will still be null if you wanted to create a new team and it failed; contains the id you sent in your request otherwise" }, "players": { "type": "array", "itemSchema": { "type": "object", "properties": { "index": { "type": "integer", "value": "internal team player index" }, "discordId": { "type": "string", "value": "discord ID of the player if you sent it with your request; null otherwise" }, "epicId": { "type": "string", "value": "epic ID of the player if you sent it with your request; null otherwise" } } } }, "disqualified": { "type": "boolean", "value": "the disqualified flag you sent in your request or null if you didn't send it" } } } } } } } }
{ "successTeams": [ { "id": "825cea40-8cbc-4952-b3d5-40db7fb701eb", "players": [ { "index": 0, "discordId": "112345678901234", "epicId": "abcdef1234567890abcdef" }, { "index": 1, "discordId": "112345678901234", "epicId": "abcdef1234567890abcdef" } ], "disqualified": false }, { "id": "825cea40-8cbc-4952-b3d5-40db7fb701eb", "players": [ { "index": 0, "discordId": "112345678901234", "epicId": "abcdef1234567890abcdef" }, { "index": 1, "discordId": "112345678901234", "epicId": "abcdef1234567890abcdef" } ], "disqualified": false } ], "errorTeams": [ { "statusCode": 400, "errorMessage": "At least one player with a given Discord ID is not linked; all players that are submitted with a Discord ID only must be linked", "team": { "id": null, "players": [ { "index": 0, "discordId": "112345678901234", "epicId": null } ], "disqualified": null } }, { "statusCode": 404, "errorMessage": "team with that id not found", "team": { "id": "e1da6e55-60c7-40f0-fe86-6de1d72e007b", "players": [ { "index": 0, "discordId": "112345678901234", "epicId": null } ], "disqualified": false } } ] }
POST
Send tournament embed
https://yunite.xyz/api/v3/guild/{serverID}/tournaments/{tournamentId}/sendEmbed
Path ParametersName | Value type | Description |
---|---|---|
serverID | Guild ID Snowflake | The ID of the guild |
tournamentId | Tournament ID | The ID of the tournament |
- Schema
- Example
{ "type": "object", "properties": { "channel": { "type": "string", "value": "target text channel ID" } } }
{ "channel": "123456789012345678" }