PHPackages                             bclibraries/libkey-client - 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. [API Development](/categories/api)
4. /
5. bclibraries/libkey-client

ActiveLibrary[API Development](/categories/api)

bclibraries/libkey-client
=========================

PHP client for LibKey API from Third Iron

1.0.0(2y ago)0221[1 PRs](https://github.com/BCLibraries/libkey-client/pulls)1MITPHPPHP &gt;=8.2

Since Oct 7Pushed 2y ago4 watchersCompare

[ Source](https://github.com/BCLibraries/libkey-client)[ Packagist](https://packagist.org/packages/bclibraries/libkey-client)[ RSS](/packages/bclibraries-libkey-client/feed)WikiDiscussions master Synced 4d ago

READMEChangelogDependencies (8)Versions (9)Used By (1)

FulltextFinder
==============

[](#fulltextfinder)

LibKeyClient is a PHP library for querying the [LibKey Article DOI lookup API](https://thirdiron.atlassian.net/wiki/spaces/BrowZineAPIDocs/pages/65699928/Article+DOI+Lookup+Endpoint+LibKey) from [Third Iron](https://thirdiron.com/).

Installation
------------

[](#installation)

Use the package manager [composer](https://getcomposer.org/) to install LibKeyClient.

```
composer require bclibraries/libkey-client:^0.1
```

LibKeyClient is currently a 0.\* release, so things will change drastically with any minor release.

Usage
-----

[](#usage)

```
use BCLib\LibKeyClient\LibKeyClient;

require_once __DIR__ . '/vendor/autoload.php';

// LibKey API identifiers.
$libkey_apikey = 'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx';
$libkey_id = 'xxx';
$doi = '10.1371/journal.pone.0193984';

$libkey = LibKeyClient::build($libkey_id, $libkey_apikey);

// Send request.
$http_response = $libkey->request($doi);

// Parse
if ($libkey_response = $libkey->parse($http_response)) {
    echo "Fulltext for {$libkey_response->getTitle()} is at {$libkey_response->getFullTextFile()}\n";
} else {
    echo "Could not find LibKey entry for '$doi'\n";
}

// Fulltext for Differential resilience of Amazonian otters along the Rio Negro in the aftermath of the 20th century
// international fur trade is at https://libkey.io/libraries/431/articles/195287219/full-text-file?utm_source=api_536
```

### The HTTPClient

[](#the-httpclient)

LibKey client uses the [Symfony HTTPClient](https://symfony.com/doc/current/components/http_client.html) component to handle HTTP requests. The Symfony client was chosen instead of a PSR-18—compliant implementation because the original use case required concurrent requests, which PSR-18 does not support.

Running tests
-------------

[](#running-tests)

[PHPUnit](https://phpunit.de/) is used for testing. You may need to enable the sockets extension.

```
./vendor/bin/phpunit
```

Contributing
------------

[](#contributing)

Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

Please make sure to update tests as appropriate.

License
-------

[](#license)

[MIT](https://choosealicense.com/licenses/mit/)

###  Health Score

33

—

LowBetter than 75% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity11

Limited adoption so far

Community11

Small or concentrated contributor base

Maturity76

Established project with proven stability

 Bus Factor1

Top contributor holds 100% 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.

###  Release Activity

Cadence

Every ~280 days

Recently: every ~417 days

Total

7

Last Release

732d ago

Major Versions

v0.3.0 → 1.0.02024-05-13

PHP version history (3 changes)v0.1.0PHP &gt;=7.1.26

v0.2.0PHP &gt;=7.4

1.0.0PHP &gt;=8.2

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/210404?v=4)[Benjamin Florin](/maintainers/Otterfan)[@Otterfan](https://github.com/Otterfan)

---

Top Contributors

[![Otterfan](https://avatars.githubusercontent.com/u/210404?v=4)](https://github.com/Otterfan "Otterfan (9 commits)")

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/bclibraries-libkey-client/health.svg)

```
[![Health](https://phpackages.com/badges/bclibraries-libkey-client/health.svg)](https://phpackages.com/packages/bclibraries-libkey-client)
```

###  Alternatives

[sylius/sylius

E-Commerce platform for PHP, based on Symfony framework.

8.4k5.6M651](/packages/sylius-sylius)[wordpress/php-ai-client

A provider agnostic PHP AI client SDK to communicate with any generative AI models of various capabilities using a uniform API.

26236.6k14](/packages/wordpress-php-ai-client)[openai-php/symfony

Symfony Bundle for OpenAI

215715.5k3](/packages/openai-php-symfony)[swisnl/json-api-client

A PHP package for mapping remote JSON:API resources to Eloquent like models and collections.

211473.2k12](/packages/swisnl-json-api-client)[toshy/bunnynet-php

BunnyNet API client for PHP

61172.1k6](/packages/toshy-bunnynet-php)[arbor-education/arbor-sdk-php

Arbor Education PHP SDK

116.8k](/packages/arbor-education-arbor-sdk-php)

PHPackages © 2026

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