PHPackages                             camundity/phpzeebe - 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. camundity/phpzeebe

ActiveLibrary[API Development](/categories/api)

camundity/phpzeebe
==================

PHP Client for zeebe workflow engine (https://zeebe.io)

8.0.4(3y ago)43.2k2[2 issues](https://github.com/camunda-community-hub/phpZeebe/issues)[1 PRs](https://github.com/camunda-community-hub/phpZeebe/pulls)MITPHPPHP &gt;=7.1

Since Aug 12Pushed 2y ago1 watchersCompare

[ Source](https://github.com/camunda-community-hub/phpZeebe)[ Packagist](https://packagist.org/packages/camundity/phpzeebe)[ Docs](https://github.com/camunda-community-hub/phpZeebe)[ RSS](/packages/camundity-phpzeebe/feed)WikiDiscussions master Synced today

READMEChangelog (1)Dependencies (2)Versions (2)Used By (0)

Zeebe PHP client
================

[](#zeebe-php-client)

Client for the Camunda 8 engine, Zeebe () - A Workflow Engine for Microservices Orchestration.

This client is based on [PHP files generated](https://github.com/camunda-community-hub/phpZeebe/tree/master/src/Command) from [Zeebe gateway protobuf definition](https://raw.githubusercontent.com/camunda/zeebe/8.0.4/gateway-protocol/src/main/proto/gateway.proto).

building the client for another target version.
-----------------------------------------------

[](#building-the-client-for-another-target-version)

You can modify the Zeebe target version by changing the version number inside the [Makefile](https://github.com/camunda-community-hub/phpZeebe/blob/master/Makefile).

You can then run it :

```
make build-client

```

Usage
-----

[](#usage)

Camunda 8 is composed of the Zeebe engine (gRPC), Tasklist (GraphQL), Operate (Rest) and Optimize (Rest). On a Self-Managed cluster, you would also have some other components (Identity, Keycloak and Elastic). The goal of this client is exclusively to communicate with Zeebe through gRPC. It's still an alpha version an major features are still missing (Contributions welcome).

Most common use case would be to instantiate processus, send a message and work on service task. I've built a [Laravel project to demo](https://github.com/chDame/phpzeebe-laravel-example) how it could be implemented but you could also imagine a microservices approach.

### building a worker

[](#building-a-worker)

```
use Camundity\PhpZeebe\ZeebeWorker;

class SelectAssigneeWorker extends ZeebeWorker {

	public function __construct($zeebeClient) {
		parent::__construct($zeebeClient);
		$this->setType("selectAssignee");
    }

	public function executeTask($activatedJob){
		$variables = $this->getVariables($activatedJob);
		var_dump($variables);
		$variables["assignee1"] = "toto";
		$this->complete($activatedJob, $variables);
	}
}
```

### Creating a client and using it

[](#creating-a-client-and-using-it)

```
require_once __DIR__ . '/vendor/autoload.php';
require_once('SelectAssigneeWorker.php');
require_once('MailWorker.php');
use Camundity\PhpZeebe\ZeebeClient;

$client = new ZeebeClient("XXX");
$client->saasAuth("XXX", "XXX");

$client->deployProcess("camunda-process.bpmn");

$client->runInstance("camunda-process2","latest", ["var1"=>"something"]);
$client->publishMessage("messageName","correlationKey", ["var2"=>"someOtherValue"]);

$worker2 = new MailWorker($client);
$worker2->work();
$worker = new SelectAssigneeWorker($client);
$worker->workLoop(); //blocking thread
```

Laravel example
---------------

[](#laravel-example)

A quick example of use in Laravel : Workers are executed as jobs.

###  Health Score

24

—

LowBetter than 31% of packages

Maintenance10

Infrequent updates — may be unmaintained

Popularity24

Limited adoption so far

Community12

Small or concentrated contributor base

Maturity42

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

Unknown

Total

1

Last Release

1421d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/62a3eb6f7cd409ddee4e61e281d5baec40e249b0ccbb894142c795e9df36636b?d=identicon)[chDame](/maintainers/chDame)

---

Top Contributors

[![radek-baczynski](https://avatars.githubusercontent.com/u/288642?v=4)](https://github.com/radek-baczynski "radek-baczynski (16 commits)")[![chDame](https://avatars.githubusercontent.com/u/19151858?v=4)](https://github.com/chDame "chDame (14 commits)")[![gustavobgama](https://avatars.githubusercontent.com/u/1511294?v=4)](https://github.com/gustavobgama "gustavobgama (3 commits)")

---

Tags

camunda-8zeebeworkfloworchestrationMicroservicebpmnzeebe

### Embed Badge

![Health badge](/badges/camundity-phpzeebe/health.svg)

```
[![Health](https://phpackages.com/badges/camundity-phpzeebe/health.svg)](https://phpackages.com/packages/camundity-phpzeebe)
```

###  Alternatives

[google/gax

Google API Core for PHP

267116.3M567](/packages/google-gax)[googleads/google-ads-php

Google Ads API client for PHP

3508.5M12](/packages/googleads-google-ads-php)[clarifai/clarifai-php-grpc

Clarifai PHP gRPC client

1229.6k](/packages/clarifai-clarifai-php-grpc)[temporal/sdk

Temporal SDK

4072.9M25](/packages/temporal-sdk)[google/grpc-gcp

gRPC GCP library for channel management

184110.9M6](/packages/google-grpc-gcp)[google/common-protos

Google API Common Protos for PHP

175117.7M73](/packages/google-common-protos)

PHPackages © 2026

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