Open documentation ↗Overview
The Google Books API allows clients to access the Google Books repository.
Books API is an analytics API from googleapis.com. Requests are authenticated with OAuth. It is served over HTTPS. Its OpenAPI description documents 51 endpoints.
At a glance
- Authentication
- OAuth
- HTTPS
- Yes
- CORS
- Unknown
- Category
- Analytics
- Base URL
https://books.googleapis.com/- Version
- v1
- Endpoints
- 51
- OpenAPI
- Specification ↗
- Spec updated
- 2023-04-21
Make a first request
Replace the placeholders; the documentation says exactly where credentials go.
curl -X GET "https://books.googleapis.com/books/v1/dictionary/listOfflineMetadata" \
-H "Accept: application/json" \
-H "Authorization: Bearer YOUR_TOKEN"const response = await fetch("https://books.googleapis.com/books/v1/dictionary/listOfflineMetadata", {
method: "GET",
headers: {
"Accept": "application/json",
"Authorization": "Bearer YOUR_TOKEN",
},
});
const data = await response.json();
console.log(data);import requests
response = requests.request(
"GET",
"https://books.googleapis.com/books/v1/dictionary/listOfflineMetadata",
headers={
"Accept": "application/json",
"Authorization": "Bearer YOUR_TOKEN",
},
timeout=30,
)
print(response.json())Endpoints
| Method | Path | What it does |
|---|---|---|
| POST | /books/v1/cloudloading/addBook | Add a user-upload volume and triggers processing. |
| POST | /books/v1/cloudloading/deleteBook | Remove the book and its contents |
| POST | /books/v1/cloudloading/updateBook | Updates a user-upload volume. |
| GET | /books/v1/dictionary/listOfflineMetadata | Returns a list of offline dictionary metadata available |
| GET | /books/v1/familysharing/getFamilyInfo | Gets information regarding the family that the user is part of. |
| POST | /books/v1/familysharing/share | Initiates sharing of the content with the user's family. Empty response indicates success. |
| POST | /books/v1/familysharing/unshare | Initiates revoking content that has already been shared with the user's family. Empty response indicates success. |
| GET | /books/v1/myconfig/getUserSettings | Gets the current settings for the user. |
| POST | /books/v1/myconfig/releaseDownloadAccess | Release downloaded content access restriction. |
| POST | /books/v1/myconfig/requestAccess | Request concurrent and download access restrictions. |
| POST | /books/v1/myconfig/syncVolumeLicenses | Request downloaded content access for specified volumes on the My eBooks shelf. |
| POST | /books/v1/myconfig/updateUserSettings | Sets the settings for the user. If a sub-object is specified, it will overwrite the existing sub-object stored in the server. Unspecified sub-objects will retai |
| GET | /books/v1/mylibrary/annotations | Retrieves a list of annotations, possibly filtered. |
| POST | /books/v1/mylibrary/annotations | Inserts a new annotation. |
| POST | /books/v1/mylibrary/annotations/summary | Gets the summary of specified layers. |
| PUT | /books/v1/mylibrary/annotations/{annotationId} | Updates an existing annotation. |
| DELETE | /books/v1/mylibrary/annotations/{annotationId} | Deletes an annotation. |
| GET | /books/v1/mylibrary/bookshelves | Retrieves a list of bookshelves belonging to the authenticated user. |
| GET | /books/v1/mylibrary/bookshelves/{shelf} | Retrieves metadata for a specific bookshelf belonging to the authenticated user. |
| POST | /books/v1/mylibrary/bookshelves/{shelf}/addVolume | Adds a volume to a bookshelf. |
| POST | /books/v1/mylibrary/bookshelves/{shelf}/clearVolumes | Clears all volumes from a bookshelf. |
| POST | /books/v1/mylibrary/bookshelves/{shelf}/moveVolume | Moves a volume within a bookshelf. |
| POST | /books/v1/mylibrary/bookshelves/{shelf}/removeVolume | Removes a volume from a bookshelf. |
| GET | /books/v1/mylibrary/bookshelves/{shelf}/volumes | Gets volume information for volumes on a bookshelf. |
| GET | /books/v1/mylibrary/readingpositions/{volumeId} | Retrieves my reading position information for a volume. |
| POST | /books/v1/mylibrary/readingpositions/{volumeId}/setPosition | Sets my reading position information for a volume. |
| GET | /books/v1/notification/get | Returns notification details for a given notification id. |
| GET | /books/v1/onboarding/listCategories | List categories for onboarding experience. |
| GET | /books/v1/onboarding/listCategoryVolumes | List available volumes under categories for onboarding experience. |
| GET | /books/v1/personalizedstream/get | Returns a stream of personalized book clusters |
| POST | /books/v1/promooffer/accept | Accepts the promo offer. |
| POST | /books/v1/promooffer/dismiss | Marks the promo offer as dismissed. |
| GET | /books/v1/promooffer/get | Returns a list of promo offers available to the user |
| GET | /books/v1/series/get | Returns Series metadata for the given series ids. |
| GET | /books/v1/series/membership/get | Returns Series membership data given the series id. |
| GET | /books/v1/users/{userId}/bookshelves | Retrieves a list of public bookshelves for the specified user. |
| GET | /books/v1/users/{userId}/bookshelves/{shelf} | Retrieves metadata for a specific bookshelf for the specified user. |
| GET | /books/v1/users/{userId}/bookshelves/{shelf}/volumes | Retrieves volumes in a specific bookshelf for the specified user. |
| GET | /books/v1/volumes | Performs a book search. |
| GET | /books/v1/volumes/mybooks | Return a list of books in My Library. |
| GET | /books/v1/volumes/recommended | Return a list of recommended books for the current user. |
| POST | /books/v1/volumes/recommended/rate | Rate a recommended book for the current user. |
| GET | /books/v1/volumes/useruploaded | Return a list of books uploaded by the current user. |
| GET | /books/v1/volumes/{volumeId} | Gets volume information for a single volume. |
| GET | /books/v1/volumes/{volumeId}/associated | Return a list of associated books. |
| GET | /books/v1/volumes/{volumeId}/layers/{layerId} | Gets the volume annotations for a volume and layer. |
| GET | /books/v1/volumes/{volumeId}/layers/{layerId}/annotations/{annotationId} | Gets the volume annotation. |
| GET | /books/v1/volumes/{volumeId}/layers/{layerId}/data | Gets the annotation data for a volume and layer. |
| GET | /books/v1/volumes/{volumeId}/layers/{layerId}/data/{annotationDataId} | Gets the annotation data. |
| GET | /books/v1/volumes/{volumeId}/layersummary | List the layer summaries for a volume. |
| GET | /books/v1/volumes/{volumeId}/layersummary/{summaryId} | Gets the layer summary for a volume. |
Questions
Does the Books API API need an API key?
Yes. The Books API API uses OAuth authentication; the documentation explains how to get credentials.
Does the Books API API support HTTPS?
Yes, the Books API API is served over HTTPS.
How many endpoints does the Books API API have?
Its OpenAPI description lists 51 endpoints in version v1. All of them are shown on this page.
What are alternatives to the Books API API?
Other Analytics APIs include Google Play Integrity API, versionhistory.googleapis.com API, Doc Converter, Perspective Comment Analyzer API, Safe Browsing API.
Similar analytics APIs
Compare alternatives →Google Play Integrity API
AnalyticsThe Play Integrity API helps you check that you're interacting with your genuine app on a genuine Android device powered by Google Play services. The Play Integrity API has replaced SafetyNet Attestation and Android Device Verification.
versionhistory.googleapis.com API
AnalyticsVersion History API - Prod
Doc Converter
AnalyticsThis api converts file formats of OpenXml and OpenOffice documents formats to vector files (e.g., svg)
Perspective Comment Analyzer API
AnalyticsThe Perspective Comment Analyzer API provides information about the potential impact of a comment on a conversation (e.g. it can provide a score for the "toxicity" of a comment). Users can leverage the "SuggestCommentScore" method to submit corrections to improve Perspective over time. Users can set the "doNotStore" flag to ensure that all submitted comments are automatically deleted after scores are returned.
Safe Browsing API
AnalyticsEnables client applications to check web resources (most commonly URLs) against Google-generated lists of unsafe web resources. The Safe Browsing APIs are for non-commercial use only. If you need to use APIs to detect malicious URLs for commercial purposes – meaning “for sale or revenue-generating purposes” – please refer to the Web Risk API.
Web Fonts Developer API
AnalyticsThe Google Web Fonts Developer API lets you retrieve information about web fonts served by Google.
Listed from APIs.guru (CC0).