/v1/search
Search & filter puzzles
Try it live
10 free calls per day — no sign-up, no API key. Goes through the oanor gateway.
It works. Grab an API key and use it in your project.
Get an API keyCode snippets
curl "https://api.oanor.com/chesspuzzles-api/v1/search" \ -H "x-oanor-key: oanor_test_..."
await fetch("https://api.oanor.com/chesspuzzles-api/v1/search", {
headers: { "x-oanor-key": "oanor_test_..." }
});
$ch = curl_init("https://api.oanor.com/chesspuzzles-api/v1/search");
curl_setopt($ch, CURLOPT_HTTPHEADER, ["x-oanor-key: oanor_test_..."]);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$out = curl_exec($ch);
import requests
requests.get(
"https://api.oanor.com/chesspuzzles-api/v1/search",
headers={"x-oanor-key": "oanor_test_..."}
)
Example response
A real response from this endpoint, captured by the latest health check.
{
"data": {
"sort": "popularity",
"count": 20,
"limit": 20,
"total": 1630,
"offset": 0,
"filters": {
"theme": "fork",
"max_rating": 2000,
"min_rating": 1000
},
"results": [
{
"id": "01tr2",
"fen": "8/5p1k/3q2pp/1R6/pP6/P1Q3PP/5PK1/3r4 w - - 1 37",
"url": "https://lichess.org/training/01tr2",
"moves": [
"b5b7",
"d6d5",
"c3f3",
"d1g1",
"g2g1",
"d5f3"
],
"rating": 1348,
"themes": [
"crushing",
"deflection",
"endgame",
"fork",
"long"
],
"game_url": "https://lichess.org/S2AzvY4t#73",
"nb_plays": 322,
"popularity": 100,
"opening_tags": [],
"solver_color": "black"
},
{
"id": "0APD2",
"fen": "8/6kp/3qp1p1/1pp5/3nQ3/P6P/1P3P2/4R1K1 w - - 5 35",
"url": "https://lichess.org/training/0APD2",
"moves": [
"e4e5",
"d6e5",
"e1e5",
"d4f3",
"g1f1",
"f3e5"
],
"rating": 1112,
"themes": [
"attraction",
"crushing",
"endgame",
"fork",
"long"
],
"game_url": "https://lichess.org/mJqU5nlL#69",
"nb_plays": 1001,
"popularity": 100,
"opening_tags": [],
"solver_color": "black"
},
{
"id": "0AnXJ",
"fen": "r5rk/pp3pp1/2q2P2/4p1QN/2Pn3P/3P4/P7/3K1R2 b - - 2 30",
"url": "https://lichess.org/training/0AnXJ",
"moves": [
"d4f3",
"f6g7",
"h8h7",
"h5f6",
"c6f6",
"g5f6"
],
"rating": 1457,
"themes": [
"advancedPawn",
"crushing",
"fork",
"long",
"middlegame"
],
"game_url": "https://lichess.org/SVBn7vaL/black#60",
"nb_plays": 280,
"popularity": 100,
"opening_tags": [],
"solver_color": "white"
},
{
"id": "0BI9t",
"fen": "r2k3r/pp3Bpp/1bp1N2n/4pq2/Q3N1b1/8/PP3PPP/R1n2R1K b - - 3 17",
"url": "https://l
…