{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/cherami-to/json-schema/cherami-to-forward-input-schema.json",
  "title": "ForwardInput",
  "x-generated": "2026-11-10",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/cherami-to-sending-api-openapi.yml#/components/schemas/ForwardInput",
  "type": "object",
  "properties": {
    "message_id": {
      "type": "string",
      "description": "ID of a ready received message or an accepted sent message in this inbox.",
      "pattern": "^[a-f0-9-]{36}$"
    },
    "to": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/Mailbox"
      },
      "maxItems": 50,
      "minItems": 1
    },
    "cc": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/Mailbox"
      },
      "maxItems": 50
    },
    "bcc": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/Mailbox"
      },
      "maxItems": 50
    },
    "note": {
      "type": "string",
      "description": "Optional plain-text introduction above the forwarded message."
    },
    "include_attachments": {
      "type": "boolean",
      "default": true,
      "description": "false leaves out every original file, embedded images included."
    },
    "labels": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/Label"
      },
      "maxItems": 32,
      "description": "Label names, case-sensitive; order and duplicates don't matter."
    },
    "idempotency_key": {
      "type": "string",
      "description": "Your unique value for this one operation. Save it with the exact request before sending; repeating that request with the same key within 24 hours returns what the first one did instead of acting again.",
      "pattern": "^[A-Za-z0-9_-]{1,128}$"
    }
  },
  "required": [
    "message_id",
    "to"
  ],
  "additionalProperties": false,
  "$defs": {
    "Label": {
      "type": "string",
      "description": "1–128 UTF-8 bytes after trimming, without control characters; case-sensitive.",
      "x-max-utf8-bytes": 128
    },
    "Mailbox": {
      "type": "object",
      "properties": {
        "address": {
          "type": "string",
          "description": "Bare address such as alex@example.com: ASCII, at most 254 characters and 64 before the @.",
          "maxLength": 254
        },
        "name": {
          "type": "string",
          "description": "Optional name; blank means none. At most 256 UTF-8 bytes after trimming, without control characters.",
          "x-max-utf8-bytes": 256
        }
      },
      "required": [
        "address"
      ],
      "additionalProperties": false
    }
  }
}