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

Больше skills от upstash

context7-cli
upstash
Используйте CLI ctx7 для получения документации библиотек, управления навыками AI-кодирования и настройки Context7 MCP. Активируется, когда пользователь упоминает "ctx7" или "context7",…
official
context7-mcp
upstash
Этот навык следует использовать, когда пользователь спрашивает о библиотеках, фреймворках, ссылках на API или нуждается в примерах кода. Активируется для вопросов по настройке, коду…
official
documentation-lookup
upstash
Этот навык следует использовать, когда пользователь спрашивает о библиотеках, фреймворках, API-ссылках или нуждается в примерах кода. Активируется для вопросов по настройке, коду…
official
find-docs
upstash
Получать актуальную документацию и примеры кода для любой библиотеки с помощью Context7 CLI.
official
context7-cli
upstash
Используйте CLI ctx7 для получения документации библиотек, управления навыками AI-кодирования и настройки Context7 MCP. Активируется, когда пользователь упоминает "ctx7" или "context7",…
official
context7-docs-lookup
upstash
Используйте Context7 для получения актуальной документации библиотек. Активируется, когда пользователь спрашивает о библиотеках, фреймворках, API-справочниках или нуждается в примерах кода —…
official
context7-mcp
upstash
Этот навык следует использовать, когда пользователь спрашивает о библиотеках, фреймворках, ссылках на API или нуждается в примерах кода. Активируется для вопросов по настройке, коду…
official
ctx7-cli
upstash
Используйте CLI ctx7 для получения документации библиотек, управления навыками AI-кодирования и настройки Context7 MCP. Активируется, когда пользователь упоминает "ctx7" или "context7",…
official