Docs

API reference

Recommend books

POST /v1/recommend

Content-similar works from seed ISBNs or titles.

Markdown Full spec OpenAPI

Content-similar works given seed ISBNs, ids, or titles. Not “readers also liked.” Neighbor scores are biased by Open Library shelf/rating counts; there is still no social graph.

MCP: recommend_books { "seeds": [{ "isbn": "9780593135204" }], "limit": 10 }

When to use

  • The user already likes one or more books and wants similar primary works
  • You have ISBNs or fds_ed_… ids (or titles you already resolved)

Do not treat this as collaborative taste. Method is embedding (taste card: title + subjects + synopsis). Seeds with no neighbor rows return an empty results list — there is no subject-keyword fallback. Popular works in the neighbor set rank higher.

Request

curl -sS -H "Authorization: Bearer $FDS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"seeds":[{"isbn":"9780593135204"}],"limit":10}' \
  https://api.fulldatasets.com/v1/recommend
Body Required Notes
seeds yes 1–10 objects: { isbn }, { id }, or { title, author }
limit no Default 10, max 25
kind no primary | graphic | any. Omit to follow the seed majority (graphic seeds keep graphic; novels prefer primary)
same_author no cap (default, at most two rows per author) or prefer

Unresolved seeds stay in unresolved[]. The rest still return.

Response `200`

{
  "results": [
    {
      "book": { "id": "fds_ed_…", "title": "The Martian", "authors": ["Andy Weir"] },
      "score": 0.82,
      "method": "embedding"
    }
  ],
  "unresolved": []
}

method is never collaborative.

Same-author backlist is capped unless same_author=prefer. Graphic / study-guide neighbors are demoted when the seeds are novels.

See also

  • Match — resolve a title seed first
  • Search — browse by genre=