Create asynchronous apps without servers

Call our API and we'll ping you back or execute custom JavaScript when it's time. With error handling, custom body, retries, secrets, exponential backoff and logging. All without any infrastructure on your side.

Scheduled jobs

Schedule jobs to execute on specific date and time.

Recurring tasks

Setup recurring tasks with Cron or simplified syntax.

Work queues

Decouple your services with asynchronous queues.

Scriptlets*

Deploy JavaScript snippets to execute your job on our servers.

*Comming Soon

Not everything has to happen *right now*

Some tasks need to happen at the end of the day. Some on the user birthday. There are many cases when on-line processing or hardcoded schedules are not enough.

Async Glue for serverless

Serverless functions are great, but they don't work well when your tasks need to be executed at specific time or when you want to decouple optional logic from your transactions. Sending confirmation email doesn't have to be part of your checkout process. You can queue it for later and retry if it fails.

Send daily emails

When your task executes at constant times, just add an endpont to call at given time period. Do it in admin panel or using our API. Deploy a scriptlet to do all work on our servers. No need for new code in your app.

Background data migrations

User signs up and you want to import his data? Doing it live might be slow and will not retry if anything fails. Use our persistent queues to make sure data migration is done as soon as possible and is processed to the end.

Dynamic scheduled alerts and reminders

Some scheduled jobs are executed according to user set dates or input from other systems. Not all can be hardcoded in your app configuration. Dynamic schedules you can edit and pause with our REST API are a great fit for that.

Integrate your serverless with your 'serverful'

  • Schedule and queue work for your background processing servers.
  • Queue jobs with priorities and delay them if not ready.
  • Never loose data thanks to automatic retries and persistence.
service

Use Scriptlets to add logic to jobs

Sometimes you don't need to call your app at all. Add a JavaScript Scriptlet in our admin panel and we'll execute it on our servers, with your payload and secrets. We'll run your jobs even if they take long hours.

await fetch(`https://api.mails.test/v3/messages`, {
  method: 'POST',
  headers: {
    Authorization: `Basic ${btoa(`api:${SECRETS.token}`)}`,
  },
  body: {
    from: CONFIG.from,
    to: PAYLOAD.email,
    template: CONFIG.template,
  },
})

Pricing

All our plans include full functionality. You can always start with smaller plan and migrate to higher tier later on, when you need it.

Developer

Free 

Ideal for development and small applications.

What's included?

  • 5000/mo API credits
  • Up to 5 scriptlets*
  • Single user account
  • Community support
*When available

Startup

$39 / month

When your application grows and you need more jobs and user accounts.

What's included?

  • 500000/mo API credits
  • Up to 20 scriptlets*
  • More credits if needed**
  • Multiple accounts & API keys
  • Email support
*When available
**0.03$ per 1000 credits

Unlimited

$299 / month

For high traffic applications that need to schedule and queue a lot of tasks.

Everything in Startup +

  • Unlimited API credits
  • Unlimited scriptlets*
  • Priority support
  • Chat with developers
*When available

Frequently Asked Questions

Have any more questions? Don't hesitate to contact us!

What is an API credit?

LambdaQueue uses API credits system to account for usage. We subtract credits each time your scheduled or one of your queue items is executed. If you have a scriptlet configured for your task, we also subtract credit when it's called. So 1 queue item = 1 credit and 1 scriptlet execution = 1 credit. So there's a maximum of 2 credits per item.

How can I get more API credits?

When you're out of API credits you can simply purchase more or enable auto credit purchase in application control panel. You can also migrate to Unlimited plan and stop worrying about API credits at all.

Can I get more credits on Developer plan?

Developer plan is intended for application development and small production usage. If you need more credits, you need to move to Startup plan.

Will my jobs stop executing when I'm out of credits?

No, we know, that sometimes there are unforseen usage spikes and sometimes it's just hard to predict how many credits you need. Whenever you're near your credits limit we send you an email. Second one when you have depleeted them all. Then we allow your credit balance to go below 0 for 48 hours. During this time you can purchase missing credits or switch to Unlimited plan without any interruption of our services.

What is a scriptlet?

A scriptlet is a small JavaScript function you provide in configuration UI (or linking to your code repository) that is executed each time a job of given type is ready to be processed. This way you might not need to call your application back, everything could be processed by our servers. Sometimes you have all information you need in body of your job and all that's left to do is to pass it to some external service. This could all be done with scriptlet.

How are Scriptlets executed?

For each scriptlet execution we start a new QuickJS virtual machine and pass your job and deserialized body to it. After your code is executed everything is scraped and we send object returned from your function back to your application endpoint or just leave it in our call history if you don't need to be pinged back. It's just like regular job execution, but you can wire up some code on our side.

Can I create long-running jobs with Scriptlets?

Scriptlets are designed to be a go-to solution for all your backgound processing jobs. We're not ready yet to confirm what will be the time/cpu limits of each job, but long-running jobs are on our priority list. If you have a specific need, don't hesitate to let us know about it. We'll gladly add it to our backlog.

We're still at work building LambdaQueue

LambdaQueue is not yet available for the general public. We're still working with our early adopters to make sure the product is ready for everyone. Join the waitlist to be notified when we launch.