From 1edca7d9af2d766a73d023233634e80f44e18b58 Mon Sep 17 00:00:00 2001 From: programarivm Date: Wed, 31 Jul 2024 19:10:58 +0200 Subject: [PATCH] Deployed 9db0e97 with MkDocs version: 1.5.3 --- index.html | 2 +- installation/index.html | 5 ++--- search/search_index.json | 2 +- sitemap.xml.gz | Bin 329 -> 329 bytes 4 files changed, 4 insertions(+), 5 deletions(-) diff --git a/index.html b/index.html index ede2c7b..66b9b80 100644 --- a/index.html +++ b/index.html @@ -162,5 +162,5 @@

Lightweight

diff --git a/installation/index.html b/installation/index.html index 720cec3..4ae1ea7 100644 --- a/installation/index.html +++ b/installation/index.html @@ -101,11 +101,10 @@

Installation

Clone the chesslablab/chess-api repo into your projects folder. Then cd the chess-api directory and create an .env file:

cp .env.example .env
 
-

Make sure to have installed the fullchain.pem and privkey.pem files into the docker/nginx/ssl folder.

-

Run the Docker containers in detached mode in the background:

+

Make sure to have installed the fullchain.pem and privkey.pem files into the docker/nginx/ssl folder, and run the Docker containers in detached mode in the background:

docker compose -f docker-compose.default.yml up -d
 
-

Finally, if you are running the chess API on your localhost along with the website, you may want to add an entry to your /etc/hosts file as per the API variable defined in the assets/env.example.js file.

+

Finally, if you are running the chess API in a local development environment along with the website, you may want to add a domain name entry to your /etc/hosts file as per the API variable defined in the assets/env.example.js file.

127.0.0.1       api.chesslablab.org
 
