Data Model Reference
This page summarizes reusable objects returned by the Zeqa Network REST API.
Response Envelope
| Field | Type | Description |
|---|---|---|
err | string or null | null on success. Contains an error message on failure. |
result | object or array | Endpoint-specific data. May be omitted when err is present. |
PlayerStats
| Field | Type | Description |
|---|---|---|
lifetime | LifetimeStats | Lifetime account totals. |
elo | Record<string, number> | Ranked ELO values keyed by lowercase game key. |
season_stats | SeasonStats | Current season kill and death totals. |
duel_stats | Record<string, DuelModeStats> | Duel stats keyed by display-mode name. |
ffa_stats | Record<string, FfaModeStats> | FFA stats keyed by display-mode name. |
rankings | Record<string, number> | Optional leaderboard placements when rankings=true. |
LifetimeStats
| Field | Type | Description |
|---|---|---|
kills | number | Lifetime kills. |
deaths | number | Lifetime deaths. |
coins | number | Coins value. |
shards | number | Shards value. |
bp | number | Battle-pass or progression points value. |
SeasonStats
| Field | Type | Description |
|---|---|---|
kills | number | Current season kills. |
deaths | number | Current season deaths. |
DuelModeStats
| Field | Type | Description |
|---|---|---|
ranked_wins | number | Ranked wins. |
ranked_losses | number | Ranked losses. |
unranked_wins | number | Unranked wins. |
unranked_losses | number | Unranked losses. |
current_winstreak | number | Current winstreak. |
highest_winstreak | number | Highest recorded winstreak. |
FfaModeStats
| Field | Type | Description |
|---|---|---|
kills | number | Kills in the FFA mode. |
deaths | number | Deaths in the FFA mode. |
current_killstreak | number | Current killstreak. |
highest_killstreak | number | Highest recorded killstreak. |
LeaderboardEntry
| Field | Type | Description |
|---|---|---|
username | string | Player username. |
{key} | number | Numeric value for the requested leaderboard key. |
PlayerCosmetics
| Field | Type | Description |
|---|---|---|
xuid | string | Player Xbox user id. |
name | string | Player username returned by Zeqa. |
potcolor | string | Selected potion color as an RGB string. |
projectile | string | Selected projectile cosmetic id. |
tag | string | Selected tag cosmetic id or an empty string. |
artifact | string | Selected artifact cosmetic id. |
cape | string | Selected cape cosmetic id. |
killphrase | string | Selected kill phrase cosmetic id. |
ownedprojectile | string | Comma-separated projectile cosmetic ids. |
ownedtag | string | Comma-separated tag cosmetic ids or an empty string. |
ownedartifact | string | Comma-separated artifact cosmetic ids. |
ownedcape | string | Comma-separated cape cosmetic ids. |
ownedkillphrase | string | Comma-separated kill phrase cosmetic ids. |
premium_bp | number | Premium battle-pass status as returned by Zeqa. |
free_bp_progress | number | Free battle-pass progress. |
premium_bp_progress | number | Premium battle-pass progress. |
login_streak | number | Player login streak. |
mount | string | Selected mount cosmetic id. |
ownedmount | string | Comma-separated mount cosmetic ids. |
elitetag | string | Selected elite tag cosmetic id or an empty string. |
TypeScript Types
type ApiResponse<T> =
| {err: null; result: T}
| {err: string; result?: never};
type PlayerStats = {
lifetime: LifetimeStats;
elo: Record<string, number>;
season_stats: SeasonStats;
duel_stats: Record<string, DuelModeStats>;
ffa_stats: Record<string, FfaModeStats>;
rankings?: Record<string, number>;
};
type LifetimeStats = {
kills: number;
deaths: number;
coins: number;
shards: number;
bp: number;
};
type SeasonStats = {
kills: number;
deaths: number;
};
type DuelModeStats = Partial<{
ranked_wins: number;
ranked_losses: number;
unranked_wins: number;
unranked_losses: number;
current_winstreak: number;
highest_winstreak: number;
}>;
type FfaModeStats = Partial<{
kills: number;
deaths: number;
current_killstreak: number;
highest_killstreak: number;
}>;
type LeaderboardEntry<TKey extends string> = {
username: string;
} & Record<TKey, number>;
type PlayerCosmetics = {
xuid: string;
name: string;
potcolor: string;
projectile: string;
tag: string;
artifact: string;
cape: string;
killphrase: string;
ownedprojectile: string;
ownedtag: string;
ownedartifact: string;
ownedcape: string;
ownedkillphrase: string;
premium_bp: number;
free_bp_progress: number;
premium_bp_progress: number;
login_streak: number;
mount: string;
ownedmount: string;
elitetag: string;
};