PHPackages                             mycodebox/zitadel-php-api - 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. mycodebox/zitadel-php-api

ActiveLibrary[API Development](/categories/api)

mycodebox/zitadel-php-api
=========================

Zitadel PHP API

v1.3.3(10mo ago)014MITPHPCI passing

Since Apr 11Pushed 10mo ago1 watchersCompare

[ Source](https://github.com/myCodebox/zitadel-php-api)[ Packagist](https://packagist.org/packages/mycodebox/zitadel-php-api)[ RSS](/packages/mycodebox-zitadel-php-api/feed)WikiDiscussions main Synced 1w ago

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

Zitadel PHP API version 1.3.3
=============================

[](#zitadel-php-api-version-133)

With this library you can easily communicate between your PHP projects and Zitadel over a serviceUser. The wrapper is based on the [Zitadel API](https://zitadel.com/docs/apis/introduction/).

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

[](#installation)

```
git clone https://github.com/myCodebox/zitadel-php-api.git
cd zitadel-php-api
composer install
```

Documentation
-------------

[](#documentation)

You can find a API documentation [here](https://mycodebox.github.io/zitadel-php-api/).

Usage
-----

[](#usage)

**Create a new user**

```
use ZitadelPhpApi\ZitadelPhpApi\Create;

$settings = [
    "domain" => "",
    "serviceUserToken" => "",
    "userToken" => ""
];

// Create a new user
$user = new Create($settings);
$user->setUserId('d654e6ba-70a3-48ef-a95d-37c8d8a7901a');
$user->setUserName('minnie-mouse');
$user->setOrganization('d654e6ba-70a3-48ef-a95d-37c8d8a7901a', 'zitadel.org');
$user->setName('Minnie', 'Mouse');
$user->setNickName('Mini');
$user->setDisplayName('Minnie Mouse');
$user->setLanguage('en');
$user->setGender('GENDER_FEMALE');
$user->setEmail('mini@mouse');
$user->setPhone('+41791234567');
$user->addMetaData('my-key1', 'This is my test value1');
$user->addMetaData('my-key2', 'This is my test value2');
$user->addMetaData('my-key3', 'This is my test value3');
$user->setPassword('Secr3tP4ssw0rd!', true);
$user->addIDPLink('1', '6516849804890468048461403518', 'user@external.com');
$user->addIDPLink('2', '6516849804890468048461403518', 'user@external.com');
$user->addIDPLink('3', '6516849804890468048461403518', 'user@external.com');

try {
    dump($user->create());
} catch (Exception $e) {
    echo $e->getMessage();
}
```

**Add user avatar with path**

```
use ZitadelPhpApi\User\Avatar;

$settings = [
    "domain" => "",
    "serviceUserToken" => "",
    "userToken" => ""
];

// Add avatar
$avatar = new Avatar($settings);
$avatar->setUserId('319154205375856643');
$avatar->setImagePath('avatar_500x500.png');
try {
    $avatar->add();
} catch (Exception $e) {
    echo $e->getMessage();
}
```

**Add user avatar with form**

```

    Select an image:

```

And the php Code:

```
use ZitadelPhpApi\User\Avatar;

$settings = [
    "domain" => "",
    "serviceUserToken" => "",
    "userToken" => ""
];

// Add avatar
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
    // Add avatar
    $avatar = new Avatar($settings);
    $avatar->setUserId('319154205375856643');
    $avatar->setImagePath($_FILES['file']['tmp_name']);
    try {
        $avatar->add();
    } catch (Exception $e) {
        echo $e->getMessage();
    }
}
```

**Remove user avatar**

```
use ZitadelPhpApi\User\Avatar;

$settings = [
    "domain" => "",
    "serviceUserToken" => "",
    "userToken" => ""
];

// Remove avatar
$avatar = new Avatar($settings);
$avatar->setUserId('313871513763708931');
try {
    $avatar->remove();
} catch (Exception $e) {
    echo $e->getMessage();
}
```

Credits
-------

[](#credits)

- [Zitadel](https://github.com/zitadel/zitadel)
- [PHP-QRCode](https://github.com/chillerlan/php-qrcode)

License
-------

[](#license)

Zitadel PHP API is released under the Apache 2.0 License.

###  Health Score

30

—

LowBetter than 61% of packages

Maintenance54

Moderate activity, may be stable

Popularity6

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity45

Maturing project, gaining track record

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

Total

12

Last Release

319d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/19c8dbeacdd046cee91c9a752d6469269b6f1bac36c1eb72a6490a6cffe952c8?d=identicon)[myCodebox](/maintainers/myCodebox)

---

Top Contributors

[![myCodebox](https://avatars.githubusercontent.com/u/1451800?v=4)](https://github.com/myCodebox "myCodebox (21 commits)")

---

Tags

apiphpzitadelphpapizitadel

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/mycodebox-zitadel-php-api/health.svg)

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

###  Alternatives

[jstolpe/instagram-graph-api-php-sdk

Instagram Graph API PHP SDK

138114.7k2](/packages/jstolpe-instagram-graph-api-php-sdk)[abydahana/aksara

Aksara is a modern, developer-friendly framework and CMS built on CodeIgniter 4, featuring rapid CRUD development, modular architecture, smart routing, flexible access control, API integration, and an AI assistant to make content management faster and smarter.

1141.2k](/packages/abydahana-aksara)

PHPackages © 2026

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