Archived docs Get your API Key
Get started
Tutorials
Guides
Reference
Help for AI agents
🤖 AI Assistant

Email notifications

When a render finishes, JSON2Video can send an email containing the video URL. This is useful for low-volume workflows that don't justify wiring up a webhook receiver — typical examples are internal team notifications, ad-hoc client deliveries, or "leave-it-running overnight" batch jobs.

Configuration

Add an email destination to exports[].destinations:

{
  "resolution": "full-hd",
  "scenes": [ /* ... */ ],
  "exports": [{
    "destinations": [{
      "type": "email",
      "to": "team@example.com",
      "subject": "Your video is ready!",
      "message": "Download it from: __video_url__"
    }]
  }]
}
Property Required Notes
type yes must be "email"
to yes recipient address
subject yes email subject line
message yes plain-text body; supports macros

The sender is a JSON2Video address; replies do not return to your account. For workflows that need the recipient to reply, include your own email in the body text.

Macros

Both subject and message accept the macros documented in the exports macros table. The most useful for emails:

  • __video_url__ — direct CDN URL to the rendered MP4
  • __filename__ — auto-generated filename
  • __yyyy__-__mm__-__dd__ — render date

Example using macros for a personalised subject line:

{
  "type": "email",
  "to": "ops@example.com",
  "subject": "[__yyyy__-__mm__-__dd__] New render: __filename__",
  "message": "Video: __video_url__\nFile: __filename__"
}

When NOT to use email destinations

Email is fine for human notifications. For programmatic workflows — anything where a server needs to act on the rendered video — use a webhook instead. Parsing video URLs out of inbound emails is brittle and adds latency.

Email is also subject to:

  • Recipient spam filters: messages can land in spam, especially under high volume.
  • Send limits: rate-limited per account to prevent abuse.
  • No retries: if the recipient mail server rejects, the email is dropped (the render is unaffected).

Failure handling

If the email cannot be sent, the render itself is unaffected — the video is still available at the URL returned by GET /v2/movies?project=.... The email failure is logged on the movie object as part of the export status.

See also