upstash-qstash-js

作者: upstash

使用 QStash TypeScript/JavaScript SDK 进行无服务器消息传递和调度。适用于向 HTTP 端点发布消息、创建计划等场景。

npx skills add https://github.com/upstash/skills --skill upstash-qstash-js

QStash JavaScript SDK

QStash is an HTTP-based messaging and scheduling solution for serverless and edge runtimes. This skill helps you use the QStash JS SDK effectively.

When to use this skill

Use this skill when:

  • Publishing HTTP messages to endpoints or URL groups
  • Creating scheduled or delayed message delivery
  • Managing FIFO queues with configurable parallelism
  • Verifying incoming webhook signatures from QStash
  • Implementing callbacks, DLQ handling, or message deduplication

Quick Start

Installing the SDK

npm install @upstash/qstash

Basic Publishing

import { Client } from "@upstash/qstash";

const client = new Client({
  token: process.env.QSTASH_TOKEN!,
});

const result = await client.publishJSON({
  url: "https://my-api.example.com/webhook",
  body: { event: "user.created", userId: "123" },
});

Core Concepts

For fundamental QStash operations, see:

For verifying incoming messages:

  • Receiver Verification - Core signature verification with the Receiver class
  • Platform-Specific Verifiers:
    • Next.js - App Router, Pages Router, and Edge Runtime

For advanced features:

Platform Support

QStash JS SDK works across various platforms:

  • Next.js (App Router and Pages Router)
  • Cloudflare Workers
  • Deno
  • Node.js (v18+)
  • Vercel Edge Runtime
  • SvelteKit, Nuxt, SolidJS, and other frameworks

Note on Workflow SDK: For building complex durable workflows that chain multiple QStash messages together, consider using the separate QStash Workflow SDK (@upstash/workflow). The Workflow SDK empowers you to orchestrate multi-step processes with automatic state management, retries, and fault tolerance. This Skills file focuses on the core QStash messaging SDK.

Best Practices

  • Always verify incoming QStash messages using the Receiver class
  • Use environment variables for tokens and signing keys
  • Set appropriate retry counts and timeouts for your use case
  • Use queues for ordered processing with controlled parallelism
  • Implement DLQ handling for failed message recovery

来自 upstash 的更多技能

docs
upstash
从Context7检索并查询任何编程库或框架的最新文档和代码示例。在编写依赖于……的代码时使用。
ctx7-cli
upstash
使用ctx7 CLI获取库文档、管理AI编码技能以及配置Context7 MCP。当用户提到“ctx7”或“context7”时激活…
documentation-lookup
upstash
获取当前库的文档和代码示例,而非依赖训练数据。将库名称解析为Context7文档ID,然后查询安装、配置和API参考信息。支持主流框架和库:React、Vue、Svelte、Next.js、Express、Prisma、Supabase、Tailwind等。自动激活以处理安装问题、代码生成请求和框架相关查询。返回版本感知的文档和官方代码...
redis-js
upstash
使用 Upstash Redis JavaScript/TypeScript SDK 进行无服务器 Redis 操作。适用于缓存、会话存储、速率限制、排行榜、全文…
upstash-search-js
upstash
涵盖Upstash Search快速入门、核心概念及TypeScript SDK使用的文档技能入口。当用户询问如何开始使用时…
upstash/search TypeScript SDK
upstash
upstash/search-typescript-sdk — 一个可安装的AI代理技能,由upstash/search-js发布。
upstash
upstash
与任何Upstash TypeScript/JavaScript SDK配合使用,包括Redis、Box、QStash、Workflow、Vector、Search和Ratelimit。当用户正在使用任何……时使用。
upstash-box-js
upstash
使用 @upstash/box TypeScript/JavaScript SDK 处理沙盒云容器,支持 AI 代理、shell、文件系统和 git。在基于 Upstash 构建时使用…