{
  "$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."
    }
  }
}