9

Is there an online chess evaluation engine with a REST API? I'd like to be able to send a game or position (with castling ability presumably) to a simple REST API and get back the positional evaluation from a reasonably strong engine.

2
  • 1
    Nobody expects the inquisition. analysis.cpuchess.com is pretty close, but no API Mar 21, 2016 at 0:29
  • @Peter You can program the JavaScript to give positions to analysis.cpuchess.com and read results back.
    – ABCD
    Mar 21, 2016 at 8:26

1 Answer 1

3
+100

The project https://github.com/noobpwnftw/chessdb provides an API for getting engine evaluations including also the PV, with the FEN of a position as input.

E.g., try an example from the readme:

https://www.chessdb.cn/cdb.php?action=querypv&board=rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR%20w%20KQkq%20-%200%201&json=1

The response I got is:

{
  "status": "ok",
  "score": 8,
  "depth": 39,
  "pv": [
    "e2e4", "c7c5", "d2d4", "c5d4", "g1f3", "e7e5", "c2c3", "b8c6", "f1c4", "g8f6", "f3g5", "d7d5", "e4d5", "c6a5", "c4b5", "c8d7", "d1e2", "f8d6", "b2b4", "h7h6", "g5f3", "e8g8", "b4a5", "d4d3", "e2b2", "f6d5", "b1d2", "d7b5", "b2b5", "d5c3", "b5d3", "d6b4", "d3d8", "f8d8", "a5a6", "b7a6", "a2a3", "b4a5", "e1f1"
  ],
  "pvSAN": [
    "e4", "c5", "d4", "cxd4", "Nf3", "e5", "c3", "Nc6", "Bc4", "Nf6", "Ng5", "d5", "exd5", "Na5", "Bb5+", "Bd7", "Qe2", "Bd6", "b4", "h6", "Nf3", "O-O", "bxa5", "d3", "Qb2", "Nxd5", "Nbd2", "Bxb5", "Qxb5", "Nxc3", "Qxd3", "Bb4", "Qxd8", "Rfxd8", "a6", "bxa6", "a3", "Ba5", "Kf1"
  ]
}
4
  • 1
    It is essentially functioning as an opening book api and not able to evaluate unknown positions on-the-fly. e.g. chessdb.cn/cdb.php?action=querypv&board=8/7K/P2P4/1b1k3p/…
    – prusswan
    Jul 6, 2019 at 17:44
  • That's what I infer too. Funny comment at bottom "Expect no further documentation except this one but the code should be self-explanatory", even though there isn't a single line explaining what it is :) Oct 22, 2021 at 2:32
  • Interesting find. I awarded the bounty although this question remains open. I'm rather surprised that in 2021 the world doesn't have a chess position evaluation API ! Oct 25, 2021 at 13:06
  • It appears to be giving perfectly legitimate results. I ran queries from this FEN: r1bqkb1r/ppp2ppp/5n2/n2Pp1N1/2B5/8/PPPP1PPP/RNBQK2R w KQkq - 1 6 and it gave the expected results. Aug 27, 2022 at 5:38

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.