PHPackages                             yaroslawww/ipro-software-api-php - 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. yaroslawww/ipro-software-api-php

Abandoned → [think.studio/ipro-software-api-php](/?search=think.studio%2Fipro-software-api-php)Library[API Development](/categories/api)

yaroslawww/ipro-software-api-php
================================

iProSoftware api client (php)

3.1.2(2y ago)06.7k↑76.5%1MITPHPPHP ^8.0

Since Jul 5Pushed 2y agoCompare

[ Source](https://github.com/yaroslawww/ipro-software-api-php)[ Packagist](https://packagist.org/packages/yaroslawww/ipro-software-api-php)[ Docs](https://github.com/yaroslawww/ipro-software-api-php)[ RSS](/packages/yaroslawww-ipro-software-api-php/feed)WikiDiscussions main Synced 1mo ago

READMEChangelogDependencies (7)Versions (19)Used By (1)

IProSoftware [API](https://www.ipro-software.com/) client
=========================================================

[](#iprosoftware-api-client)

[![Packagist License](https://camo.githubusercontent.com/33f9fc284e4db4296405cac069c3ee5c6e3ba6bdfca31d51ea00364857ea76df/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f6c2f7468696e6b2e73747564696f2f6970726f2d736f6674776172652d6170692d7068703f636f6c6f723d253233346463373166)](https://camo.githubusercontent.com/33f9fc284e4db4296405cac069c3ee5c6e3ba6bdfca31d51ea00364857ea76df/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f6c2f7468696e6b2e73747564696f2f6970726f2d736f6674776172652d6170692d7068703f636f6c6f723d253233346463373166)[![Packagist Version](https://camo.githubusercontent.com/538b7d1165971057d86153d437b440be76571e09453d58303a49086c2c0ac7d5/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f7468696e6b2e73747564696f2f6970726f2d736f6674776172652d6170692d706870)](https://packagist.org/packages/think.studio/ipro-software-api-php)[![Total Downloads](https://camo.githubusercontent.com/785cfde1f3e12450bf378aaf4318c585e2d51ac4ccb42d189f4b71f09190023a/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f7468696e6b2e73747564696f2f6970726f2d736f6674776172652d6170692d706870)](https://packagist.org/packages/think.studio/ipro-software-api-php)[![Build Status](https://camo.githubusercontent.com/d5101317ed5822c771811439871b385fb363945943f70e2d4bed750e75315001/68747470733a2f2f7363727574696e697a65722d63692e636f6d2f672f6465762d7468696e6b2d6f6e652f6970726f2d736f6674776172652d6170692d7068702f6261646765732f6275696c642e706e673f623d6d61696e)](https://scrutinizer-ci.com/g/dev-think-one/ipro-software-api-php/build-status/main)[![Code Coverage](https://camo.githubusercontent.com/eefdb55f04fc128e683ddbd3c0aa6b3e1bac4e2279eec269a6580f40d52252a8/68747470733a2f2f7363727574696e697a65722d63692e636f6d2f672f6465762d7468696e6b2d6f6e652f6970726f2d736f6674776172652d6170692d7068702f6261646765732f636f7665726167652e706e673f623d6d61696e)](https://scrutinizer-ci.com/g/dev-think-one/ipro-software-api-php/?branch=main)[![Scrutinizer Code Quality](https://camo.githubusercontent.com/6559176b657c64f2700d545e717349dbe664ec199c850d77f3ad238f534fca2b/68747470733a2f2f7363727574696e697a65722d63692e636f6d2f672f6465762d7468696e6b2d6f6e652f6970726f2d736f6674776172652d6170692d7068702f6261646765732f7175616c6974792d73636f72652e706e673f623d6d61696e)](https://scrutinizer-ci.com/g/dev-think-one/ipro-software-api-php/?branch=main)

Unofficial [IproSoftware](https://github.com/iprosoftware/api-csharp-client/wiki) api implementation.

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

[](#installation)

You can install the package via composer:

```
    composer require think.studio/ipro-software-api-php
```

### Simple example

[](#simple-example)

```
    $iproSoftwareClient = new \IproSoftwareApi\IproSoftwareClient([
        'api_host' => 'my-iprosoftware-api-host',
        'client_id' => 'my-iprosoftware-client-id',
        'client_secret' => 'my-iprosoftware-client-secret',
    ]);

    $response = $iproSoftwareClient->getBookingRulesList();

    $responseBody = json_decode($response->getBody());
```

**Note**: All predefined api requests name you can find [here](https://github.com/dev-think-one/ipro-software-api-php/blob/main/src/Traits/HasApiMethods.php)

Configure the client
--------------------

[](#configure-the-client)

The Trello client needs a few configuration settings to operate successfully.

SettingDescription`api_host`An api domain associated with your application.`client_id`The application `client ID` associated with your application.`client_secret`The application `client secret` associated with your application.`oauth_endpoint`You can specify you own oauth endpoint (By default used *`/oauth/2.0/token`*).`requests_path_prefix`You can specify you own endpoint prefix for all **predefined endpoints** (By default used *`/apis`*).`client_conf`Set of predefined configurations applied to `http client` (By default package use [Guzzle](http://docs.guzzlephp.org/en/), all available options for Guzzle you can find [here](http://docs.guzzlephp.org/en/latest/request-options.html)).`cache_manager`By default package not cache the *access token* and request new one every request. If you want to cache access token to some storage (file, DB, ...) than you should create you own class from interface `IproSoftwareApi\Contracts\AccessTokenCacher` and pass object to this setting`access_token_class`Also you can specify you own access token class implements interface `IproSoftwareApi\Contracts\AccessToken`#### Set configuration when creating client

[](#set-configuration-when-creating-client)

```
$iproSoftwareClient = new \IproSoftwareApi\IproSoftwareClient([
    'api_host' => 'my-iprosoftware-api-host',
    'client_id' => 'my-iprosoftware-client-id',
    'client_secret' => 'my-iprosoftware-client-secret',
    'cache_manager' => new MyDatabaseAccessTokenCacheManager(),
    'client_conf' => [
        'timeout' => 15,
        'http_errors' => false,
        'headers' => [
            'Accept' => 'application/json',
        ]
    ]
]);
```

#### Set access token cache manager after initialisation

[](#set-access-token-cache-manager-after-initialisation)

```
    $iproSoftwareClient = new \IproSoftwareApi\IproSoftwareClient([
        'api_host' => 'my-iprosoftware-api-host',
        'client_id' => 'my-iprosoftware-client-id',
        'client_secret' => 'my-iprosoftware-client-secret'
    ]);

    $iproSoftwareClient->setAccessTokenCacheManager(new MyDatabaseAccessTokenCacheManager())
```

#### Set your own http client if you want full control over requests

[](#set-your-own-http-client-if-you-want-full-control-over-requests)

```
    $iproSoftwareClient = new \IproSoftwareApi\IproSoftwareClient();

    $iproSoftwareClient->setHttpClient(new MyOwnHttpClient($credentials))
```

### Handling exceptions

[](#handling-exceptions)

If you try to query with the wrong configuration, you will get an exception `IproSoftwareApi\Exceptions\IproSoftwareApiException`. If the server fails to get the access token, you will receive `IproSoftwareApi\Exceptions\IproSoftwareApiAccessTokenException`

```
    try {
        $response = $iproSoftwareClient->getBookingRulesList();
    } catch (IproSoftwareApi\Exceptions\IproSoftwareApiAccessTokenException $e) {
        $code = $e->getCode(); // Http status code from response
        $reason = $e->getMessage(); // Http status reason phrase
        $httpResponse = $e->getResponse(); // Psr\Http\Message\ResponseInterface from http client
    }
```

Testing
-------

[](#testing)

```
  composer test
```

Credits
-------

[](#credits)

- [![Think Studio](https://camo.githubusercontent.com/b540bf4d815b42309a4110aad139ab6ec02c3302f426a0f6f1d9acf7b9008319/68747470733a2f2f7468696e6b2e73747564696f2e6769746875622e696f2f696d616765732f73706f6e736f72732f7061636b616765732f6c6f676f2d7468696e6b2d73747564696f2e706e67)](https://think.studio/)

###  Health Score

34

—

LowBetter than 77% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity20

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity72

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 ~89 days

Recently: every ~106 days

Total

17

Last Release

1077d ago

Major Versions

0.1.1 → 1.0.02019-12-14

1.1.1 → 2.0.02020-01-08

2.2.1 → 3.0.02022-03-31

PHP version history (5 changes)0.1.0PHP ^7.1.3

0.1.1PHP ^7.2

2.0.0PHP ^7.4

2.2.1PHP ^7.4|^8.0

3.0.0PHP ^8.0

### Community

Maintainers

![](https://www.gravatar.com/avatar/66f778dcd7a390dcb08d29ee36d431684877ace6b0f7c3d68f4384409f2b0fac?d=identicon)[yaroslawww](/maintainers/yaroslawww)

---

Top Contributors

[![yaroslawww](https://avatars.githubusercontent.com/u/23663794?v=4)](https://github.com/yaroslawww "yaroslawww (62 commits)")

---

Tags

phpapiiprosoftwareipro-software

###  Code Quality

TestsPHPUnit

Static AnalysisPsalm

Code StylePHP CS Fixer

Type Coverage Yes

### Embed Badge

![Health badge](/badges/yaroslawww-ipro-software-api-php/health.svg)

```
[![Health](https://phpackages.com/badges/yaroslawww-ipro-software-api-php/health.svg)](https://phpackages.com/packages/yaroslawww-ipro-software-api-php)
```

###  Alternatives

[openai-php/laravel

OpenAI PHP for Laravel is a supercharged PHP API client that allows you to interact with the Open AI API

3.7k7.6M74](/packages/openai-php-laravel)[theodo-group/llphant

LLPhant is a library to help you build Generative AI applications.

1.5k311.5k5](/packages/theodo-group-llphant)[resend/resend-php

Resend PHP library.

564.7M21](/packages/resend-resend-php)[checkout/checkout-sdk-php

Checkout.com SDK for PHP

553.3M7](/packages/checkout-checkout-sdk-php)[tustin/psn-php

PHP wrapper for the PlayStation API.

37237.8k1](/packages/tustin-psn-php)[scriptdevelop/whatsapp-manager

Paquete para manejo de WhatsApp Business API en Laravel

762.6k](/packages/scriptdevelop-whatsapp-manager)

PHPackages © 2026

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