Getting Started
QStash is an HTTP-based messaging and scheduling solution, designed for serverless and edge computing environments, guaranteeing at-least-once delivery.
Use Cases
Background Jobs
Run long-running tasks in the background, without blocking your application
Schedules
Schedule messages to be delivered at a time in the future
Fan out
Publish messages to multiple endpoints, in parallel, using topics
Callbacks
Get a response delivered to your API when a message is delivered
Retry Failed Jobs
Use a Dead Letter Queue to have full control over failed messages
Deduplication
Prevent duplicate messages from being delivered
Quick Start
Check out these Quick Start guides to get started with QStash in your application.
Next.js
Build a Next application that uses QStash to start a long-running job on your platform
Python
Build a Python application that uses QStash to schedule a daily job that clean up a database
Or continue reading to learn how to send your first message!
Send your first message
Prerequisite
You need an Upstash account before publishing messages, create one here.
Public API
Make sure you have a publicly available HTTP API that you want to send your messages to. If you don’t, you can use something like requestcatcher.com or webhook.site to try it out.
For example, you can use this URL to test your messages: https://firstqstashmessage.requestcatcher.com
Get your token
Go to the Upstash Console and copy the
QSTASH_TOKEN
.
![](https://mintlify.s3-us-west-1.amazonaws.com/upstash-bulkdlqdelete/img/qstash/rest_token.png)
Publish a message
A message can be any shape or form: json, xml, binary, anything, that can be transmitted in the http request body. We do not impose any restrictions other than a size limit of 1 MB (which can be customized at your request).
In addition to the request body itself, you can also send HTTP headers. Learn more about this in the message publishing section.
Don’t worry, we have SDKs for different languages so you don’t have to make these requests manually.
Check Response
You should receive a response with a unique message ID.
![](https://mintlify.s3-us-west-1.amazonaws.com/upstash-bulkdlqdelete/img/qstash/reqcatcher.png)
Check Message Status
Head over to Upstash Console and go to the
Logs
tab where you can see your message activities.
![](https://mintlify.s3-us-west-1.amazonaws.com/upstash-bulkdlqdelete/img/qstash/log.png)
Learn more about different states here.
Was this page helpful?