Files
2026-01-19 17:46:06 +01:00

141 lines
3.7 KiB
JSON

{
"fields": {
"name": {
"type": "varchar",
"required": true,
"pattern": "$noBadCharacters"
},
"status": {
"type": "enum",
"options": [
"Draft",
"Pending",
"Complete",
"In Process",
"Failed"
],
"style": {
"In Process": "warning",
"Pending": "primary",
"Failed": "danger",
"Complete": "success"
},
"default": "Pending"
},
"storeSentEmails": {
"type": "bool",
"default": false,
"tooltip": true
},
"optOutEntirely": {
"type": "bool",
"default": false,
"tooltip": true
},
"fromAddress": {
"type": "varchar",
"view": "crm:views/mass-email/fields/from-address"
},
"fromName": {
"type": "varchar"
},
"replyToAddress": {
"type": "varchar"
},
"replyToName": {
"type": "varchar"
},
"startAt": {
"type": "datetime",
"required": true
},
"emailTemplate": {
"type": "link",
"required": true,
"createButton": true,
"view": "crm:views/mass-email/fields/email-template"
},
"campaign": {
"type": "link",
"readOnlyAfterCreate": true
},
"targetLists": {
"type": "linkMultiple",
"required": true,
"tooltip": true
},
"excludingTargetLists": {
"type": "linkMultiple",
"tooltip": true
},
"inboundEmail": {
"type": "link"
},
"smtpAccount": {
"type": "base",
"notStorable": true,
"orderDisabled": true,
"view": "crm:views/mass-email/fields/smtp-account"
},
"createdAt": {
"type": "datetime",
"readOnly": true
},
"modifiedAt": {
"type": "datetime",
"readOnly": true
},
"createdBy": {
"type": "link",
"readOnly": true
},
"modifiedBy": {
"type": "link",
"readOnly": true
}
},
"links": {
"createdBy": {
"type": "belongsTo",
"entity": "User"
},
"modifiedBy": {
"type": "belongsTo",
"entity": "User"
},
"emailTemplate": {
"type": "belongsTo",
"entity": "EmailTemplate"
},
"campaign": {
"type": "belongsTo",
"entity": "Campaign",
"foreign": "massEmails"
},
"targetLists": {
"type": "hasMany",
"entity": "TargetList",
"foreign": "massEmails"
},
"excludingTargetLists": {
"type": "hasMany",
"entity": "TargetList",
"foreign": "massEmailsExcluding",
"relationName": "massEmailTargetListExcluding"
},
"inboundEmail": {
"type": "belongsTo",
"entity": "InboundEmail"
},
"queueItems": {
"type": "hasMany",
"entity": "EmailQueueItem",
"foreign": "massEmail"
}
},
"collection": {
"orderBy": "createdAt",
"order": "desc"
}
}