{"openapi":"3.1.0","info":{"title":"Gambit Developer API","description":"Experimental chess and assistant API. Public preview; no strength or conversation-quality guarantee.","version":"0.1.0-preview"},"paths":{"/health":{"get":{"tags":["Discovery"],"summary":"Health","operationId":"health_health_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/models":{"get":{"tags":["Models"],"summary":"Models","operationId":"models_v1_models_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}},"security":[{},{"GambitAPIKey":[]}]}},"/v1/sessions":{"post":{"tags":["Browser demo"],"summary":"Guest Session","operationId":"guest_session_v1_sessions_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/browser-session":{"get":{"tags":["Browser sessions"],"summary":"Browser Session Status","operationId":"browser_session_status_v1_browser_session_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}},"post":{"tags":["Browser sessions"],"summary":"Browser Session","operationId":"browser_session_v1_browser_session_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BrowserSession"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["Browser sessions"],"summary":"Clear Browser Session","operationId":"clear_browser_session_v1_browser_session_delete","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/lessons":{"get":{"tags":["Lessons"],"summary":"Lessons","operationId":"lessons_v1_lessons_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}},"security":[{},{"GambitAPIKey":[]}]}},"/v1/games":{"get":{"tags":["Games"],"summary":"List Games","operationId":"list_games_v1_games_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}},"security":[{"GambitAPIKey":[]}]},"post":{"tags":["Games"],"summary":"New Game","operationId":"new_game_v1_games_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GameCreate"}}},"required":true},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GameState"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"GambitAPIKey":[]}]}},"/v1/games/{game_id}":{"get":{"tags":["Games"],"summary":"Get Game","operationId":"get_game_v1_games__game_id__get","security":[{"GambitAPIKey":[]}],"parameters":[{"name":"game_id","in":"path","required":true,"schema":{"type":"string","title":"Game Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GameState"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/games/{game_id}/moves":{"post":{"tags":["Games"],"summary":"Move","operationId":"move_v1_games__game_id__moves_post","security":[{"GambitAPIKey":[]}],"parameters":[{"name":"game_id","in":"path","required":true,"schema":{"type":"string","title":"Game Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Move"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GameState"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/games/{game_id}/ai-moves":{"post":{"tags":["Games"],"summary":"Ai Move","operationId":"ai_move_v1_games__game_id__ai_moves_post","security":[{"GambitAPIKey":[]}],"parameters":[{"name":"game_id","in":"path","required":true,"schema":{"type":"string","title":"Game Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GameSearch"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GameState"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/games/{game_id}/actions":{"post":{"tags":["Games"],"summary":"Action","operationId":"action_v1_games__game_id__actions_post","security":[{"GambitAPIKey":[]}],"parameters":[{"name":"game_id","in":"path","required":true,"schema":{"type":"string","title":"Game Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GameAction"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GameState"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/games/{game_id}/pgn":{"get":{"tags":["Games"],"summary":"Pgn","operationId":"pgn_v1_games__game_id__pgn_get","security":[{"GambitAPIKey":[]}],"parameters":[{"name":"game_id","in":"path","required":true,"schema":{"type":"string","title":"Game Id"}}],"responses":{"200":{"description":"Successful Response","content":{"text/plain":{"schema":{"type":"string"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/analysis":{"post":{"tags":["Analysis"],"summary":"Analysis","operationId":"analysis_v1_analysis_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PositionSearch"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{},{"GambitAPIKey":[]}]}},"/v1/assistant/messages":{"post":{"tags":["Assistant"],"summary":"Assistant Message","operationId":"assistant_message_v1_assistant_messages_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Message"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{},{"GambitAPIKey":[]}]}},"/v1/chess/move":{"post":{"tags":["Keyless chess"],"summary":"Chess Move","operationId":"chess_move_v1_chess_move_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PositionSearch"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{},{"GambitAPIKey":[]}]}}},"components":{"schemas":{"BrowserSession":{"properties":{"legacy_token":{"anyOf":[{"type":"string","maxLength":256},{"type":"null"}],"title":"Legacy Token"}},"additionalProperties":false,"type":"object","title":"BrowserSession"},"GameAction":{"properties":{"version":{"type":"integer","minimum":0.0,"title":"Version"},"action":{"type":"string","enum":["undo","resign","claim_draw"],"title":"Action"}},"additionalProperties":false,"type":"object","required":["version","action"],"title":"GameAction"},"GameCreate":{"properties":{"color":{"type":"string","enum":["white","black"],"title":"Color","default":"white"},"mode":{"type":"string","enum":["play","analysis","puzzles"],"title":"Mode","default":"play"},"lesson":{"anyOf":[{"type":"string","maxLength":40},{"type":"null"}],"title":"Lesson"},"fen":{"type":"string","maxLength":200,"title":"Fen","default":"rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR w KQkq - 0 1"}},"additionalProperties":false,"type":"object","title":"GameCreate"},"GameSearch":{"properties":{"version":{"type":"integer","minimum":0.0,"title":"Version"},"difficulty":{"type":"string","enum":["beginner","casual","intermediate","experimental","maximum"],"title":"Difficulty","default":"casual"},"nodes":{"type":"integer","maximum":64.0,"minimum":1.0,"title":"Nodes","default":8},"seconds":{"type":"number","maximum":2.0,"minimum":0.05,"title":"Seconds","default":1},"temperature":{"type":"number","maximum":3.0,"minimum":0.01,"title":"Temperature","default":0.8}},"additionalProperties":false,"type":"object","required":["version"],"title":"GameSearch"},"GameState":{"properties":{"id":{"type":"string","title":"Id"},"version":{"type":"integer","title":"Version"},"fen":{"type":"string","title":"Fen"},"turn":{"type":"string","enum":["white","black"],"title":"Turn"},"legal_moves":{"items":{"type":"string"},"type":"array","title":"Legal Moves"},"capture_moves":{"items":{"type":"string"},"type":"array","title":"Capture Moves"},"history":{"items":{"additionalProperties":true,"type":"object"},"type":"array","title":"History"},"frames":{"items":{"type":"string"},"type":"array","title":"Frames"},"check":{"type":"boolean","title":"Check"},"check_square":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Check Square"},"result":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Result"},"termination":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Termination"},"position_status":{"additionalProperties":true,"type":"object","title":"Position Status"}},"additionalProperties":true,"type":"object","required":["id","version","fen","turn","legal_moves","capture_moves","history","frames","check","check_square","result","termination","position_status"],"title":"GameState"},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"Message":{"properties":{"message":{"type":"string","maxLength":1000,"minLength":1,"title":"Message"},"mode":{"type":"string","enum":["coach","neural"],"title":"Mode","default":"coach"},"game_id":{"anyOf":[{"type":"string","maxLength":64},{"type":"null"}],"title":"Game Id"},"version":{"anyOf":[{"type":"integer","minimum":0.0},{"type":"null"}],"title":"Version"},"fen":{"type":"string","maxLength":200,"title":"Fen","default":"rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR w KQkq - 0 1"}},"additionalProperties":false,"type":"object","required":["message"],"title":"Message"},"Move":{"properties":{"version":{"type":"integer","minimum":0.0,"title":"Version"},"uci":{"type":"string","maxLength":5,"pattern":"^[a-h][1-8][a-h][1-8][qrbn]?$","title":"Uci"}},"additionalProperties":false,"type":"object","required":["version","uci"],"title":"Move"},"PositionSearch":{"properties":{"difficulty":{"type":"string","enum":["beginner","casual","intermediate","experimental","maximum"],"title":"Difficulty","default":"casual"},"nodes":{"type":"integer","maximum":64.0,"minimum":1.0,"title":"Nodes","default":8},"seconds":{"type":"number","maximum":2.0,"minimum":0.05,"title":"Seconds","default":1},"temperature":{"type":"number","maximum":3.0,"minimum":0.01,"title":"Temperature","default":0.8},"fen":{"type":"string","maxLength":200,"title":"Fen","default":"rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR w KQkq - 0 1"}},"additionalProperties":false,"type":"object","title":"PositionSearch"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"},"input":{"title":"Input"},"ctx":{"type":"object","title":"Context"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"}},"securitySchemes":{"GambitAPIKey":{"type":"http","description":"Local operator-issued gbt_draft_ bearer token.","scheme":"bearer"}}},"servers":[{"url":"https://chudgpt-xi.vercel.app/api/gambit"}]}