Properties
| Name | Type | Description |
|---|---|---|
| from | string | The email address of the sender (must exist as an alias of the domain). |
| to | object | Comma-separated list or an array of recipients for the 'To' header. |
| cc | object | Comma-separated list or an array of recipients for the 'Cc' header. |
| bcc | object | Comma-separated list or an array of recipients for the 'Bcc' header. |
| subject | string | The subject of the email. |
| text | string | The plaintext version of the message. |
| html | string | The HTML version of the message. |
| attachments | array | An array of attachment objects (see Nodemailer's common fields). |
| sender | string | The email address for the 'Sender' header. |
| replyTo | string | The email address for the 'Reply-To' header. |
| inReplyTo | string | The Message-ID the message is in reply to. |
| references | object | Space-separated list or an array of Message-IDs. |
| attachDataUrls | boolean | If true, converts data: images in the HTML content to embedded attachments. |
| watchHtml | string | Apple Watch specific HTML version of the message. |
| amp | string | AMP4EMAIL specific HTML version of the message. |
| icalEvent | object | An iCalendar event as an alternative message content. |
| alternatives | array | An array of alternative message content. |
| encoding | string | Encoding for the text and HTML strings (e.g., 'utf-8', 'hex', 'base64'). |
| raw | string | Custom generated RFC822 formatted message (instead of using Nodemailer generation). |
| textEncoding | string | Encoding forced to be used for text values. |
| priority | string | Priority level for the email. |
| headers | object | Object or array of additional header fields. |
| messageId | string | Optional Message-ID for the 'Message-ID' header. |
| date | object | Optional Date header. If set to a future time (more than 1 minute ahead), the email will be held until that time. Cannot be more than 30 days in the future from creation. |
| list | object | Optional object of List-* headers. |
| requireTLS | boolean | If true, requires TLS for the entire delivery chain (RFC 8689). The message will only be transmitted over TLS-encrypted connections. |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://raw.githubusercontent.com/api-evangelist/forward-email/main/json-schema/forward-email-smtp-schema.json",
"title": "SMTP",
"x-generated": "2026-10-26",
"x-method": "derived",
"x-generator": "derive-json-schema.py",
"x-source": "openapi/forward-email-openapi.json#/components/schemas/SMTP",
"type": "object",
"properties": {
"from": {
"type": "string",
"format": "email",
"description": "The email address of the sender (must exist as an alias of the domain)."
},
"to": {
"oneOf": [
{
"type": "string"
},
{
"type": "array",
"items": {
"type": "string",
"format": "email"
}
}
],
"description": "Comma-separated list or an array of recipients for the 'To' header."
},
"cc": {
"oneOf": [
{
"type": "string"
},
{
"type": "array",
"items": {
"type": "string",
"format": "email"
}
}
],
"description": "Comma-separated list or an array of recipients for the 'Cc' header."
},
"bcc": {
"oneOf": [
{
"type": "string"
},
{
"type": "array",
"items": {
"type": "string",
"format": "email"
}
}
],
"description": "Comma-separated list or an array of recipients for the 'Bcc' header."
},
"subject": {
"type": "string",
"description": "The subject of the email."
},
"text": {
"type": "string",
"description": "The plaintext version of the message."
},
"html": {
"type": "string",
"description": "The HTML version of the message."
},
"attachments": {
"type": "array",
"items": {
"type": "object"
},
"description": "An array of attachment objects (see Nodemailer's common fields)."
},
"sender": {
"type": "string",
"format": "email",
"description": "The email address for the 'Sender' header."
},
"replyTo": {
"type": "string",
"format": "email",
"description": "The email address for the 'Reply-To' header."
},
"inReplyTo": {
"type": "string",
"description": "The Message-ID the message is in reply to."
},
"references": {
"oneOf": [
{
"type": "string"
},
{
"type": "array",
"items": {
"type": "string"
}
}
],
"description": "Space-separated list or an array of Message-IDs."
},
"attachDataUrls": {
"type": "boolean",
"description": "If true, converts data: images in the HTML content to embedded attachments."
},
"watchHtml": {
"type": "string",
"description": "Apple Watch specific HTML version of the message."
},
"amp": {
"type": "string",
"description": "AMP4EMAIL specific HTML version of the message."
},
"icalEvent": {
"type": "object",
"description": "An iCalendar event as an alternative message content."
},
"alternatives": {
"type": "array",
"items": {
"type": "object"
},
"description": "An array of alternative message content."
},
"encoding": {
"type": "string",
"description": "Encoding for the text and HTML strings (e.g., 'utf-8', 'hex', 'base64')."
},
"raw": {
"type": "string",
"description": "Custom generated RFC822 formatted message (instead of using Nodemailer generation)."
},
"textEncoding": {
"type": "string",
"enum": [
"quoted-printable",
"base64"
],
"description": "Encoding forced to be used for text values."
},
"priority": {
"type": "string",
"enum": [
"high",
"normal",
"low"
],
"description": "Priority level for the email."
},
"headers": {
"oneOf": [
{
"type": "object",
"additionalProperties": true
},
{
"type": "array",
"items": {
"type": "object"
}
}
],
"description": "Object or array of additional header fields."
},
"messageId": {
"type": "string",
"description": "Optional Message-ID for the 'Message-ID' header."
},
"date": {
"oneOf": [
{
"type": "string",
"format": "date-time"
},
{
"type": "string"
}
],
"description": "Optional Date header. If set to a future time (more than 1 minute ahead), the email will be held until that time. Cannot be more than 30 days in the future from creation."
},
"list": {
"type": "object",
"description": "Optional object of List-* headers."
},
"requireTLS": {
"type": "boolean",
"description": "If true, requires TLS for the entire delivery chain (RFC 8689). The message will only be transmitted over TLS-encrypted connections."
}
}
}
Work with this as data
Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for schemas
4 MCP tools reach this
find_json_schemasBrowse and filter every JSON Schema in the catalog.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/forward-email-smtp"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.