This endpoint supports both natural language scheduling (“in 1 hour”, “tomorrow at 9am”) and ISO 8601 timestamps, making it easy to schedule emails for any future time.
Authentication
This endpoint requires authentication via:- API key auth: Bearer token in Authorization header
Body Parameters
Sender email address.To include a friendly name, use the format
"Your Name <sender@domain.com>"
.You must own and have verified the sender’s domain in your Inbound account.
You can use
agent@inbnd.dev
as a sender without domain verification for testing purposes.Recipient email address. For multiple addresses, send as an array of strings.
Combined total of all recipients (to, cc, bcc) should not exceed 50 addresses.
Email subject.
When to send the email. Supports two formats:Natural Language:
- “in 30 minutes”
- “in 2 hours”
- “tomorrow at 9am”
- “next Monday at 2pm”
- “December 25 at noon”
- “2024-12-25T09:00:00Z”
- “2024-12-25T09:00:00-05:00”
The scheduled time must be at least 1 minute in the future and no more than 1 year from now.
Timezone for natural language parsing (e.g., “America/New_York”, “Europe/London”).Defaults to UTC if not provided. Only used when
scheduled_at
is in natural language format.Use IANA timezone identifiers. See timezone list.
Bcc recipient email address. For multiple addresses, send as an array of strings.
Cc recipient email address. For multiple addresses, send as an array of strings.
Reply-to email address. For multiple addresses, send as an array of strings.
Also accepts
replyTo
(camelCase) for Resend compatibility.Reply-to email address (Resend-compatible camelCase format). For multiple addresses, send as an array of strings.
The HTML version of the message.
The plain text version of the message.
Custom headers to add to the email.
Array of tag objects for email categorization and tracking (Resend-compatible).
Array of file attachments (max 40MB total email size, 25MB per attachment, 20 attachments max).
Headers
Bearer token for API authentication.
Add an idempotency key to prevent duplicated scheduled emails.
- Should be unique per API request
- Idempotency keys expire after 24 hours
- Have a maximum length of 256 characters
Request Example
Response
Unique identifier for the scheduled email in Inbound’s system
Normalized ISO 8601 timestamp of when the email will be sent
Status of the scheduled email (always “scheduled” for successful requests)
Timezone used for scheduling the email
Natural Language Examples
Thescheduled_at
field supports intuitive natural language expressions:
Relative Time
Relative Time
"in 30 minutes"
"in 2 hours"
"in 3 days"
"in 1 week"
Specific Times
Specific Times
"tomorrow at 9am"
"next Monday at 2pm"
"Friday at 5:30pm"
"December 25 at noon"
Date Formats
Date Formats
"2024-12-25 at 9am"
"Dec 25 at 2pm"
"Christmas at 10am"
"New Year's Day at midnight"
Managing Scheduled Emails
After scheduling emails, you can manage them using these endpoints:List Scheduled Emails
View all your scheduled emails with filtering and pagination
Get Scheduled Email
Retrieve details of a specific scheduled email
Cancel Scheduled Email
Cancel a scheduled email before it’s sent
Important Notes
Domain Verification Required: You can only send emails from domains that you own and have verified in your Inbound account. Attempting to send from an unverified domain will result in a 403 error.
Scheduling Limits: Emails can be scheduled up to 1 year in advance and must be at least 1 minute in the future. The system processes scheduled emails every minute.
Idempotency: Use the
Idempotency-Key
header to ensure emails aren’t scheduled multiple times in case of network issues or retries.Timezone Handling: When using natural language scheduling, always specify a timezone to ensure emails are sent at the expected local time.