Updates and improvements to Inngest.
- September 27, 2023
Rate limit functions
Easily prevent your function from running too frequently. Frequency can be specified at the function level or using any custom key (e.g. a per-user rate limit) with just a couple config options. Jump right into the docs here. This enables you to easily do things like:
Prevent email notification Inngest functions from sending duplicate, spammy notifications in a period of time.
Prevent chatty events (e.g. from a webhook) from triggering too many funcitons that only need to run periodically like a data synchronization function.
Check out the docs for examples in the code and more explanation of the feature.
- September 26, 2023
New Dev Server stream
There's a new stream view available. Using a list format, you'll get live updates to help you track what happened, from the moment events or crons triggered your functions to their completion.
- September 22, 2023
We've switched our authentication system to Clerk, which allows us to improve the security of our Cloud while also providing you with a couple of new features!
Longer Sessions: Were you annoyed that you had to sign in back into the Cloud Dashboard every other day? This was due to our user sessions expiring after 1 day. Now, thanks to Clerk, we've been able to extend this duration to 28 days without compromising the safety of those sessions.
Alternative Email Addresses: Like on GitHub, you can now add multiple email addresses to your Inngest user account. This allows you to sign in with any of your configured email addresses.
Active Device Monitoring: You can now see in the Cloud Dashboard which devices you're signed in and remotely sign out from them.
Custom Profile Picture: We now allow you to set a profile picture to your user account to make the Dashboard feel a bit more like home.
We have many more authentication-related features coming soon that we're excited to share with you.
- September 21, 2023
TypeScript SDK v2.7
inngestv2.7.0 is out, introducing a new H3 handler and some quality-of-life changes.
"inngest/h3"handler means better support for Nuxt, Nitro, and any framework based on H3.
See Serving the Inngest API - Framework: H3 to see how to get started.
Sending events now no longer requires any
data, so you can send data-less events without having to provide an empty
We've also improved the library's overall ESM support, ensuring ESM-first frameworks like those based on H3 can load the library safely without having to specify extensions or direct file paths.
- August 25, 2023
TypeScript SDK v2.6
inngestv2.6.0 is out, bringing with it a couple of new features.
Fastify support! The new
"inngest/fastify"handler means you can use Inngest in your Fastify server.
See Serving the Inngest API - Framework: Fastify to see how to get started.
Event types created with Zod can now be completely standalone, include the name of the event, and be passed as an array instead of one large object containing all of your types. This should help hugely for code cleanliness in apps with many events.
See Defining Event Payload Types to check out the new method.
- August 15, 2023
Attempt count in function input
v2.5 of the TypeScript SDK adds an
attemptnumber to incoming function data, providing some insight into how many retries the function has had so far.
This is useful to use alongside logging to understand why a function might be failing across multiple invocations.
Check out the
attemptreference for more information.
- August 8, 2023
New Dev Server functions list
We transformed the functions view in the Dev Server into a list. This brings the ability to sort and search the list of functions by function name. There's also the possibility to trigger your functions directly from the functions view.
- July 17, 2023
New Dev Server apps page
It's now possible to have a better understanding of what apps are connected and their details. The Dev Server automatically scans for ports and common endpoints for an Inngest
serveAPI endpoint, but you manually add apps by pasting their local URL.
- July 12, 2023
Batching events is now generally available.
Inngest functions can now declare a batching configuration with a maximum size and duration, and the function will receive a list of events instead of one.
This feature will help with reducing high load systems, working with external systems with strict rate limits, and other scenarios where it's more efficient to process things in bulk instead of handling each one individually.
Checkout our guide to start using it today!
- July 11, 2023
Added branch environment archive controls
Archiving a branch environment prevents its functions from triggering, which is important for reducing our customers' cloud costs. Branch environments have always auto archived 3 days after their latest deploy, but many users wanted the ability to:
Disable auto archive on specific branch environments.
Manually archive/unarchive branch environments.
Now we support both of those features on our environments page!
For more information about branch environment archiving, please visit our docs.
- June 15, 2023
Automatic function archival
"Code as truth" is one of the primary goals of Inngest: you write code using our SDK and we ensure that it's properly executed. Today we're launching a new feature that brings us even closer to that ideal: automatic function archival.
Previously, when you deleted a function in your code and deployed, the deleted function would continue to be "active" in Inngest. To tell Inngest that the function is dead, you had to manually archive it. Now, when you deploy we automatically archive an app's functions that no longer exist in code.
Deleted functions will appear in the Removed Functions section of a deploy:
And they will also be automatically archived:
- June 12, 2023
inngestv2.0.0 is out and brings with it some exciting new features.
Better event schemas & Zod support - create and maintain your event types with a variety of native tools and third-party libraries
Middleware - hook into an Inngest client's lifecycle to add custom functionality like error monitoring, data transformations, and more
Logging - Provide a custom logger to reliably push logs to any external service
See the v2 migration guide to learn how to upgrade.
- June 6, 2023
Function Logs Filters
You can now filter your function runs by their status and by when they completed!
- June 5, 2023
Billable usage chart
We've added a function step usage chart to the billing page, giving you better visibility into your recent usage. The chart distinguishes between the function steps included in your plan and the additional steps run.
- May 17, 2023
Send events from the dashboard
You can now manually send an event within the Inngest Dashboard. This can be used for testing if functions get properly triggered by an event.
You can access this feature from any event page by clicking the "Send Event" button on the page's header.
- May 12, 2023
Payments and Invoices
Payment information is now available in a more convenient and transparent way, on the billing page of the Inngest dashboard.
With this new feature, it's now possible to see past payments and invoices, making it easier to keep track of your subscription.
- May 11, 2023
Jump to Function Run ID / Event ID
Following the multiple requests we received, we built the ability to jump to specific run IDs or event IDs anywhere in the app. With this new feature, developers can quickly navigate to relevant logs to debug. Click on Search by ID (available at the top of any page), or press Ctrl/Cmd + K. Then paste the ID, and we search for you.
This feature is useful in combination when logging the Function Run ID in your function. The run ID passed in the function's arguments (docs). We'll soon be returning Event IDs when you call "inngest.send()" (pull request).
- May 10, 2023
Most developer workflows are centered around branching, whether feature branches or a variant of GitFlow. Inngest's Branch Environments are designed to give you and your team an isolated sandbox for every non-production branch that you deploy.
Branch Environments are created on-demand when you send events or register your functions for a given environment. Our Vercel integration has automatic support for this or you can configuring it for your hosting platform's deploy previews (SDK v1.7.0 or newer required).
Learn more about Branch Environments in the Inngest documentation here.
- April 17, 2023
New Inngest dashboard
We have just released a completely re-designed and re-imagined Inngest dashboard. The new dashboard features some key updates:
Improved Functions list including more clearly highlighting error rates to help you find issues faster
Completely re-thought Function logs interface that helps you more easily visualize the results, errors and retries of your Function steps.
New Deploys tab to view and debug when functions are registered with Inngest, either manually or through our integrations with Vercel or Netlify.
New Manage tab which has a centralized area for Event Keys, Webhooks and Signing Keys.
New environment switcher in the header which allows you to easily switch between Inngest environments.
This redesign includes a ton more improvements throughout the app that touches every part of Inngest. Give it a try and let us know what you think!