Skip to content

Send bindings

Last updated View as MarkdownAgent setup

When you add a send_email binding to a Worker, you can restrict its sender and recipient addresses. The following Wrangler configuration variants apply these restrictions. For the binding API, refer to the Email Sending Workers API.

Binding types

Each send_email entry supports a different restriction choice. The sender address must belong to an onboarded Email Service domain.

  • No restriction attribute: The binding can send to any verified destination address in your account.
  • destination_address: The binding can only send to the single destination address configured here. If you call send() with to set to null or undefined, the configured address is used.
  • allowed_destination_addresses: The binding can only send to addresses listed in this allowlist.
  • allowed_sender_addresses: The binding can only send from the addresses listed in this allowlist.
{
	"send_email": [
		// Send to any verified destination
		{ "name": "EMAIL" },
		// Send only to a single fixed destination
		{
			"name": "NOTIFY_OPS",
			"destination_address": "ops@yourdomain.com",
		},
		// Send only to addresses on an allowlist
		{
			"name": "EMAIL_TEAM",
			"allowed_destination_addresses": [
				"alice@yourdomain.com",
				"bob@yourdomain.com",
			],
		},
		// Send only from addresses on an allowlist
		{
			"name": "RESTRICTED_EMAIL",
			"allowed_sender_addresses": [
				"noreply@yourdomain.com",
				"support@yourdomain.com",
			],
		},
	],
}
[[send_email]]
name = "EMAIL"

[[send_email]]
name = "NOTIFY_OPS"
destination_address = "ops@yourdomain.com"

[[send_email]]
name = "EMAIL_TEAM"
allowed_destination_addresses = [ "alice@yourdomain.com", "bob@yourdomain.com" ]

[[send_email]]
name = "RESTRICTED_EMAIL"
allowed_sender_addresses = [ "noreply@yourdomain.com", "support@yourdomain.com" ]

Next steps

Was this helpful?