Serverless Workflow

Standards-based DSL and open-source dev tools and runtimes are at the heart of the Serverless Workflow project. We connect developers around the world to foster innovation and provide a community-driven workflow ecosystem.


Specify low-code, event-driven workflow orchestrations

using the most powerful open-source, vendor-neutral workflow DSL. Our DSL provides integrations with widely used standards for events and services such as CloudEvents, OpenAPI, AsyncAPI, GraphQL, gRPC, and more.

  • Define

    JSON, YAML

    Define you orchestration logic that is triggered via events and invokes services sync or async. Write logic that includes human decisions, set timeouts and retries, handle errors, and much more...

  • Develop

    Java, Go, TypeScript, .NET, ...

    Start developing your workflow orchestrations with help of our project SDKs. Get help creating out-of-box user experience using our open-source editor/web tooling and visualization support

  • Execute

    Serverless, Cloud-Native, Distributed runtimes

    Execute and scale your workflow-based orchestrations to build high-end applications.

Describe your business logic with the most powerful open-source DSL

View full example in web editor
{
  "states": [
    {
      "name": "Monitor Vitals",
      "type": "event",
      "onEvents": [
        {
          "eventRefs": [
            "High Body Temp Event",
            "High Blood Pressure Event"
          ],
          "actions": [
            {
              "functionRef": "Invoke Dispatch Nurse Function"
            }
          ]
        },
        {
          "eventRefs": [
            "High Respiration Rate Event"
          ],
          "actions": [
            {
              "functionRef": "Invoke Dispatch Pulmonologist Function"
            }
          ]
        }
      ]
    }
  ]
}
View full example in web editor
{
  "states": [
    {
      "name": "Send Email",
      "type": "operation",
      "actions": [
        {
          "functionRef": {
            "invoke": "async",
            "refName": "Invoke Send Email Function",
            "arguments": {
              "customer": "${ .customer }"
            }
          }
        }
      ]
    }
  ]
}
View full example in web editor
{
  "states": [
    {
      "name": "ProvisionOrder",
      "type": "operation",
      "actions": [
        {
          "functionRef": {
            "refName": "provisionOrderFunction"
          }
        }
      ],
      "onErrors": [
        {
          "errorRef": "Missing order id",
          "transition": "MissingId"
        },
        {
          "errorRef": "Missing order item",
          "transition": "MissingItem"
        },
        {
          "errorRef": "Missing order quantity",
          "transition": "MissingQuantity"
        }
      ]
    }
 ]
View full example in web editor
{
   "states": [
        {
            "name": "Item Purchase",
            "type": "event",
            "onEvents": [
                {
                    "eventRefs": [
                        "New Purchase Event"
                    ],
                    "actions": [
                        {
                            "functionRef": "Invoke Debit Customer Function"
                        }
                    ]
                }
            ],
            "compensatedBy": "Cancel Purchase",
            "onErrors": [
                {
                    "errorRef": "Debit Error",
                    "end": {
                        "compensate": true
                    }
                }
            ]
        },
        {
            "name": "Cancel Purchase",
            "type": "operation",
            "usedForCompensation": true,
            "actions": [
                {
                    "functionRef": "Invoke Credit Customer Function"
                }
            ]
        }
    ]
}
View full example in web editor
{
    "id": "periodicInboxCheck",
    "name": "Periodic Check Inbox Workflow",
    "version": "1.0",
    "description": "Periodically Check Inbox",
    "start": {
        "stateName": "CheckInbox",
        "schedule": {
            "cron": "0 0/15 * * * ?"
        }
    },
    "states": [...]
}

Model human decisions, define timeouts and retries, define parallel exec logic and looping, make data and event-based decisions, define callbacks, write powerful expressions, set secrets and constants and much more.

Read the specification document for the list of all DSL features.

Execute your production workflows

Open-source workflow runtimes are key for executing your production scale workflows. Open an issue in our GitHub repo to add your project to below list of runtimes that use our specification.

  • Synapse

    Synapse is a vendor-neutral, free, open-source, and community-driven Workflow Management System (WFMS) implementing the Serverless Workflow specification. You can deploy Synapse on Docker, Kubernetes, or natively on Windows, Mac, and Linux.

  • Apache EventMesh Workflow

    Apache EventMesh Workflow is a cloud vendor-independent, cloud-native-oriented Serverless Workflow Runtime based on Serverless Workflow specification, and provides durability, reliability, scalability, and observability capabilities.

  • Kogito Serverless Workflow

    Kogito Serverless Workflow is a tool for building cloud-native workflow applications. You can use Kogito to do the services and events orchestration and choreography. With Kogito, you can integrate with services and events in your architecture using CloudEvents, synchronous and asynchronous REST invocations, and many other industry-standard components.

Join our workflow community

Support our Project

And be featured on our website, workshops, talks, meetups and more!

Our Sponsors play a big part of our project. Alongside our community, their donations foster our projects ability to grow and maintain being completely vendor neutral.

We would like to thank the following companies who have made donations to our project:

Neuroglia

Neuroglia is a consultancy and solution design company for the digital transformation of companies and their services..

Sign up for upcoming and view past community events

Join our weekly meetings!

Event Description Date
Serverless Workflow Workshop #5 Home Automation Demo with Synapse September 2022
Serverless Workflow Workshop #4 Kogito Serverless Loan Broker Demo September 2022
Serverless Workflow Workshop #3 SimpleIdServer FaasNet Intro and Demo April 2022
Serverless Workflow Workshop #2 Intro to Synapse March 2022
Serverless Workflow Workshop #1 Project Intro, Overview, Roadmap and Q/A January 2022
Serverless Workflow and AsyncAPI - AsyncAPI Conf Project Intro and AsyncAPI Demo November 2021
KubeCon NA Project Office Hours Project Intro and Demo October 2021

Adopted by leading brands in workflow technologies

These brands are already using Serverless Workflow. Is your company using Serverless Workflow and wants to be included in this list? Let us know here!

  • Huawei

    Huawei FunctionGraph hosts event-driven functions in a serverless context while ensuring high availability, high scalability, and zero maintenance.

  • Neuroglia

    Neuroglia is a consultancy and solution design company for the digital transformation of companies and their services..

  • Red Hat

    Red Hat sponsors the development of Kogito Serverless Workflow, which is a tool for building cloud-native workflow applications. You can use Kogito to do the services and events orchestration and choreography. With Kogito, you can integrate with services and events in your architecture using CloudEvents, synchronous and asynchronous REST invocations, and many other industry-standard components.



  • Temporal

    Temporal is the open source microservice orchestration platform for writing durable workflows as code.

  • Tantl

    Tantl is making it easy for developers to build internal workflows, such as allowing customer support reps to quickly process refunds.

  • OpenEnterprise

    OpenEnterprise Automatiko helps you build better services and functions based on workflows expressed with well known standards.



  • Apache EventMesh

    A new generation serverless event middleware for building distributed event-driven applications.

  • FaasNet

    FaasNet makes it easy to deploy functions and API to Kubernetes without repetitive, boiler-plate coding.

  • Caf

    Serverless Workflow is the core technology behind every KYC/KYB solution allowing them to customize it for their clients seamlessly.