Skip to main content

Serverless Workflow

A vendor-neutral, open-source, and community-driven DSL for defining workflows in serverless environments

Why Serverless Workflow?

Serverless Workflow simplifies orchestration of complex processes across diverse environments, providing a unified syntax for defining and executing workflows without platform dependencies.

Easy to Use

Designed for universal understanding with intuitive, imperative DSL that enables quick workflow creation

Event Driven

Seamless event integration with CloudEvents support for event-driven architectures

Service Oriented

Integrate with service-oriented architectures using HTTP, gRPC, OpenAPI, AsyncAPI, and more

Cloud Agnostic

Vendor-neutral and portable across different cloud providers and environments

Fault Tolerant

Built-in error handling strategies with retry policies for robust workflow execution

Schedulable

Schedule workflows using CRON expressions or trigger based on events

Key Features

Build workflows that respond to events from any source. Support for CloudEvents and custom event formats enables reactive architectures.
Native support for HTTP, gRPC, OpenAPI, and AsyncAPI protocols. Easily call external services and orchestrate microservices.
Define comprehensive error handling with retry policies, timeouts, and custom error types to ensure reliable execution.
Transform data using jq or JavaScript expressions. Filter, map, and manipulate workflow data at runtime.
Create custom functions, catalogs, and extensions to adapt workflows to your specific needs.
Hosted by the Cloud Native Computing Foundation (CNCF) as a Sandbox project since July 2020.

Quick Example

Here’s a simple workflow that calls an HTTP endpoint and processes the response:
workflow.yaml
document:
  dsl: 1.0.3
  namespace: examples
  name: hello-world
  version: 1.0.0
do:
  - greet:
      call: http
      with:
        method: get
        endpoint:
          uri: https://api.example.com/greet

Learn More

Follow our quickstart guide to create your first workflow

Explore the Documentation

Getting Started

Learn the fundamentals and create your first workflow

Core Concepts

Understand workflows, tasks, events, and data flow

API Reference

Complete reference for all DSL elements and properties

Examples

Explore practical examples and real-world patterns

Use Cases

See how Serverless Workflow solves real problems

Ecosystem

Discover SDKs, runtimes, and tooling

Ecosystem

Serverless Workflow provides a comprehensive ecosystem for workflow orchestration:

SDKs

Libraries for .NET, Go, Java, PHP, Python, Rust, and TypeScript

Runtimes

Production-ready implementations including Apache KIE SonataFlow and Synapse

Tooling

VS Code extension for authoring and validating workflows

Community

Serverless Workflow is a CNCF Sandbox project with a growing community of contributors and adopters.
Join our community to contribute, ask questions, and share your experiences:

GitHub

View the specification, contribute, and report issues

Slack

Join the #serverless-workflow channel on CNCF Slack

Weekly Meetings

Join our weekly community meetings every Thursday at 9AM ET

Contributing

Learn how to contribute to the specification

Build docs developers (and LLMs) love