upstash-workflow-js
Build reliable serverless workflows with Upstash Workflow SDK for TypeScript/JavaScript. Define workflow endpoints, execute steps sequentially, and trigger runs from your backend using the Workflow client. Includes patterns for retries, webhooks, cross-workflow invocation, and local development.
Upstash Workflow JS lets you create and expose serverless workflow endpoints that run reliably using QStash.
AI-generated summary based on this skill's SKILL.md
Decision gist · record as of 2026-07-14
Upstash Workflow JS lets you create and expose serverless workflow endpoints that run reliably using QStash. Build reliable serverless workflows with Upstash Workflow SDK for TypeScript/JavaScript. Define workflow endpoints, execute steps sequentially, and trigger runs from your backend using the Workflow client. Includes patterns for retries, webhooks, cross-workflow invocation, and local development.
Use it when
- upstash-workflow-js provides a context API to define reliable multi-step workflows.
- upstash-workflow-js includes a Workflow client library that lets you trigger and manage runs from your backend.
Verify before relying
Read SKILL.md below before installing (16 files). Open directory: indexed for reading, not audited.
Install
upstash/skills/upstash-workflow-js · repository language: JavaScript
Open directory. Skills are indexed for reading, not audited. Review a skill's body before installing it.
Frequently asked questions
AI-generated answers based on this skill's SKILL.md and metadata
What is upstash-workflow-js and how do I create serverless workflow endpoints?
upstash-workflow-js is a TypeScript/JavaScript SDK for building reliable serverless workflows with Upstash. It lets you create and expose workflow endpoints that execute multi-step processes with built-in retry logic and error handling. You define workflows as functions, deploy them as serverless endpoints, and trigger runs from your backend code using the Workflow client.
How do I define workflow steps with reliable execution in upstash-workflow-js?
upstash-workflow-js provides a context API to define reliable multi-step workflows. Each step is executed sequentially with automatic retry and failure handling. You use the workflow context to call steps, manage state between steps, and handle errors. The SDK ensures steps are retried on failure and executed exactly once, making workflows resilient to transient failures.
How can I trigger and manage workflow runs from backend code?
upstash-workflow-js includes a Workflow client library that lets you trigger and manage runs from your backend. You instantiate the client with your Upstash credentials, then call methods to start new workflow runs, check status, and retrieve results. The client handles communication with QStash to queue and execute your workflow steps reliably.
Does upstash-workflow-js support advanced patterns like parallelism and events?
Yes, upstash-workflow-js supports advanced workflow patterns including parallelism for concurrent step execution and event-driven workflows. You can implement cross-workflow invocation to chain workflows together, use wait-for-event patterns for human-in-the-loop workflows, and integrate webhooks to trigger workflows from external services.
What webhook integration and local development options does upstash-workflow-js offer?
upstash-workflow-js supports webhook integration to trigger workflows from external services and includes local development tools for testing workflows before deployment. You can set up middleware for request handling, debug workflows locally, and migrate existing workflows to the SDK. Rate limiting and middleware setup are configurable for production deployments.
Is upstash-workflow-js open source and what license does it use?
Yes, upstash-workflow-js is open source and released under the MIT license, allowing free use, modification, and distribution in both personal and commercial projects.
SKILL.md
Rendered from the published skill. Quoted content, verbatim.
Upstash Workflow SDK
Quick Start
The Upstash Workflow SDK lets you expose serverless workflow endpoints and run them reliably using QStash under the hood.
Install:
npm install @upstash/workflow
Define a simple workflow endpoint:
import { serve } from "@upstash/workflow";
export const { POST } = serve(async (context) => {
await context.run("step-1", () => console.log("step 1"));
await context.run("step-2", () => console.log("step 2"));
});
Trigger it from your backend:
import { Client } from "@upstash/workflow";
const client = new Client({ token: process.env.QSTASH_TOKEN! });
await client.trigger({ url: "https://your-app.com/api/workflow" });
Other Skill Files
These files contain the full documentation. Use them for details, patterns, and advanced behavior.
- basics:
- basics/serve – How to expose workflow endpoints.
- basics/context – Full API
(truncated - see the full file via the links below)
File tree — 15 files
skills/upstash-workflow-js/SKILL.md
skills/upstash-workflow-js/agents.md
skills/upstash-workflow-js/basics/client.md
skills/upstash-workflow-js/basics/context.md
skills/upstash-workflow-js/basics/serve.md
skills/upstash-workflow-js/features/flow-control.md
skills/upstash-workflow-js/features/invoke.md
skills/upstash-workflow-js/features/retries-failures-reliability.md
skills/upstash-workflow-js/features/wait-for-event.md
skills/upstash-workflow-js/features/webhooks.md
skills/upstash-workflow-js/how-to/local-dev.md
skills/upstash-workflow-js/how-to/middleware.md
skills/upstash-workflow-js/how-to/migrations.md
skills/upstash-workflow-js/how-to/realtime.md
skills/upstash-workflow-js/rest-api.md
Let your AI agent find skills like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 56,283 agent skills by what they can do, searchable in plain language.
wish › “Create and expose serverless workflow endpoints using Upstash”
Give your agent the search over MCP, or paste the wish link into any chat. No install? Search from any chat →
Related skills
This skill guides you through implementing Upstash Workflow and QStash async patterns in LobeHub. It covers three core architectural layers—entry point validation, cursor-based pagination with fan-out chunking, and single-item task execution—plus dry-run mode to preview work before committing. Use it to orchestrate large-scale batch processing while respecting rate limits and step constraints.
Access unified documentation and guidance for all Upstash SDKs including Redis, QStash, Vector, Search, Workflow, and Box. Choose the relevant sub-skill for your language and use case, whether you're caching, scheduling messages, building vector applications, or orchestrating serverless workflows.
The QStash JavaScript SDK enables HTTP-based messaging and scheduling across serverless platforms. Publish messages to endpoints, create delayed or scheduled delivery, manage FIFO queues with flow control, and verify webhook signatures. Works with Next.js, Cloudflare Workers, Deno, Node.js, and other runtimes.
Upstash Vector is a high-performance vector database for storing and querying vector embeddings. This skill covers the TypeScript/JavaScript SDK, including core operations like upserting vectors, querying, and managing namespaces, plus advanced features like filtering, metadata handling, and index structures.
Upstash CLI lets you manage Redis, Vector, Search, and QStash resources programmatically through the Upstash Developer API. All commands output JSON and run non-interactively, making them ideal for automation workflows. Handle database creation, backups, indexes, team members, and service configuration from the command line.
This skill covers Upstash Search fundamentals for TypeScript and JavaScript developers. It walks through SDK installation, creating indexes, upserting documents, and executing searches with optional filtering and reranking. Use it to understand core concepts like content versus metadata and to implement end-to-end search workflows.
More skills python-backend (MIT) · Nuxthub (unlicensed) · hydra (MIT) · upstash-box-py (MIT) · upstash-box-js (MIT)