diff --git a/search/search_index.json b/search/search_index.json index 5aa60b3..6521f9d 100644 --- a/search/search_index.json +++ b/search/search_index.json @@ -1 +1 @@ -{"config":{"indexing":"full","lang":["en"],"min_search_length":3,"prebuild_index":false,"separator":"[\\s\\-]+"},"docs":[{"location":"","text":"PHP Chess API PHP Chess API is a REST-like API that provides chess functionality over an HTTP connection. It goes hand in hand with a MySQL chess database which is to be set up as per the Chess Data docs. Similar to the PHP Chess Server , it can be hosted on a custom domain. However, while the chess server handles multiple concurrent connections based on real-time commands, the API endpoints may take a little longer to execute \u2014 for example, a file download or a database query. Components Based Design PHP Chess API has been created using the Symfony framework, which is a set of reusable PHP components. Lightweight Dependencies required: PHP Chess for chess functionality. PHP dotenv for loading environment variables.","title":"Home"},{"location":"#php-chess-api","text":"PHP Chess API is a REST-like API that provides chess functionality over an HTTP connection. It goes hand in hand with a MySQL chess database which is to be set up as per the Chess Data docs. Similar to the PHP Chess Server , it can be hosted on a custom domain. However, while the chess server handles multiple concurrent connections based on real-time commands, the API endpoints may take a little longer to execute \u2014 for example, a file download or a database query.","title":"PHP Chess API"},{"location":"#components-based-design","text":"PHP Chess API has been created using the Symfony framework, which is a set of reusable PHP components.","title":"Components Based Design"},{"location":"#lightweight","text":"Dependencies required: PHP Chess for chess functionality. PHP dotenv for loading environment variables.","title":"Lightweight"},{"location":"get-annotations-games/","text":"GET /v1/annotations/games Returns the annotated chess games available in the database. curl https://api.chesslablab.org:9443/v1/annotations/games [ { \"Event\": \"Steinitz - Zukertort World Championship Match\", \"Site\": \"New Orleans, LA USA\", \"Date\": \"1886\", \"White\": \"Johannes Zukertort\", \"Black\": \"Wilhelm Steinitz\", \"WhiteElo\": \"?\", \"BlackElo\": \"?\", \"Result\": \"0-1\", \"ECO\": \"D50\", \"movetext\": \"{ The Queen's Gambit Declined. Adapted notes originally by Robert James Fischer from a television interview. } 1.d4 d5 2.c4 e6 3.Nc3 Nf6 4.Bg5 Be7 5.Nf3 O-O 6.c5 { is a mistake already; instead it should be played e3, naturally. } 6...b6 7.b4 bxc5 8.dxc5 a5 9.a3 d4 { is a fantastic move; it's the winning move. The pawn can't be taken with the knight because of axb4. } 10.Bxf6 gxf6 11.Na4 e5 { because the center is easily winning. Black's kingside weakness is nothing. } 12.b5 Be6 { with the idea of dominating the game with a powerful mobile center. } 13.g3 c6 14.bxc6 Nxc6 15.Bg2 Rb8 { threatening Bb3. } 16.Qc1 d3 17.e3 e4 18.Nd2 f5 19.O-O Re8 { is a very modern move; a quiet positional move. The rook is doing nothing now, but later... } 20.f3 { to break up the center, it's the only chance for White. } 20...Nd4 21.exd4 Qxd4+ 22.Kh1 e3 (22... Qxa4 { allows Black to easily regain material. }) 23.Nc3 Bf6 24.Ndb1 d2 25.Qc2 Bb3 26.Qxf5 d1=Q 27.Nxd1 Bxd1 28.Nc3 e2 29.Raxd1 Qxc3 { and White resigns. The center has prevailed. } 0-1\" }, ... { \"Event\": \"Lasker - Capablanca World Championship Match (1)\", \"Site\": \"Havana CUB\", \"Date\": \"1921\", \"White\": \"Jose Raul Capablanca\", \"Black\": \"Emanuel Lasker\", \"WhiteElo\": \"?\", \"BlackElo\": \"?\", \"Result\": \"1/2-1/2\", \"ECO\": \"D02\", \"movetext\": \"{Queen's Pawn Game. Adapted notes originally by J. R. Capablanca.} 1.d4 d5 2.Nf3 e6 3.c4 Nf6 4.Bg5 Be7 5.e3 Nbd7 6.Nc3 O-O 7.Rc1 b6 8.cxd5 exd5 9.Bb5 {is a new move which has no merit outside of its novelty. I played it for the first time against Teichmann in Berlin in 1913. } (9.Bd3 { is the normal move but Qa4 may be the best, after all. }) 9...Bb7 10.Qa4 a6 (10...c5 { is the proper continuation.}) 11.Bxd7 Nxd7 12.Bxe7 Qxe7 13.Qb3 { with the idea of preventing c5, but still better would have been to castle.} Qd6 (13...c5 { could be played as well. Black would come out all right from the many complications arising from this move.}) 14.O-O Rfd8 15.Rfd1 Rab8 16.Ne1 { in order to draw the knight away from the line of the bishop, which would soon be open, as it actually occurred in the game.} Nf6 17.Rc2 c5 18.dxc5 bxc5 19.Ne2 Ne4 (19...Ng4 { begins a failed attack. }) (19...d4 { begins a failed attack. }) 20.Qa3 Rbc8 21.Ng3 Nxg3 22.hxg3 Qb6 23.Rcd2 (23.Rdc1 { would not have been better because of d4, etc. } d4) 23...h6 24.Nf3 d4 25.exd4 Bxf3 26.Qxf3 Rxd4 27.Rc2 Rxd1+ 28.Qxd1 Rd8 29.Qe2 Qd6 30.Kh2 Qd5 31.b3 Qf5 32.g4 Qg5 33.g3 Rd6 { is unquestionably the best move; with any other move Black would, perhaps, have found it impossible to draw.} 34.Kg2 g6 35.Qc4 Re6 36.Qxc5 Qxg4 37.f3 Qg5 38.Qxg5 hxg5 39.Kf2 Rd6 40.Ke3 Re6+ 41.Kd4 Rd6+ (42.Kc5 { is too risky. The way to win was not at all clear and I even thought that with that move Black might win. }) 42.Ke3 Re6+ 43.Kf2 Rd6 44.g4 Rd1 (45.Ke3 { is the right move to make. It is perhaps the only chance White has to win, or at least come near it. } Ra1 46.Kd4 { gains an important move. } Kg7 47.b4 Rf1 { accomplishes nothing with the white king on d4. }) 45.Ke2 { was played instead. } Ra1 46.Kd3 Kg7 47.b4 Rf1 { was the best move with the white king on d3. } 48.Ke3 { and the remainder of the game needs no comments. } Rb1 49.Rc6 Rxb4 50.Rxa6 Rb2 1/2-1/2\" } ]","title":"GET /v1/annotations/games"},{"location":"get-annotations-games/#get-v1annotationsgames","text":"Returns the annotated chess games available in the database. curl https://api.chesslablab.org:9443/v1/annotations/games [ { \"Event\": \"Steinitz - Zukertort World Championship Match\", \"Site\": \"New Orleans, LA USA\", \"Date\": \"1886\", \"White\": \"Johannes Zukertort\", \"Black\": \"Wilhelm Steinitz\", \"WhiteElo\": \"?\", \"BlackElo\": \"?\", \"Result\": \"0-1\", \"ECO\": \"D50\", \"movetext\": \"{ The Queen's Gambit Declined. Adapted notes originally by Robert James Fischer from a television interview. } 1.d4 d5 2.c4 e6 3.Nc3 Nf6 4.Bg5 Be7 5.Nf3 O-O 6.c5 { is a mistake already; instead it should be played e3, naturally. } 6...b6 7.b4 bxc5 8.dxc5 a5 9.a3 d4 { is a fantastic move; it's the winning move. The pawn can't be taken with the knight because of axb4. } 10.Bxf6 gxf6 11.Na4 e5 { because the center is easily winning. Black's kingside weakness is nothing. } 12.b5 Be6 { with the idea of dominating the game with a powerful mobile center. } 13.g3 c6 14.bxc6 Nxc6 15.Bg2 Rb8 { threatening Bb3. } 16.Qc1 d3 17.e3 e4 18.Nd2 f5 19.O-O Re8 { is a very modern move; a quiet positional move. The rook is doing nothing now, but later... } 20.f3 { to break up the center, it's the only chance for White. } 20...Nd4 21.exd4 Qxd4+ 22.Kh1 e3 (22... Qxa4 { allows Black to easily regain material. }) 23.Nc3 Bf6 24.Ndb1 d2 25.Qc2 Bb3 26.Qxf5 d1=Q 27.Nxd1 Bxd1 28.Nc3 e2 29.Raxd1 Qxc3 { and White resigns. The center has prevailed. } 0-1\" }, ... { \"Event\": \"Lasker - Capablanca World Championship Match (1)\", \"Site\": \"Havana CUB\", \"Date\": \"1921\", \"White\": \"Jose Raul Capablanca\", \"Black\": \"Emanuel Lasker\", \"WhiteElo\": \"?\", \"BlackElo\": \"?\", \"Result\": \"1/2-1/2\", \"ECO\": \"D02\", \"movetext\": \"{Queen's Pawn Game. Adapted notes originally by J. R. Capablanca.} 1.d4 d5 2.Nf3 e6 3.c4 Nf6 4.Bg5 Be7 5.e3 Nbd7 6.Nc3 O-O 7.Rc1 b6 8.cxd5 exd5 9.Bb5 {is a new move which has no merit outside of its novelty. I played it for the first time against Teichmann in Berlin in 1913. } (9.Bd3 { is the normal move but Qa4 may be the best, after all. }) 9...Bb7 10.Qa4 a6 (10...c5 { is the proper continuation.}) 11.Bxd7 Nxd7 12.Bxe7 Qxe7 13.Qb3 { with the idea of preventing c5, but still better would have been to castle.} Qd6 (13...c5 { could be played as well. Black would come out all right from the many complications arising from this move.}) 14.O-O Rfd8 15.Rfd1 Rab8 16.Ne1 { in order to draw the knight away from the line of the bishop, which would soon be open, as it actually occurred in the game.} Nf6 17.Rc2 c5 18.dxc5 bxc5 19.Ne2 Ne4 (19...Ng4 { begins a failed attack. }) (19...d4 { begins a failed attack. }) 20.Qa3 Rbc8 21.Ng3 Nxg3 22.hxg3 Qb6 23.Rcd2 (23.Rdc1 { would not have been better because of d4, etc. } d4) 23...h6 24.Nf3 d4 25.exd4 Bxf3 26.Qxf3 Rxd4 27.Rc2 Rxd1+ 28.Qxd1 Rd8 29.Qe2 Qd6 30.Kh2 Qd5 31.b3 Qf5 32.g4 Qg5 33.g3 Rd6 { is unquestionably the best move; with any other move Black would, perhaps, have found it impossible to draw.} 34.Kg2 g6 35.Qc4 Re6 36.Qxc5 Qxg4 37.f3 Qg5 38.Qxg5 hxg5 39.Kf2 Rd6 40.Ke3 Re6+ 41.Kd4 Rd6+ (42.Kc5 { is too risky. The way to win was not at all clear and I even thought that with that move Black might win. }) 42.Ke3 Re6+ 43.Kf2 Rd6 44.g4 Rd1 (45.Ke3 { is the right move to make. It is perhaps the only chance White has to win, or at least come near it. } Ra1 46.Kd4 { gains an important move. } Kg7 47.b4 Rf1 { accomplishes nothing with the white king on d4. }) 45.Ke2 { was played instead. } Ra1 46.Kd3 Kg7 47.b4 Rf1 { was the best move with the white king on d3. } 48.Ke3 { and the remainder of the game needs no comments. } Rb1 49.Rc6 Rxb4 50.Rxa6 Rb2 1/2-1/2\" } ]","title":"GET /v1/annotations/games"},{"location":"get-stats-opening/","text":"GET /v1/stats/opening Returns statistics about the chess openings available in the database: Draw rate, win rate for White and win rate for Black. curl https://api.chesslablab.org:9443/v1/stats/opening { \"drawRate\": [ { \"ECO\": \"C42\", \"total\": 2964 }, ... { \"ECO\": \"B23\", \"total\": 1044 } ], \"winRateForWhite\": [ { \"ECO\": \"A45\", \"total\": 2880 }, ... { \"ECO\": \"B51\", \"total\": 1053 } ], \"winRateForBlack\": [ { \"ECO\": \"A45\", \"total\": 2658 }, ... { \"ECO\": \"D10\", \"total\": 732 } ] }","title":"GET /v1/stats/opening"},{"location":"get-stats-opening/#get-v1statsopening","text":"Returns statistics about the chess openings available in the database: Draw rate, win rate for White and win rate for Black. curl https://api.chesslablab.org:9443/v1/stats/opening { \"drawRate\": [ { \"ECO\": \"C42\", \"total\": 2964 }, ... { \"ECO\": \"B23\", \"total\": 1044 } ], \"winRateForWhite\": [ { \"ECO\": \"A45\", \"total\": 2880 }, ... { \"ECO\": \"B51\", \"total\": 1053 } ], \"winRateForBlack\": [ { \"ECO\": \"A45\", \"total\": 2658 }, ... { \"ECO\": \"D10\", \"total\": 732 } ] }","title":"GET /v1/stats/opening"},{"location":"installation/","text":"Installation Clone the chesslablab/chess-api repo into your projects folder. Then cd the chess-api directory and create an .env file: cp .env.example .env Make sure to have installed the fullchain.pem and privkey.pem files into the docker/nginx/ssl folder. Run the Docker containers in detached mode in the background: docker compose -f docker-compose.default.yml up -d Finally, if you are running the chess API on your localhost along with the website , you may want to add an entry to your /etc/hosts file as per the API variable defined in the assets/env.example.js file. 127.0.0.1 api.chesslablab.org","title":"Installation"},{"location":"installation/#installation","text":"Clone the chesslablab/chess-api repo into your projects folder. Then cd the chess-api directory and create an .env file: cp .env.example .env Make sure to have installed the fullchain.pem and privkey.pem files into the docker/nginx/ssl folder. Run the Docker containers in detached mode in the background: docker compose -f docker-compose.default.yml up -d Finally, if you are running the chess API on your localhost along with the website , you may want to add an entry to your /etc/hosts file as per the API variable defined in the assets/env.example.js file. 127.0.0.1 api.chesslablab.org","title":"Installation"},{"location":"post-autocomplete-event/","text":"POST /v1/autocomplete/event Returns autocomplete data for chess events. Event The name of the event. curl https://api.chesslablab.org:9443/v1/autocomplete/event \\ -H \"Content-Type: application/json\" \\ --data-raw '{ \"Event\": \"candidates\" }' [ \"FIDE Candidates 2014\", \"FIDE Candidates 2016\", \"WCh Candidates s\\/f\", \"FIDE Candidates\", \"FIDE Candidates (Women)\", \"FIDE Women's Candidates\", \"Women Candidates Pool B\", \"WCh Candidates\", \"FIDE Candidates 2018\" ]","title":"POST /v1/autocomplete/event"},{"location":"post-autocomplete-event/#post-v1autocompleteevent","text":"Returns autocomplete data for chess events.","title":"POST /v1/autocomplete/event"},{"location":"post-autocomplete-event/#event","text":"The name of the event. curl https://api.chesslablab.org:9443/v1/autocomplete/event \\ -H \"Content-Type: application/json\" \\ --data-raw '{ \"Event\": \"candidates\" }' [ \"FIDE Candidates 2014\", \"FIDE Candidates 2016\", \"WCh Candidates s\\/f\", \"FIDE Candidates\", \"FIDE Candidates (Women)\", \"FIDE Women's Candidates\", \"Women Candidates Pool B\", \"WCh Candidates\", \"FIDE Candidates 2018\" ]","title":"Event"},{"location":"post-autocomplete-player/","text":"POST /v1/autocomplete/player Returns autocomplete data for chess players. White (optional) The name of the player with the white pieces. Black (optional) The name of the player with the black pieces. curl https://api.chesslablab.org:9443/v1/autocomplete/player \\ -H \"Content-Type: application/json\" \\ --data-raw '{ \"White\": \"anand\" }' [ \"Anand, Viswanathan\", \"Anand,V\", \"Anand,V \\/ FRITZ7\", \"Praggnanandhaa,R\", \"Anand,Vignesh\", \"Pranav,Anand\" ]","title":"POST /v1/autocomplete/player"},{"location":"post-autocomplete-player/#post-v1autocompleteplayer","text":"Returns autocomplete data for chess players.","title":"POST /v1/autocomplete/player"},{"location":"post-autocomplete-player/#white-optional","text":"The name of the player with the white pieces.","title":"White (optional)"},{"location":"post-autocomplete-player/#black-optional","text":"The name of the player with the black pieces. curl https://api.chesslablab.org:9443/v1/autocomplete/player \\ -H \"Content-Type: application/json\" \\ --data-raw '{ \"White\": \"anand\" }' [ \"Anand, Viswanathan\", \"Anand,V\", \"Anand,V \\/ FRITZ7\", \"Praggnanandhaa,R\", \"Anand,Vignesh\", \"Pranav,Anand\" ]","title":"Black (optional)"},{"location":"post-download-image/","text":"POST /v1/download/image Downloads an image. fen A FEN string. flip The orientation of the board as per these options. w for White's perspective. b for Black's perspective. curl https://api.chesslablab.org:9443/v1/download/image \\ -H \"Content-Type: application/json\" \\ --data-raw '{ \"fen\": \"r1bq1rk1/pppnn1bp/3p2p1/3Ppp2/2P1P3/2N2P2/PP2B1PP/R1BQNRK1 w - f6\", \"flip\": \"w\" }' \\ --output image.png","title":"POST /v1/download/image"},{"location":"post-download-image/#post-v1downloadimage","text":"Downloads an image.","title":"POST /v1/download/image"},{"location":"post-download-image/#fen","text":"A FEN string.","title":"fen"},{"location":"post-download-image/#flip","text":"The orientation of the board as per these options. w for White's perspective. b for Black's perspective. curl https://api.chesslablab.org:9443/v1/download/image \\ -H \"Content-Type: application/json\" \\ --data-raw '{ \"fen\": \"r1bq1rk1/pppnn1bp/3p2p1/3Ppp2/2P1P3/2N2P2/PP2B1PP/R1BQNRK1 w - f6\", \"flip\": \"w\" }' \\ --output image.png","title":"flip"},{"location":"post-download-mp4/","text":"POST /v1/download/mp4 Downloads a video. variant The chess variant as per these options. classical chess, also known as standard or slow chess. 960 is the same as classical chess except that the starting position of the pieces is randomized. dunsany is an asymmetric variant in which Black has the standard chess army and White has 32 pawns. losing chess, the objective of each player is to lose all of their pieces or be stalemated. racing-kings consists of being the first player to move their king to the eighth row. movetext A portable game notation (PGN) movetext. flip The orientation of the board as per these options. w for White's perspective. b for Black's perspective. fen (optional) A FEN string. startPos (optional) The start position in a Chess960 game; for example BRNNKBRQ . curl https://api.chesslablab.org:9443/v1/download/mp4 \\ -H \"Content-Type: application/json\" \\ --data-raw '{ \"variant\": \"classical\", \"movetext\": \"1.d4 Nf6 2.c4 g6 3.Nc3 Bg7 4.e4 d6\", \"flip\": \"b\" }' \\ --output video.mp4","title":"POST /v1/download/mp4"},{"location":"post-download-mp4/#post-v1downloadmp4","text":"Downloads a video.","title":"POST /v1/download/mp4"},{"location":"post-download-mp4/#variant","text":"The chess variant as per these options. classical chess, also known as standard or slow chess. 960 is the same as classical chess except that the starting position of the pieces is randomized. dunsany is an asymmetric variant in which Black has the standard chess army and White has 32 pawns. losing chess, the objective of each player is to lose all of their pieces or be stalemated. racing-kings consists of being the first player to move their king to the eighth row.","title":"variant"},{"location":"post-download-mp4/#movetext","text":"A portable game notation (PGN) movetext.","title":"movetext"},{"location":"post-download-mp4/#flip","text":"The orientation of the board as per these options. w for White's perspective. b for Black's perspective.","title":"flip"},{"location":"post-download-mp4/#fen-optional","text":"A FEN string.","title":"fen (optional)"},{"location":"post-download-mp4/#startpos-optional","text":"The start position in a Chess960 game; for example BRNNKBRQ . curl https://api.chesslablab.org:9443/v1/download/mp4 \\ -H \"Content-Type: application/json\" \\ --data-raw '{ \"variant\": \"classical\", \"movetext\": \"1.d4 Nf6 2.c4 g6 3.Nc3 Bg7 4.e4 d6\", \"flip\": \"b\" }' \\ --output video.mp4","title":"startPos (optional)"},{"location":"post-play-rav/","text":"POST /v1/play/rav Plays the moves in a RAV movetext returning the sequence of FEN positions that make up such movetext. variant The chess variant as per these options. classical chess, also known as standard or slow chess. 960 is the same as classical chess except that the starting position of the pieces is randomized. dunsany is an asymmetric variant in which Black has the standard chess army and White has 32 pawns. losing chess, the objective of each player is to lose all of their pieces or be stalemated. racing-kings consists of being the first player to move their king to the eighth row. movetext A portable game notation (PGN) movetext. fen (optional) A FEN string. startPos (optional) The start position in a Chess960 game; for example BRNNKBRQ . curl https://api.chesslablab.org:9443/v1/play/rav \\ -H \"Content-Type: application/json\" \\ --data-raw '{ \"variant\": \"classical\", \"movetext\": \"1.d4 Nf6 2.c4 e6 3.Nf3 d5 4.Nc3 Be7 5.Bf4 O-O 6.e3 c5 7.dxc5 Bxc5 8.a3 Nc6 9.Rc1 a6 10.b4 Bd6 11.Bg5 a5 12.b5 Ne7 13.Bxf6 gxf6 14.a4 Bb4 15.Be2 dxc4 16.O-O Nd5 17.Na2 Nb6 18.Qc2 e5 19.Nxb4 axb4 20.Bxc4 Nxc4 21.Qxc4 Rxa4 22.Rfd1 Qb6 23.Nh4 Be6 24.Qe4 Qxb5 25.Qf3 Kg7 26.Nf5+ Bxf5 27.Qxf5 b3 28.Rd6 b2 29.Qxf6+ Kg8 30.Qg5+ Kh8 31.Qf6+\" }' { \"variant\": \"classical\", \"turn\": \"b\", \"filtered\": \"1.d4 Nf6 2.c4 e6 3.Nf3 d5 4.Nc3 Be7 5.Bf4 O-O 6.e3 c5 7.dxc5 Bxc5 8.a3 Nc6 9.Rc1 a6 10.b4 Bd6 11.Bg5 a5 12.b5 Ne7 13.Bxf6 gxf6 14.a4 Bb4 15.Be2 dxc4 16.O-O Nd5 17.Na2 Nb6 18.Qc2 e5 19.Nxb4 axb4 20.Bxc4 Nxc4 21.Qxc4 Rxa4 22.Rfd1 Qb6 23.Nh4 Be6 24.Qe4 Qxb5 25.Qf3 Kg7 26.Nf5+ Bxf5 27.Qxf5 b3 28.Rd6 b2 29.Qxf6+ Kg8 30.Qg5+ Kh8 31.Qf6+\", \"movetext\": \"1.d4 Nf6 2.c4 e6 3.Nf3 d5 4.Nc3 Be7 5.Bf4 O-O 6.e3 c5 7.dxc5 Bxc5 8.a3 Nc6 9.Rc1 a6 10.b4 Bd6 11.Bg5 a5 12.b5 Ne7 13.Bxf6 gxf6 14.a4 Bb4 15.Be2 dxc4 16.O-O Nd5 17.Na2 Nb6 18.Qc2 e5 19.Nxb4 axb4 20.Bxc4 Nxc4 21.Qxc4 Rxa4 22.Rfd1 Qb6 23.Nh4 Be6 24.Qe4 Qxb5 25.Qf3 Kg7 26.Nf5+ Bxf5 27.Qxf5 b3 28.Rd6 b2 29.Qxf6+ Kg8 30.Qg5+ Kh8 31.Qf6+\", \"breakdown\": [ \"1.d4 Nf6 2.c4 e6 3.Nf3 d5 4.Nc3 Be7 5.Bf4 O-O 6.e3 c5 7.dxc5 Bxc5 8.a3 Nc6 9.Rc1 a6 10.b4 Bd6 11.Bg5 a5 12.b5 Ne7 13.Bxf6 gxf6 14.a4 Bb4 15.Be2 dxc4 16.O-O Nd5 17.Na2 Nb6 18.Qc2 e5 19.Nxb4 axb4 20.Bxc4 Nxc4 21.Qxc4 Rxa4 22.Rfd1 Qb6 23.Nh4 Be6 24.Qe4 Qxb5 25.Qf3 Kg7 26.Nf5+ Bxf5 27.Qxf5 b3 28.Rd6 b2 29.Qxf6+ Kg8 30.Qg5+ Kh8 31.Qf6+\" ], \"fen\": [ \"rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR w KQkq -\", \"rnbqkbnr/pppppppp/8/8/3P4/8/PPP1PPPP/RNBQKBNR b KQkq d3\", \"rnbqkb1r/pppppppp/5n2/8/3P4/8/PPP1PPPP/RNBQKBNR w KQkq -\", \"rnbqkb1r/pppppppp/5n2/8/2PP4/8/PP2PPPP/RNBQKBNR b KQkq c3\", \"rnbqkb1r/pppp1ppp/4pn2/8/2PP4/8/PP2PPPP/RNBQKBNR w KQkq -\", \"rnbqkb1r/pppp1ppp/4pn2/8/2PP4/5N2/PP2PPPP/RNBQKB1R b KQkq -\", \"rnbqkb1r/ppp2ppp/4pn2/3p4/2PP4/5N2/PP2PPPP/RNBQKB1R w KQkq d6\", \"rnbqkb1r/ppp2ppp/4pn2/3p4/2PP4/2N2N2/PP2PPPP/R1BQKB1R b KQkq -\", \"rnbqk2r/ppp1bppp/4pn2/3p4/2PP4/2N2N2/PP2PPPP/R1BQKB1R w KQkq -\", \"rnbqk2r/ppp1bppp/4pn2/3p4/2PP1B2/2N2N2/PP2PPPP/R2QKB1R b KQkq -\", \"rnbq1rk1/ppp1bppp/4pn2/3p4/2PP1B2/2N2N2/PP2PPPP/R2QKB1R w KQ -\", \"rnbq1rk1/ppp1bppp/4pn2/3p4/2PP1B2/2N1PN2/PP3PPP/R2QKB1R b KQ -\", \"rnbq1rk1/pp2bppp/4pn2/2pp4/2PP1B2/2N1PN2/PP3PPP/R2QKB1R w KQ c6\", \"rnbq1rk1/pp2bppp/4pn2/2Pp4/2P2B2/2N1PN2/PP3PPP/R2QKB1R b KQ -\", \"rnbq1rk1/pp3ppp/4pn2/2bp4/2P2B2/2N1PN2/PP3PPP/R2QKB1R w KQ -\", \"rnbq1rk1/pp3ppp/4pn2/2bp4/2P2B2/P1N1PN2/1P3PPP/R2QKB1R b KQ -\", \"r1bq1rk1/pp3ppp/2n1pn2/2bp4/2P2B2/P1N1PN2/1P3PPP/R2QKB1R w KQ -\", \"r1bq1rk1/pp3ppp/2n1pn2/2bp4/2P2B2/P1N1PN2/1P3PPP/2RQKB1R b K -\", \"r1bq1rk1/1p3ppp/p1n1pn2/2bp4/2P2B2/P1N1PN2/1P3PPP/2RQKB1R w K -\", \"r1bq1rk1/1p3ppp/p1n1pn2/2bp4/1PP2B2/P1N1PN2/5PPP/2RQKB1R b K b3\", \"r1bq1rk1/1p3ppp/p1nbpn2/3p4/1PP2B2/P1N1PN2/5PPP/2RQKB1R w K -\", \"r1bq1rk1/1p3ppp/p1nbpn2/3p2B1/1PP5/P1N1PN2/5PPP/2RQKB1R b K -\", \"r1bq1rk1/1p3ppp/2nbpn2/p2p2B1/1PP5/P1N1PN2/5PPP/2RQKB1R w K -\", \"r1bq1rk1/1p3ppp/2nbpn2/pP1p2B1/2P5/P1N1PN2/5PPP/2RQKB1R b K -\", \"r1bq1rk1/1p2nppp/3bpn2/pP1p2B1/2P5/P1N1PN2/5PPP/2RQKB1R w K -\", \"r1bq1rk1/1p2nppp/3bpB2/pP1p4/2P5/P1N1PN2/5PPP/2RQKB1R b K -\", \"r1bq1rk1/1p2np1p/3bpp2/pP1p4/2P5/P1N1PN2/5PPP/2RQKB1R w K -\", \"r1bq1rk1/1p2np1p/3bpp2/pP1p4/P1P5/2N1PN2/5PPP/2RQKB1R b K -\", \"r1bq1rk1/1p2np1p/4pp2/pP1p4/PbP5/2N1PN2/5PPP/2RQKB1R w K -\", \"r1bq1rk1/1p2np1p/4pp2/pP1p4/PbP5/2N1PN2/4BPPP/2RQK2R b K -\", \"r1bq1rk1/1p2np1p/4pp2/pP6/Pbp5/2N1PN2/4BPPP/2RQK2R w K -\", \"r1bq1rk1/1p2np1p/4pp2/pP6/Pbp5/2N1PN2/4BPPP/2RQ1RK1 b - -\", \"r1bq1rk1/1p3p1p/4pp2/pP1n4/Pbp5/2N1PN2/4BPPP/2RQ1RK1 w - -\", \"r1bq1rk1/1p3p1p/4pp2/pP1n4/Pbp5/4PN2/N3BPPP/2RQ1RK1 b - -\", \"r1bq1rk1/1p3p1p/1n2pp2/pP6/Pbp5/4PN2/N3BPPP/2RQ1RK1 w - -\", \"r1bq1rk1/1p3p1p/1n2pp2/pP6/Pbp5/4PN2/N1Q1BPPP/2R2RK1 b - -\", \"r1bq1rk1/1p3p1p/1n3p2/pP2p3/Pbp5/4PN2/N1Q1BPPP/2R2RK1 w - -\", \"r1bq1rk1/1p3p1p/1n3p2/pP2p3/PNp5/4PN2/2Q1BPPP/2R2RK1 b - -\", \"r1bq1rk1/1p3p1p/1n3p2/1P2p3/Ppp5/4PN2/2Q1BPPP/2R2RK1 w - -\", \"r1bq1rk1/1p3p1p/1n3p2/1P2p3/PpB5/4PN2/2Q2PPP/2R2RK1 b - -\", \"r1bq1rk1/1p3p1p/5p2/1P2p3/Ppn5/4PN2/2Q2PPP/2R2RK1 w - -\", \"r1bq1rk1/1p3p1p/5p2/1P2p3/PpQ5/4PN2/5PPP/2R2RK1 b - -\", \"2bq1rk1/1p3p1p/5p2/1P2p3/rpQ5/4PN2/5PPP/2R2RK1 w - -\", \"2bq1rk1/1p3p1p/5p2/1P2p3/rpQ5/4PN2/5PPP/2RR2K1 b - -\", \"2b2rk1/1p3p1p/1q3p2/1P2p3/rpQ5/4PN2/5PPP/2RR2K1 w - -\", \"2b2rk1/1p3p1p/1q3p2/1P2p3/rpQ4N/4P3/5PPP/2RR2K1 b - -\", \"5rk1/1p3p1p/1q2bp2/1P2p3/rpQ4N/4P3/5PPP/2RR2K1 w - -\", \"5rk1/1p3p1p/1q2bp2/1P2p3/rp2Q2N/4P3/5PPP/2RR2K1 b - -\", \"5rk1/1p3p1p/4bp2/1q2p3/rp2Q2N/4P3/5PPP/2RR2K1 w - -\", \"5rk1/1p3p1p/4bp2/1q2p3/rp5N/4PQ2/5PPP/2RR2K1 b - -\", \"5r2/1p3pkp/4bp2/1q2p3/rp5N/4PQ2/5PPP/2RR2K1 w - -\", \"5r2/1p3pkp/4bp2/1q2pN2/rp6/4PQ2/5PPP/2RR2K1 b - -\", \"5r2/1p3pkp/5p2/1q2pb2/rp6/4PQ2/5PPP/2RR2K1 w - -\", \"5r2/1p3pkp/5p2/1q2pQ2/rp6/4P3/5PPP/2RR2K1 b - -\", \"5r2/1p3pkp/5p2/1q2pQ2/r7/1p2P3/5PPP/2RR2K1 w - -\", \"5r2/1p3pkp/3R1p2/1q2pQ2/r7/1p2P3/5PPP/2R3K1 b - -\", \"5r2/1p3pkp/3R1p2/1q2pQ2/r7/4P3/1p3PPP/2R3K1 w - -\", \"5r2/1p3pkp/3R1Q2/1q2p3/r7/4P3/1p3PPP/2R3K1 b - -\", \"5rk1/1p3p1p/3R1Q2/1q2p3/r7/4P3/1p3PPP/2R3K1 w - -\", \"5rk1/1p3p1p/3R4/1q2p1Q1/r7/4P3/1p3PPP/2R3K1 b - -\", \"5r1k/1p3p1p/3R4/1q2p1Q1/r7/4P3/1p3PPP/2R3K1 w - -\", \"5r1k/1p3p1p/3R1Q2/1q2p3/r7/4P3/1p3PPP/2R3K1 b - -\" ] }","title":"POST /v1/play/rav"},{"location":"post-play-rav/#post-v1playrav","text":"Plays the moves in a RAV movetext returning the sequence of FEN positions that make up such movetext.","title":"POST /v1/play/rav"},{"location":"post-play-rav/#variant","text":"The chess variant as per these options. classical chess, also known as standard or slow chess. 960 is the same as classical chess except that the starting position of the pieces is randomized. dunsany is an asymmetric variant in which Black has the standard chess army and White has 32 pawns. losing chess, the objective of each player is to lose all of their pieces or be stalemated. racing-kings consists of being the first player to move their king to the eighth row.","title":"variant"},{"location":"post-play-rav/#movetext","text":"A portable game notation (PGN) movetext.","title":"movetext"},{"location":"post-play-rav/#fen-optional","text":"A FEN string.","title":"fen (optional)"},{"location":"post-play-rav/#startpos-optional","text":"The start position in a Chess960 game; for example BRNNKBRQ . curl https://api.chesslablab.org:9443/v1/play/rav \\ -H \"Content-Type: application/json\" \\ --data-raw '{ \"variant\": \"classical\", \"movetext\": \"1.d4 Nf6 2.c4 e6 3.Nf3 d5 4.Nc3 Be7 5.Bf4 O-O 6.e3 c5 7.dxc5 Bxc5 8.a3 Nc6 9.Rc1 a6 10.b4 Bd6 11.Bg5 a5 12.b5 Ne7 13.Bxf6 gxf6 14.a4 Bb4 15.Be2 dxc4 16.O-O Nd5 17.Na2 Nb6 18.Qc2 e5 19.Nxb4 axb4 20.Bxc4 Nxc4 21.Qxc4 Rxa4 22.Rfd1 Qb6 23.Nh4 Be6 24.Qe4 Qxb5 25.Qf3 Kg7 26.Nf5+ Bxf5 27.Qxf5 b3 28.Rd6 b2 29.Qxf6+ Kg8 30.Qg5+ Kh8 31.Qf6+\" }' { \"variant\": \"classical\", \"turn\": \"b\", \"filtered\": \"1.d4 Nf6 2.c4 e6 3.Nf3 d5 4.Nc3 Be7 5.Bf4 O-O 6.e3 c5 7.dxc5 Bxc5 8.a3 Nc6 9.Rc1 a6 10.b4 Bd6 11.Bg5 a5 12.b5 Ne7 13.Bxf6 gxf6 14.a4 Bb4 15.Be2 dxc4 16.O-O Nd5 17.Na2 Nb6 18.Qc2 e5 19.Nxb4 axb4 20.Bxc4 Nxc4 21.Qxc4 Rxa4 22.Rfd1 Qb6 23.Nh4 Be6 24.Qe4 Qxb5 25.Qf3 Kg7 26.Nf5+ Bxf5 27.Qxf5 b3 28.Rd6 b2 29.Qxf6+ Kg8 30.Qg5+ Kh8 31.Qf6+\", \"movetext\": \"1.d4 Nf6 2.c4 e6 3.Nf3 d5 4.Nc3 Be7 5.Bf4 O-O 6.e3 c5 7.dxc5 Bxc5 8.a3 Nc6 9.Rc1 a6 10.b4 Bd6 11.Bg5 a5 12.b5 Ne7 13.Bxf6 gxf6 14.a4 Bb4 15.Be2 dxc4 16.O-O Nd5 17.Na2 Nb6 18.Qc2 e5 19.Nxb4 axb4 20.Bxc4 Nxc4 21.Qxc4 Rxa4 22.Rfd1 Qb6 23.Nh4 Be6 24.Qe4 Qxb5 25.Qf3 Kg7 26.Nf5+ Bxf5 27.Qxf5 b3 28.Rd6 b2 29.Qxf6+ Kg8 30.Qg5+ Kh8 31.Qf6+\", \"breakdown\": [ \"1.d4 Nf6 2.c4 e6 3.Nf3 d5 4.Nc3 Be7 5.Bf4 O-O 6.e3 c5 7.dxc5 Bxc5 8.a3 Nc6 9.Rc1 a6 10.b4 Bd6 11.Bg5 a5 12.b5 Ne7 13.Bxf6 gxf6 14.a4 Bb4 15.Be2 dxc4 16.O-O Nd5 17.Na2 Nb6 18.Qc2 e5 19.Nxb4 axb4 20.Bxc4 Nxc4 21.Qxc4 Rxa4 22.Rfd1 Qb6 23.Nh4 Be6 24.Qe4 Qxb5 25.Qf3 Kg7 26.Nf5+ Bxf5 27.Qxf5 b3 28.Rd6 b2 29.Qxf6+ Kg8 30.Qg5+ Kh8 31.Qf6+\" ], \"fen\": [ \"rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR w KQkq -\", \"rnbqkbnr/pppppppp/8/8/3P4/8/PPP1PPPP/RNBQKBNR b KQkq d3\", \"rnbqkb1r/pppppppp/5n2/8/3P4/8/PPP1PPPP/RNBQKBNR w KQkq -\", \"rnbqkb1r/pppppppp/5n2/8/2PP4/8/PP2PPPP/RNBQKBNR b KQkq c3\", \"rnbqkb1r/pppp1ppp/4pn2/8/2PP4/8/PP2PPPP/RNBQKBNR w KQkq -\", \"rnbqkb1r/pppp1ppp/4pn2/8/2PP4/5N2/PP2PPPP/RNBQKB1R b KQkq -\", \"rnbqkb1r/ppp2ppp/4pn2/3p4/2PP4/5N2/PP2PPPP/RNBQKB1R w KQkq d6\", \"rnbqkb1r/ppp2ppp/4pn2/3p4/2PP4/2N2N2/PP2PPPP/R1BQKB1R b KQkq -\", \"rnbqk2r/ppp1bppp/4pn2/3p4/2PP4/2N2N2/PP2PPPP/R1BQKB1R w KQkq -\", \"rnbqk2r/ppp1bppp/4pn2/3p4/2PP1B2/2N2N2/PP2PPPP/R2QKB1R b KQkq -\", \"rnbq1rk1/ppp1bppp/4pn2/3p4/2PP1B2/2N2N2/PP2PPPP/R2QKB1R w KQ -\", \"rnbq1rk1/ppp1bppp/4pn2/3p4/2PP1B2/2N1PN2/PP3PPP/R2QKB1R b KQ -\", \"rnbq1rk1/pp2bppp/4pn2/2pp4/2PP1B2/2N1PN2/PP3PPP/R2QKB1R w KQ c6\", \"rnbq1rk1/pp2bppp/4pn2/2Pp4/2P2B2/2N1PN2/PP3PPP/R2QKB1R b KQ -\", \"rnbq1rk1/pp3ppp/4pn2/2bp4/2P2B2/2N1PN2/PP3PPP/R2QKB1R w KQ -\", \"rnbq1rk1/pp3ppp/4pn2/2bp4/2P2B2/P1N1PN2/1P3PPP/R2QKB1R b KQ -\", \"r1bq1rk1/pp3ppp/2n1pn2/2bp4/2P2B2/P1N1PN2/1P3PPP/R2QKB1R w KQ -\", \"r1bq1rk1/pp3ppp/2n1pn2/2bp4/2P2B2/P1N1PN2/1P3PPP/2RQKB1R b K -\", \"r1bq1rk1/1p3ppp/p1n1pn2/2bp4/2P2B2/P1N1PN2/1P3PPP/2RQKB1R w K -\", \"r1bq1rk1/1p3ppp/p1n1pn2/2bp4/1PP2B2/P1N1PN2/5PPP/2RQKB1R b K b3\", \"r1bq1rk1/1p3ppp/p1nbpn2/3p4/1PP2B2/P1N1PN2/5PPP/2RQKB1R w K -\", \"r1bq1rk1/1p3ppp/p1nbpn2/3p2B1/1PP5/P1N1PN2/5PPP/2RQKB1R b K -\", \"r1bq1rk1/1p3ppp/2nbpn2/p2p2B1/1PP5/P1N1PN2/5PPP/2RQKB1R w K -\", \"r1bq1rk1/1p3ppp/2nbpn2/pP1p2B1/2P5/P1N1PN2/5PPP/2RQKB1R b K -\", \"r1bq1rk1/1p2nppp/3bpn2/pP1p2B1/2P5/P1N1PN2/5PPP/2RQKB1R w K -\", \"r1bq1rk1/1p2nppp/3bpB2/pP1p4/2P5/P1N1PN2/5PPP/2RQKB1R b K -\", \"r1bq1rk1/1p2np1p/3bpp2/pP1p4/2P5/P1N1PN2/5PPP/2RQKB1R w K -\", \"r1bq1rk1/1p2np1p/3bpp2/pP1p4/P1P5/2N1PN2/5PPP/2RQKB1R b K -\", \"r1bq1rk1/1p2np1p/4pp2/pP1p4/PbP5/2N1PN2/5PPP/2RQKB1R w K -\", \"r1bq1rk1/1p2np1p/4pp2/pP1p4/PbP5/2N1PN2/4BPPP/2RQK2R b K -\", \"r1bq1rk1/1p2np1p/4pp2/pP6/Pbp5/2N1PN2/4BPPP/2RQK2R w K -\", \"r1bq1rk1/1p2np1p/4pp2/pP6/Pbp5/2N1PN2/4BPPP/2RQ1RK1 b - -\", \"r1bq1rk1/1p3p1p/4pp2/pP1n4/Pbp5/2N1PN2/4BPPP/2RQ1RK1 w - -\", \"r1bq1rk1/1p3p1p/4pp2/pP1n4/Pbp5/4PN2/N3BPPP/2RQ1RK1 b - -\", \"r1bq1rk1/1p3p1p/1n2pp2/pP6/Pbp5/4PN2/N3BPPP/2RQ1RK1 w - -\", \"r1bq1rk1/1p3p1p/1n2pp2/pP6/Pbp5/4PN2/N1Q1BPPP/2R2RK1 b - -\", \"r1bq1rk1/1p3p1p/1n3p2/pP2p3/Pbp5/4PN2/N1Q1BPPP/2R2RK1 w - -\", \"r1bq1rk1/1p3p1p/1n3p2/pP2p3/PNp5/4PN2/2Q1BPPP/2R2RK1 b - -\", \"r1bq1rk1/1p3p1p/1n3p2/1P2p3/Ppp5/4PN2/2Q1BPPP/2R2RK1 w - -\", \"r1bq1rk1/1p3p1p/1n3p2/1P2p3/PpB5/4PN2/2Q2PPP/2R2RK1 b - -\", \"r1bq1rk1/1p3p1p/5p2/1P2p3/Ppn5/4PN2/2Q2PPP/2R2RK1 w - -\", \"r1bq1rk1/1p3p1p/5p2/1P2p3/PpQ5/4PN2/5PPP/2R2RK1 b - -\", \"2bq1rk1/1p3p1p/5p2/1P2p3/rpQ5/4PN2/5PPP/2R2RK1 w - -\", \"2bq1rk1/1p3p1p/5p2/1P2p3/rpQ5/4PN2/5PPP/2RR2K1 b - -\", \"2b2rk1/1p3p1p/1q3p2/1P2p3/rpQ5/4PN2/5PPP/2RR2K1 w - -\", \"2b2rk1/1p3p1p/1q3p2/1P2p3/rpQ4N/4P3/5PPP/2RR2K1 b - -\", \"5rk1/1p3p1p/1q2bp2/1P2p3/rpQ4N/4P3/5PPP/2RR2K1 w - -\", \"5rk1/1p3p1p/1q2bp2/1P2p3/rp2Q2N/4P3/5PPP/2RR2K1 b - -\", \"5rk1/1p3p1p/4bp2/1q2p3/rp2Q2N/4P3/5PPP/2RR2K1 w - -\", \"5rk1/1p3p1p/4bp2/1q2p3/rp5N/4PQ2/5PPP/2RR2K1 b - -\", \"5r2/1p3pkp/4bp2/1q2p3/rp5N/4PQ2/5PPP/2RR2K1 w - -\", \"5r2/1p3pkp/4bp2/1q2pN2/rp6/4PQ2/5PPP/2RR2K1 b - -\", \"5r2/1p3pkp/5p2/1q2pb2/rp6/4PQ2/5PPP/2RR2K1 w - -\", \"5r2/1p3pkp/5p2/1q2pQ2/rp6/4P3/5PPP/2RR2K1 b - -\", \"5r2/1p3pkp/5p2/1q2pQ2/r7/1p2P3/5PPP/2RR2K1 w - -\", \"5r2/1p3pkp/3R1p2/1q2pQ2/r7/1p2P3/5PPP/2R3K1 b - -\", \"5r2/1p3pkp/3R1p2/1q2pQ2/r7/4P3/1p3PPP/2R3K1 w - -\", \"5r2/1p3pkp/3R1Q2/1q2p3/r7/4P3/1p3PPP/2R3K1 b - -\", \"5rk1/1p3p1p/3R1Q2/1q2p3/r7/4P3/1p3PPP/2R3K1 w - -\", \"5rk1/1p3p1p/3R4/1q2p1Q1/r7/4P3/1p3PPP/2R3K1 b - -\", \"5r1k/1p3p1p/3R4/1q2p1Q1/r7/4P3/1p3PPP/2R3K1 w - -\", \"5r1k/1p3p1p/3R1Q2/1q2p3/r7/4P3/1p3PPP/2R3K1 b - -\" ] }","title":"startPos (optional)"},{"location":"post-search/","text":"POST /v1/search Finds up to 25 games matching the criteria. Event (optional) The name of the event. Date (optional) The year in which the event took place. White (optional) The player with the white pieces. Black (optional) The player with the black pieces. Result (optional) The result of the game as per these options. 1-0 means White wins. 1/2-1/2 means the game is a draw. 0-1 means Black wins. ECO (optional) Encyclopaedia of Chess Openings (ECO) code. curl https://api.chesslablab.org:9443/v1/search \\ -H \"Content-Type: application/json\" \\ --data-raw '{ \"Black\": \"Kasparov,G\", \"ECO\": \"D37\" }' [ { \"id\": 156639, \"Event\": \"Rapid\", \"Site\": \"Reykjavik ISL\", \"Date\": \"2004.03.20\", \"White\": \"Nielsen,PH\", \"Black\": \"Kasparov,G\", \"Result\": \"1\\/2-1\\/2\", \"WhiteElo\": \"2638\", \"BlackElo\": \"2831\", \"ECO\": \"D37\", \"FEN\": null, \"movetext\": \"1.d4 Nf6 2.c4 e6 3.Nf3 d5 4.Nc3 Be7 5.Bf4 O-O 6.e3 c5 7.dxc5 Bxc5 8.a3 Nc6 9.Rc1 a6 10.b4 Bd6 11.Bg5 a5 12.b5 Ne7 13.Bxf6 gxf6 14.a4 Bb4 15.Be2 dxc4 16.O-O Nd5 17.Na2 Nb6 18.Qc2 e5 19.Nxb4 axb4 20.Bxc4 Nxc4 21.Qxc4 Rxa4 22.Rfd1 Qb6 23.Nh4 Be6 24.Qe4 Qxb5 25.Qf3 Kg7 26.Nf5+ Bxf5 27.Qxf5 b3 28.Rd6 b2 29.Qxf6+ Kg8 30.Qg5+ Kh8 31.Qf6+\" }, { \"id\": 369145, \"Event\": \"Corus\", \"Site\": \"Wijk aan Zee NED\", \"Date\": \"2001.01.27\", \"White\": \"Van Wely,L\", \"Black\": \"Kasparov,G\", \"Result\": \"1\\/2-1\\/2\", \"WhiteElo\": \"2700\", \"BlackElo\": \"2849\", \"ECO\": \"D37\", \"FEN\": null, \"movetext\": \"1.d4 Nf6 2.c4 e6 3.Nf3 d5 4.Nc3 Be7 5.Bf4 O-O 6.e3 c5 7.dxc5 Bxc5 8.cxd5 Nxd5 9.Nxd5 exd5 10.a3 Nc6 11.Bd3 Bb6 12.O-O Bg4 13.h3 Bh5 14.b4 Re8 15.Rc1 a6 16.g4 Bg6 17.Bxg6 hxg6 18.Rc3 d4 19.Rd3 Qd5 20.exd4 Re4 21.Be3 Rd8 22.Re1 f6 23.Kg2 f5 24.gxf5 gxf5 25.Qb3 Qxb3 26.Rxb3 f4 27.d5 fxe3 28.dxc6 Re6 29.fxe3 Rxc6 30.Kf2 Rf8 31.Ke2 Rc2+ 32.Nd2 Rd8 33.Rd3 Ra2 34.Rxd8+ Bxd8 35.Rc1 Bf6 36.Rc7 b5 37.Rc6 Rxa3 38.Ne4 Be7 39.Nc5 a5 40.Rb6 axb4 41.Rxb5 Ra2+ 42.Kd3 Rh2 43.Na6\" }, { \"id\": 332967, \"Event\": \"Corus\", \"Site\": \"Wijk aan Zee NED\", \"Date\": \"2001.01.27\", \"White\": \"Van Wely,L\", \"Black\": \"Kasparov,G\", \"Result\": \"1\\/2-1\\/2\", \"WhiteElo\": \"2700\", \"BlackElo\": \"2849\", \"ECO\": \"D37\", \"FEN\": null, \"movetext\": \"1.d4 Nf6 2.c4 e6 3.Nf3 d5 4.Nc3 Be7 5.Bf4 O-O 6.e3 c5 7.dxc5 Bxc5 8.cxd5 Nxd5 9.Nxd5 exd5 10.a3 Nc6 11.Bd3 Bb6 12.O-O Bg4 13.h3 Bh5 14.b4 Re8 15.Rc1 a6 16.g4 Bg6 17.Bxg6 hxg6 18.Rc3 d4 19.Rd3 Qd5 20.exd4 Re4 21.Be3 Rd8 22.Re1 f6 23.Kg2 f5 24.gxf5 gxf5 25.Qb3 Qxb3 26.Rxb3 f4 27.d5 fxe3 28.dxc6 Re6 29.fxe3 Rxc6 30.Kf2 Rf8 31.Ke2 Rc2+ 32.Nd2 Rd8 33.Rd3 Ra2 34.Rxd8+ Bxd8 35.Rc1 Bf6 36.Rc7 b5 37.Rc6 Rxa3 38.Ne4 Be7 39.Nc5 a5 40.Rb6 axb4 41.Rxb5 Ra2+ 42.Kd3 Rh2 43.Na6\" }, { \"id\": 369372, \"Event\": \"Rapid\", \"Site\": \"Reykjavik ISL\", \"Date\": \"2004.03.20\", \"White\": \"Nielsen,PH\", \"Black\": \"Kasparov,G\", \"Result\": \"1\\/2-1\\/2\", \"WhiteElo\": \"2638\", \"BlackElo\": \"2831\", \"ECO\": \"D37\", \"FEN\": null, \"movetext\": \"1.d4 Nf6 2.c4 e6 3.Nf3 d5 4.Nc3 Be7 5.Bf4 O-O 6.e3 c5 7.dxc5 Bxc5 8.a3 Nc6 9.Rc1 a6 10.b4 Bd6 11.Bg5 a5 12.b5 Ne7 13.Bxf6 gxf6 14.a4 Bb4 15.Be2 dxc4 16.O-O Nd5 17.Na2 Nb6 18.Qc2 e5 19.Nxb4 axb4 20.Bxc4 Nxc4 21.Qxc4 Rxa4 22.Rfd1 Qb6 23.Nh4 Be6 24.Qe4 Qxb5 25.Qf3 Kg7 26.Nf5+ Bxf5 27.Qxf5 b3 28.Rd6 b2 29.Qxf6+ Kg8 30.Qg5+ Kh8 31.Qf6+\" } ]","title":"POST /v1/search"},{"location":"post-search/#post-v1search","text":"Finds up to 25 games matching the criteria.","title":"POST /v1/search"},{"location":"post-search/#event-optional","text":"The name of the event.","title":"Event (optional)"},{"location":"post-search/#date-optional","text":"The year in which the event took place.","title":"Date (optional)"},{"location":"post-search/#white-optional","text":"The player with the white pieces.","title":"White (optional)"},{"location":"post-search/#black-optional","text":"The player with the black pieces.","title":"Black (optional)"},{"location":"post-search/#result-optional","text":"The result of the game as per these options. 1-0 means White wins. 1/2-1/2 means the game is a draw. 0-1 means Black wins.","title":"Result (optional)"},{"location":"post-search/#eco-optional","text":"Encyclopaedia of Chess Openings (ECO) code. curl https://api.chesslablab.org:9443/v1/search \\ -H \"Content-Type: application/json\" \\ --data-raw '{ \"Black\": \"Kasparov,G\", \"ECO\": \"D37\" }' [ { \"id\": 156639, \"Event\": \"Rapid\", \"Site\": \"Reykjavik ISL\", \"Date\": \"2004.03.20\", \"White\": \"Nielsen,PH\", \"Black\": \"Kasparov,G\", \"Result\": \"1\\/2-1\\/2\", \"WhiteElo\": \"2638\", \"BlackElo\": \"2831\", \"ECO\": \"D37\", \"FEN\": null, \"movetext\": \"1.d4 Nf6 2.c4 e6 3.Nf3 d5 4.Nc3 Be7 5.Bf4 O-O 6.e3 c5 7.dxc5 Bxc5 8.a3 Nc6 9.Rc1 a6 10.b4 Bd6 11.Bg5 a5 12.b5 Ne7 13.Bxf6 gxf6 14.a4 Bb4 15.Be2 dxc4 16.O-O Nd5 17.Na2 Nb6 18.Qc2 e5 19.Nxb4 axb4 20.Bxc4 Nxc4 21.Qxc4 Rxa4 22.Rfd1 Qb6 23.Nh4 Be6 24.Qe4 Qxb5 25.Qf3 Kg7 26.Nf5+ Bxf5 27.Qxf5 b3 28.Rd6 b2 29.Qxf6+ Kg8 30.Qg5+ Kh8 31.Qf6+\" }, { \"id\": 369145, \"Event\": \"Corus\", \"Site\": \"Wijk aan Zee NED\", \"Date\": \"2001.01.27\", \"White\": \"Van Wely,L\", \"Black\": \"Kasparov,G\", \"Result\": \"1\\/2-1\\/2\", \"WhiteElo\": \"2700\", \"BlackElo\": \"2849\", \"ECO\": \"D37\", \"FEN\": null, \"movetext\": \"1.d4 Nf6 2.c4 e6 3.Nf3 d5 4.Nc3 Be7 5.Bf4 O-O 6.e3 c5 7.dxc5 Bxc5 8.cxd5 Nxd5 9.Nxd5 exd5 10.a3 Nc6 11.Bd3 Bb6 12.O-O Bg4 13.h3 Bh5 14.b4 Re8 15.Rc1 a6 16.g4 Bg6 17.Bxg6 hxg6 18.Rc3 d4 19.Rd3 Qd5 20.exd4 Re4 21.Be3 Rd8 22.Re1 f6 23.Kg2 f5 24.gxf5 gxf5 25.Qb3 Qxb3 26.Rxb3 f4 27.d5 fxe3 28.dxc6 Re6 29.fxe3 Rxc6 30.Kf2 Rf8 31.Ke2 Rc2+ 32.Nd2 Rd8 33.Rd3 Ra2 34.Rxd8+ Bxd8 35.Rc1 Bf6 36.Rc7 b5 37.Rc6 Rxa3 38.Ne4 Be7 39.Nc5 a5 40.Rb6 axb4 41.Rxb5 Ra2+ 42.Kd3 Rh2 43.Na6\" }, { \"id\": 332967, \"Event\": \"Corus\", \"Site\": \"Wijk aan Zee NED\", \"Date\": \"2001.01.27\", \"White\": \"Van Wely,L\", \"Black\": \"Kasparov,G\", \"Result\": \"1\\/2-1\\/2\", \"WhiteElo\": \"2700\", \"BlackElo\": \"2849\", \"ECO\": \"D37\", \"FEN\": null, \"movetext\": \"1.d4 Nf6 2.c4 e6 3.Nf3 d5 4.Nc3 Be7 5.Bf4 O-O 6.e3 c5 7.dxc5 Bxc5 8.cxd5 Nxd5 9.Nxd5 exd5 10.a3 Nc6 11.Bd3 Bb6 12.O-O Bg4 13.h3 Bh5 14.b4 Re8 15.Rc1 a6 16.g4 Bg6 17.Bxg6 hxg6 18.Rc3 d4 19.Rd3 Qd5 20.exd4 Re4 21.Be3 Rd8 22.Re1 f6 23.Kg2 f5 24.gxf5 gxf5 25.Qb3 Qxb3 26.Rxb3 f4 27.d5 fxe3 28.dxc6 Re6 29.fxe3 Rxc6 30.Kf2 Rf8 31.Ke2 Rc2+ 32.Nd2 Rd8 33.Rd3 Ra2 34.Rxd8+ Bxd8 35.Rc1 Bf6 36.Rc7 b5 37.Rc6 Rxa3 38.Ne4 Be7 39.Nc5 a5 40.Rb6 axb4 41.Rxb5 Ra2+ 42.Kd3 Rh2 43.Na6\" }, { \"id\": 369372, \"Event\": \"Rapid\", \"Site\": \"Reykjavik ISL\", \"Date\": \"2004.03.20\", \"White\": \"Nielsen,PH\", \"Black\": \"Kasparov,G\", \"Result\": \"1\\/2-1\\/2\", \"WhiteElo\": \"2638\", \"BlackElo\": \"2831\", \"ECO\": \"D37\", \"FEN\": null, \"movetext\": \"1.d4 Nf6 2.c4 e6 3.Nf3 d5 4.Nc3 Be7 5.Bf4 O-O 6.e3 c5 7.dxc5 Bxc5 8.a3 Nc6 9.Rc1 a6 10.b4 Bd6 11.Bg5 a5 12.b5 Ne7 13.Bxf6 gxf6 14.a4 Bb4 15.Be2 dxc4 16.O-O Nd5 17.Na2 Nb6 18.Qc2 e5 19.Nxb4 axb4 20.Bxc4 Nxc4 21.Qxc4 Rxa4 22.Rfd1 Qb6 23.Nh4 Be6 24.Qe4 Qxb5 25.Qf3 Kg7 26.Nf5+ Bxf5 27.Qxf5 b3 28.Rd6 b2 29.Qxf6+ Kg8 30.Qg5+ Kh8 31.Qf6+\" } ]","title":"ECO (optional)"},{"location":"post-stats-event/","text":"POST /v1/stats/event Returns statistics about opening results in chess events. Event (optional) The name of the event. Result (optional) The result of the game as per these options. 1-0 means White wins. 1/2-1/2 means the game is a draw. 0-1 means Black wins. curl https://api.chesslablab.org:9443/v1/stats/event \\ -H \"Content-Type: application/json\" \\ --data-raw '{ \"Event\": \"FIDE Candidates 2018\", \"Result\": \"1-0\" }' [ { \"ECO\": \"D35\", \"total\": 2 }, { \"ECO\": \"A48\", \"total\": 1 }, { \"ECO\": \"D40\", \"total\": 1 }, { \"ECO\": \"C50\", \"total\": 1 } ]","title":"POST /v1/stats/event"},{"location":"post-stats-event/#post-v1statsevent","text":"Returns statistics about opening results in chess events.","title":"POST /v1/stats/event"},{"location":"post-stats-event/#event-optional","text":"The name of the event.","title":"Event (optional)"},{"location":"post-stats-event/#result-optional","text":"The result of the game as per these options. 1-0 means White wins. 1/2-1/2 means the game is a draw. 0-1 means Black wins. curl https://api.chesslablab.org:9443/v1/stats/event \\ -H \"Content-Type: application/json\" \\ --data-raw '{ \"Event\": \"FIDE Candidates 2018\", \"Result\": \"1-0\" }' [ { \"ECO\": \"D35\", \"total\": 2 }, { \"ECO\": \"A48\", \"total\": 1 }, { \"ECO\": \"D40\", \"total\": 1 }, { \"ECO\": \"C50\", \"total\": 1 } ]","title":"Result (optional)"},{"location":"post-stats-player/","text":"POST /v1/stats/player Returns statistics about opening results by chess player. White (optional) The player with the white pieces. Black (optional) The player with the black pieces. Result (optional) The result of the game as per these options. 1-0 means White wins. 1/2-1/2 means the game is a draw. 0-1 means Black wins. curl https://api.chesslablab.org:9443/v1/stats/player \\ -H \"Content-Type: application/json\" \\ --data-raw '{ \"Result\": \"0-1\" }' [ { \"ECO\": \"B06\", \"total\": 39 }, { \"ECO\": \"A46\", \"total\": 34 }, ... { \"ECO\": \"C40\", \"total\": 1 }, { \"ECO\": \"C98\", \"total\": 1 } ]","title":"POST /v1/stats/player"},{"location":"post-stats-player/#post-v1statsplayer","text":"Returns statistics about opening results by chess player.","title":"POST /v1/stats/player"},{"location":"post-stats-player/#white-optional","text":"The player with the white pieces.","title":"White (optional)"},{"location":"post-stats-player/#black-optional","text":"The player with the black pieces.","title":"Black (optional)"},{"location":"post-stats-player/#result-optional","text":"The result of the game as per these options. 1-0 means White wins. 1/2-1/2 means the game is a draw. 0-1 means Black wins. curl https://api.chesslablab.org:9443/v1/stats/player \\ -H \"Content-Type: application/json\" \\ --data-raw '{ \"Result\": \"0-1\" }' [ { \"ECO\": \"B06\", \"total\": 39 }, { \"ECO\": \"A46\", \"total\": 34 }, ... { \"ECO\": \"C40\", \"total\": 1 }, { \"ECO\": \"C98\", \"total\": 1 } ]","title":"Result (optional)"},{"location":"post-tutor-fen/","text":"POST /v1/tutor/fen Explains a FEN position in terms of chess concepts. fen A FEN string. curl --request POST \\ --url https://api.chesslablab.org:9443/v1/tutor/fen \\ --data '{\"fen\":\"r1bq1rk1/pppnn1bp/3p2p1/3Ppp2/2P1P3/2N2P2/PP2B1PP/R1BQNRK1 w - f6\"}' \"White is totally controlling the center. The white pieces are significantly better connected. White has a moderate space advantage. The black player is pressuring a little bit more squares than its opponent. White has a slight advanced pawn advantage. d5 is an advanced pawn. e6 and d4 are outpost squares. Overall, 4 heuristic evaluation features are favoring White while 1 is favoring Black.\"","title":"POST /v1/tutor/fen"},{"location":"post-tutor-fen/#post-v1tutorfen","text":"Explains a FEN position in terms of chess concepts.","title":"POST /v1/tutor/fen"},{"location":"post-tutor-fen/#fen","text":"A FEN string. curl --request POST \\ --url https://api.chesslablab.org:9443/v1/tutor/fen \\ --data '{\"fen\":\"r1bq1rk1/pppnn1bp/3p2p1/3Ppp2/2P1P3/2N2P2/PP2B1PP/R1BQNRK1 w - f6\"}' \"White is totally controlling the center. The white pieces are significantly better connected. White has a moderate space advantage. The black player is pressuring a little bit more squares than its opponent. White has a slight advanced pawn advantage. d5 is an advanced pawn. e6 and d4 are outpost squares. Overall, 4 heuristic evaluation features are favoring White while 1 is favoring Black.\"","title":"fen"}]} \ No newline at end of file +{"config":{"indexing":"full","lang":["en"],"min_search_length":3,"prebuild_index":false,"separator":"[\\s\\-]+"},"docs":[{"location":"","text":"PHP Chess API PHP Chess API is a REST-like API that provides chess functionality over an HTTP connection. It goes hand in hand with a MySQL chess database which is to be set up as per the Chess Data docs. Similar to the PHP Chess Server , it can be hosted on a custom domain. However, while the chess server handles multiple concurrent connections based on real-time commands, the API endpoints may take a little longer to execute \u2014 for example, a file download or a database query. Components Based Design PHP Chess API has been created using the Symfony framework, which is a set of reusable PHP components. Lightweight Dependencies required: PHP Chess for chess functionality. PHP dotenv for loading environment variables.","title":"Home"},{"location":"#php-chess-api","text":"PHP Chess API is a REST-like API that provides chess functionality over an HTTP connection. It goes hand in hand with a MySQL chess database which is to be set up as per the Chess Data docs. Similar to the PHP Chess Server , it can be hosted on a custom domain. However, while the chess server handles multiple concurrent connections based on real-time commands, the API endpoints may take a little longer to execute \u2014 for example, a file download or a database query.","title":"PHP Chess API"},{"location":"#components-based-design","text":"PHP Chess API has been created using the Symfony framework, which is a set of reusable PHP components.","title":"Components Based Design"},{"location":"#lightweight","text":"Dependencies required: PHP Chess for chess functionality. PHP dotenv for loading environment variables.","title":"Lightweight"},{"location":"get-annotations-games/","text":"GET /v1/annotations/games Returns the annotated chess games available in the database. curl https://api.chesslablab.org:9443/v1/annotations/games [ { \"Event\": \"Steinitz - Zukertort World Championship Match\", \"Site\": \"New Orleans, LA USA\", \"Date\": \"1886\", \"White\": \"Johannes Zukertort\", \"Black\": \"Wilhelm Steinitz\", \"WhiteElo\": \"?\", \"BlackElo\": \"?\", \"Result\": \"0-1\", \"ECO\": \"D50\", \"movetext\": \"{ The Queen's Gambit Declined. Adapted notes originally by Robert James Fischer from a television interview. } 1.d4 d5 2.c4 e6 3.Nc3 Nf6 4.Bg5 Be7 5.Nf3 O-O 6.c5 { is a mistake already; instead it should be played e3, naturally. } 6...b6 7.b4 bxc5 8.dxc5 a5 9.a3 d4 { is a fantastic move; it's the winning move. The pawn can't be taken with the knight because of axb4. } 10.Bxf6 gxf6 11.Na4 e5 { because the center is easily winning. Black's kingside weakness is nothing. } 12.b5 Be6 { with the idea of dominating the game with a powerful mobile center. } 13.g3 c6 14.bxc6 Nxc6 15.Bg2 Rb8 { threatening Bb3. } 16.Qc1 d3 17.e3 e4 18.Nd2 f5 19.O-O Re8 { is a very modern move; a quiet positional move. The rook is doing nothing now, but later... } 20.f3 { to break up the center, it's the only chance for White. } 20...Nd4 21.exd4 Qxd4+ 22.Kh1 e3 (22... Qxa4 { allows Black to easily regain material. }) 23.Nc3 Bf6 24.Ndb1 d2 25.Qc2 Bb3 26.Qxf5 d1=Q 27.Nxd1 Bxd1 28.Nc3 e2 29.Raxd1 Qxc3 { and White resigns. The center has prevailed. } 0-1\" }, ... { \"Event\": \"Lasker - Capablanca World Championship Match (1)\", \"Site\": \"Havana CUB\", \"Date\": \"1921\", \"White\": \"Jose Raul Capablanca\", \"Black\": \"Emanuel Lasker\", \"WhiteElo\": \"?\", \"BlackElo\": \"?\", \"Result\": \"1/2-1/2\", \"ECO\": \"D02\", \"movetext\": \"{Queen's Pawn Game. Adapted notes originally by J. R. Capablanca.} 1.d4 d5 2.Nf3 e6 3.c4 Nf6 4.Bg5 Be7 5.e3 Nbd7 6.Nc3 O-O 7.Rc1 b6 8.cxd5 exd5 9.Bb5 {is a new move which has no merit outside of its novelty. I played it for the first time against Teichmann in Berlin in 1913. } (9.Bd3 { is the normal move but Qa4 may be the best, after all. }) 9...Bb7 10.Qa4 a6 (10...c5 { is the proper continuation.}) 11.Bxd7 Nxd7 12.Bxe7 Qxe7 13.Qb3 { with the idea of preventing c5, but still better would have been to castle.} Qd6 (13...c5 { could be played as well. Black would come out all right from the many complications arising from this move.}) 14.O-O Rfd8 15.Rfd1 Rab8 16.Ne1 { in order to draw the knight away from the line of the bishop, which would soon be open, as it actually occurred in the game.} Nf6 17.Rc2 c5 18.dxc5 bxc5 19.Ne2 Ne4 (19...Ng4 { begins a failed attack. }) (19...d4 { begins a failed attack. }) 20.Qa3 Rbc8 21.Ng3 Nxg3 22.hxg3 Qb6 23.Rcd2 (23.Rdc1 { would not have been better because of d4, etc. } d4) 23...h6 24.Nf3 d4 25.exd4 Bxf3 26.Qxf3 Rxd4 27.Rc2 Rxd1+ 28.Qxd1 Rd8 29.Qe2 Qd6 30.Kh2 Qd5 31.b3 Qf5 32.g4 Qg5 33.g3 Rd6 { is unquestionably the best move; with any other move Black would, perhaps, have found it impossible to draw.} 34.Kg2 g6 35.Qc4 Re6 36.Qxc5 Qxg4 37.f3 Qg5 38.Qxg5 hxg5 39.Kf2 Rd6 40.Ke3 Re6+ 41.Kd4 Rd6+ (42.Kc5 { is too risky. The way to win was not at all clear and I even thought that with that move Black might win. }) 42.Ke3 Re6+ 43.Kf2 Rd6 44.g4 Rd1 (45.Ke3 { is the right move to make. It is perhaps the only chance White has to win, or at least come near it. } Ra1 46.Kd4 { gains an important move. } Kg7 47.b4 Rf1 { accomplishes nothing with the white king on d4. }) 45.Ke2 { was played instead. } Ra1 46.Kd3 Kg7 47.b4 Rf1 { was the best move with the white king on d3. } 48.Ke3 { and the remainder of the game needs no comments. } Rb1 49.Rc6 Rxb4 50.Rxa6 Rb2 1/2-1/2\" } ]","title":"GET /v1/annotations/games"},{"location":"get-annotations-games/#get-v1annotationsgames","text":"Returns the annotated chess games available in the database. curl https://api.chesslablab.org:9443/v1/annotations/games [ { \"Event\": \"Steinitz - Zukertort World Championship Match\", \"Site\": \"New Orleans, LA USA\", \"Date\": \"1886\", \"White\": \"Johannes Zukertort\", \"Black\": \"Wilhelm Steinitz\", \"WhiteElo\": \"?\", \"BlackElo\": \"?\", \"Result\": \"0-1\", \"ECO\": \"D50\", \"movetext\": \"{ The Queen's Gambit Declined. Adapted notes originally by Robert James Fischer from a television interview. } 1.d4 d5 2.c4 e6 3.Nc3 Nf6 4.Bg5 Be7 5.Nf3 O-O 6.c5 { is a mistake already; instead it should be played e3, naturally. } 6...b6 7.b4 bxc5 8.dxc5 a5 9.a3 d4 { is a fantastic move; it's the winning move. The pawn can't be taken with the knight because of axb4. } 10.Bxf6 gxf6 11.Na4 e5 { because the center is easily winning. Black's kingside weakness is nothing. } 12.b5 Be6 { with the idea of dominating the game with a powerful mobile center. } 13.g3 c6 14.bxc6 Nxc6 15.Bg2 Rb8 { threatening Bb3. } 16.Qc1 d3 17.e3 e4 18.Nd2 f5 19.O-O Re8 { is a very modern move; a quiet positional move. The rook is doing nothing now, but later... } 20.f3 { to break up the center, it's the only chance for White. } 20...Nd4 21.exd4 Qxd4+ 22.Kh1 e3 (22... Qxa4 { allows Black to easily regain material. }) 23.Nc3 Bf6 24.Ndb1 d2 25.Qc2 Bb3 26.Qxf5 d1=Q 27.Nxd1 Bxd1 28.Nc3 e2 29.Raxd1 Qxc3 { and White resigns. The center has prevailed. } 0-1\" }, ... { \"Event\": \"Lasker - Capablanca World Championship Match (1)\", \"Site\": \"Havana CUB\", \"Date\": \"1921\", \"White\": \"Jose Raul Capablanca\", \"Black\": \"Emanuel Lasker\", \"WhiteElo\": \"?\", \"BlackElo\": \"?\", \"Result\": \"1/2-1/2\", \"ECO\": \"D02\", \"movetext\": \"{Queen's Pawn Game. Adapted notes originally by J. R. Capablanca.} 1.d4 d5 2.Nf3 e6 3.c4 Nf6 4.Bg5 Be7 5.e3 Nbd7 6.Nc3 O-O 7.Rc1 b6 8.cxd5 exd5 9.Bb5 {is a new move which has no merit outside of its novelty. I played it for the first time against Teichmann in Berlin in 1913. } (9.Bd3 { is the normal move but Qa4 may be the best, after all. }) 9...Bb7 10.Qa4 a6 (10...c5 { is the proper continuation.}) 11.Bxd7 Nxd7 12.Bxe7 Qxe7 13.Qb3 { with the idea of preventing c5, but still better would have been to castle.} Qd6 (13...c5 { could be played as well. Black would come out all right from the many complications arising from this move.}) 14.O-O Rfd8 15.Rfd1 Rab8 16.Ne1 { in order to draw the knight away from the line of the bishop, which would soon be open, as it actually occurred in the game.} Nf6 17.Rc2 c5 18.dxc5 bxc5 19.Ne2 Ne4 (19...Ng4 { begins a failed attack. }) (19...d4 { begins a failed attack. }) 20.Qa3 Rbc8 21.Ng3 Nxg3 22.hxg3 Qb6 23.Rcd2 (23.Rdc1 { would not have been better because of d4, etc. } d4) 23...h6 24.Nf3 d4 25.exd4 Bxf3 26.Qxf3 Rxd4 27.Rc2 Rxd1+ 28.Qxd1 Rd8 29.Qe2 Qd6 30.Kh2 Qd5 31.b3 Qf5 32.g4 Qg5 33.g3 Rd6 { is unquestionably the best move; with any other move Black would, perhaps, have found it impossible to draw.} 34.Kg2 g6 35.Qc4 Re6 36.Qxc5 Qxg4 37.f3 Qg5 38.Qxg5 hxg5 39.Kf2 Rd6 40.Ke3 Re6+ 41.Kd4 Rd6+ (42.Kc5 { is too risky. The way to win was not at all clear and I even thought that with that move Black might win. }) 42.Ke3 Re6+ 43.Kf2 Rd6 44.g4 Rd1 (45.Ke3 { is the right move to make. It is perhaps the only chance White has to win, or at least come near it. } Ra1 46.Kd4 { gains an important move. } Kg7 47.b4 Rf1 { accomplishes nothing with the white king on d4. }) 45.Ke2 { was played instead. } Ra1 46.Kd3 Kg7 47.b4 Rf1 { was the best move with the white king on d3. } 48.Ke3 { and the remainder of the game needs no comments. } Rb1 49.Rc6 Rxb4 50.Rxa6 Rb2 1/2-1/2\" } ]","title":"GET /v1/annotations/games"},{"location":"get-stats-opening/","text":"GET /v1/stats/opening Returns statistics about the chess openings available in the database: Draw rate, win rate for White and win rate for Black. curl https://api.chesslablab.org:9443/v1/stats/opening { \"drawRate\": [ { \"ECO\": \"C42\", \"total\": 2964 }, ... { \"ECO\": \"B23\", \"total\": 1044 } ], \"winRateForWhite\": [ { \"ECO\": \"A45\", \"total\": 2880 }, ... { \"ECO\": \"B51\", \"total\": 1053 } ], \"winRateForBlack\": [ { \"ECO\": \"A45\", \"total\": 2658 }, ... { \"ECO\": \"D10\", \"total\": 732 } ] }","title":"GET /v1/stats/opening"},{"location":"get-stats-opening/#get-v1statsopening","text":"Returns statistics about the chess openings available in the database: Draw rate, win rate for White and win rate for Black. curl https://api.chesslablab.org:9443/v1/stats/opening { \"drawRate\": [ { \"ECO\": \"C42\", \"total\": 2964 }, ... { \"ECO\": \"B23\", \"total\": 1044 } ], \"winRateForWhite\": [ { \"ECO\": \"A45\", \"total\": 2880 }, ... { \"ECO\": \"B51\", \"total\": 1053 } ], \"winRateForBlack\": [ { \"ECO\": \"A45\", \"total\": 2658 }, ... { \"ECO\": \"D10\", \"total\": 732 } ] }","title":"GET /v1/stats/opening"},{"location":"installation/","text":"Installation Clone the chesslablab/chess-api repo into your projects folder. Then cd the chess-api directory and create an .env file: cp .env.example .env Make sure to have installed the fullchain.pem and privkey.pem files into the docker/nginx/ssl folder, and run the Docker containers in detached mode in the background: docker compose -f docker-compose.default.yml up -d Finally, if you are running the chess API in a local development environment along with the website , you may want to add a domain name entry to your /etc/hosts file as per the API variable defined in the assets/env.example.js file. 127.0.0.1 api.chesslablab.org","title":"Installation"},{"location":"installation/#installation","text":"Clone the chesslablab/chess-api repo into your projects folder. Then cd the chess-api directory and create an .env file: cp .env.example .env Make sure to have installed the fullchain.pem and privkey.pem files into the docker/nginx/ssl folder, and run the Docker containers in detached mode in the background: docker compose -f docker-compose.default.yml up -d Finally, if you are running the chess API in a local development environment along with the website , you may want to add a domain name entry to your /etc/hosts file as per the API variable defined in the assets/env.example.js file. 127.0.0.1 api.chesslablab.org","title":"Installation"},{"location":"post-autocomplete-event/","text":"POST /v1/autocomplete/event Returns autocomplete data for chess events. Event The name of the event. curl https://api.chesslablab.org:9443/v1/autocomplete/event \\ -H \"Content-Type: application/json\" \\ --data-raw '{ \"Event\": \"candidates\" }' [ \"FIDE Candidates 2014\", \"FIDE Candidates 2016\", \"WCh Candidates s\\/f\", \"FIDE Candidates\", \"FIDE Candidates (Women)\", \"FIDE Women's Candidates\", \"Women Candidates Pool B\", \"WCh Candidates\", \"FIDE Candidates 2018\" ]","title":"POST /v1/autocomplete/event"},{"location":"post-autocomplete-event/#post-v1autocompleteevent","text":"Returns autocomplete data for chess events.","title":"POST /v1/autocomplete/event"},{"location":"post-autocomplete-event/#event","text":"The name of the event. curl https://api.chesslablab.org:9443/v1/autocomplete/event \\ -H \"Content-Type: application/json\" \\ --data-raw '{ \"Event\": \"candidates\" }' [ \"FIDE Candidates 2014\", \"FIDE Candidates 2016\", \"WCh Candidates s\\/f\", \"FIDE Candidates\", \"FIDE Candidates (Women)\", \"FIDE Women's Candidates\", \"Women Candidates Pool B\", \"WCh Candidates\", \"FIDE Candidates 2018\" ]","title":"Event"},{"location":"post-autocomplete-player/","text":"POST /v1/autocomplete/player Returns autocomplete data for chess players. White (optional) The name of the player with the white pieces. Black (optional) The name of the player with the black pieces. curl https://api.chesslablab.org:9443/v1/autocomplete/player \\ -H \"Content-Type: application/json\" \\ --data-raw '{ \"White\": \"anand\" }' [ \"Anand, Viswanathan\", \"Anand,V\", \"Anand,V \\/ FRITZ7\", \"Praggnanandhaa,R\", \"Anand,Vignesh\", \"Pranav,Anand\" ]","title":"POST /v1/autocomplete/player"},{"location":"post-autocomplete-player/#post-v1autocompleteplayer","text":"Returns autocomplete data for chess players.","title":"POST /v1/autocomplete/player"},{"location":"post-autocomplete-player/#white-optional","text":"The name of the player with the white pieces.","title":"White (optional)"},{"location":"post-autocomplete-player/#black-optional","text":"The name of the player with the black pieces. curl https://api.chesslablab.org:9443/v1/autocomplete/player \\ -H \"Content-Type: application/json\" \\ --data-raw '{ \"White\": \"anand\" }' [ \"Anand, Viswanathan\", \"Anand,V\", \"Anand,V \\/ FRITZ7\", \"Praggnanandhaa,R\", \"Anand,Vignesh\", \"Pranav,Anand\" ]","title":"Black (optional)"},{"location":"post-download-image/","text":"POST /v1/download/image Downloads an image. fen A FEN string. flip The orientation of the board as per these options. w for White's perspective. b for Black's perspective. curl https://api.chesslablab.org:9443/v1/download/image \\ -H \"Content-Type: application/json\" \\ --data-raw '{ \"fen\": \"r1bq1rk1/pppnn1bp/3p2p1/3Ppp2/2P1P3/2N2P2/PP2B1PP/R1BQNRK1 w - f6\", \"flip\": \"w\" }' \\ --output image.png","title":"POST /v1/download/image"},{"location":"post-download-image/#post-v1downloadimage","text":"Downloads an image.","title":"POST /v1/download/image"},{"location":"post-download-image/#fen","text":"A FEN string.","title":"fen"},{"location":"post-download-image/#flip","text":"The orientation of the board as per these options. w for White's perspective. b for Black's perspective. curl https://api.chesslablab.org:9443/v1/download/image \\ -H \"Content-Type: application/json\" \\ --data-raw '{ \"fen\": \"r1bq1rk1/pppnn1bp/3p2p1/3Ppp2/2P1P3/2N2P2/PP2B1PP/R1BQNRK1 w - f6\", \"flip\": \"w\" }' \\ --output image.png","title":"flip"},{"location":"post-download-mp4/","text":"POST /v1/download/mp4 Downloads a video. variant The chess variant as per these options. classical chess, also known as standard or slow chess. 960 is the same as classical chess except that the starting position of the pieces is randomized. dunsany is an asymmetric variant in which Black has the standard chess army and White has 32 pawns. losing chess, the objective of each player is to lose all of their pieces or be stalemated. racing-kings consists of being the first player to move their king to the eighth row. movetext A portable game notation (PGN) movetext. flip The orientation of the board as per these options. w for White's perspective. b for Black's perspective. fen (optional) A FEN string. startPos (optional) The start position in a Chess960 game; for example BRNNKBRQ . curl https://api.chesslablab.org:9443/v1/download/mp4 \\ -H \"Content-Type: application/json\" \\ --data-raw '{ \"variant\": \"classical\", \"movetext\": \"1.d4 Nf6 2.c4 g6 3.Nc3 Bg7 4.e4 d6\", \"flip\": \"b\" }' \\ --output video.mp4","title":"POST /v1/download/mp4"},{"location":"post-download-mp4/#post-v1downloadmp4","text":"Downloads a video.","title":"POST /v1/download/mp4"},{"location":"post-download-mp4/#variant","text":"The chess variant as per these options. classical chess, also known as standard or slow chess. 960 is the same as classical chess except that the starting position of the pieces is randomized. dunsany is an asymmetric variant in which Black has the standard chess army and White has 32 pawns. losing chess, the objective of each player is to lose all of their pieces or be stalemated. racing-kings consists of being the first player to move their king to the eighth row.","title":"variant"},{"location":"post-download-mp4/#movetext","text":"A portable game notation (PGN) movetext.","title":"movetext"},{"location":"post-download-mp4/#flip","text":"The orientation of the board as per these options. w for White's perspective. b for Black's perspective.","title":"flip"},{"location":"post-download-mp4/#fen-optional","text":"A FEN string.","title":"fen (optional)"},{"location":"post-download-mp4/#startpos-optional","text":"The start position in a Chess960 game; for example BRNNKBRQ . curl https://api.chesslablab.org:9443/v1/download/mp4 \\ -H \"Content-Type: application/json\" \\ --data-raw '{ \"variant\": \"classical\", \"movetext\": \"1.d4 Nf6 2.c4 g6 3.Nc3 Bg7 4.e4 d6\", \"flip\": \"b\" }' \\ --output video.mp4","title":"startPos (optional)"},{"location":"post-play-rav/","text":"POST /v1/play/rav Plays the moves in a RAV movetext returning the sequence of FEN positions that make up such movetext. variant The chess variant as per these options. classical chess, also known as standard or slow chess. 960 is the same as classical chess except that the starting position of the pieces is randomized. dunsany is an asymmetric variant in which Black has the standard chess army and White has 32 pawns. losing chess, the objective of each player is to lose all of their pieces or be stalemated. racing-kings consists of being the first player to move their king to the eighth row. movetext A portable game notation (PGN) movetext. fen (optional) A FEN string. startPos (optional) The start position in a Chess960 game; for example BRNNKBRQ . curl https://api.chesslablab.org:9443/v1/play/rav \\ -H \"Content-Type: application/json\" \\ --data-raw '{ \"variant\": \"classical\", \"movetext\": \"1.d4 Nf6 2.c4 e6 3.Nf3 d5 4.Nc3 Be7 5.Bf4 O-O 6.e3 c5 7.dxc5 Bxc5 8.a3 Nc6 9.Rc1 a6 10.b4 Bd6 11.Bg5 a5 12.b5 Ne7 13.Bxf6 gxf6 14.a4 Bb4 15.Be2 dxc4 16.O-O Nd5 17.Na2 Nb6 18.Qc2 e5 19.Nxb4 axb4 20.Bxc4 Nxc4 21.Qxc4 Rxa4 22.Rfd1 Qb6 23.Nh4 Be6 24.Qe4 Qxb5 25.Qf3 Kg7 26.Nf5+ Bxf5 27.Qxf5 b3 28.Rd6 b2 29.Qxf6+ Kg8 30.Qg5+ Kh8 31.Qf6+\" }' { \"variant\": \"classical\", \"turn\": \"b\", \"filtered\": \"1.d4 Nf6 2.c4 e6 3.Nf3 d5 4.Nc3 Be7 5.Bf4 O-O 6.e3 c5 7.dxc5 Bxc5 8.a3 Nc6 9.Rc1 a6 10.b4 Bd6 11.Bg5 a5 12.b5 Ne7 13.Bxf6 gxf6 14.a4 Bb4 15.Be2 dxc4 16.O-O Nd5 17.Na2 Nb6 18.Qc2 e5 19.Nxb4 axb4 20.Bxc4 Nxc4 21.Qxc4 Rxa4 22.Rfd1 Qb6 23.Nh4 Be6 24.Qe4 Qxb5 25.Qf3 Kg7 26.Nf5+ Bxf5 27.Qxf5 b3 28.Rd6 b2 29.Qxf6+ Kg8 30.Qg5+ Kh8 31.Qf6+\", \"movetext\": \"1.d4 Nf6 2.c4 e6 3.Nf3 d5 4.Nc3 Be7 5.Bf4 O-O 6.e3 c5 7.dxc5 Bxc5 8.a3 Nc6 9.Rc1 a6 10.b4 Bd6 11.Bg5 a5 12.b5 Ne7 13.Bxf6 gxf6 14.a4 Bb4 15.Be2 dxc4 16.O-O Nd5 17.Na2 Nb6 18.Qc2 e5 19.Nxb4 axb4 20.Bxc4 Nxc4 21.Qxc4 Rxa4 22.Rfd1 Qb6 23.Nh4 Be6 24.Qe4 Qxb5 25.Qf3 Kg7 26.Nf5+ Bxf5 27.Qxf5 b3 28.Rd6 b2 29.Qxf6+ Kg8 30.Qg5+ Kh8 31.Qf6+\", \"breakdown\": [ \"1.d4 Nf6 2.c4 e6 3.Nf3 d5 4.Nc3 Be7 5.Bf4 O-O 6.e3 c5 7.dxc5 Bxc5 8.a3 Nc6 9.Rc1 a6 10.b4 Bd6 11.Bg5 a5 12.b5 Ne7 13.Bxf6 gxf6 14.a4 Bb4 15.Be2 dxc4 16.O-O Nd5 17.Na2 Nb6 18.Qc2 e5 19.Nxb4 axb4 20.Bxc4 Nxc4 21.Qxc4 Rxa4 22.Rfd1 Qb6 23.Nh4 Be6 24.Qe4 Qxb5 25.Qf3 Kg7 26.Nf5+ Bxf5 27.Qxf5 b3 28.Rd6 b2 29.Qxf6+ Kg8 30.Qg5+ Kh8 31.Qf6+\" ], \"fen\": [ \"rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR w KQkq -\", \"rnbqkbnr/pppppppp/8/8/3P4/8/PPP1PPPP/RNBQKBNR b KQkq d3\", \"rnbqkb1r/pppppppp/5n2/8/3P4/8/PPP1PPPP/RNBQKBNR w KQkq -\", \"rnbqkb1r/pppppppp/5n2/8/2PP4/8/PP2PPPP/RNBQKBNR b KQkq c3\", \"rnbqkb1r/pppp1ppp/4pn2/8/2PP4/8/PP2PPPP/RNBQKBNR w KQkq -\", \"rnbqkb1r/pppp1ppp/4pn2/8/2PP4/5N2/PP2PPPP/RNBQKB1R b KQkq -\", \"rnbqkb1r/ppp2ppp/4pn2/3p4/2PP4/5N2/PP2PPPP/RNBQKB1R w KQkq d6\", \"rnbqkb1r/ppp2ppp/4pn2/3p4/2PP4/2N2N2/PP2PPPP/R1BQKB1R b KQkq -\", \"rnbqk2r/ppp1bppp/4pn2/3p4/2PP4/2N2N2/PP2PPPP/R1BQKB1R w KQkq -\", \"rnbqk2r/ppp1bppp/4pn2/3p4/2PP1B2/2N2N2/PP2PPPP/R2QKB1R b KQkq -\", \"rnbq1rk1/ppp1bppp/4pn2/3p4/2PP1B2/2N2N2/PP2PPPP/R2QKB1R w KQ -\", \"rnbq1rk1/ppp1bppp/4pn2/3p4/2PP1B2/2N1PN2/PP3PPP/R2QKB1R b KQ -\", \"rnbq1rk1/pp2bppp/4pn2/2pp4/2PP1B2/2N1PN2/PP3PPP/R2QKB1R w KQ c6\", \"rnbq1rk1/pp2bppp/4pn2/2Pp4/2P2B2/2N1PN2/PP3PPP/R2QKB1R b KQ -\", \"rnbq1rk1/pp3ppp/4pn2/2bp4/2P2B2/2N1PN2/PP3PPP/R2QKB1R w KQ -\", \"rnbq1rk1/pp3ppp/4pn2/2bp4/2P2B2/P1N1PN2/1P3PPP/R2QKB1R b KQ -\", \"r1bq1rk1/pp3ppp/2n1pn2/2bp4/2P2B2/P1N1PN2/1P3PPP/R2QKB1R w KQ -\", \"r1bq1rk1/pp3ppp/2n1pn2/2bp4/2P2B2/P1N1PN2/1P3PPP/2RQKB1R b K -\", \"r1bq1rk1/1p3ppp/p1n1pn2/2bp4/2P2B2/P1N1PN2/1P3PPP/2RQKB1R w K -\", \"r1bq1rk1/1p3ppp/p1n1pn2/2bp4/1PP2B2/P1N1PN2/5PPP/2RQKB1R b K b3\", \"r1bq1rk1/1p3ppp/p1nbpn2/3p4/1PP2B2/P1N1PN2/5PPP/2RQKB1R w K -\", \"r1bq1rk1/1p3ppp/p1nbpn2/3p2B1/1PP5/P1N1PN2/5PPP/2RQKB1R b K -\", \"r1bq1rk1/1p3ppp/2nbpn2/p2p2B1/1PP5/P1N1PN2/5PPP/2RQKB1R w K -\", \"r1bq1rk1/1p3ppp/2nbpn2/pP1p2B1/2P5/P1N1PN2/5PPP/2RQKB1R b K -\", \"r1bq1rk1/1p2nppp/3bpn2/pP1p2B1/2P5/P1N1PN2/5PPP/2RQKB1R w K -\", \"r1bq1rk1/1p2nppp/3bpB2/pP1p4/2P5/P1N1PN2/5PPP/2RQKB1R b K -\", \"r1bq1rk1/1p2np1p/3bpp2/pP1p4/2P5/P1N1PN2/5PPP/2RQKB1R w K -\", \"r1bq1rk1/1p2np1p/3bpp2/pP1p4/P1P5/2N1PN2/5PPP/2RQKB1R b K -\", \"r1bq1rk1/1p2np1p/4pp2/pP1p4/PbP5/2N1PN2/5PPP/2RQKB1R w K -\", \"r1bq1rk1/1p2np1p/4pp2/pP1p4/PbP5/2N1PN2/4BPPP/2RQK2R b K -\", \"r1bq1rk1/1p2np1p/4pp2/pP6/Pbp5/2N1PN2/4BPPP/2RQK2R w K -\", \"r1bq1rk1/1p2np1p/4pp2/pP6/Pbp5/2N1PN2/4BPPP/2RQ1RK1 b - -\", \"r1bq1rk1/1p3p1p/4pp2/pP1n4/Pbp5/2N1PN2/4BPPP/2RQ1RK1 w - -\", \"r1bq1rk1/1p3p1p/4pp2/pP1n4/Pbp5/4PN2/N3BPPP/2RQ1RK1 b - -\", \"r1bq1rk1/1p3p1p/1n2pp2/pP6/Pbp5/4PN2/N3BPPP/2RQ1RK1 w - -\", \"r1bq1rk1/1p3p1p/1n2pp2/pP6/Pbp5/4PN2/N1Q1BPPP/2R2RK1 b - -\", \"r1bq1rk1/1p3p1p/1n3p2/pP2p3/Pbp5/4PN2/N1Q1BPPP/2R2RK1 w - -\", \"r1bq1rk1/1p3p1p/1n3p2/pP2p3/PNp5/4PN2/2Q1BPPP/2R2RK1 b - -\", \"r1bq1rk1/1p3p1p/1n3p2/1P2p3/Ppp5/4PN2/2Q1BPPP/2R2RK1 w - -\", \"r1bq1rk1/1p3p1p/1n3p2/1P2p3/PpB5/4PN2/2Q2PPP/2R2RK1 b - -\", \"r1bq1rk1/1p3p1p/5p2/1P2p3/Ppn5/4PN2/2Q2PPP/2R2RK1 w - -\", \"r1bq1rk1/1p3p1p/5p2/1P2p3/PpQ5/4PN2/5PPP/2R2RK1 b - -\", \"2bq1rk1/1p3p1p/5p2/1P2p3/rpQ5/4PN2/5PPP/2R2RK1 w - -\", \"2bq1rk1/1p3p1p/5p2/1P2p3/rpQ5/4PN2/5PPP/2RR2K1 b - -\", \"2b2rk1/1p3p1p/1q3p2/1P2p3/rpQ5/4PN2/5PPP/2RR2K1 w - -\", \"2b2rk1/1p3p1p/1q3p2/1P2p3/rpQ4N/4P3/5PPP/2RR2K1 b - -\", \"5rk1/1p3p1p/1q2bp2/1P2p3/rpQ4N/4P3/5PPP/2RR2K1 w - -\", \"5rk1/1p3p1p/1q2bp2/1P2p3/rp2Q2N/4P3/5PPP/2RR2K1 b - -\", \"5rk1/1p3p1p/4bp2/1q2p3/rp2Q2N/4P3/5PPP/2RR2K1 w - -\", \"5rk1/1p3p1p/4bp2/1q2p3/rp5N/4PQ2/5PPP/2RR2K1 b - -\", \"5r2/1p3pkp/4bp2/1q2p3/rp5N/4PQ2/5PPP/2RR2K1 w - -\", \"5r2/1p3pkp/4bp2/1q2pN2/rp6/4PQ2/5PPP/2RR2K1 b - -\", \"5r2/1p3pkp/5p2/1q2pb2/rp6/4PQ2/5PPP/2RR2K1 w - -\", \"5r2/1p3pkp/5p2/1q2pQ2/rp6/4P3/5PPP/2RR2K1 b - -\", \"5r2/1p3pkp/5p2/1q2pQ2/r7/1p2P3/5PPP/2RR2K1 w - -\", \"5r2/1p3pkp/3R1p2/1q2pQ2/r7/1p2P3/5PPP/2R3K1 b - -\", \"5r2/1p3pkp/3R1p2/1q2pQ2/r7/4P3/1p3PPP/2R3K1 w - -\", \"5r2/1p3pkp/3R1Q2/1q2p3/r7/4P3/1p3PPP/2R3K1 b - -\", \"5rk1/1p3p1p/3R1Q2/1q2p3/r7/4P3/1p3PPP/2R3K1 w - -\", \"5rk1/1p3p1p/3R4/1q2p1Q1/r7/4P3/1p3PPP/2R3K1 b - -\", \"5r1k/1p3p1p/3R4/1q2p1Q1/r7/4P3/1p3PPP/2R3K1 w - -\", \"5r1k/1p3p1p/3R1Q2/1q2p3/r7/4P3/1p3PPP/2R3K1 b - -\" ] }","title":"POST /v1/play/rav"},{"location":"post-play-rav/#post-v1playrav","text":"Plays the moves in a RAV movetext returning the sequence of FEN positions that make up such movetext.","title":"POST /v1/play/rav"},{"location":"post-play-rav/#variant","text":"The chess variant as per these options. classical chess, also known as standard or slow chess. 960 is the same as classical chess except that the starting position of the pieces is randomized. dunsany is an asymmetric variant in which Black has the standard chess army and White has 32 pawns. losing chess, the objective of each player is to lose all of their pieces or be stalemated. racing-kings consists of being the first player to move their king to the eighth row.","title":"variant"},{"location":"post-play-rav/#movetext","text":"A portable game notation (PGN) movetext.","title":"movetext"},{"location":"post-play-rav/#fen-optional","text":"A FEN string.","title":"fen (optional)"},{"location":"post-play-rav/#startpos-optional","text":"The start position in a Chess960 game; for example BRNNKBRQ . curl https://api.chesslablab.org:9443/v1/play/rav \\ -H \"Content-Type: application/json\" \\ --data-raw '{ \"variant\": \"classical\", \"movetext\": \"1.d4 Nf6 2.c4 e6 3.Nf3 d5 4.Nc3 Be7 5.Bf4 O-O 6.e3 c5 7.dxc5 Bxc5 8.a3 Nc6 9.Rc1 a6 10.b4 Bd6 11.Bg5 a5 12.b5 Ne7 13.Bxf6 gxf6 14.a4 Bb4 15.Be2 dxc4 16.O-O Nd5 17.Na2 Nb6 18.Qc2 e5 19.Nxb4 axb4 20.Bxc4 Nxc4 21.Qxc4 Rxa4 22.Rfd1 Qb6 23.Nh4 Be6 24.Qe4 Qxb5 25.Qf3 Kg7 26.Nf5+ Bxf5 27.Qxf5 b3 28.Rd6 b2 29.Qxf6+ Kg8 30.Qg5+ Kh8 31.Qf6+\" }' { \"variant\": \"classical\", \"turn\": \"b\", \"filtered\": \"1.d4 Nf6 2.c4 e6 3.Nf3 d5 4.Nc3 Be7 5.Bf4 O-O 6.e3 c5 7.dxc5 Bxc5 8.a3 Nc6 9.Rc1 a6 10.b4 Bd6 11.Bg5 a5 12.b5 Ne7 13.Bxf6 gxf6 14.a4 Bb4 15.Be2 dxc4 16.O-O Nd5 17.Na2 Nb6 18.Qc2 e5 19.Nxb4 axb4 20.Bxc4 Nxc4 21.Qxc4 Rxa4 22.Rfd1 Qb6 23.Nh4 Be6 24.Qe4 Qxb5 25.Qf3 Kg7 26.Nf5+ Bxf5 27.Qxf5 b3 28.Rd6 b2 29.Qxf6+ Kg8 30.Qg5+ Kh8 31.Qf6+\", \"movetext\": \"1.d4 Nf6 2.c4 e6 3.Nf3 d5 4.Nc3 Be7 5.Bf4 O-O 6.e3 c5 7.dxc5 Bxc5 8.a3 Nc6 9.Rc1 a6 10.b4 Bd6 11.Bg5 a5 12.b5 Ne7 13.Bxf6 gxf6 14.a4 Bb4 15.Be2 dxc4 16.O-O Nd5 17.Na2 Nb6 18.Qc2 e5 19.Nxb4 axb4 20.Bxc4 Nxc4 21.Qxc4 Rxa4 22.Rfd1 Qb6 23.Nh4 Be6 24.Qe4 Qxb5 25.Qf3 Kg7 26.Nf5+ Bxf5 27.Qxf5 b3 28.Rd6 b2 29.Qxf6+ Kg8 30.Qg5+ Kh8 31.Qf6+\", \"breakdown\": [ \"1.d4 Nf6 2.c4 e6 3.Nf3 d5 4.Nc3 Be7 5.Bf4 O-O 6.e3 c5 7.dxc5 Bxc5 8.a3 Nc6 9.Rc1 a6 10.b4 Bd6 11.Bg5 a5 12.b5 Ne7 13.Bxf6 gxf6 14.a4 Bb4 15.Be2 dxc4 16.O-O Nd5 17.Na2 Nb6 18.Qc2 e5 19.Nxb4 axb4 20.Bxc4 Nxc4 21.Qxc4 Rxa4 22.Rfd1 Qb6 23.Nh4 Be6 24.Qe4 Qxb5 25.Qf3 Kg7 26.Nf5+ Bxf5 27.Qxf5 b3 28.Rd6 b2 29.Qxf6+ Kg8 30.Qg5+ Kh8 31.Qf6+\" ], \"fen\": [ \"rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR w KQkq -\", \"rnbqkbnr/pppppppp/8/8/3P4/8/PPP1PPPP/RNBQKBNR b KQkq d3\", \"rnbqkb1r/pppppppp/5n2/8/3P4/8/PPP1PPPP/RNBQKBNR w KQkq -\", \"rnbqkb1r/pppppppp/5n2/8/2PP4/8/PP2PPPP/RNBQKBNR b KQkq c3\", \"rnbqkb1r/pppp1ppp/4pn2/8/2PP4/8/PP2PPPP/RNBQKBNR w KQkq -\", \"rnbqkb1r/pppp1ppp/4pn2/8/2PP4/5N2/PP2PPPP/RNBQKB1R b KQkq -\", \"rnbqkb1r/ppp2ppp/4pn2/3p4/2PP4/5N2/PP2PPPP/RNBQKB1R w KQkq d6\", \"rnbqkb1r/ppp2ppp/4pn2/3p4/2PP4/2N2N2/PP2PPPP/R1BQKB1R b KQkq -\", \"rnbqk2r/ppp1bppp/4pn2/3p4/2PP4/2N2N2/PP2PPPP/R1BQKB1R w KQkq -\", \"rnbqk2r/ppp1bppp/4pn2/3p4/2PP1B2/2N2N2/PP2PPPP/R2QKB1R b KQkq -\", \"rnbq1rk1/ppp1bppp/4pn2/3p4/2PP1B2/2N2N2/PP2PPPP/R2QKB1R w KQ -\", \"rnbq1rk1/ppp1bppp/4pn2/3p4/2PP1B2/2N1PN2/PP3PPP/R2QKB1R b KQ -\", \"rnbq1rk1/pp2bppp/4pn2/2pp4/2PP1B2/2N1PN2/PP3PPP/R2QKB1R w KQ c6\", \"rnbq1rk1/pp2bppp/4pn2/2Pp4/2P2B2/2N1PN2/PP3PPP/R2QKB1R b KQ -\", \"rnbq1rk1/pp3ppp/4pn2/2bp4/2P2B2/2N1PN2/PP3PPP/R2QKB1R w KQ -\", \"rnbq1rk1/pp3ppp/4pn2/2bp4/2P2B2/P1N1PN2/1P3PPP/R2QKB1R b KQ -\", \"r1bq1rk1/pp3ppp/2n1pn2/2bp4/2P2B2/P1N1PN2/1P3PPP/R2QKB1R w KQ -\", \"r1bq1rk1/pp3ppp/2n1pn2/2bp4/2P2B2/P1N1PN2/1P3PPP/2RQKB1R b K -\", \"r1bq1rk1/1p3ppp/p1n1pn2/2bp4/2P2B2/P1N1PN2/1P3PPP/2RQKB1R w K -\", \"r1bq1rk1/1p3ppp/p1n1pn2/2bp4/1PP2B2/P1N1PN2/5PPP/2RQKB1R b K b3\", \"r1bq1rk1/1p3ppp/p1nbpn2/3p4/1PP2B2/P1N1PN2/5PPP/2RQKB1R w K -\", \"r1bq1rk1/1p3ppp/p1nbpn2/3p2B1/1PP5/P1N1PN2/5PPP/2RQKB1R b K -\", \"r1bq1rk1/1p3ppp/2nbpn2/p2p2B1/1PP5/P1N1PN2/5PPP/2RQKB1R w K -\", \"r1bq1rk1/1p3ppp/2nbpn2/pP1p2B1/2P5/P1N1PN2/5PPP/2RQKB1R b K -\", \"r1bq1rk1/1p2nppp/3bpn2/pP1p2B1/2P5/P1N1PN2/5PPP/2RQKB1R w K -\", \"r1bq1rk1/1p2nppp/3bpB2/pP1p4/2P5/P1N1PN2/5PPP/2RQKB1R b K -\", \"r1bq1rk1/1p2np1p/3bpp2/pP1p4/2P5/P1N1PN2/5PPP/2RQKB1R w K -\", \"r1bq1rk1/1p2np1p/3bpp2/pP1p4/P1P5/2N1PN2/5PPP/2RQKB1R b K -\", \"r1bq1rk1/1p2np1p/4pp2/pP1p4/PbP5/2N1PN2/5PPP/2RQKB1R w K -\", \"r1bq1rk1/1p2np1p/4pp2/pP1p4/PbP5/2N1PN2/4BPPP/2RQK2R b K -\", \"r1bq1rk1/1p2np1p/4pp2/pP6/Pbp5/2N1PN2/4BPPP/2RQK2R w K -\", \"r1bq1rk1/1p2np1p/4pp2/pP6/Pbp5/2N1PN2/4BPPP/2RQ1RK1 b - -\", \"r1bq1rk1/1p3p1p/4pp2/pP1n4/Pbp5/2N1PN2/4BPPP/2RQ1RK1 w - -\", \"r1bq1rk1/1p3p1p/4pp2/pP1n4/Pbp5/4PN2/N3BPPP/2RQ1RK1 b - -\", \"r1bq1rk1/1p3p1p/1n2pp2/pP6/Pbp5/4PN2/N3BPPP/2RQ1RK1 w - -\", \"r1bq1rk1/1p3p1p/1n2pp2/pP6/Pbp5/4PN2/N1Q1BPPP/2R2RK1 b - -\", \"r1bq1rk1/1p3p1p/1n3p2/pP2p3/Pbp5/4PN2/N1Q1BPPP/2R2RK1 w - -\", \"r1bq1rk1/1p3p1p/1n3p2/pP2p3/PNp5/4PN2/2Q1BPPP/2R2RK1 b - -\", \"r1bq1rk1/1p3p1p/1n3p2/1P2p3/Ppp5/4PN2/2Q1BPPP/2R2RK1 w - -\", \"r1bq1rk1/1p3p1p/1n3p2/1P2p3/PpB5/4PN2/2Q2PPP/2R2RK1 b - -\", \"r1bq1rk1/1p3p1p/5p2/1P2p3/Ppn5/4PN2/2Q2PPP/2R2RK1 w - -\", \"r1bq1rk1/1p3p1p/5p2/1P2p3/PpQ5/4PN2/5PPP/2R2RK1 b - -\", \"2bq1rk1/1p3p1p/5p2/1P2p3/rpQ5/4PN2/5PPP/2R2RK1 w - -\", \"2bq1rk1/1p3p1p/5p2/1P2p3/rpQ5/4PN2/5PPP/2RR2K1 b - -\", \"2b2rk1/1p3p1p/1q3p2/1P2p3/rpQ5/4PN2/5PPP/2RR2K1 w - -\", \"2b2rk1/1p3p1p/1q3p2/1P2p3/rpQ4N/4P3/5PPP/2RR2K1 b - -\", \"5rk1/1p3p1p/1q2bp2/1P2p3/rpQ4N/4P3/5PPP/2RR2K1 w - -\", \"5rk1/1p3p1p/1q2bp2/1P2p3/rp2Q2N/4P3/5PPP/2RR2K1 b - -\", \"5rk1/1p3p1p/4bp2/1q2p3/rp2Q2N/4P3/5PPP/2RR2K1 w - -\", \"5rk1/1p3p1p/4bp2/1q2p3/rp5N/4PQ2/5PPP/2RR2K1 b - -\", \"5r2/1p3pkp/4bp2/1q2p3/rp5N/4PQ2/5PPP/2RR2K1 w - -\", \"5r2/1p3pkp/4bp2/1q2pN2/rp6/4PQ2/5PPP/2RR2K1 b - -\", \"5r2/1p3pkp/5p2/1q2pb2/rp6/4PQ2/5PPP/2RR2K1 w - -\", \"5r2/1p3pkp/5p2/1q2pQ2/rp6/4P3/5PPP/2RR2K1 b - -\", \"5r2/1p3pkp/5p2/1q2pQ2/r7/1p2P3/5PPP/2RR2K1 w - -\", \"5r2/1p3pkp/3R1p2/1q2pQ2/r7/1p2P3/5PPP/2R3K1 b - -\", \"5r2/1p3pkp/3R1p2/1q2pQ2/r7/4P3/1p3PPP/2R3K1 w - -\", \"5r2/1p3pkp/3R1Q2/1q2p3/r7/4P3/1p3PPP/2R3K1 b - -\", \"5rk1/1p3p1p/3R1Q2/1q2p3/r7/4P3/1p3PPP/2R3K1 w - -\", \"5rk1/1p3p1p/3R4/1q2p1Q1/r7/4P3/1p3PPP/2R3K1 b - -\", \"5r1k/1p3p1p/3R4/1q2p1Q1/r7/4P3/1p3PPP/2R3K1 w - -\", \"5r1k/1p3p1p/3R1Q2/1q2p3/r7/4P3/1p3PPP/2R3K1 b - -\" ] }","title":"startPos (optional)"},{"location":"post-search/","text":"POST /v1/search Finds up to 25 games matching the criteria. Event (optional) The name of the event. Date (optional) The year in which the event took place. White (optional) The player with the white pieces. Black (optional) The player with the black pieces. Result (optional) The result of the game as per these options. 1-0 means White wins. 1/2-1/2 means the game is a draw. 0-1 means Black wins. ECO (optional) Encyclopaedia of Chess Openings (ECO) code. curl https://api.chesslablab.org:9443/v1/search \\ -H \"Content-Type: application/json\" \\ --data-raw '{ \"Black\": \"Kasparov,G\", \"ECO\": \"D37\" }' [ { \"id\": 156639, \"Event\": \"Rapid\", \"Site\": \"Reykjavik ISL\", \"Date\": \"2004.03.20\", \"White\": \"Nielsen,PH\", \"Black\": \"Kasparov,G\", \"Result\": \"1\\/2-1\\/2\", \"WhiteElo\": \"2638\", \"BlackElo\": \"2831\", \"ECO\": \"D37\", \"FEN\": null, \"movetext\": \"1.d4 Nf6 2.c4 e6 3.Nf3 d5 4.Nc3 Be7 5.Bf4 O-O 6.e3 c5 7.dxc5 Bxc5 8.a3 Nc6 9.Rc1 a6 10.b4 Bd6 11.Bg5 a5 12.b5 Ne7 13.Bxf6 gxf6 14.a4 Bb4 15.Be2 dxc4 16.O-O Nd5 17.Na2 Nb6 18.Qc2 e5 19.Nxb4 axb4 20.Bxc4 Nxc4 21.Qxc4 Rxa4 22.Rfd1 Qb6 23.Nh4 Be6 24.Qe4 Qxb5 25.Qf3 Kg7 26.Nf5+ Bxf5 27.Qxf5 b3 28.Rd6 b2 29.Qxf6+ Kg8 30.Qg5+ Kh8 31.Qf6+\" }, { \"id\": 369145, \"Event\": \"Corus\", \"Site\": \"Wijk aan Zee NED\", \"Date\": \"2001.01.27\", \"White\": \"Van Wely,L\", \"Black\": \"Kasparov,G\", \"Result\": \"1\\/2-1\\/2\", \"WhiteElo\": \"2700\", \"BlackElo\": \"2849\", \"ECO\": \"D37\", \"FEN\": null, \"movetext\": \"1.d4 Nf6 2.c4 e6 3.Nf3 d5 4.Nc3 Be7 5.Bf4 O-O 6.e3 c5 7.dxc5 Bxc5 8.cxd5 Nxd5 9.Nxd5 exd5 10.a3 Nc6 11.Bd3 Bb6 12.O-O Bg4 13.h3 Bh5 14.b4 Re8 15.Rc1 a6 16.g4 Bg6 17.Bxg6 hxg6 18.Rc3 d4 19.Rd3 Qd5 20.exd4 Re4 21.Be3 Rd8 22.Re1 f6 23.Kg2 f5 24.gxf5 gxf5 25.Qb3 Qxb3 26.Rxb3 f4 27.d5 fxe3 28.dxc6 Re6 29.fxe3 Rxc6 30.Kf2 Rf8 31.Ke2 Rc2+ 32.Nd2 Rd8 33.Rd3 Ra2 34.Rxd8+ Bxd8 35.Rc1 Bf6 36.Rc7 b5 37.Rc6 Rxa3 38.Ne4 Be7 39.Nc5 a5 40.Rb6 axb4 41.Rxb5 Ra2+ 42.Kd3 Rh2 43.Na6\" }, { \"id\": 332967, \"Event\": \"Corus\", \"Site\": \"Wijk aan Zee NED\", \"Date\": \"2001.01.27\", \"White\": \"Van Wely,L\", \"Black\": \"Kasparov,G\", \"Result\": \"1\\/2-1\\/2\", \"WhiteElo\": \"2700\", \"BlackElo\": \"2849\", \"ECO\": \"D37\", \"FEN\": null, \"movetext\": \"1.d4 Nf6 2.c4 e6 3.Nf3 d5 4.Nc3 Be7 5.Bf4 O-O 6.e3 c5 7.dxc5 Bxc5 8.cxd5 Nxd5 9.Nxd5 exd5 10.a3 Nc6 11.Bd3 Bb6 12.O-O Bg4 13.h3 Bh5 14.b4 Re8 15.Rc1 a6 16.g4 Bg6 17.Bxg6 hxg6 18.Rc3 d4 19.Rd3 Qd5 20.exd4 Re4 21.Be3 Rd8 22.Re1 f6 23.Kg2 f5 24.gxf5 gxf5 25.Qb3 Qxb3 26.Rxb3 f4 27.d5 fxe3 28.dxc6 Re6 29.fxe3 Rxc6 30.Kf2 Rf8 31.Ke2 Rc2+ 32.Nd2 Rd8 33.Rd3 Ra2 34.Rxd8+ Bxd8 35.Rc1 Bf6 36.Rc7 b5 37.Rc6 Rxa3 38.Ne4 Be7 39.Nc5 a5 40.Rb6 axb4 41.Rxb5 Ra2+ 42.Kd3 Rh2 43.Na6\" }, { \"id\": 369372, \"Event\": \"Rapid\", \"Site\": \"Reykjavik ISL\", \"Date\": \"2004.03.20\", \"White\": \"Nielsen,PH\", \"Black\": \"Kasparov,G\", \"Result\": \"1\\/2-1\\/2\", \"WhiteElo\": \"2638\", \"BlackElo\": \"2831\", \"ECO\": \"D37\", \"FEN\": null, \"movetext\": \"1.d4 Nf6 2.c4 e6 3.Nf3 d5 4.Nc3 Be7 5.Bf4 O-O 6.e3 c5 7.dxc5 Bxc5 8.a3 Nc6 9.Rc1 a6 10.b4 Bd6 11.Bg5 a5 12.b5 Ne7 13.Bxf6 gxf6 14.a4 Bb4 15.Be2 dxc4 16.O-O Nd5 17.Na2 Nb6 18.Qc2 e5 19.Nxb4 axb4 20.Bxc4 Nxc4 21.Qxc4 Rxa4 22.Rfd1 Qb6 23.Nh4 Be6 24.Qe4 Qxb5 25.Qf3 Kg7 26.Nf5+ Bxf5 27.Qxf5 b3 28.Rd6 b2 29.Qxf6+ Kg8 30.Qg5+ Kh8 31.Qf6+\" } ]","title":"POST /v1/search"},{"location":"post-search/#post-v1search","text":"Finds up to 25 games matching the criteria.","title":"POST /v1/search"},{"location":"post-search/#event-optional","text":"The name of the event.","title":"Event (optional)"},{"location":"post-search/#date-optional","text":"The year in which the event took place.","title":"Date (optional)"},{"location":"post-search/#white-optional","text":"The player with the white pieces.","title":"White (optional)"},{"location":"post-search/#black-optional","text":"The player with the black pieces.","title":"Black (optional)"},{"location":"post-search/#result-optional","text":"The result of the game as per these options. 1-0 means White wins. 1/2-1/2 means the game is a draw. 0-1 means Black wins.","title":"Result (optional)"},{"location":"post-search/#eco-optional","text":"Encyclopaedia of Chess Openings (ECO) code. curl https://api.chesslablab.org:9443/v1/search \\ -H \"Content-Type: application/json\" \\ --data-raw '{ \"Black\": \"Kasparov,G\", \"ECO\": \"D37\" }' [ { \"id\": 156639, \"Event\": \"Rapid\", \"Site\": \"Reykjavik ISL\", \"Date\": \"2004.03.20\", \"White\": \"Nielsen,PH\", \"Black\": \"Kasparov,G\", \"Result\": \"1\\/2-1\\/2\", \"WhiteElo\": \"2638\", \"BlackElo\": \"2831\", \"ECO\": \"D37\", \"FEN\": null, \"movetext\": \"1.d4 Nf6 2.c4 e6 3.Nf3 d5 4.Nc3 Be7 5.Bf4 O-O 6.e3 c5 7.dxc5 Bxc5 8.a3 Nc6 9.Rc1 a6 10.b4 Bd6 11.Bg5 a5 12.b5 Ne7 13.Bxf6 gxf6 14.a4 Bb4 15.Be2 dxc4 16.O-O Nd5 17.Na2 Nb6 18.Qc2 e5 19.Nxb4 axb4 20.Bxc4 Nxc4 21.Qxc4 Rxa4 22.Rfd1 Qb6 23.Nh4 Be6 24.Qe4 Qxb5 25.Qf3 Kg7 26.Nf5+ Bxf5 27.Qxf5 b3 28.Rd6 b2 29.Qxf6+ Kg8 30.Qg5+ Kh8 31.Qf6+\" }, { \"id\": 369145, \"Event\": \"Corus\", \"Site\": \"Wijk aan Zee NED\", \"Date\": \"2001.01.27\", \"White\": \"Van Wely,L\", \"Black\": \"Kasparov,G\", \"Result\": \"1\\/2-1\\/2\", \"WhiteElo\": \"2700\", \"BlackElo\": \"2849\", \"ECO\": \"D37\", \"FEN\": null, \"movetext\": \"1.d4 Nf6 2.c4 e6 3.Nf3 d5 4.Nc3 Be7 5.Bf4 O-O 6.e3 c5 7.dxc5 Bxc5 8.cxd5 Nxd5 9.Nxd5 exd5 10.a3 Nc6 11.Bd3 Bb6 12.O-O Bg4 13.h3 Bh5 14.b4 Re8 15.Rc1 a6 16.g4 Bg6 17.Bxg6 hxg6 18.Rc3 d4 19.Rd3 Qd5 20.exd4 Re4 21.Be3 Rd8 22.Re1 f6 23.Kg2 f5 24.gxf5 gxf5 25.Qb3 Qxb3 26.Rxb3 f4 27.d5 fxe3 28.dxc6 Re6 29.fxe3 Rxc6 30.Kf2 Rf8 31.Ke2 Rc2+ 32.Nd2 Rd8 33.Rd3 Ra2 34.Rxd8+ Bxd8 35.Rc1 Bf6 36.Rc7 b5 37.Rc6 Rxa3 38.Ne4 Be7 39.Nc5 a5 40.Rb6 axb4 41.Rxb5 Ra2+ 42.Kd3 Rh2 43.Na6\" }, { \"id\": 332967, \"Event\": \"Corus\", \"Site\": \"Wijk aan Zee NED\", \"Date\": \"2001.01.27\", \"White\": \"Van Wely,L\", \"Black\": \"Kasparov,G\", \"Result\": \"1\\/2-1\\/2\", \"WhiteElo\": \"2700\", \"BlackElo\": \"2849\", \"ECO\": \"D37\", \"FEN\": null, \"movetext\": \"1.d4 Nf6 2.c4 e6 3.Nf3 d5 4.Nc3 Be7 5.Bf4 O-O 6.e3 c5 7.dxc5 Bxc5 8.cxd5 Nxd5 9.Nxd5 exd5 10.a3 Nc6 11.Bd3 Bb6 12.O-O Bg4 13.h3 Bh5 14.b4 Re8 15.Rc1 a6 16.g4 Bg6 17.Bxg6 hxg6 18.Rc3 d4 19.Rd3 Qd5 20.exd4 Re4 21.Be3 Rd8 22.Re1 f6 23.Kg2 f5 24.gxf5 gxf5 25.Qb3 Qxb3 26.Rxb3 f4 27.d5 fxe3 28.dxc6 Re6 29.fxe3 Rxc6 30.Kf2 Rf8 31.Ke2 Rc2+ 32.Nd2 Rd8 33.Rd3 Ra2 34.Rxd8+ Bxd8 35.Rc1 Bf6 36.Rc7 b5 37.Rc6 Rxa3 38.Ne4 Be7 39.Nc5 a5 40.Rb6 axb4 41.Rxb5 Ra2+ 42.Kd3 Rh2 43.Na6\" }, { \"id\": 369372, \"Event\": \"Rapid\", \"Site\": \"Reykjavik ISL\", \"Date\": \"2004.03.20\", \"White\": \"Nielsen,PH\", \"Black\": \"Kasparov,G\", \"Result\": \"1\\/2-1\\/2\", \"WhiteElo\": \"2638\", \"BlackElo\": \"2831\", \"ECO\": \"D37\", \"FEN\": null, \"movetext\": \"1.d4 Nf6 2.c4 e6 3.Nf3 d5 4.Nc3 Be7 5.Bf4 O-O 6.e3 c5 7.dxc5 Bxc5 8.a3 Nc6 9.Rc1 a6 10.b4 Bd6 11.Bg5 a5 12.b5 Ne7 13.Bxf6 gxf6 14.a4 Bb4 15.Be2 dxc4 16.O-O Nd5 17.Na2 Nb6 18.Qc2 e5 19.Nxb4 axb4 20.Bxc4 Nxc4 21.Qxc4 Rxa4 22.Rfd1 Qb6 23.Nh4 Be6 24.Qe4 Qxb5 25.Qf3 Kg7 26.Nf5+ Bxf5 27.Qxf5 b3 28.Rd6 b2 29.Qxf6+ Kg8 30.Qg5+ Kh8 31.Qf6+\" } ]","title":"ECO (optional)"},{"location":"post-stats-event/","text":"POST /v1/stats/event Returns statistics about opening results in chess events. Event (optional) The name of the event. Result (optional) The result of the game as per these options. 1-0 means White wins. 1/2-1/2 means the game is a draw. 0-1 means Black wins. curl https://api.chesslablab.org:9443/v1/stats/event \\ -H \"Content-Type: application/json\" \\ --data-raw '{ \"Event\": \"FIDE Candidates 2018\", \"Result\": \"1-0\" }' [ { \"ECO\": \"D35\", \"total\": 2 }, { \"ECO\": \"A48\", \"total\": 1 }, { \"ECO\": \"D40\", \"total\": 1 }, { \"ECO\": \"C50\", \"total\": 1 } ]","title":"POST /v1/stats/event"},{"location":"post-stats-event/#post-v1statsevent","text":"Returns statistics about opening results in chess events.","title":"POST /v1/stats/event"},{"location":"post-stats-event/#event-optional","text":"The name of the event.","title":"Event (optional)"},{"location":"post-stats-event/#result-optional","text":"The result of the game as per these options. 1-0 means White wins. 1/2-1/2 means the game is a draw. 0-1 means Black wins. curl https://api.chesslablab.org:9443/v1/stats/event \\ -H \"Content-Type: application/json\" \\ --data-raw '{ \"Event\": \"FIDE Candidates 2018\", \"Result\": \"1-0\" }' [ { \"ECO\": \"D35\", \"total\": 2 }, { \"ECO\": \"A48\", \"total\": 1 }, { \"ECO\": \"D40\", \"total\": 1 }, { \"ECO\": \"C50\", \"total\": 1 } ]","title":"Result (optional)"},{"location":"post-stats-player/","text":"POST /v1/stats/player Returns statistics about opening results by chess player. White (optional) The player with the white pieces. Black (optional) The player with the black pieces. Result (optional) The result of the game as per these options. 1-0 means White wins. 1/2-1/2 means the game is a draw. 0-1 means Black wins. curl https://api.chesslablab.org:9443/v1/stats/player \\ -H \"Content-Type: application/json\" \\ --data-raw '{ \"Result\": \"0-1\" }' [ { \"ECO\": \"B06\", \"total\": 39 }, { \"ECO\": \"A46\", \"total\": 34 }, ... { \"ECO\": \"C40\", \"total\": 1 }, { \"ECO\": \"C98\", \"total\": 1 } ]","title":"POST /v1/stats/player"},{"location":"post-stats-player/#post-v1statsplayer","text":"Returns statistics about opening results by chess player.","title":"POST /v1/stats/player"},{"location":"post-stats-player/#white-optional","text":"The player with the white pieces.","title":"White (optional)"},{"location":"post-stats-player/#black-optional","text":"The player with the black pieces.","title":"Black (optional)"},{"location":"post-stats-player/#result-optional","text":"The result of the game as per these options. 1-0 means White wins. 1/2-1/2 means the game is a draw. 0-1 means Black wins. curl https://api.chesslablab.org:9443/v1/stats/player \\ -H \"Content-Type: application/json\" \\ --data-raw '{ \"Result\": \"0-1\" }' [ { \"ECO\": \"B06\", \"total\": 39 }, { \"ECO\": \"A46\", \"total\": 34 }, ... { \"ECO\": \"C40\", \"total\": 1 }, { \"ECO\": \"C98\", \"total\": 1 } ]","title":"Result (optional)"},{"location":"post-tutor-fen/","text":"POST /v1/tutor/fen Explains a FEN position in terms of chess concepts. fen A FEN string. curl --request POST \\ --url https://api.chesslablab.org:9443/v1/tutor/fen \\ --data '{\"fen\":\"r1bq1rk1/pppnn1bp/3p2p1/3Ppp2/2P1P3/2N2P2/PP2B1PP/R1BQNRK1 w - f6\"}' \"White is totally controlling the center. The white pieces are significantly better connected. White has a moderate space advantage. The black player is pressuring a little bit more squares than its opponent. White has a slight advanced pawn advantage. d5 is an advanced pawn. e6 and d4 are outpost squares. Overall, 4 heuristic evaluation features are favoring White while 1 is favoring Black.\"","title":"POST /v1/tutor/fen"},{"location":"post-tutor-fen/#post-v1tutorfen","text":"Explains a FEN position in terms of chess concepts.","title":"POST /v1/tutor/fen"},{"location":"post-tutor-fen/#fen","text":"A FEN string. curl --request POST \\ --url https://api.chesslablab.org:9443/v1/tutor/fen \\ --data '{\"fen\":\"r1bq1rk1/pppnn1bp/3p2p1/3Ppp2/2P1P3/2N2P2/PP2B1PP/R1BQNRK1 w - f6\"}' \"White is totally controlling the center. The white pieces are significantly better connected. White has a moderate space advantage. The black player is pressuring a little bit more squares than its opponent. White has a slight advanced pawn advantage. d5 is an advanced pawn. e6 and d4 are outpost squares. Overall, 4 heuristic evaluation features are favoring White while 1 is favoring Black.\"","title":"fen"}]} \ No newline at end of file diff --git a/sitemap.xml.gz b/sitemap.xml.gz index 81897d18c4f7afb8ce87f244e6ea631f2fa8dc90..513791260aa0c58abb8cec94e68b7be9c14fac63 100644 GIT binary patch delta 15 WcmX@fbdrfpzMF$XsbC|UGa~>aYXjr} delta 15 WcmX@fbdrfpzMF%C*K;GAGa~>ZDg&qh