The payload that configures a Mail account.
Declaration
object MailProperties
| Name | Type | Description |
|---|---|---|
allowMailDrop | boolean | If |
disableMailRecentsSyncing | boolean | If |
EmailAccountDescription | string | A user-visible description of the email account, shown in the Mail and Settings applications. |
EmailAccountName | string | The full user name for the account. The system displays this name in sent messages. |
EmailAccountType Required | string | Defines the protocol to use for the account. |
EmailAddress | string | The full email address for the account. If this string isn’t present in the payload, the device prompts the user for this string during interactive profile installation in Settings or System Preferences. |
IncomingMailServerAuthentication Required | string | The authentication scheme for incoming mail. |
IncomingMailServerHostName Required | string | The incoming mail server host name. |
IncomingMailServerIMAPPathPrefix | string | The path prefix for the IMAP mail server. |
IncomingMailServerPortNumber | integer | The incoming mail server port number. If not set, the system uses the default port for a given protocol. |
IncomingMailServerUsername | string | The user name for the email account, usually the same as the email address up to the “@” character. If not set and the account requires authentication for incoming email, the device prompts the user for this string during interactive profile installation in Settings or System Preferences. |
IncomingMailServerUseSSL | boolean | If |
IncomingPassword | string | The password for the incoming mail server. Only use this in encrypted profiles. |
OutgoingMailServerAuthentication Required | string | The authentication scheme for outgoing mail. |
OutgoingMailServerHostName Required | string | The outgoing mail server host name. |
OutgoingMailServerPortNumber | integer | The outgoing mail server port number. If not set, the system uses ports 25, 587, and 465, in that order. |
OutgoingMailServerUsername | string | The user name for the email account, usually the same as the email address up to the “@” character. If not set and the account requires authentication for outgoing email, the device prompts the user for this string during interactive profile installation in Settings or System Preferences. |
OutgoingMailServerUseSSL | boolean | If |
OutgoingPassword | string | The password for the outgoing mail server. Only use this in encrypted profiles. |
OutgoingPasswordSameAsIncomingPassword | boolean | If This setting is only supported by interactive profile installations. Not supported by non-interactive installations, such as MDM on iOS. |
PreventAppSheet | boolean | If |
PreventMove | boolean | If |
SMIMEEnabled | boolean | If |
SMIMEEnableEncryptionPerMessageSwitch | boolean | If |
SMIMEEnablePerMessageSwitch | boolean | If |
SMIMEEncryptByDefault | boolean | If |
SMIMEEncryptByDefaultUserOverrideable | boolean | If |
SMIMEEncryptionCertificateUUID | string | The UUID of the identity certificate used to decrypt messages sent to this account. The system attaches the public certificate to outgoing mail to allow the user to receive encrypted mail. When the user sends encrypted mail, the system uses the public certificate to encrypt the copy of the mail in their Sent mailbox. |
SMIMEEncryptionCertificateUUIDUserOverrideable | boolean | If |
SMIMEEncryptionEnabled | boolean | If |
SMIMESigningCertificateUUID | string | The payload UUID of the identity certificate used to sign messages sent from this account. |
SMIMESigningCertificateUUIDUserOverrideable | boolean | If |
SMIMESigningEnabled | boolean | If |
SMIMESigningUserOverrideable | boolean | If |
VPNUUID | string | The VPNUUID of the per-app VPN the account uses for network communication. Available in iOS 14 and later. |
Discussion
Specify com.apple.mail.managed as the payload type.
Profile availability
Device channel | iOS, visionOS |
User channel | macOS, Shared iPad |
Allow manual install | iOS, macOS, visionOS |
Requires supervision | NA |
Requires user-approved MDM | NA |
Allowed in user enrollment | iOS, macOS, visionOS |
Allow multiple payloads | iOS, macOS, Shared iPad, visionOS |
Profile example
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>PayloadContent</key>
<array>
<dict>
<key>EmailAccountDescription</key>
<string>Company Mail Account</string>
<key>EmailAccountName</key>
<string>Juan Chavez</string>
<key>EmailAccountType</key>
<string>EmailTypeIMAP</string>
<key>EmailAddress</key>
<string>juanchavez4@example.com</string>
<key>IncomingMailServerAuthentication</key>
<string>EmailAuthPassword</string>
<key>IncomingMailServerHostName</key>
<string>imap.example.com</string>
<key>IncomingMailServerPortNumber</key>
<integer>993</integer>
<key>IncomingMailServerUseSSL</key>
<true/>
<key>IncomingMailServerUsername</key>
<string>juanchavez4@example.com</string>
<key>IncomingPassword</key>
<string>Password123</string>
<key>OutgoingMailServerAuthentication</key>
<string>EmailAuthPassword</string>
<key>OutgoingMailServerHostName</key>
<string>smtp.example.com</string>
<key>OutgoingMailServerPortNumber</key>
<integer>587</integer>
<key>OutgoingMailServerUseSSL</key>
<true/>
<key>OutgoingMailServerUsername</key>
<string>juanchavez4@example.com</string>
<key>OutgoingPassword</key>
<string>Password123</string>
<key>OutgoingPasswordSameAsIncomingPassword</key>
<false/>
<key>SMIMEEnablePerMessageSwitch</key>
<false/>
<key>SMIMEEnabled</key>
<false/>
<key>SMIMEEncryptionEnabled</key>
<false/>
<key>SMIMESigningEnabled</key>
<false/>
<key>allowMailDrop</key>
<false/>
<key>disableMailRecentsSyncing</key>
<false/>
<key>PayloadIdentifier</key>
<string>com.example.mymailpayload</string>
<key>PayloadType</key>
<string>com.apple.mail.managed</string>
<key>PayloadUUID</key>
<string>d6379d8d-9e05-4d99-80bc-0865f1fe0aca</string>
<key>PayloadVersion</key>
<integer>1</integer>
</dict>
</array>
<key>PayloadDisplayName</key>
<string>Mail</string>
<key>PayloadIdentifier</key>
<string>com.example.myprofile</string>
<key>PayloadType</key>
<string>Configuration</string>
<key>PayloadUUID</key>
<string>8e1961d8-898e-4d79-986f-c7a61af4103c</string>
<key>PayloadVersion</key>
<integer>1</integer>
</dict>
</plist>