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(4y 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 3y 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 1w ago

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 30% of packages

Maintenance10

Infrequent updates — may be unmaintained

Popularity22

Limited adoption so far

Community12

Small or concentrated contributor base

Maturity43

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

1466d 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

268121.1M633](/packages/google-gax)[googleads/google-ads-php

Google Ads API client for PHP

3528.8M15](/packages/googleads-google-ads-php)[clarifai/clarifai-php-grpc

Clarifai PHP gRPC client

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

Temporal SDK

4163.2M27](/packages/temporal-sdk)[google/grpc-gcp

gRPC GCP library for channel management

185115.6M8](/packages/google-grpc-gcp)[google/common-protos

Google API Common Protos for PHP

177122.7M84](/packages/google-common-protos)

PHPackages © 2026

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