PHPackages                             bksy/goodreads-api - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. bksy/goodreads-api

ActiveLibrary

bksy/goodreads-api
==================

A quick PHP wrapper class for the GoodReads API.

01.5kPHP

Since Dec 13Pushed 8y agoCompare

[ Source](https://github.com/boukeversteegh/goodreads-api)[ Packagist](https://packagist.org/packages/bksy/goodreads-api)[ RSS](/packages/bksy-goodreads-api/feed)WikiDiscussions master Synced 2mo ago

READMEChangelogDependenciesVersions (1)Used By (0)

goodreads-api
=============

[](#goodreads-api)

A quick PHP wrapper class for the GoodReads API.

Disclaimer
----------

[](#disclaimer)

This is something I hacked together quickly, it isn't beautiful, and as you'll see I only implemented one API endpoint (the only one I needed). However it's a good starting point, and from a cursory glance implementing other methods wouldn't be particularly tricky. Caching support is also baked in.

Please also bear in mind the GoodReads API itself isn't great (some methods for example only support XML!), you can read/comment on that in their forums.

Requirements
------------

[](#requirements)

- PHP 5.3.x or higher
- cURL
- GoodReads API key

Available methods
-----------------

[](#available-methods)

- [author.show](https://www.goodreads.com/api#author.show)
- [reviews.list](https://www.goodreads.com/api#reviews.list)
- [user.show](https://www.goodreads.com/api#user.show)

Usage
-----

[](#usage)

1. Include class
2. Initialise wrapper `$api = new GoodReads('PUT YOUR API KEY HERE', 'writable directory for caching');`
3. Call a method `$data = $api->getLatestReads(4148474);`

License
-------

[](#license)

Simplified BSD (included).

Changes
-------

[](#changes)

2016-05-13 [Victor Davis](https://github.com/victordavis/goodreads-api)

- Added LIBXML\_NOCDATA arg to simplexml\_load\_string to capture CDATA in returned XML
- Added 2 endpoints: author.show &amp; user.show

###  Health Score

23

—

LowBetter than 27% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity15

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity41

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 63.6% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

### Community

Maintainers

![](https://www.gravatar.com/avatar/f542ce155282b9be7bfb77b1d83611fb4e19490cb1eacf7749fa351651a817f4?d=identicon)[boukeversteegh](/maintainers/boukeversteegh)

---

Top Contributors

[![danielgwood](https://avatars.githubusercontent.com/u/168163?v=4)](https://github.com/danielgwood "danielgwood (7 commits)")[![boukeversteegh](https://avatars.githubusercontent.com/u/53926?v=4)](https://github.com/boukeversteegh "boukeversteegh (4 commits)")

---

Tags

goodreads

### Embed Badge

![Health badge](/badges/bksy-goodreads-api/health.svg)

```
[![Health](https://phpackages.com/badges/bksy-goodreads-api/health.svg)](https://phpackages.com/packages/bksy-goodreads-api)
```

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
