Skip to main content
The Resend plugin handles incoming webhooks. Point your provider’s subscription URL at your Corsair HTTP handler (see Overview for setup context and the exact URL shape).
New to Corsair? See webhooks and hooks.

Webhook map

  • domains
    • created (domains.created)
    • updated (domains.updated)
  • emails
    • bounced (emails.bounced)
    • clicked (emails.clicked)
    • complained (emails.complained)
    • delivered (emails.delivered)
    • failed (emails.failed)
    • opened (emails.opened)
    • received (emails.received)
    • sent (emails.sent)

HTTP handler setup

app/api/webhook/route.ts

Events

Domains

Created

domains.created A new sending domain was created Payload
NameTypeRequiredDescription
typedomain.createdYes
created_atstringYes
dataobjectYes
webhookHooks example

Updated

domains.updated A sending domain was updated Payload
NameTypeRequiredDescription
typedomain.updatedYes
created_atstringYes
dataobjectYes
webhookHooks example

Emails

Bounced

emails.bounced An email bounced and was not delivered Payload
NameTypeRequiredDescription
typeemail.bouncedYes
created_atstringYes
dataobjectYes
webhookHooks example

Clicked

emails.clicked A recipient clicked a link in an email Payload
NameTypeRequiredDescription
typeemail.clickedYes
created_atstringYes
dataobjectYes
webhookHooks example

Complained

emails.complained A recipient marked an email as spam Payload
NameTypeRequiredDescription
typeemail.complainedYes
created_atstringYes
dataobjectYes
webhookHooks example

Delivered

emails.delivered An email was delivered to the recipient Payload
NameTypeRequiredDescription
typeemail.deliveredYes
created_atstringYes
dataobjectYes
webhookHooks example

Failed

emails.failed An email failed to send Payload
NameTypeRequiredDescription
typeemail.failedYes
created_atstringYes
dataobjectYes
webhookHooks example

Opened

emails.opened A recipient opened an email Payload
NameTypeRequiredDescription
typeemail.openedYes
created_atstringYes
dataobjectYes
webhookHooks example

Received

emails.received An inbound email was received Payload
NameTypeRequiredDescription
typeemail.receivedYes
created_atstringYes
dataobjectYes
webhookHooks example

Sent

emails.sent An email was accepted and sent Payload
NameTypeRequiredDescription
typeemail.sentYes
created_atstringYes
dataobjectYes
webhookHooks example