Examples
Messages
Messages are removed from the database shortly after they're delivered, so you will not be able to retrieve a message after. This endpoint is intended to be used for accessing messages that are in the process of being delivered/retried.
Retrieve a message
import { Client } from "@upstash/qstash";const client = new Client({ token: "<QSTASH_TOKEN>" });const messages = client.messagesconst msg = await messages.get("msgId");Cancel a message
import { Client } from "@upstash/qstash";const client = new Client({ token: "<QSTASH_TOKEN>" });await client.messages.cancel("msgId");Cancel multiple messages
import { Client } from "@upstash/qstash";const client = new Client({ token: "<QSTASH_TOKEN>" });// cancel two messages at onceawait client.messages.cancel(["message-id-1", "message-id-2"])// cancel all messageslet cancelled: number;do { const result = await client.messages.cancel({ all: true }); cancelled = result.cancelled;} while (cancelled > 0);Cancel messages with filters
import { Client } from "@upstash/qstash";const client = new Client({ token: "<QSTASH_TOKEN>" });// cancel messages matching a URL and labellet cancelled: number;do { const result = await client.messages.cancel({ filter: { url: "https://example.com", label: "my-label", } }); cancelled = result.cancelled;} while (cancelled > 0);client.messages.delete(), client.messages.deleteMany(), and client.messages.deleteAll()
are deprecated. Use client.messages.cancel() instead.