Goodreads Module
Last updated on
30 April 2025
Alone, the main Goodreads module is not going to be useful to a Drupal site builder that cannot program in PHP. While it has a configurations page, beyond that its purpose is to expose those Goodreads APIs that do not use OAuth as a set of PHP functions that can be called from within a custom module.
To install the Goodreads module:
- Download the Goodreads module from the project page. Copy the expanded folder, along with its files and subfolders, into your modules directory (most likely sites/all/modules/contrib or sites/all/modules).
- Go to the Goodreads site and register for developer API keys for your website. The direct link to the registration page is http://www.goodreads.com/api/keys. Write down your key and secret for later (and/or keep the page open in another window).
- Enable the Goodreads module on your site’s module page (Administer > Site building > Modules).
- Enter your Goodreads developer keys at the Goodreads settings page (Administer > Site configuration > Goodreads API). Select how long you want to cache the Goodreads data, you can select from no cacheing up to one day, the limit imposed by the Goodreads API terms and conditions. Picking too long a cache time will prevent rapidly changing information on the Goodreads site from being reflected on your site, picking too short a cache time could put your site in violation of the one API call per second limit imposed by the Goodreads API terms and conditions or substantially affect your site’s performance.

- Click on the test tab on the Goodreads setting page. Enter an ISBN, the default is for Pro Drupal Development, and click the “Look up book” button. If you entered your Goodreads API keys correctly, the page should display the iFrame reviews widget for the book, followed by a var_dump of the API results returned by that function. If an error occurred, it is logged in the Drupal watchdog log.

You are set to start using the functions provided by the Goodreads module, or enable one of the submodules to use the Goodreads data without a custom module.
Help improve this page
Page status: Not set
You can:
You can:
- Log in, click Edit, and edit this page
- Log in, click Discuss, update the Page status value, and suggest an improvement
- Log in and create a Documentation issue with your suggestion