valorant-api-types
Version:
A collection of documented endpoints and return types for the unofficial Valorant API
225 lines (224 loc) • 9.78 kB
TypeScript
import { z } from 'zod';
export declare const playerMMREndpoint: {
readonly name: "Player MMR";
readonly description: "Get a player's MMR and history";
readonly queryName: "MMR_FetchPlayer";
readonly category: "PVP Endpoints";
readonly type: "pd";
readonly suffix: "mmr/v1/players/{puuid}";
readonly riotRequirements: {
readonly token: true;
readonly entitlement: true;
readonly clientPlatform: true;
readonly clientVersion: true;
};
readonly responses: {
readonly '200': z.ZodObject<{
Version: z.ZodNumber;
Subject: z.ZodString;
NewPlayerExperienceFinished: z.ZodBoolean;
QueueSkills: z.ZodRecord<z.ZodString, z.ZodObject<{
TotalGamesNeededForRating: z.ZodNumber;
TotalGamesNeededForLeaderboard: z.ZodNumber;
CurrentSeasonGamesNeededForRating: z.ZodNumber;
SeasonalInfoBySeasonID: z.ZodRecord<z.ZodString, z.ZodObject<{
SeasonID: z.ZodString;
NumberOfWins: z.ZodNumber;
NumberOfWinsWithPlacements: z.ZodNumber;
NumberOfGames: z.ZodNumber;
Rank: z.ZodNumber;
CapstoneWins: z.ZodNumber;
LeaderboardRank: z.ZodNumber;
CompetitiveTier: z.ZodNumber;
RankedRating: z.ZodNumber;
WinsByTier: z.ZodNullable<z.ZodEffects<z.ZodRecord<z.ZodString, z.ZodNumber>, Map<number, number>, Record<string, number>>>;
GamesNeededForRating: z.ZodNumber;
TotalWinsNeededForRank: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
CompetitiveTier: number;
SeasonID: string;
NumberOfWins: number;
WinsByTier: Map<number, number> | null;
Rank: number;
LeaderboardRank: number;
NumberOfWinsWithPlacements: number;
NumberOfGames: number;
CapstoneWins: number;
RankedRating: number;
GamesNeededForRating: number;
TotalWinsNeededForRank: number;
}, {
CompetitiveTier: number;
SeasonID: string;
NumberOfWins: number;
WinsByTier: Record<string, number> | null;
Rank: number;
LeaderboardRank: number;
NumberOfWinsWithPlacements: number;
NumberOfGames: number;
CapstoneWins: number;
RankedRating: number;
GamesNeededForRating: number;
TotalWinsNeededForRank: number;
}>>;
}, "strip", z.ZodTypeAny, {
TotalGamesNeededForRating: number;
TotalGamesNeededForLeaderboard: number;
CurrentSeasonGamesNeededForRating: number;
SeasonalInfoBySeasonID: Record<string, {
CompetitiveTier: number;
SeasonID: string;
NumberOfWins: number;
WinsByTier: Map<number, number> | null;
Rank: number;
LeaderboardRank: number;
NumberOfWinsWithPlacements: number;
NumberOfGames: number;
CapstoneWins: number;
RankedRating: number;
GamesNeededForRating: number;
TotalWinsNeededForRank: number;
}>;
}, {
TotalGamesNeededForRating: number;
TotalGamesNeededForLeaderboard: number;
CurrentSeasonGamesNeededForRating: number;
SeasonalInfoBySeasonID: Record<string, {
CompetitiveTier: number;
SeasonID: string;
NumberOfWins: number;
WinsByTier: Record<string, number> | null;
Rank: number;
LeaderboardRank: number;
NumberOfWinsWithPlacements: number;
NumberOfGames: number;
CapstoneWins: number;
RankedRating: number;
GamesNeededForRating: number;
TotalWinsNeededForRank: number;
}>;
}>>;
LatestCompetitiveUpdate: z.ZodObject<{
MatchID: z.ZodString;
MapID: z.ZodString;
SeasonID: z.ZodString;
MatchStartTime: z.ZodEffects<z.ZodNumber, Date, number>;
TierAfterUpdate: z.ZodNumber;
TierBeforeUpdate: z.ZodNumber;
RankedRatingAfterUpdate: z.ZodNumber;
RankedRatingBeforeUpdate: z.ZodNumber;
RankedRatingEarned: z.ZodNumber;
RankedRatingPerformanceBonus: z.ZodNumber;
CompetitiveMovement: z.ZodLiteral<"MOVEMENT_UNKNOWN">;
AFKPenalty: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
SeasonID: string;
MapID: string;
MatchID: string;
MatchStartTime: Date;
TierAfterUpdate: number;
TierBeforeUpdate: number;
RankedRatingAfterUpdate: number;
RankedRatingBeforeUpdate: number;
RankedRatingEarned: number;
RankedRatingPerformanceBonus: number;
CompetitiveMovement: "MOVEMENT_UNKNOWN";
AFKPenalty: number;
}, {
SeasonID: string;
MapID: string;
MatchID: string;
MatchStartTime: number;
TierAfterUpdate: number;
TierBeforeUpdate: number;
RankedRatingAfterUpdate: number;
RankedRatingBeforeUpdate: number;
RankedRatingEarned: number;
RankedRatingPerformanceBonus: number;
CompetitiveMovement: "MOVEMENT_UNKNOWN";
AFKPenalty: number;
}>;
IsLeaderboardAnonymized: z.ZodBoolean;
IsActRankBadgeHidden: z.ZodBoolean;
}, "strip", z.ZodTypeAny, {
Subject: string;
Version: number;
NewPlayerExperienceFinished: boolean;
QueueSkills: Record<string, {
TotalGamesNeededForRating: number;
TotalGamesNeededForLeaderboard: number;
CurrentSeasonGamesNeededForRating: number;
SeasonalInfoBySeasonID: Record<string, {
CompetitiveTier: number;
SeasonID: string;
NumberOfWins: number;
WinsByTier: Map<number, number> | null;
Rank: number;
LeaderboardRank: number;
NumberOfWinsWithPlacements: number;
NumberOfGames: number;
CapstoneWins: number;
RankedRating: number;
GamesNeededForRating: number;
TotalWinsNeededForRank: number;
}>;
}>;
LatestCompetitiveUpdate: {
SeasonID: string;
MapID: string;
MatchID: string;
MatchStartTime: Date;
TierAfterUpdate: number;
TierBeforeUpdate: number;
RankedRatingAfterUpdate: number;
RankedRatingBeforeUpdate: number;
RankedRatingEarned: number;
RankedRatingPerformanceBonus: number;
CompetitiveMovement: "MOVEMENT_UNKNOWN";
AFKPenalty: number;
};
IsLeaderboardAnonymized: boolean;
IsActRankBadgeHidden: boolean;
}, {
Subject: string;
Version: number;
NewPlayerExperienceFinished: boolean;
QueueSkills: Record<string, {
TotalGamesNeededForRating: number;
TotalGamesNeededForLeaderboard: number;
CurrentSeasonGamesNeededForRating: number;
SeasonalInfoBySeasonID: Record<string, {
CompetitiveTier: number;
SeasonID: string;
NumberOfWins: number;
WinsByTier: Record<string, number> | null;
Rank: number;
LeaderboardRank: number;
NumberOfWinsWithPlacements: number;
NumberOfGames: number;
CapstoneWins: number;
RankedRating: number;
GamesNeededForRating: number;
TotalWinsNeededForRank: number;
}>;
}>;
LatestCompetitiveUpdate: {
SeasonID: string;
MapID: string;
MatchID: string;
MatchStartTime: number;
TierAfterUpdate: number;
TierBeforeUpdate: number;
RankedRatingAfterUpdate: number;
RankedRatingBeforeUpdate: number;
RankedRatingEarned: number;
RankedRatingPerformanceBonus: number;
CompetitiveMovement: "MOVEMENT_UNKNOWN";
AFKPenalty: number;
};
IsLeaderboardAnonymized: boolean;
IsActRankBadgeHidden: boolean;
}>;
};
};
export type PlayerMMRResponse = z.input<typeof playerMMREndpoint.responses['200']>;