{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://raw.githubusercontent.com/api-evangelist/customer-io/main/json-schema/customer-io-update-email-content-schema.json", "title": "Email", "description": "Update the contents of an email newsletter variant. You can set the sender with `from_id`. If you don't provide it, the existing sender is preserved.\n", "x-generated": "2026-10-12", "x-method": "derived", "x-generator": "derive-json-schema.py", "x-source": "openapi/customer-io-newsletter-variants-api-openapi.yml#/components/schemas/updateEmailContent", "allOf": [ { "type": "object", "properties": { "type": { "x-scalar-ignore": true, "description": "Channel type for a newsletter or newsletter content variant.", "type": "string", "enum": [ "email", "webhook", "twilio", "push", "in_app", "inbox" ], "readOnly": true }, "deduplicate_id": { "x-scalar-ignore": true, "type": "string", "readOnly": true, "description": "An identifier in the format `id:timestamp` where the id is for the object you're working with (Campaigns, Deliveries, Exports, Identities, Newsletters, Segments, and Templates), and the timestamp is the last time the object was updated." } } }, { "type": "object", "properties": { "type": { "type": "string", "enum": [ "email" ], "readOnly": true }, "body": { "type": "string", "description": "The HTML body of the email. You cannot modify the body if you created the newsletter with Design Studio or the drag-and-drop editor." }, "body_amp": { "x-scalar-ignore": true, "type": "string", "description": "AMP-enabled content for your email. If a recipient's email client doesn't support AMP, they receive your `body` content instead. Make sure you're [set up to send AMP](/journeys/channels/email/layouts/amp-for-email/) first." }, "body_plain": { "x-scalar-ignore": true, "type": "string", "description": "By default, your workspace generates a plaintext version of your message body for each delivery. Use this key to override the default plain text body." }, "subject": { "x-scalar-ignore": true, "type": "string", "description": "The subject line for an `email` action." }, "preheader_text": { "x-scalar-ignore": true, "type": "string", "description": "[Also known as \"preview text\"](/journeys/channels/email/headers/custom-preheader-text/), this is the small block of text shown in an email inbox next to or underneath the subject line.\n" }, "from_id": { "x-scalar-ignore": true, "type": "integer", "description": "The identifier of the `from` address, commonly known as the \"sender\". Use [List sender identities](#tag/sender-identities/listSenders) to find valid IDs." }, "reply_to_id": { "x-scalar-ignore": true, "type": [ "integer", "null" ], "description": "The identifier for the `reply_to` address, if applicable. Use [List sender identities](#tag/sender-identities/listSenders) to find valid IDs." }, "recipient": { "type": "string", "description": "The recipient address for the newsletter. By default, it's `{{customer.email}}`." } } } ] }