PHPackages                             multidialogo/api-php-sdk - 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. multidialogo/api-php-sdk

ActiveLibrary[API Development](/categories/api)

multidialogo/api-php-sdk
========================

php client for multidialogo services

v0.12.4(2y ago)0576PHPPHP &gt;=7.4

Since Sep 22Pushed 1y ago3 watchersCompare

[ Source](https://github.com/Multidialogo/multidialogo-api-php-sdk)[ Packagist](https://packagist.org/packages/multidialogo/api-php-sdk)[ RSS](/packages/multidialogo-api-php-sdk/feed)WikiDiscussions master Synced today

READMEChangelogDependencies (2)Versions (16)Used By (0)

Multidialogo api php sdk
========================

[](#multidialogo-api-php-sdk)

A set of classes to manage the interaction with Multidialogo API.

Quick Start
-----------

[](#quick-start)

### Installation

[](#installation)

```
composer require multidialogo/api-php-sdk
```

### Use example

[](#use-example)

```
    use multidialogo\client\MultidialogoClient;

    $client = MultidialogoClient::builder()
        ->withHostUrl('http://rest.multidialogo.local')
        ->withPasswordCredentials('username', 'password')
        ->withLanguage('it')
        ->build();

    $response = $client->getJson('users/me', ['include' => 'profile']);

    print_r($response->body);
```

It is possible to configure the client with a filesystem-based credentials store.

This is achieved with this helper:

```
        ->withFileTokenStorage(CLIENT_PROVIDED_FILESYSTEM_PATH)

```

So the full example would be:

```
        $client = MultidialogoClient::builder()
            ->withHostUrl('https://rest-stage.multidialogo.it')
            ->withFileTokenStorage(CLIENT_PROVIDED_FILESYSTEM_PATH)
            ->withLanguage('it')
            ->build();

        $client->getJson('geo/countries');
```

CLIENT\_PROVIDED\_FILESYSTEM\_PATH is a string specifying a folder, that will be used by the client to store the credentials. The folder must be writable. It is totally optional, and it allows to omit user password until it is mandatory (ie until the main or refresh token expires).

It is possibile to pass a token directly to the client. This use case is suitable for situation where the login is managed by a frontend, that is handling the token refresh procedure and passing the token to a backend proxy. This is done via the `withBearerToken` helper method. Example:

```
        $client = MultidialogoClient::builder()
            ->withHostUrl('https://rest-stage.multidialogo.it')
            ->withBearerToken($token)
            ->withLanguage('it')
            ->build();

        $client->getJson('geo/countries');
```

Local development
-----------------

[](#local-development)

### How to build required docker images

[](#how-to-build-required-docker-images)

To build the main image (php 7.4)

```
docker build -f provisioning/Dockerfile-74-composer -t multidialogo-api-php-sdk-composer:latest .
```

To build the php 8.2 version image (note: it does not contain composer).

```
docker build -f provisioning/Dockerfile-82-cli -t multidialogo-api-php-sdk-php82:latest .
```

Keep in mind that the php82 version is intended to be used only to run unit tests, that's why composer is not included.

### Install/update/manage vendors

[](#installupdatemanage-vendors)

```
docker run --rm --interactive --tty -v ${PWD}/:/app multidialogo-api-php-sdk-composer:latest composer
```

### Run unit tests

[](#run-unit-tests)

Run tests under php 7.4:

```
docker run --rm --interactive --tty -v ${PWD}/:/app multidialogo-api-php-sdk-composer:latest ./vendor/bin/phpunit -c .
```

Run tests under php 8.2:

```
docker run --rm --interactive --tty -v ${PWD}/:/app multidialogo-api-php-sdk-php82:latest ./vendor/bin/phpunit -c .
```

### Semantic versioning

[](#semantic-versioning)

Project is following semantic versioning. Please use properly git tags before any release in master.

Example:

```
git tag -a v0.0.2 -m "Bugfix"
git push --follow-tags
```

###  Health Score

26

—

LowBetter than 41% of packages

Maintenance26

Infrequent updates — may be unmaintained

Popularity13

Limited adoption so far

Community14

Small or concentrated contributor base

Maturity45

Maturing project, gaining track record

 Bus Factor2

2 contributors hold 50%+ of commits

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

Recently: every ~84 days

Total

10

Last Release

973d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/60748733?v=4)[Multidialogo Engineering](/maintainers/MultiDialogo)[@Multidialogo](https://github.com/Multidialogo)

---

Top Contributors

[![zio-mitch](https://avatars.githubusercontent.com/u/5042579?v=4)](https://github.com/zio-mitch "zio-mitch (5 commits)")[![emidiocruciani](https://avatars.githubusercontent.com/u/89306118?v=4)](https://github.com/emidiocruciani "emidiocruciani (3 commits)")[![nicofari](https://avatars.githubusercontent.com/u/6568988?v=4)](https://github.com/nicofari "nicofari (3 commits)")[![netbuilder-it](https://avatars.githubusercontent.com/u/52451245?v=4)](https://github.com/netbuilder-it "netbuilder-it (1 commits)")[![NeverWise](https://avatars.githubusercontent.com/u/6242691?v=4)](https://github.com/NeverWise "NeverWise (1 commits)")[![pvettori-mamoka](https://avatars.githubusercontent.com/u/181086143?v=4)](https://github.com/pvettori-mamoka "pvettori-mamoka (1 commits)")

---

Tags

phpsdkmultidialogo-api

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/multidialogo-api-php-sdk/health.svg)

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

###  Alternatives

[aws/aws-sdk-php

AWS SDK for PHP - Use Amazon Web Services in your PHP project

6.3k543.5M2.6k](/packages/aws-aws-sdk-php)[openai-php/laravel

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

3.7k9.5M89](/packages/openai-php-laravel)[tencentcloud/tencentcloud-sdk-php

TencentCloudApi php sdk

3741.3M46](/packages/tencentcloud-tencentcloud-sdk-php)[hubspot/api-client

Hubspot API client

24016.2M20](/packages/hubspot-api-client)[resend/resend-php

Resend PHP library.

617.2M43](/packages/resend-resend-php)[php-opencloud/openstack

PHP SDK for OpenStack APIs. Supports BlockStorage, Compute, Identity, Images, Networking and Metric Gnocchi

2312.4M25](/packages/php-opencloud-openstack)

PHPackages © 2026

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