FAQ
How many times can I call my job?
As many times as the adapter's service allows. For e.g. QStash has their pricing available here (opens in a new tab).
How long can my job run for?
Your job is run inside a Next.js route handler.
If you deployed your Next.js app to a "serverful" provider e.g. AWS, Render or Railway, these routes usually don't have any hard timeout beyond that which you set.
If you deployed your Next.js app to a "serverless" provider e.g. Vercel or Netlify, these routes usually have a timeout, usually a couple of minutes. You can consult their documentation for the exact numbers.
How does Bunnygram work?
Conceptually, Bunnygram is straighforward. It instantiates a Next.js route handler and another function to invoke it. It abstracts away some of the boilerplate regarding parsing request bodies, providing type safety and so on.
The flow of data is as follows. The send()
function (introduced in other pages of these docs) sends a POST
request with your payload to your adapter's backend e.g. QStash. That backend will then forward that payload by sending another POST
request to the route handler. The handler will receive the data in onReceive()
and run your job with it.