/api/user/{userId|discordId}
GetUserResponseinterface GetUserResponse { id: number; /** @example "Sendou" */ name: string; /** @example "79237403620945920" */ discordId: string; /** @example "https://sendou.ink/u/sendou" */ url: string; /** @example "https://cdn.discordapp.com/avatars/79237403620945920/6fc41a44b069a0d2152ac06d1e496c6c.png" */ avatarUrl: string | null; /** @example "FI" */ country: string | null; socials: { twitch: string | null; /** YouTube channel ID @example "UCLN8s9Ogn71QcCYIPtb9mtw" */ youtube: string | null; /** @deprecated */ twitter: null; bsky: string | null; }; plusServerTier: 1 | 2 | 3 | null; weaponPool: Array<ProfileWeapon>; badges: Array<Badge>; /** Teams user is member of. The main team is always first in the array. */ teams: Array<GlobalTeamMembership>; /** Splatoon 3 splashtag name & ID, if one is set. @example "Sendou#2955" */ inGameName: string | null; /** User's pronouns. @example { "subject": "he", "object": "him" } */ pronouns: Pronouns | null; peakXp: number | null; /** Users current (or previous if it's off-season) ranked season (SendouQ & ranked tournaments) rank. Null if no rank for the season in question or the season does not have yet enough players on the leaderboard. */ currentRank: SeasonalRank | null; }
Example 200 /api/user/274
From creates read API token and calls public endpoint
Response
{
"id": 274,
"name": "Sendou",
"discordId": "79237403620945920",
"avatarUrl": null,
"url": "https://sendou.ink/u/79237403620945920",
"country": null,
"inGameName": null,
"pronouns": null,
"plusServerTier": null,
"socials": {
"twitch": null,
"youtube": null,
"bsky": null,
"twitter": null
},
"currentRank": null,
"peakXp": null,
"weaponPool": [],
"badges": [],
"teams": []
}