silinternational / idp-id-broker-php-client
PHP client to interact with our IdP ID Broker's API: https://github.com/sil-org/idp-id-broker
Package info
github.com/sil-org/idp-id-broker-php-client
pkg:composer/silinternational/idp-id-broker-php-client
Requires
- php: >=7.4
- guzzlehttp/guzzle-services: ^1.1
- mlocati/ip-lib: ^1.14
- roave/security-advisories: dev-master
Requires (Dev)
- behat/behat: ^3.3
- webmozart/assert: ^1.12
- dev-main
- 4.9.1
- 4.9.0
- 4.8.2
- 4.8.1
- 4.8.0
- 4.7.0
- 4.6.0
- 4.5.0
- 4.4.1
- 4.4.0
- 4.3.2
- 4.3.1
- 4.3.0
- 4.2.0
- 4.1.0
- 4.0.1
- 4.0.0
- 3.2.0
- 3.1.0
- 3.0.0
- 2.6.0
- 2.5.1
- 2.5.0
- 2.4.0
- 2.3.0
- 2.2.1
- 2.2.0
- 2.1.2
- 2.1.1
- 2.1.0
- 2.0.0
- 1.1.0
- 1.0.0
- 0.4.3
- 0.4.2
- 0.4.1
- 0.4.0
- 0.3.0
- 0.2.1
- 0.2.0
- 0.1.0
- dev-copilot/update-test-setup-webmozart-assert
- dev-briskt-patch-1
This package is auto-updated.
Last update: 2026-04-21 03:01:52 UTC
README
PHP client to interact with our IdP ID Broker's API.
This client is built on top of Guzzle, the PHP HTTP Client. Guzzle has a simple way to create API clients by describing the API in a Swagger-like format without the need to implement every method yourself. So adding support for more APIs is relatively simple.
Install
Installation is simple with Composer:
$ composer require sil-org/idp-id-broker-php-client
Usage
Example:
<?php use Sil\Idp\IdBroker\Client\IdBrokerClient; $idBrokerClient = new IdBrokerClient( 'https://api.example.com/', // The base URI for the API. 'DummyAccessToken', // Your HTTP header authorization bearer token. [ 'http_client_options' => [ 'timeout' => 10, // An (optional) custom HTTP timeout, in seconds. ], ] ); $users = $idBrokerClient->listUsers();
User Information
Information about a user returned by this client (such as by getUser(...)) can
include the following fields:
employee_id(string)first_name(string)last_name(string)display_name(string)username(string)email(string)active(string: 'yes' or 'no')locked(string: 'yes' or 'no')
Tests
To run the unit tests for this, run make test.
Guzzle Service Client Notes
- Tutorial on developing an API client with Guzzle Web Services:
http://www.phillipshipley.com/2015/04/creating-a-php-nexmo-api-client-using-guzzle-web-service-client-part-1/ - Presentation by Jeremy Lindblom:
https://speakerdeck.com/jeremeamia/building-web-service-clients-with-guzzle-1 - Example by Jeremy Lindblom:
https://github.com/jeremeamia/sunshinephp-guzzle-examples - Parameter docs in source comments:
https://github.com/guzzle/guzzle-services/blob/master/src/Parameter.php - Guzzle 3 Service Descriptions documentation (at least mostly still relevant):
https://guzzle3.readthedocs.org/webservice-client/guzzle-service-descriptions.html