Skip to main content
Corsair Workflows (beta). Durable workflows, built in. No external engine to wire. See how
Use Corsair’s webhookHooks to start Temporal workflows the moment an event fires. Temporal handles durability, retries, and long-running execution. Corsair handles the webhook plumbing and integration auth.

Install

Event trigger

When a Stripe payment fails, start a Temporal workflow that notifies the customer via Resend. One activity, one action.
corsair.ts
temporal/workflows.ts
temporal/activities.ts

Workflow

When a new trial contact is created in HubSpot, send a welcome email immediately, wait 3 days, then check if they upgraded. If not, send a follow-up. The sleep is durable across restarts, no cron or external scheduler needed.
corsair.ts
temporal/workflows.ts
temporal/activities.ts

Cron job

Create a Temporal schedule that runs every morning and posts a standup digest to Slack. The digest lists all open Linear issues, pulled from Corsair’s local database.
temporal/schedules.ts
temporal/workflows.ts
temporal/activities.ts
Register the schedule once, ideally in a migration or a one-off setup script. A scheduleId must be unique, so calling client.schedule.create() again with the same id throws ScheduleAlreadyRunning. If you register on every server startup, wrap the call and swallow only that error:

What’s next

Inngest

Durable step functions triggered from Corsair webhooks.

Trigger.dev

Background tasks and scheduled jobs with Trigger.dev.

Hatchet

Event-driven workflows with Hatchet.

Workflows guide

Chain webhook events without a job queue.