Thats a killer idea! They should join your idea!
Improve API Documentation

Speaking of API documentation, in the "Game results codes", there is code called "lose". Does anyone know the meaning of this? The other lost codes have some specific reason, such "resigned" or "checkmated".

After doing a bit of testing, I've found the "lost" game result code not used. Here's the game results schema I was able to figure out. This isn't official, just what I've found, and so far it's worked. I sampled 1000's of random users archives and got no validation errors. This is using Valibot in Javascript. But you can use this to give you an idea for whatever you need it for.
```js
// Literal unions for fixed values
const gameResults = union([
literal("win"),
literal("timeout"),
literal("abandoned"),
literal("repetition"),
literal("resigned"),
literal("checkmated"),
literal("insufficient"),
literal("stalemate"),
literal("timevsinsufficient"),
literal("agreed"),
literal("50move"),
literal("bughousepartnerlose"),
literal("kingofthehill"),
literal("threecheck"),
]);
const timeClasses = union([
literal("bullet"),
literal("rapid"),
literal("blitz"),
literal("daily"),
]);
// Player Schema (used for both `white` and `black`)
const playerSchema = object({
rating: number(),
result: gameResults,
"@id": string(),
username: string(),
uuid: pipe(string(), uuid()),
});
// Accuracies Schema
const accuraciesSchema = object({
white: number(),
black: number(),
});
// Base Schema (common fields across all game types)
const baseGameSchema = object({
url: string(),
time_control: string(),
end_time: number(),
rated: boolean(),
tcn: string(),
uuid: pipe(string(), uuid()),
initial_setup: string(),
fen: string(),
time_class: timeClasses,
white: playerSchema,
black: playerSchema,
eco: string(),
});
// Chess Schema
const chessSchema = object({
...baseGameSchema.entries,
rules: literal("chess"),
pgn: string(),
start_time: optional(number()),
accuracies: optional(accuraciesSchema),
tournament: optional(string()),
match: optional(string()),
});
// Threecheck Schema
const threecheckSchema = object({
...baseGameSchema.entries,
rules: literal("threecheck"),
pgn: string(),
});
// Oddschess Schema
const oddschessSchema = object({
...baseGameSchema.entries,
rules: literal("oddschess"),
pgn: string(),
accuracies: optional(accuraciesSchema),
});
// Chess960 Schema
const chess960Schema = object({
...baseGameSchema.entries,
rules: literal("chess960"),
pgn: string(),
start_time: optional(number()),
accuracies: optional(accuraciesSchema),
});
// Bughouse Schema
const bughouseSchema = object({
...baseGameSchema.entries,
rules: literal("bughouse"),
});
// Crazyhouse Schema
const crazyhouseSchema = object({
...baseGameSchema.entries,
rules: literal("crazyhouse"),
pgn: string(),
});
// King of the Hill Schema
const kingOfTheHillSchema = object({
...baseGameSchema.entries,
rules: literal("kingofthehill"),
pgn: string(),
});
// Union of all game schemas
export const gameSchema = union([
chessSchema,
threecheckSchema,
oddschessSchema,
chess960Schema,
bughouseSchema,
crazyhouseSchema,
kingOfTheHillSchema,
]);
// Games Collection Schema
export const gamesCollection = object({
games: array(gameSchema),
});
```

Thx. I thought it was like that, haven't been able to see it in my data either.
Even if it shows up I don't think it matters, if you are just using the result codes to filter games.
If you want to filter for lost games, you can just filter for opposing color to be winning. And if you want to filter games for a specific cause of defeat, you would not use "lose", you would use abandoned, or checkmated or whatever specific code you are looking for.
By any chance are there any dev's from Chess.com here? I would love to help redo the API docs if possible? As someone using the API for various projects, I'd love to be able to contribute to improving the documentation. I've done a bit of exploring, and I've Hono + zod-openapi + Scalar make for a killer API setup with OpenAPI spec'd routes and automatic documentation with Scalar.