Any Integrations that you added in the
integrations param of the Job constructor will be available on the
io object in the
run() function with the same name as the key. For example:
View the Integrations documentation for information on how to use Integrations.
Used to send log messages to the Run log.
Waits for a certain amount of time before continuing the Job. Delays works even if you’re on a serverless platform with timeouts, or if your server goes down. They utilize resumability to ensure that the Run can be resumed after the delay.
io.sendEvent() allows you to send an event from inside a Job run. The sent even will trigger any Jobs that are listening for that event (based on the name).
If you want to send an event from outside a run (e.g. just from your backend) you can use client.sendEvent().
io.runTask() allows you to run a Task from inside a Job run. A Task is a resumable unit of a Run that can be retried, resumed and is logged. Integrations use Tasks internally to perform their actions.
io.try() allows you to run Tasks and catch any errors that are thrown, it’s similar to a normal
try/catch block but works with io.runTask().
io.backgroundFetch() allows you to fetch data from a URL that can take longer that the serverless timeout. The actual
fetch request is performed on the Trigger.dev platform, and the response is sent back to you. An example use case is fetching data from a slow API, like some AI endpoints.
io.registerInterval() allows you to register a DynamicSchedule that will run on a regular interval.
io.unregisterInterval() allows you to unregister a DynamicSchedule that was previously registered with
io.registerCron() allows you to register a DynamicSchedule that will run on a regular cron schedule.
io.unregisterCron() allows you to unregister a DynamicSchedule that was previously registered with
io.registerTrigger() allows you to register a DynamicTrigger with the specified trigger data.