PHPackages                             bluestatedigital/tools-api-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. bluestatedigital/tools-api-client

ActiveLibrary[API Development](/categories/api)

bluestatedigital/tools-api-client
=================================

Client library for the BSD Tools API

v3.3.0(8y ago)1122.0k9[2 issues](https://github.com/bluestatedigital/bsd-api-php/issues)[3 PRs](https://github.com/bluestatedigital/bsd-api-php/pulls)Apache-2.0PHPPHP &gt;=5.6

Since May 18Pushed 7y ago28 watchersCompare

[ Source](https://github.com/bluestatedigital/bsd-api-php)[ Packagist](https://packagist.org/packages/bluestatedigital/tools-api-client)[ RSS](/packages/bluestatedigital-tools-api-client/feed)WikiDiscussions master Synced today

READMEChangelog (1)Dependencies (5)Versions (18)Used By (0)

Blue State Digital PHP API Client
=================================

[](#blue-state-digital-php-api-client)

[![Build Status](https://camo.githubusercontent.com/d6d567c7edc6b8cca46dc6518deb3f42c74e2ac79e64517870561736b044820d/68747470733a2f2f7472617669732d63692e6f72672f626c756573746174656469676974616c2f6273642d6170692d7068702e7376673f6272616e63683d6d6173746572)](https://travis-ci.org/bluestatedigital/bsd-api-php)

This library provides an interface to the BSD Tools.

Example usage:

```
use Blue\Tools\Api\Client;

$client = new Client('user_id', 'secret', 'https://baseurl.com');

/** @var ResponseInterface $response */
$response = $client->get('api/list_things', ['param' => 'value']);

```

The BSD Tools API will sometimes return a deferred result, which means that the results of the call are not immediately available. The above call, however, will poll for updates to this API call, and will block until the result has been resolved. The manner in which the client polls for updates can be configured as follows:

```
// Set the client to wait 30 seconds between updates
$client->setDeferredResultInterval(30);

// Set the client to give up after 10 updates (a RuntimeException will be thrown)
$client->setDeferredResultMaxAttempts(10);

```

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

[](#installation)

Update `composer.json`:

```
"require": {
    "bluestatedigital/tools-api-client": "~2.0"
}

```

Handling Responses
------------------

[](#handling-responses)

By default the API client uses Guzzle's RequestException for any responses above HTTP 300. To use your own handler you may either create your own Guzzle error plugin or emitter (see Guzzle 5 documentation), or disable Guzzle's handler entirely by using the following code:

```
// Prevent Exceptions on non-actionable HTTP response (400 and 500 range)
$client->setRequestOption('exceptions', false);

```

###  Health Score

37

—

LowBetter than 81% of packages

Maintenance16

Infrequent updates — may be unmaintained

Popularity31

Limited adoption so far

Community23

Small or concentrated contributor base

Maturity67

Established project with proven stability

 Bus Factor1

Top contributor holds 72.7% 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 ~91 days

Recently: every ~56 days

Total

14

Last Release

2872d ago

Major Versions

1.0.x-dev → v2.0.02015-05-18

v2.0.2 → v3.0.02017-10-26

PHP version history (2 changes)v3.0.0PHP &gt;=5.6

v3.0.1PHP &gt;=5.5

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/11996?v=4)[Dave Hauenstein](/maintainers/davehauenstein)[@davehauenstein](https://github.com/davehauenstein)

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

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

![](https://www.gravatar.com/avatar/73af16802f596f95b15e210d9e81c835350608ac9024d892350e83b6c7c4c038?d=identicon)[mponeil](/maintainers/mponeil)

---

Top Contributors

[![tomkel5](https://avatars.githubusercontent.com/u/1508898?v=4)](https://github.com/tomkel5 "tomkel5 (16 commits)")[![JoelESvensson](https://avatars.githubusercontent.com/u/6786740?v=4)](https://github.com/JoelESvensson "JoelESvensson (4 commits)")[![davvblack](https://avatars.githubusercontent.com/u/1923422?v=4)](https://github.com/davvblack "davvblack (1 commits)")[![jquassbsd](https://avatars.githubusercontent.com/u/5701609?v=4)](https://github.com/jquassbsd "jquassbsd (1 commits)")

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/bluestatedigital-tools-api-client/health.svg)

```
[![Health](https://phpackages.com/badges/bluestatedigital-tools-api-client/health.svg)](https://phpackages.com/packages/bluestatedigital-tools-api-client)
```

###  Alternatives

[laravel/framework

The Laravel Framework.

34.8k543.8M20.1k](/packages/laravel-framework)[statamic/cms

The Statamic CMS Core Package

4.8k3.6M986](/packages/statamic-cms)[sylius/sylius

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

8.5k5.9M738](/packages/sylius-sylius)[tempest/framework

The PHP framework that gets out of your way.

2.2k34.4k15](/packages/tempest-framework)[avalara/avataxclient

Client library for Avalara's AvaTax suite of business tax calculation and processing services. Uses the REST v2 API.

528.5M7](/packages/avalara-avataxclient)[oro/platform

Business Application Platform (BAP)

645143.5k115](/packages/oro-platform)

PHPackages © 2026

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