Skip to documentation

Webhook events

email.scheduled

An email was accepted with a future send time.

When it fires

email.scheduled fires when an email is created with scheduled_at set. The email waits until that time and then joins the send queue; email.sent follows once SES accepts it. Rescheduling or canceling the email does not emit further events. See schedule email.

Payload

json
{
  "type": "email.scheduled",
  "created_at": "2026-09-29T10:00:00.000Z",
  "data": {
    "created_at": "2026-09-29T09:59:59.000Z",
    "email_id": "YOUR_EMAIL_ID",
    "from": "hello@example.com",
    "to": ["you@example.net"],
    "subject": "Welcome",
    "tags": {}
  }
}

message_id is absent because the email has not been sent yet. The other data fields are the common email fields described in email.sent.

Handle the event

Verify the signature and deduplicate by svix-id.