Skip to content

Books API API

by googleapis.com

OAuthHTTPSAnalytics
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
Spec updated
2023-04-21

Make a first request

Replace the placeholders; the documentation says exactly where credentials go.

cURL
curl -X GET "https://books.googleapis.com/books/v1/dictionary/listOfflineMetadata" \
  -H "Accept: application/json" \
  -H "Authorization: Bearer YOUR_TOKEN"
JavaScript
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);
Python
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

MethodPathWhat it does
POST/books/v1/cloudloading/addBookAdd a user-upload volume and triggers processing.
POST/books/v1/cloudloading/deleteBookRemove the book and its contents
POST/books/v1/cloudloading/updateBookUpdates a user-upload volume.
GET/books/v1/dictionary/listOfflineMetadataReturns a list of offline dictionary metadata available
GET/books/v1/familysharing/getFamilyInfoGets information regarding the family that the user is part of.
POST/books/v1/familysharing/shareInitiates sharing of the content with the user's family. Empty response indicates success.
POST/books/v1/familysharing/unshareInitiates revoking content that has already been shared with the user's family. Empty response indicates success.
GET/books/v1/myconfig/getUserSettingsGets the current settings for the user.
POST/books/v1/myconfig/releaseDownloadAccessRelease downloaded content access restriction.
POST/books/v1/myconfig/requestAccessRequest concurrent and download access restrictions.
POST/books/v1/myconfig/syncVolumeLicensesRequest downloaded content access for specified volumes on the My eBooks shelf.
POST/books/v1/myconfig/updateUserSettingsSets 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/annotationsRetrieves a list of annotations, possibly filtered.
POST/books/v1/mylibrary/annotationsInserts a new annotation.
POST/books/v1/mylibrary/annotations/summaryGets 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/bookshelvesRetrieves 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}/addVolumeAdds a volume to a bookshelf.
POST/books/v1/mylibrary/bookshelves/{shelf}/clearVolumesClears all volumes from a bookshelf.
POST/books/v1/mylibrary/bookshelves/{shelf}/moveVolumeMoves a volume within a bookshelf.
POST/books/v1/mylibrary/bookshelves/{shelf}/removeVolumeRemoves a volume from a bookshelf.
GET/books/v1/mylibrary/bookshelves/{shelf}/volumesGets 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}/setPositionSets my reading position information for a volume.
GET/books/v1/notification/getReturns notification details for a given notification id.
GET/books/v1/onboarding/listCategoriesList categories for onboarding experience.
GET/books/v1/onboarding/listCategoryVolumesList available volumes under categories for onboarding experience.
GET/books/v1/personalizedstream/getReturns a stream of personalized book clusters
POST/books/v1/promooffer/acceptAccepts the promo offer.
POST/books/v1/promooffer/dismissMarks the promo offer as dismissed.
GET/books/v1/promooffer/getReturns a list of promo offers available to the user
GET/books/v1/series/getReturns Series metadata for the given series ids.
GET/books/v1/series/membership/getReturns Series membership data given the series id.
GET/books/v1/users/{userId}/bookshelvesRetrieves 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}/volumesRetrieves volumes in a specific bookshelf for the specified user.
GET/books/v1/volumesPerforms a book search.
GET/books/v1/volumes/mybooksReturn a list of books in My Library.
GET/books/v1/volumes/recommendedReturn a list of recommended books for the current user.
POST/books/v1/volumes/recommended/rateRate a recommended book for the current user.
GET/books/v1/volumes/useruploadedReturn 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}/associatedReturn 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}/dataGets 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}/layersummaryList 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.

Compare alternatives →

Google Play Integrity API

Analytics

The 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.

OAuth1 endpoints

versionhistory.googleapis.com API

Analytics

Version History API - Prod

No auth4 endpoints

Doc Converter

Analytics

This api converts file formats of OpenXml and OpenOffice documents formats to vector files (e.g., svg)

No auth1 endpoints

Perspective Comment Analyzer API

Analytics

The 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.

OAuth2 endpoints

Safe Browsing API

Analytics

Enables 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.

No auth7 endpoints

Web Fonts Developer API

Analytics

The Google Web Fonts Developer API lets you retrieve information about web fonts served by Google.

No auth1 endpoints

Listed from APIs.guru (CC0).