I am looking for an API where I can search for a book and retrieve a list of books related to it. It would also be useful to have this kind of search for authors.

The Spotify API has a function just like this, but for musicians.

  • 1
    Goodreads has an API but I'm not sure if it has an endpoint for "related" content.
    – philshem
    Mar 20, 2015 at 8:28
  • "relatedness" is pretty subjective. And most places that would go to the trouble to compute relatedness might have a business interest in keeping their system to themselves to sell more books. That said, here's a list of 53 book APIs (at least one of which is defunct) -- maybe there's something there? Mar 24, 2015 at 20:06

2 Answers 2


Project Gutenberg has what's called a Bookshelf, which are categories.

Also, for each title, there is a link called "Also downloaded"

So for book:


the related titles would be:


Some resources


As Joe mentioned, "relatedness" is pretty subjective. I have found that this often means one of two things. The first is related based on similar terms, say in the description of the book. The other is based on previous user behavior. For example, if your user is looking at a book, you might want to show, "people who read this book, also read this one".

For the first type, many search engines offer a function called "morelikethis" which allows you to find related items. You would simply upload your books to the search engine and then make the API call to find the similar items.

For the latter, and assuming you wanted to look for related items based on your own set of books, you would need some user logs along with the book data. Once you have this there are a lot of great options for finding related items. If you are interested in learning how to do this, I have a github tutorial here, which shows how to do this (and create an API) with Movie data.

Your Answer

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

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