Create or send an email message
Changed onQueues, schedules, or sandbox-sends an email message. The legacy /v2/emails POST route is a backward-compatible alias for this operation.
subject is required unless template_id is supplied. When using template_id, do not also provide subject, html_body, or text_body; the template is rendered with template_variables.
Note: template lookup failures (not found, wrong account) return 400, not 404.
Request
- Base URL: https://api.telnyx.com/v2
- URL: https://api.telnyx.com/v2/email_messages
- Auth: HTTP bearer
Headers
Optional opaque, unquoted key for safely retrying the same logical request. Keys must contain 1 to 255 letters, numbers, hyphens, or underscores. Generate a unique UUID v4 for each operation and reuse it only when retrying that operation with the same request. Invalid headers—including duplicate, empty, malformed, or overlong values—return 400 with error code 10015. A request already in progress with the same key returns 409; reusing the key with a different request returns 422. Only successful responses are replayed, for up to 24 hours. Do not include sensitive data in the key.
Request body
Response
Message queued, scheduled, or sandbox-created.
Example response
{
"data": {
"recipient_statuses": {
"delivered": 998,
"bounced": 2
}
}
}Changes
- warning
added the new
expiredenum value to the///response property for the response status - warning
added the new
gw_rejectenum value to the///response property for the response status - warning
added the new
injection_timeoutenum value to the///response property for the response status - warning
added the new
quarantine_expiredenum value to the///response property for the response status - warning
added the new
quarantine_rejectedenum value to the///response property for the response status - warning
added the new
quarantine_release_dispatchedenum value to the///response property for the response status - warning
added the new
quarantine_releasedenum value to the///response property for the response status - warning
added the new
quarantinedenum value to the///response property for the response status - warning
added the new
scan_deferredenum value to the///response property for the response status - warning
added the new
suppressedenum value to the///response property for the response status - info
added the required property
/to the response with the status - info
added the required property
/to the response with the status
- warning
- breaking
added to the response body
oneOflist for the response status - breaking
the response's body type changed from
objectto no type for status - warning
removed the optional property
from the response with the status - warning
added the new
10011enum value to the//response property for the response status - warning
added the new
10011enum value to the//response property for the response status - warning
added the new
10011enum value to the//response property for the response status - warning
added the new
10011enum value to the//response property for the response status - warning
added the new
10011enum value to the//response property for the response status - warning
added the new
10011enum value to the//response property for the response status - warning
added the new
10011enum value to the//response property for the response status - warning
added the new
10011enum value to the//////response property for the response status - warning
added the new
domain_graduation_limit_exceededenum value to the//response property for the response status - warning
added the new
domain_graduation_limit_exceededenum value to the//response property for the response status - warning
added the new
domain_graduation_limit_exceededenum value to the//response property for the response status - warning
added the new
domain_graduation_limit_exceededenum value to the//response property for the response status - warning
added the new
domain_graduation_limit_exceededenum value to the//response property for the response status - warning
added the new
domain_graduation_limit_exceededenum value to the//response property for the response status - warning
added the new
domain_graduation_limit_exceededenum value to the//response property for the response status - warning
added the new
domain_graduation_limit_exceededenum value to the//////response property for the response status
- breaking