Zeebe License Overview and FAQ

Licensing for Software and Documentation

Zeebe Broker (incl. Gateway)

APIs and Protocols

Clients

Operate Developer Trial

Documentation

Licensing Policy

Our goal in selecting the Zeebe Community License 1.0 for the Zeebe server (broker and gateway) is to restrict public cloud vendors from using their market position to offer a Zeebe-based workflow service in the cloud and undermine Camunda’s own offerings in a way that threatens the viability of a source-available, open development model.

Our ability to further invest in Zeebe and to share it with the users and the community directly depends on our ability to offer it as a cloud service ourselves. The Zeebe Community License otherwise does not restrict use of Zeebe and is comparable to, but less restrictive than, the Creative Commons Noncommercial licenses: users may use it freely (including for commercial purposes) except for providing a Commercial Workflow Service in the Cloud.

To simplify adoption of Zeebe, officially-supported clients are made available under the Apache License 2.0.

See FAQ below and the following blog post for more details on this rationale.

If use of our clients under the Apache License 2.0 or the server under the Zeebe Community License does not satisfy your organization’s legal department, proprietary licenses are available from Camunda Services GmbH. Feel free to contact us for more details.

FAQ

What is the Zeebe Community License 1.0 and which rights does it grant to me as a user?

The Zeebe Community License is a license created by Camunda Services GmbH. It is comparable to the Creative Commons Attribution and (a less restrictive version of the) Noncommercial licenses in the following sense:

It grants users all rights to use, modify and distribute Zeebe freely (including for commercial purposes) under two conditions:

  1. Users are not allowed to use Zeebe for providing a Commercial Workflow Service in the Cloud,
  2. Derivative works (changes to Zeebe) must be placed under a license which respects the Conditions in the Zeebe Community License 1.0 as well (while there is no obligation to make the source code of these changes available).

What does the Zeebe Community License mean by “Providing a Commercial Workflow Service”?

A commercial Workflow Service means offering Zeebe as a service, in the cloud, to your commercial advantage.

In the license text, this is restricted to situations where Zeebe is used to provide the ability to deploy and execute “Custom Workflows”. This restriction is done to explicitly differentiate:

  1. Scenarios in which Zeebe itself is provided as a commercial cloud service (allowing users to make full use of BPMN and implement their own workers / services using the Zeebe clients), as opposed to
  2. Scenarios in which a software vendor embeds Zeebe into their own SaaS product, to provide a layer of domain-specific configurability to their users.

The latter case (2) is explicitly permitted by the license while (1) is not permitted.

Am I allowed to use Zeebe in a commercial product?

Yes!

As long as that product is not Zeebe itself, as a cloud service.

Am I allowed to download Zeebe for free?

Yes!

Can I change Zeebe’s source code?

Yes!

You also don’t have to make your changes available. However, if you do distribute, you must ensure that the resulting derivative work is under a licence which retains the conditions of the Zeebe Community License.

Why did Camunda come up with its own license instead of using an existing one?

While the challenge around cloud offerings is not unique to Zeebe (a number of projects and companies like Elasicsearch, MongoDB, Confluent, CockroachDB, MariaDB, … have taken similar initiative), there is currently no generally accepted license that solves this problem. Camunda would strongly consider moving to such a “standard” license, should it emerge.

Is Zeebe Open Source?

The Zeebe Community License doesn’t align completely with the OSI’s definition of Open Source. From a practical perspective, their definition is what’s generally understood by developers and users of open source software. So we’re not referring to Zeebe as open source.

The term “source available” is emerging as a more accurate description for projects like Zeebe.

Example Use Cases

In this section, we review three examples that are based on common Zeebe use cases, then we decide whether the use cases are allowed under the Zeebe Community License v1.0.

Example 1: The External Consultant

Helpware is a software consulting firm. A client hires Helpware to build an internal Zeebe-as-a-service platform on the client’s behalf. This platform will be deployed to a hardware environment managed by the client (either on premises or in the cloud–it does not make a difference for this example).

The client’s employees will be able to create and deploy “Custom Workflows”, meaning that both workflow definitions and the services being orchestrated can be freely defined by the client.

This use case is allowed under the Zeebe Community License. Because Helpware was hired as a “Contractor” by their client to build an internal service available to their client’s employees only, the platform is not considered to be a “Commercial Workflow Service”.

Example 2: The SaaS Application Provider

Autoflow is a software company that provides a SaaS solution for the automotive sector. Autoflow’s customers use a custom BPMN modeling tool to define orchestration workflows that are executed by the Zeebe engine.

These workflows orchestrate only a limited set of services defined and maintained by Autoflow; customers cannot freely define the services that are orchestrated by Autoflow’s product.

This use case is allowed under the Zeebe Community License. Because Autoflow’s customers cannot freely create and define the services that are orchestrated and instead select services from a predefined set, these workflows are not considered to be “Custom Workflows”.

Example 3: The General-Purpose SaaS Provider

GiantCloud is a software company that provides a SaaS platform. GiantCloud customers can freely define workflows in GiantCloud’s brand new workflow definition DSL, which is translated to BPMN 2.0 before being executed by Zeebe.

GiantCloud customers can also freely define the services being orchestrated by the GiantCloud workflow platform.

In other words, GiantCloud’s SaaS product is “Zeebe-as-a-service”.

This use case is not allowed because GiantCloud is offering a “Commercial Workflow Service” that its customers use to create and execute “Custom Workflows”.