{ "version": "1.0", "campaign": { "id": "rechnungslegung-2026-05", "name": "Rechnungslegung 2026-05", "mode": "draft", "description": "Example campaign migrated from the Java object model." }, "fields": [ { "name": "monthyear", "type": "string", "label": "Month/year", "required": true }, { "name": "number", "type": "string", "label": "Dienststelle", "required": true }, { "name": "anrede", "type": "string", "label": "Salutation" }, { "name": "zip_password", "type": "password", "label": "ZIP password", "required": true } ], "global_values": { "monthyear": "05 / 2026" }, "server": { "smtp": { "host": "smtp.example.org", "port": 587, "username": "user@example.org", "password": "CHANGE_ME_OR_REFERENCE_SECRET", "security": "starttls" }, "imap": { "enabled": true, "host": "imap.example.org", "port": 993, "username": "user@example.org", "password": "CHANGE_ME_OR_REFERENCE_SECRET", "security": "tls", "sent_folder": "auto" } }, "recipients": { "from": { "name": "Rechnungslegung D5", "email": "d5-rechnungslegung@example.org", "type": "to" }, "allow_individual_from": false, "to": [], "allow_individual_to": true, "cc": [], "allow_individual_cc": false, "bcc": [], "allow_individual_bcc": false, "reply_to": [ { "name": "Rechnungslegung D5", "email": "d5-rechnungslegung@example.org", "type": "reply_to" } ], "allow_individual_reply_to": false, "bounce_to": [], "allow_individual_bounce_to": false, "disposition_notification_to": [], "allow_individual_disposition_notification_to": false }, "template": { "subject": "Rechnungslegungslisten für ${global::monthyear} und Dienststelle ${local::number}", "text": "${local::anrede},\n\nbeigefügt erhalten Sie die Rechnungslegungslisten für ${global::monthyear}.\n\nMit freundlichen Grüßen" }, "attachments": { "base_path": "/mnt/data/mm_next/server/app/mailer/examples/data/attachments", "allow_individual": true, "send_without_attachments": false, "global": [], "missing_behavior": "ask", "ambiguous_behavior": "ask" }, "entries": { "source": { "type": "csv", "path": "/mnt/data/mm_next/server/app/mailer/examples/data/recipients.csv", "delimiter": ";", "encoding": "utf-8", "has_header": true }, "mapping": { "id": "ID", "active": "Aktiv", "to.0.email": "E-Mail", "to.0.name": "Name", "fields.number": "Dienststelle", "fields.anrede": "Anrede", "fields.zip_password": "ZIP-Passwort", "attachments.0.base_dir": "Unterordner", "attachments.0.file_filter": "Dateimuster" }, "defaults": { "active": true, "to": [], "combine_to": false, "cc": [], "combine_cc": true, "bcc": [], "combine_bcc": true, "reply_to": [], "combine_reply_to": true, "bounce_to": [], "combine_bounce_to": true, "disposition_notification_to": [], "combine_disposition_notification_to": true, "attachments": [ { "id": "individual-documents", "label": "Personalized PDF bundle", "base_dir": ".", "file_filter": "${local::number}_*.pdf", "include_subdirs": false, "required": true, "allow_multiple": true, "missing_behavior": "ask", "ambiguous_behavior": "continue", "zip": { "enabled": true, "filename_template": "Rechnungslegung_${local::number}.zip", "password_template": "${local::zip_password}", "method": "aes" } } ], "combine_attachments": true, "fields": {} } }, "validation_policy": { "missing_required_attachment": "ask", "missing_optional_attachment": "warn", "ambiguous_attachment_match": "ask", "missing_email": "block", "template_error": "block", "inactive_entry": "drop" }, "delivery": { "rate_limit": { "messages_per_minute": 5, "concurrency": 1 }, "imap_append_sent": { "enabled": true, "folder": "auto" }, "retry": { "max_attempts": 3, "backoff_seconds": [ 60, 300, 900 ] } }, "status_tracking": { "enabled": true, "initial_build_status": "built", "initial_send_status": "draft" } }