
Chess analysis that explains the why, not just the what. Position evaluation, game review, and personalized coaching — ready for your app.
Send any FEN position and get deep evaluation, best move, tactical detection, and natural language explanations. Optionally ask a specific question about the position.
{ "response": "Right now your e4 pawn is hanging — Black has a direct hit on it — so you must play something that either defends it or creates a stronger threat. That's why Ng5 is attractive: it gains tempo by hitting sensitive squares (especially f7/e6)...", "best_move": "Ng5", "best_move_uci": "f3g5", "evaluation": 0.25, "assessment": "slight white", "fen": "r1bqkb1r/pppp1ppp/2n2n2/4p3/2B1P3/5N2/PPPP1PPP/RNBQK2R w KQkq - 4 4" }
{ "response": "Play Ng5. It hits f7 and forces Black to respond, so you win a tempo while also making sure your pieces stay active and coordinated. After that, keep it simple: castle quickly and finish development before you start any real attacking.", "best_move": "Ng5", "best_move_uci": "f3g5", "evaluation": 0.20, "assessment": "equal", "fen": "r1bqkb1r/pppp1ppp/2n2n2/4p3/2B1P3/5N2/PPPP1PPP/RNBQK2R w KQkq - 4 4" }
Skill levels, personalities, and question types — every dimension of the coaching output is customizable through the API.
{ "position": "r2q1rk1/...", "player_rating": 800 }
Upload a PGN and get move-by-move classification, accuracy percentages, error detection, and a full narrative overview.
{ "response": "Key tactical ideas: the game featured frequent tactical motifs like exchanges and piece activity...", "overview": { "summary_sentence": "White seized a decisive initiative with 7. Qb3...", "narrative_text": "The opening pieces unfold with White steering..." }, "game_summary": { "white_accuracy": 95.8, "black_accuracy": 93.9, "white_acpl": 32.3, "black_acpl": 42.6, "total_moves": 33 }, "moves": [ // 33 move objects], "turning_points": [ // 7 key moments], "white_mistakes": [ // errors with review], "study_plan": { "strengths": [...], "tactics_work": "Train recognizing forced continuations..." } }
{ "pgn": "1. e4 e5 2. Nf3 d6 3. d4 Bg4 4. dxe5 Bxf3 ...", "question": "What were the key tactical ideas in this game?", "player_color": "white" }
Note: When you include a question, the response field directly addresses your question using the full analysis context. All other fields (overview, moves, errors, game_summary) remain available in the same response.
One API key. Two endpoints. Position evaluation, game annotation, and AI coaching.
curl -X POST https://api.chessvia.ai/analyze_position \ -H "Authorization: Bearer YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{"position": "rnbqkbnr/pppppppp/8/8/4P3/8/PPPP1PPP/RNBQKBNR b KQkq e3 0 1", "question": "What should I play?", "player_rating": 1200}'
Tell us about your project and we'll set you up with an API key.
Custom integrations available. Reach out to learn more.