Skip to content
This repository has been archived by the owner on Mar 16, 2024. It is now read-only.

A comprehensive (unofficial) API service for planet-ebooks, libgen/gen.lib.rus.ec, and libgen.lc, providing free access to APIs for book download URLs, publication metadata, and many more!

License

Rickaym/FreeBooksAPI

Repository files navigation

redoc-docs Discord

A comprehensive (unofficial) API service for planet-ebooks, gen.lib.rus.ec/libgen.rs, libgen.lc/libgen.li, providing API endpoints to retrieve download URLs, mirrors, and publication metadata.

The API implements the following features:

  • Searching for publications and books by name, author name, topic, and so on.
  • Retrieve download URLs for books and publications
  • Retrieve datadumps sites for libraries
  • Retrieve library aliases list

Tech Stack

hosted-on-vultr

load-balanced-with-nginx

built-with-docker

based-on-fastapi

Getting Started

Type URL
Base Url https://freebooksapi.pyaesonemyo.dev/api/
Versioned base url https://freebooksapi.pyaesonemyo.dev/api/v{major} (or) https://freebooksapi.pyaesonemyo.dev/api/latest/
Library selector https://freebooksapi.pyaesonemyo.dev/api/v{major}/{library}

To learn more about specific API endpoints, please read the api reference.

Searching Example

In this example we will search for a book from libgen library with the query "dostoyevsky" and a limit of just 1 record for the response.

Using the versioned base url with the library selected, we get the following curl command:

curl -X GET 'https://freebooksapi.pyaesonemyo.dev/api/latest/libgen/search?q=dostoyevsky&limit=1'
+ NOTE: You can follow along by pasting the `curl` command into the terminal.

Different Libraries

To search from different libraries, we will substituting the {library} url arg from our base url with an available library ID.

The exact same GET request for the above example using planetebooks would be:

curl -X GET 'https://freebooksapi.pyaesonemyo.dev/api/latest/planetebooks/search?q=dostoyevsky&limit=1'

A Python equivalent example using requests would simply be:

import requests

url = "https://freebooksapi.pyaesonemyo.dev/api/latest/libgen/search?q=dostoyevsky&limit=1"

response = requests.request("GET", url)

Support the Project

Kindly consider supporting this project through starring the repository or buying me a coffee to cover the server costs! Thanks a lot for using our API, it's always extremely gratifying seeing your work help other people.

Buy Me A Coffee

Contributions

For contributions: read contributions.

Made with <3 by the Collaborators

About

A comprehensive (unofficial) API service for planet-ebooks, libgen/gen.lib.rus.ec, and libgen.lc, providing free access to APIs for book download URLs, publication metadata, and many more!

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •