Sync docs for new iRedMail release: 0.9.8.

This commit is contained in:
Zhang Huangbin 2018-04-02 21:58:46 +02:00
parent 697257e9ec
commit 1dd409ac82
8 changed files with 841 additions and 820 deletions

View File

@ -4,8 +4,8 @@
!!! attention
* This document is applicable to `iRedAdmin-Pro-SQL-2.9.0` and
`iRedAdmin-Pro-LDAP-3.1`. If you're running an old release, please
* This document is applicable to `iRedAdmin-Pro-SQL-2.8.0` and
`iRedAdmin-Pro-LDAP-3.0`. If you're running an old release, please
upgrade iRedAdmin-Pro to the latest release, or check
[document for old releases](./iredadmin-pro.releases.html).
* If you need an API which has not yet been implemented, don't hesitate to
@ -138,12 +138,9 @@ Notes:
`primarymx` | Hostname or IP address of primary MX, smtp port number is optional. Must be used with parameter `is_backupmx`. Conflicts with parameter `transport`. | `primarymx=202.96.134.133`, `primarymx=[mail.iredmail.org]:25`
`catchall` | Per-domain catch-all account (a list of email addresses used to receive emails sent to non-existing addresses under same domain). Multiple addresses must be separated by comma. Set an empty value to disable catch-all support. | `catchall=user@domain.com,user2@domain.com` or `catchall=` (disable catch-all)
`outboundRelay` | Per-domain outbound relay. Set an empty value to disable outbound relay. | `outboundRelay=smtp:[192.168.1.2]:25` or `outboundRelay=` (disable outbound relay)
`addAliasDomain` | Add new alias domains. Multiple services must be separated by comma. | `addAliasDomain=alias1.com,alias2.com`
`removeAliasDomain` | Remove existing alias domains. Multiple services must be separated by comma. | `removeAllServices=alias1.com,alias2.com`
`aliasDomains` | Reset all alias domains. If empty, all existing alias domains will be removed. Conflicts with parameter `addAliasDomain` and `removeAliasDomain`. | `aliasDomains=alias1.com,alias2.com`
`addService` | Enable new services. Multiple services must be separated by comma. Available services are listed below. | `addService=self-service`
`removeService` | Disable existing services. Multiple services must be separated by comma. Available services are listed below. | `removeService=self-service`
`services` | Reset all services. If empty, all existing services will be removed. | `services=mail,self-service`
`enableService` | Enable new services. Multiple services must be separated by comma. Available services are listed below. | `enableService=self-service`
`disableService` | Disable existing services. Multiple services must be separated by comma. Available services are listed below. | `disableService=self-service`
`removeAllServices` | Disable all services (including mail service) | `removeAllServices=` (empty value)
`disableDomainProfile` | disable given domain profiles. Normal admin cannot view and update disabled profiles in domain profile page. Available domain profiles are listed below. | `disableDomainProfile=bcc,relay,aliases`
`enableDomainProfile` | enable given domain profiles. Normal admin can view and update disabled profiles in domain profile page. Available domain profiles are listed below. | `enableDomainProfile=bcc,relay,aliases`
`disableUserProfile` | disable given user profiles. Normal admin cannot view and update disabled profiles in user profile page. Available user profiles are listed below. | `disableUserProfile=bcc,relay,aliases`
@ -156,10 +153,10 @@ Notes:
Profile | Comment
--- |---
self-service | Enable self-service for the mail domain.
mail | All mail services. (__LDAP backends only__)
domainalias | Alias domain support. (__LDAP backends only__)
senderbcc | Per-domain sender bcc. (__LDAP backends only__)
recipientbcc | Per-domain recipient bcc. (__LDAP backends only__)
mail | All mail services. (LDAP backends only)
domainalias | Alias domain support. (LDAP backends only)
senderbcc | Per-domain sender bcc. (LDAP backends only)
recipientbcc | Per-domain recipient bcc. (LDAP backends only)
Available domain profiles:
@ -249,8 +246,6 @@ Notes:
`maxUsers` | how many mail users this admin can create. It's shared by all domains created/managed by this admin. | `maxUsers=100`
`maxAliases` | how many mail aliases this admin can create. It's shared by all domains created/managed by this admin. | `maxAliases=200`
`maxLists` | how many mailing lists this admin can create. It's shared by all domains created/managed by this admin. | `maxLists=300`
`disableViewingMailLog` | Disallow this admin to view log of inbound/outbound mails. | `disableViewingMailLog=yes` (or `no`)
`disableManagingQuarantinedMails` | Disallow this admin to manage quarantined mails. | `disableManagingQuarantinedMails=yes` (or `no`)
</div>
@ -277,8 +272,6 @@ Notes:
`maxUsers` | how many mail users this admin can create. It's shared by all domains created/managed by this admin. | `maxUsers=100`
`maxAliases` | how many mail aliases this admin can create. It's shared by all domains created/managed by this admin. | `maxAliases=200`
`maxLists` | how many mailing lists this admin can create. It's shared by all domains created/managed by this admin. | `maxLists=300`
`disableViewingMailLog` | Disallow this admin to view log of inbound/outbound mails. | `disableViewingMailLog=yes` (or `no`)
`disableManagingQuarantinedMails` | Disallow this admin to manage quarantined mails. | `disableManagingQuarantinedMails=yes` (or `no`)
</div>
@ -320,9 +313,7 @@ Notes:
Parameter | Summary | Sample Usage
--- |--- |---
`name` | Display name | `name=Michael Jordon`
`gn` | Given name | `gn=Jordon`
`sn` | Surname | `sn=Jeffery`
`name` | Display name | `name=My New Name`
`password` | Password | `password=u0tBF82cIV@vi8Gme`
`quota` | Mailbox quota (in MB) | `quota=1024`
`accountStatus` | Enable or disable user. Possible values: `active`, `disabled`. | `accountStatus=active`
@ -392,120 +383,12 @@ Notes:
</div>
### [NEW] Subscribable Mailing List {: .toggle }
### Mailing List {: .toggle }
!!! attention
* Subscribable mailing list requires iRedMail-0.9.8 and later releases,
it's implemented with [`mlmmj`](http://mlmmj.org) mailing list manager.
* It's available for both SQL and LDAP backends.
!!! api "`GET`{: .get } `/api/ml/<mail>`{: .url } `Get profile of an existing mailing list account`{: .comment }"
!!! api "`POST`{: .post } `/api/ml/<mail>`{: .url } `Create a new mailing list`{: .comment } `Parameters`{: .has_params }"
<div class="params">
Parameter | Sample Usage | Default Value | Comment
--- |--- |---|---
`name` | `name=Sales Team` | | Display name of the mailing list.
`accountStatus` | `accountStatus=active` | | Enable or disable account. Possible values: `active`, `disabled`.
`maxMailSize` | `maxMailSize=1048576` (1M) | | Max message size (in bytes).
`accessPolicy` | `accessPolicy=membersonly` | | Defines who can send email to this mailing list. Possible values: `public`, `domain`, `subdomain`, `membersonly`, `moderatorsonly`.
`is_newsletter` | `is_newsletter=yes` | `no` | Mark this mailing list as a newsletter, to enable subscription/unsubscription from web site.
`newsletter_description` | `newsletter_description=short description text` | | The short description text displayed on newsletter subscription page.
`close_list` | `close_list=yes` | `no` | If set to `yes`, subscription and unsubscription via mail is disabled.
`only_moderator_can_post` | `only_moderator_can_post=yes` | `no` | If set to `yes`, only moderators are allowed to post to it. The check is made against the `From:` header.
`only_subscriber_can_post` | `only_subscriber_can_post=yes` | `yes` | If set to `yes`, only subscribed members are allowed to post to it. The check is made against the `From:` header.
`disable_subscription` | `disable_subscription=yes` | `no` | If set to `yes`, subscription is disabled, but unsubscription is still possible.
`disable_subscription_confirm` | `disable_subscription_confirm=yes` | | If set to `yes`, mlmmj won't send mail to subscriber to ask for confirmation to subscribe to the list. __WARNING__: This should in principle never ever be used, but there are times on local lists etc. where this is useful. HANDLE WITH CARE!
`disable_digest_subscription` | `disable_digest_subscription=yes` | | If set to `yes`, subscription to the digest version of the mailing list is disabled. Useful if you don't want to allow digests and notify users about it.
`disable_digest_text` | `disable_digest_text=yes` | | If set to `yes`, digest mails won't have a text part with a thread summary.
`disable_nomail_subscription` | `disable_nomail_subscription=yes` | | If set to `yes`, subscription to the 'nomail' version of the mailing list is disabled. Useful if you don't want to allow 'nomail' and notify users about it.
`moderated` | `moderated=yes` | `no` | If set to `yes`. Parameter `owner` __or__ `moderators` is required to specify the moderators. Note: `moderators` has higher priority (means only addresses specified by `moderators` are act as moderators).
`moderate_non_subscriber_post` | `moderate_non_subscriber_post=no` | `no` | If set to `yes`, all postings from people who are not allowed to post to the list will be moderated. Default (set to `no`) is denied.
`disable_retrieving_old_posts` | `disable_retrieving_old_posts=yes` | | If set to `yes`, retrieving old posts by sending email to address `<listname>+get-N@` is disabled.
`only_subscriber_can_get_old_posts` | `only_subscriber_can_get_old_posts=no` | `yes` | If set to `yes`, only subscribers can retrieve old posts by sending email to `LISTNAME+get-N@`
`disable_retrieving_subscribers` | `disable_retrieving_subscribers=yes` | `yes` | If set to `yes`, (owner) retrieving subscribers by sending email to `LISTNAME+list@` is disabled. Note: only owner can send to such address.
`disable_send_copy_to_sender` | `disable_send_copy_to_sender=yes` | `yes` | If set to `yes`, senders won't receive copies of their own posts.
`notify_owner_when_sub_unsub` | `notify_owner_when_sub_unsub=no` | `no` | Notify the owner(s) when someone sub/unsubscribing to a mailing list.
`notify_sender_when_moderated` | `notify_sender_when_moderated=no` | `no` | Notify sender (based on the envelope from) when their post is being moderated.
`disable_archive` | `disable_archive=yes` | `no` | If set to `yes`, emails won't be saved in the archive but simply deleted.
`moderate_subscription` | `moderate_subscription=yes` | `no` | If set to `yes`, subscription will be moderated by owner(s) or moderators specified by `subscription_moderators`. Moderators specified by `subscription_moderators` has higher priority. If set to `no`, subscription is not moderated, also, all moderators which were specified by `subscription_moderators` will be removed.
`extra_addresses` | `extra_addresses=extra1@domain.com,extra2@domain.com` | | Define extra addresses of the mailing list.
`subscription_moderators` | `subscription_moderators=<mail1>,<mail2>,<mail3>` | | Specify subscription moderators. Note: if `subscription_moderators` is given, `moderate_subscription` will be set to `yes` automatically. If no valid moderators are given, subscription will be moderated by owner(s).
`owner` | `owner=<mail1>,<mail2>,<mail3>` | | Define owner(s) of the mailing list. Owners will get mails sent to `<listname>+owner@<domain.com>`.
`moderators` | `moderators=<mail1>,<mail2>` | | Specify moderators of the mailing list. Set to empty value will remove all existing moderators.
`max_message_size` | `max_message_size=10240` | | Specify max mail message size in __bytes__.
`subject_prefix` | `subject_prefix=[prefix text]` | | Add a prefix in the `Subject:` line of mails sent to the list. Set to empty value to remove it.
`custom_headers` | `custom_headers=<header1>:<value1>\n<header2>:<value2>` | | Add custom headers to every mail coming through. Multiple headers must be separated by `\n`. Set empty value to remove it. Note: mlmmjadmin will always add `X-Mailing-List: <mail>` and `Reply-To: <mail>` for each mailing list account.
`remove_headers` | `remove_headers=Message-ID,Received` | | Remove given mail headers. NOTE: either `header:` or `header` (without `:`) is ok. Note: mlmmjadmin will always remove `DKIM-Signature:` and `Authentication-Results:`.
`name` | `name=Short description of list` | | Set a short description of the mailing list account.
`footer_text` | `footer_text=footer in plain text` | | Append footer (in plain text format) to every email sent to the list.
`footer_html` | `footer_text=<p>footer in html</p>` | | Append footer (in html format) to every email sent to the list.
</div>
!!! api "`DELETE`{: .delete } `/api/ml/<mail>`{: .url } `Delete an existing mailing list`{: .comment } `Parameters`{: .has_params }"
<div class="params">
Parameter | Summary | Sample Usage
--- |--- |---
`keep_archive` | Archive account settings and messages before deleting the mailing list. | `keep_archive=no`
</div>
!!! api "`PUT`{: .put } `/api/ml/<mail>`{: .url } `Update profile of an existing mailing list`{: .comment } `Parameters`{: .has_params }"
<div class="params">
Parameter | Sample Usage | Default Value | Comment
--- |--- |---|---
`name` | `name=Sales Team` | | Display name of the mailing list.
`accountStatus` | `accountStatus=active` | | Enable or disable account. Possible values: `active`, `disabled`.
`maxMailSize` | `maxMailSize=1048576` (1M) | | Max message size (in bytes).
`accessPolicy` | `accessPolicy=membersonly` | | Defines who can send email to this mailing list. Possible values: `public`, `domain`, `subdomain`, `membersonly`, `moderatorsonly`.
`is_newsletter` | `is_newsletter=yes` | `no` | Mark this mailing list as a newsletter, to enable subscription/unsubscription from web site.
`newsletter_description` | `newsletter_description=short description text` | | The short description text displayed on newsletter subscription page.
`close_list` | `close_list=yes` | `no` | If set to `yes`, subscription and unsubscription via mail is disabled.
`only_moderator_can_post` | `only_moderator_can_post=yes` | `no` | If set to `yes`, only moderators are allowed to post to it. The check is made against the `From:` header.
`only_subscriber_can_post` | `only_subscriber_can_post=yes` | `yes` | If set to `yes`, only subscribed members are allowed to post to it. The check is made against the `From:` header.
`disable_subscription` | `disable_subscription=yes` | `no` | If set to `yes`, subscription is disabled, but unsubscription is still possible.
`disable_subscription_confirm` | `disable_subscription_confirm=yes` | | If set to `yes`, mlmmj won't send mail to subscriber to ask for confirmation to subscribe to the list. __WARNING__: This should in principle never ever be used, but there are times on local lists etc. where this is useful. HANDLE WITH CARE!
`disable_digest_subscription` | `disable_digest_subscription=yes` | | If set to `yes`, subscription to the digest version of the mailing list is disabled. Useful if you don't want to allow digests and notify users about it.
`disable_digest_text` | `disable_digest_text=yes` | | If set to `yes`, digest mails won't have a text part with a thread summary.
`disable_nomail_subscription` | `disable_nomail_subscription=yes` | | If set to `yes`, subscription to the 'nomail' version of the mailing list is disabled. Useful if you don't want to allow 'nomail' and notify users about it.
`moderated` | `moderated=yes` | `no` | If set to `yes`. Parameter `owner` __or__ `moderators` is required to specify the moderators. Note: `moderators` has higher priority (means only addresses specified by `moderators` are act as moderators).
`moderate_non_subscriber_post` | `moderate_non_subscriber_post=no` | `no` | If set to `yes`, all postings from people who are not allowed to post to the list will be moderated. Default (set to `no`) is denied.
`disable_retrieving_old_posts` | `disable_retrieving_old_posts=yes` | | If set to `yes`, retrieving old posts by sending email to address `<listname>+get-N@` is disabled.
`only_subscriber_can_get_old_posts` | `only_subscriber_can_get_old_posts=no` | `yes` | If set to `yes`, only subscribers can retrieve old posts by sending email to `LISTNAME+get-N@`
`disable_retrieving_subscribers` | `disable_retrieving_subscribers=yes` | `yes` | If set to `yes`, (owner) retrieving subscribers by sending email to `LISTNAME+list@` is disabled. Note: only owner can send to such address.
`disable_send_copy_to_sender` | `disable_send_copy_to_sender=yes` | `yes` | If set to `yes`, senders won't receive copies of their own posts.
`notify_owner_when_sub_unsub` | `notify_owner_when_sub_unsub=no` | `no` | Notify the owner(s) when someone sub/unsubscribing to a mailing list.
`notify_sender_when_moderated` | `notify_sender_when_moderated=no` | `no` | Notify sender (based on the envelope from) when their post is being moderated.
`disable_archive` | `disable_archive=yes` | `no` | If set to `yes`, emails won't be saved in the archive but simply deleted.
`moderate_subscription` | `moderate_subscription=yes` | `no` | If set to `yes`, subscription will be moderated by owner(s) or moderators specified by `subscription_moderators`. Moderators specified by `subscription_moderators` has higher priority. If set to `no`, subscription is not moderated, also, all moderators which were specified by `subscription_moderators` will be removed.
`extra_addresses` | `extra_addresses=extra1@domain.com,extra2@domain.com` | | Define extra addresses of the mailing list.
`subscription_moderators` | `subscription_moderators=<mail1>,<mail2>,<mail3>` | | Specify subscription moderators. Note: if `subscription_moderators` is given, `moderate_subscription` will be set to `yes` automatically. If no valid moderators are given, subscription will be moderated by owner(s).
`owner` | `owner=<mail1>,<mail2>,<mail3>` | | Define owner(s) of the mailing list. Owners will get mails sent to `<listname>+owner@<domain.com>`.
`moderators` | `moderators=<mail1>,<mail2>` | | Specify moderators of the mailing list. Set to empty value will remove all existing moderators.
`max_message_size` | `max_message_size=10240` | | Specify max mail message size in __bytes__.
`subject_prefix` | `subject_prefix=[prefix text]` | | Add a prefix in the `Subject:` line of mails sent to the list. Set to empty value to remove it.
`custom_headers` | `custom_headers=<header1>:<value1>\n<header2>:<value2>` | | Add custom headers to every mail coming through. Multiple headers must be separated by `\n`. Set empty value to remove it. Note: mlmmjadmin will always add `X-Mailing-List: <mail>` and `Reply-To: <mail>` for each mailing list account.
`remove_headers` | `remove_headers=Message-ID,Received` | | Remove given mail headers. NOTE: either `header:` or `header` (without `:`) is ok. Note: mlmmjadmin will always remove `DKIM-Signature:` and `Authentication-Results:`.
`name` | `name=Short description of list` | | Set a short description of the mailing list account.
`footer_text` | `footer_text=footer in plain text` | | Append footer (in plain text format) to every email sent to the list.
`footer_html` | `footer_text=<p>footer in html</p>` | | Append footer (in html format) to every email sent to the list.
</div>
### Mailing List (Unsubscribable) {: .toggle }
!!! attention
* This unsubscribable mailing list is only available in __LDAP__ backend.
* It's recommended to use the Subscribable Mailing List instead, you're
free to disable public subscribable.
Mailing list is only available in OpenLDAP backend. For SQL backends,
please use mail alias account as mailing list.
!!! api "`GET`{: .get } `/api/maillist/<mail>`{: .url } `Get profile of an existing mailing list account`{: .comment }"
!!! api "`POST`{: .post } `/api/maillist/<mail>`{: .url } `Create a new mailing list`{: .comment } `Parameters`{: .has_params }"
@ -519,16 +402,7 @@ Notes:
</div>
!!! api "`DELETE`{: .delete } `/api/maillist/<mail>`{: .url } `Delete an existing mailing list`{: .comment } `Parameters`{: .has_params }"
<div class="params">
Parameter | Summary | Sample Usage
--- |--- |---
`archive` | Archive subscribable mailing list before deleting the account. NOTE: This option is only applicable to the subscribable mailing list account. | `archive=no`
</div>
!!! api "`DELETE`{: .delete } `/api/maillist/<mail>`{: .url } `Delete an existing mailing list`{: .comment }"
!!! api "`PUT`{: .put } `/api/maillist/<mail>`{: .url } `Update profile of an existing mailing list`{: .comment } `Parameters`{: .has_params }"
<div class="params">
@ -732,30 +606,6 @@ Notes:
## ChangeLog
### iRedAdmin-Pro-SQL-2.9.0, iRedAdmin-Pro-LDAP-3.1
* New: subscribable mailing list.
* Show allocated domain quota while getting domain profile
(`GET /api/domain/<domain>`).
* Able to manage alias domains while updating domain profile
(`GET /api/domain/<domain>`):
* `aliasDomains`: reset all alias domains
* `addAliasDomain`: add new alias domains
* `removeAliasDomain`: remove existing alias domains
* Parameter names changed while updating domain profile
(`PUT /api/domain/<domain>`):
* `enableService` was renamed to `addService`
* `disableService` was renamed to `removeService`
* `removeAllServices` was renamed to `services`
* iRedAdmin-Pro-LDAP-3.1:
* New user profile parameters (`PUT /api/user/<mail>`):
* `gn` - given name
* `sn` - surname
* Fixed:
- Not correctly detect existing mail accounts while updating
per-user mail forwarding addresses.
### iRedAdmin-Pro-SQL-2.8.0, iRedAdmin-Pro-LDAP-3.0
* NEW: Able to list all managed domains (`/domains`).

View File

@ -4,8 +4,8 @@
!!! attention
* This document is applicable to `iRedAdmin-Pro-SQL-2.8.0` and
`iRedAdmin-Pro-LDAP-3.0`. If you're running an old release, please
* This document is applicable to `iRedAdmin-Pro-SQL-2.9.0` and
`iRedAdmin-Pro-LDAP-3.1`. If you're running an old release, please
upgrade iRedAdmin-Pro to the latest release, or check
[document for old releases](./iredadmin-pro.releases.html).
* If you need an API which has not yet been implemented, don't hesitate to
@ -138,9 +138,12 @@ Notes:
`primarymx` | Hostname or IP address of primary MX, smtp port number is optional. Must be used with parameter `is_backupmx`. Conflicts with parameter `transport`. | `primarymx=202.96.134.133`, `primarymx=[mail.iredmail.org]:25`
`catchall` | Per-domain catch-all account (a list of email addresses used to receive emails sent to non-existing addresses under same domain). Multiple addresses must be separated by comma. Set an empty value to disable catch-all support. | `catchall=user@domain.com,user2@domain.com` or `catchall=` (disable catch-all)
`outboundRelay` | Per-domain outbound relay. Set an empty value to disable outbound relay. | `outboundRelay=smtp:[192.168.1.2]:25` or `outboundRelay=` (disable outbound relay)
`enableService` | Enable new services. Multiple services must be separated by comma. Available services are listed below. | `enableService=self-service`
`disableService` | Disable existing services. Multiple services must be separated by comma. Available services are listed below. | `disableService=self-service`
`removeAllServices` | Disable all services (including mail service) | `removeAllServices=` (empty value)
`addAliasDomain` | Add new alias domains. Multiple services must be separated by comma. | `addAliasDomain=alias1.com,alias2.com`
`removeAliasDomain` | Remove existing alias domains. Multiple services must be separated by comma. | `removeAllServices=alias1.com,alias2.com`
`aliasDomains` | Reset all alias domains. If empty, all existing alias domains will be removed. Conflicts with parameter `addAliasDomain` and `removeAliasDomain`. | `aliasDomains=alias1.com,alias2.com`
`addService` | Enable new services. Multiple services must be separated by comma. Available services are listed below. | `addService=self-service`
`removeService` | Disable existing services. Multiple services must be separated by comma. Available services are listed below. | `removeService=self-service`
`services` | Reset all services. If empty, all existing services will be removed. | `services=mail,self-service`
`disableDomainProfile` | disable given domain profiles. Normal admin cannot view and update disabled profiles in domain profile page. Available domain profiles are listed below. | `disableDomainProfile=bcc,relay,aliases`
`enableDomainProfile` | enable given domain profiles. Normal admin can view and update disabled profiles in domain profile page. Available domain profiles are listed below. | `enableDomainProfile=bcc,relay,aliases`
`disableUserProfile` | disable given user profiles. Normal admin cannot view and update disabled profiles in user profile page. Available user profiles are listed below. | `disableUserProfile=bcc,relay,aliases`
@ -153,10 +156,10 @@ Notes:
Profile | Comment
--- |---
self-service | Enable self-service for the mail domain.
mail | All mail services. (LDAP backends only)
domainalias | Alias domain support. (LDAP backends only)
senderbcc | Per-domain sender bcc. (LDAP backends only)
recipientbcc | Per-domain recipient bcc. (LDAP backends only)
mail | All mail services. (__LDAP backends only__)
domainalias | Alias domain support. (__LDAP backends only__)
senderbcc | Per-domain sender bcc. (__LDAP backends only__)
recipientbcc | Per-domain recipient bcc. (__LDAP backends only__)
Available domain profiles:
@ -246,6 +249,8 @@ Notes:
`maxUsers` | how many mail users this admin can create. It's shared by all domains created/managed by this admin. | `maxUsers=100`
`maxAliases` | how many mail aliases this admin can create. It's shared by all domains created/managed by this admin. | `maxAliases=200`
`maxLists` | how many mailing lists this admin can create. It's shared by all domains created/managed by this admin. | `maxLists=300`
`disableViewingMailLog` | Disallow this admin to view log of inbound/outbound mails. | `disableViewingMailLog=yes` (or `no`)
`disableManagingQuarantinedMails` | Disallow this admin to manage quarantined mails. | `disableManagingQuarantinedMails=yes` (or `no`)
</div>
@ -272,6 +277,8 @@ Notes:
`maxUsers` | how many mail users this admin can create. It's shared by all domains created/managed by this admin. | `maxUsers=100`
`maxAliases` | how many mail aliases this admin can create. It's shared by all domains created/managed by this admin. | `maxAliases=200`
`maxLists` | how many mailing lists this admin can create. It's shared by all domains created/managed by this admin. | `maxLists=300`
`disableViewingMailLog` | Disallow this admin to view log of inbound/outbound mails. | `disableViewingMailLog=yes` (or `no`)
`disableManagingQuarantinedMails` | Disallow this admin to manage quarantined mails. | `disableManagingQuarantinedMails=yes` (or `no`)
</div>
@ -313,7 +320,9 @@ Notes:
Parameter | Summary | Sample Usage
--- |--- |---
`name` | Display name | `name=My New Name`
`name` | Display name | `name=Michael Jordon`
`gn` | Given name | `gn=Jordon`
`sn` | Surname | `sn=Jeffery`
`password` | Password | `password=u0tBF82cIV@vi8Gme`
`quota` | Mailbox quota (in MB) | `quota=1024`
`accountStatus` | Enable or disable user. Possible values: `active`, `disabled`. | `accountStatus=active`
@ -383,12 +392,120 @@ Notes:
</div>
### Mailing List {: .toggle }
### [NEW] Subscribable Mailing List {: .toggle }
!!! attention
Mailing list is only available in OpenLDAP backend. For SQL backends,
please use mail alias account as mailing list.
* Subscribable mailing list requires iRedMail-0.9.8 and later releases,
it's implemented with [`mlmmj`](http://mlmmj.org) mailing list manager.
* It's available for both SQL and LDAP backends.
!!! api "`GET`{: .get } `/api/ml/<mail>`{: .url } `Get profile of an existing mailing list account`{: .comment }"
!!! api "`POST`{: .post } `/api/ml/<mail>`{: .url } `Create a new mailing list`{: .comment } `Parameters`{: .has_params }"
<div class="params">
Parameter | Sample Usage | Default Value | Comment
--- |--- |---|---
`name` | `name=Sales Team` | | Display name of the mailing list.
`accountStatus` | `accountStatus=active` | | Enable or disable account. Possible values: `active`, `disabled`.
`maxMailSize` | `maxMailSize=1048576` (1M) | | Max message size (in bytes).
`accessPolicy` | `accessPolicy=membersonly` | | Defines who can send email to this mailing list. Possible values: `public`, `domain`, `subdomain`, `membersonly`, `moderatorsonly`.
`is_newsletter` | `is_newsletter=yes` | `no` | Mark this mailing list as a newsletter, to enable subscription/unsubscription from web site.
`newsletter_description` | `newsletter_description=short description text` | | The short description text displayed on newsletter subscription page.
`close_list` | `close_list=yes` | `no` | If set to `yes`, subscription and unsubscription via mail is disabled.
`only_moderator_can_post` | `only_moderator_can_post=yes` | `no` | If set to `yes`, only moderators are allowed to post to it. The check is made against the `From:` header.
`only_subscriber_can_post` | `only_subscriber_can_post=yes` | `yes` | If set to `yes`, only subscribed members are allowed to post to it. The check is made against the `From:` header.
`disable_subscription` | `disable_subscription=yes` | `no` | If set to `yes`, subscription is disabled, but unsubscription is still possible.
`disable_subscription_confirm` | `disable_subscription_confirm=yes` | | If set to `yes`, mlmmj won't send mail to subscriber to ask for confirmation to subscribe to the list. __WARNING__: This should in principle never ever be used, but there are times on local lists etc. where this is useful. HANDLE WITH CARE!
`disable_digest_subscription` | `disable_digest_subscription=yes` | | If set to `yes`, subscription to the digest version of the mailing list is disabled. Useful if you don't want to allow digests and notify users about it.
`disable_digest_text` | `disable_digest_text=yes` | | If set to `yes`, digest mails won't have a text part with a thread summary.
`disable_nomail_subscription` | `disable_nomail_subscription=yes` | | If set to `yes`, subscription to the 'nomail' version of the mailing list is disabled. Useful if you don't want to allow 'nomail' and notify users about it.
`moderated` | `moderated=yes` | `no` | If set to `yes`. Parameter `owner` __or__ `moderators` is required to specify the moderators. Note: `moderators` has higher priority (means only addresses specified by `moderators` are act as moderators).
`moderate_non_subscriber_post` | `moderate_non_subscriber_post=no` | `no` | If set to `yes`, all postings from people who are not allowed to post to the list will be moderated. Default (set to `no`) is denied.
`disable_retrieving_old_posts` | `disable_retrieving_old_posts=yes` | | If set to `yes`, retrieving old posts by sending email to address `<listname>+get-N@` is disabled.
`only_subscriber_can_get_old_posts` | `only_subscriber_can_get_old_posts=no` | `yes` | If set to `yes`, only subscribers can retrieve old posts by sending email to `LISTNAME+get-N@`
`disable_retrieving_subscribers` | `disable_retrieving_subscribers=yes` | `yes` | If set to `yes`, (owner) retrieving subscribers by sending email to `LISTNAME+list@` is disabled. Note: only owner can send to such address.
`disable_send_copy_to_sender` | `disable_send_copy_to_sender=yes` | `yes` | If set to `yes`, senders won't receive copies of their own posts.
`notify_owner_when_sub_unsub` | `notify_owner_when_sub_unsub=no` | `no` | Notify the owner(s) when someone sub/unsubscribing to a mailing list.
`notify_sender_when_moderated` | `notify_sender_when_moderated=no` | `no` | Notify sender (based on the envelope from) when their post is being moderated.
`disable_archive` | `disable_archive=yes` | `no` | If set to `yes`, emails won't be saved in the archive but simply deleted.
`moderate_subscription` | `moderate_subscription=yes` | `no` | If set to `yes`, subscription will be moderated by owner(s) or moderators specified by `subscription_moderators`. Moderators specified by `subscription_moderators` has higher priority. If set to `no`, subscription is not moderated, also, all moderators which were specified by `subscription_moderators` will be removed.
`extra_addresses` | `extra_addresses=extra1@domain.com,extra2@domain.com` | | Define extra addresses of the mailing list.
`subscription_moderators` | `subscription_moderators=<mail1>,<mail2>,<mail3>` | | Specify subscription moderators. Note: if `subscription_moderators` is given, `moderate_subscription` will be set to `yes` automatically. If no valid moderators are given, subscription will be moderated by owner(s).
`owner` | `owner=<mail1>,<mail2>,<mail3>` | | Define owner(s) of the mailing list. Owners will get mails sent to `<listname>+owner@<domain.com>`.
`moderators` | `moderators=<mail1>,<mail2>` | | Specify moderators of the mailing list. Set to empty value will remove all existing moderators.
`max_message_size` | `max_message_size=10240` | | Specify max mail message size in __bytes__.
`subject_prefix` | `subject_prefix=[prefix text]` | | Add a prefix in the `Subject:` line of mails sent to the list. Set to empty value to remove it.
`custom_headers` | `custom_headers=<header1>:<value1>\n<header2>:<value2>` | | Add custom headers to every mail coming through. Multiple headers must be separated by `\n`. Set empty value to remove it. Note: mlmmjadmin will always add `X-Mailing-List: <mail>` and `Reply-To: <mail>` for each mailing list account.
`remove_headers` | `remove_headers=Message-ID,Received` | | Remove given mail headers. NOTE: either `header:` or `header` (without `:`) is ok. Note: mlmmjadmin will always remove `DKIM-Signature:` and `Authentication-Results:`.
`name` | `name=Short description of list` | | Set a short description of the mailing list account.
`footer_text` | `footer_text=footer in plain text` | | Append footer (in plain text format) to every email sent to the list.
`footer_html` | `footer_text=<p>footer in html</p>` | | Append footer (in html format) to every email sent to the list.
</div>
!!! api "`DELETE`{: .delete } `/api/ml/<mail>`{: .url } `Delete an existing mailing list`{: .comment } `Parameters`{: .has_params }"
<div class="params">
Parameter | Summary | Sample Usage
--- |--- |---
`keep_archive` | Archive account settings and messages before deleting the mailing list. | `keep_archive=no`
</div>
!!! api "`PUT`{: .put } `/api/ml/<mail>`{: .url } `Update profile of an existing mailing list`{: .comment } `Parameters`{: .has_params }"
<div class="params">
Parameter | Sample Usage | Default Value | Comment
--- |--- |---|---
`name` | `name=Sales Team` | | Display name of the mailing list.
`accountStatus` | `accountStatus=active` | | Enable or disable account. Possible values: `active`, `disabled`.
`maxMailSize` | `maxMailSize=1048576` (1M) | | Max message size (in bytes).
`accessPolicy` | `accessPolicy=membersonly` | | Defines who can send email to this mailing list. Possible values: `public`, `domain`, `subdomain`, `membersonly`, `moderatorsonly`.
`is_newsletter` | `is_newsletter=yes` | `no` | Mark this mailing list as a newsletter, to enable subscription/unsubscription from web site.
`newsletter_description` | `newsletter_description=short description text` | | The short description text displayed on newsletter subscription page.
`close_list` | `close_list=yes` | `no` | If set to `yes`, subscription and unsubscription via mail is disabled.
`only_moderator_can_post` | `only_moderator_can_post=yes` | `no` | If set to `yes`, only moderators are allowed to post to it. The check is made against the `From:` header.
`only_subscriber_can_post` | `only_subscriber_can_post=yes` | `yes` | If set to `yes`, only subscribed members are allowed to post to it. The check is made against the `From:` header.
`disable_subscription` | `disable_subscription=yes` | `no` | If set to `yes`, subscription is disabled, but unsubscription is still possible.
`disable_subscription_confirm` | `disable_subscription_confirm=yes` | | If set to `yes`, mlmmj won't send mail to subscriber to ask for confirmation to subscribe to the list. __WARNING__: This should in principle never ever be used, but there are times on local lists etc. where this is useful. HANDLE WITH CARE!
`disable_digest_subscription` | `disable_digest_subscription=yes` | | If set to `yes`, subscription to the digest version of the mailing list is disabled. Useful if you don't want to allow digests and notify users about it.
`disable_digest_text` | `disable_digest_text=yes` | | If set to `yes`, digest mails won't have a text part with a thread summary.
`disable_nomail_subscription` | `disable_nomail_subscription=yes` | | If set to `yes`, subscription to the 'nomail' version of the mailing list is disabled. Useful if you don't want to allow 'nomail' and notify users about it.
`moderated` | `moderated=yes` | `no` | If set to `yes`. Parameter `owner` __or__ `moderators` is required to specify the moderators. Note: `moderators` has higher priority (means only addresses specified by `moderators` are act as moderators).
`moderate_non_subscriber_post` | `moderate_non_subscriber_post=no` | `no` | If set to `yes`, all postings from people who are not allowed to post to the list will be moderated. Default (set to `no`) is denied.
`disable_retrieving_old_posts` | `disable_retrieving_old_posts=yes` | | If set to `yes`, retrieving old posts by sending email to address `<listname>+get-N@` is disabled.
`only_subscriber_can_get_old_posts` | `only_subscriber_can_get_old_posts=no` | `yes` | If set to `yes`, only subscribers can retrieve old posts by sending email to `LISTNAME+get-N@`
`disable_retrieving_subscribers` | `disable_retrieving_subscribers=yes` | `yes` | If set to `yes`, (owner) retrieving subscribers by sending email to `LISTNAME+list@` is disabled. Note: only owner can send to such address.
`disable_send_copy_to_sender` | `disable_send_copy_to_sender=yes` | `yes` | If set to `yes`, senders won't receive copies of their own posts.
`notify_owner_when_sub_unsub` | `notify_owner_when_sub_unsub=no` | `no` | Notify the owner(s) when someone sub/unsubscribing to a mailing list.
`notify_sender_when_moderated` | `notify_sender_when_moderated=no` | `no` | Notify sender (based on the envelope from) when their post is being moderated.
`disable_archive` | `disable_archive=yes` | `no` | If set to `yes`, emails won't be saved in the archive but simply deleted.
`moderate_subscription` | `moderate_subscription=yes` | `no` | If set to `yes`, subscription will be moderated by owner(s) or moderators specified by `subscription_moderators`. Moderators specified by `subscription_moderators` has higher priority. If set to `no`, subscription is not moderated, also, all moderators which were specified by `subscription_moderators` will be removed.
`extra_addresses` | `extra_addresses=extra1@domain.com,extra2@domain.com` | | Define extra addresses of the mailing list.
`subscription_moderators` | `subscription_moderators=<mail1>,<mail2>,<mail3>` | | Specify subscription moderators. Note: if `subscription_moderators` is given, `moderate_subscription` will be set to `yes` automatically. If no valid moderators are given, subscription will be moderated by owner(s).
`owner` | `owner=<mail1>,<mail2>,<mail3>` | | Define owner(s) of the mailing list. Owners will get mails sent to `<listname>+owner@<domain.com>`.
`moderators` | `moderators=<mail1>,<mail2>` | | Specify moderators of the mailing list. Set to empty value will remove all existing moderators.
`max_message_size` | `max_message_size=10240` | | Specify max mail message size in __bytes__.
`subject_prefix` | `subject_prefix=[prefix text]` | | Add a prefix in the `Subject:` line of mails sent to the list. Set to empty value to remove it.
`custom_headers` | `custom_headers=<header1>:<value1>\n<header2>:<value2>` | | Add custom headers to every mail coming through. Multiple headers must be separated by `\n`. Set empty value to remove it. Note: mlmmjadmin will always add `X-Mailing-List: <mail>` and `Reply-To: <mail>` for each mailing list account.
`remove_headers` | `remove_headers=Message-ID,Received` | | Remove given mail headers. NOTE: either `header:` or `header` (without `:`) is ok. Note: mlmmjadmin will always remove `DKIM-Signature:` and `Authentication-Results:`.
`name` | `name=Short description of list` | | Set a short description of the mailing list account.
`footer_text` | `footer_text=footer in plain text` | | Append footer (in plain text format) to every email sent to the list.
`footer_html` | `footer_text=<p>footer in html</p>` | | Append footer (in html format) to every email sent to the list.
</div>
### Mailing List (Unsubscribable) {: .toggle }
!!! attention
* This unsubscribable mailing list is only available in __LDAP__ backend.
* It's recommended to use the Subscribable Mailing List instead, you're
free to disable public subscribable.
!!! api "`GET`{: .get } `/api/maillist/<mail>`{: .url } `Get profile of an existing mailing list account`{: .comment }"
!!! api "`POST`{: .post } `/api/maillist/<mail>`{: .url } `Create a new mailing list`{: .comment } `Parameters`{: .has_params }"
@ -402,7 +519,16 @@ Notes:
</div>
!!! api "`DELETE`{: .delete } `/api/maillist/<mail>`{: .url } `Delete an existing mailing list`{: .comment }"
!!! api "`DELETE`{: .delete } `/api/maillist/<mail>`{: .url } `Delete an existing mailing list`{: .comment } `Parameters`{: .has_params }"
<div class="params">
Parameter | Summary | Sample Usage
--- |--- |---
`archive` | Archive subscribable mailing list before deleting the account. NOTE: This option is only applicable to the subscribable mailing list account. | `archive=no`
</div>
!!! api "`PUT`{: .put } `/api/maillist/<mail>`{: .url } `Update profile of an existing mailing list`{: .comment } `Parameters`{: .has_params }"
<div class="params">
@ -606,6 +732,30 @@ Notes:
## ChangeLog
### iRedAdmin-Pro-SQL-2.9.0, iRedAdmin-Pro-LDAP-3.1
* New: subscribable mailing list.
* Show allocated domain quota while getting domain profile
(`GET /api/domain/<domain>`).
* Able to manage alias domains while updating domain profile
(`GET /api/domain/<domain>`):
* `aliasDomains`: reset all alias domains
* `addAliasDomain`: add new alias domains
* `removeAliasDomain`: remove existing alias domains
* Parameter names changed while updating domain profile
(`PUT /api/domain/<domain>`):
* `enableService` was renamed to `addService`
* `disableService` was renamed to `removeService`
* `removeAllServices` was renamed to `services`
* iRedAdmin-Pro-LDAP-3.1:
* New user profile parameters (`PUT /api/user/<mail>`):
* `gn` - given name
* `sn` - surname
* Fixed:
- Not correctly detect existing mail accounts while updating
per-user mail forwarding addresses.
### iRedAdmin-Pro-SQL-2.8.0, iRedAdmin-Pro-LDAP-3.0
* NEW: Able to list all managed domains (`/domains`).

View File

@ -36,6 +36,7 @@
Version | Release Date | Upgrade tutorial | Comment
---|---|---|---
[0.9.8](https://forum.iredmail.org/) | Apr 3, 2018 | [Upgrade from iRedMail-0.9.7](./upgrade.iredmail.0.9.7-0.9.8.html) | Contains SQL/LDAP structure change
[0.9.7](https://forum.iredmail.org/topic12944.html) | Jul 1, 2017 | [Upgrade from iRedMail-0.9.6](./upgrade.iredmail.0.9.6-0.9.7.html) | Contains SQL structure change
[0.9.6](https://forum.iredmail.org/topic12262.html) | Jan 23, 2017 | [Upgrade from iRedMail-0.9.5-1](./upgrade.iredmail.0.9.5.1-0.9.6.html) | Contains SQL/LDAP structure changes
[0.9.5-1](https://forum.iredmail.org/topic11049.html) | May 10, 2016 | [Upgrade from iRedMail-0.9.5](./upgrade.iredmail.0.9.5-0.9.5-1.html) | Small bug fix release

View File

@ -22,7 +22,8 @@ this tutorial with just one shell command:
Version | Release Date | Comment | Extra
---|---|---|---
[3.0](https://forum.iredmail.org/topic13212.html) | Aug 24, 2017 | Bug fix release. | [RESTful API document](./iredadmin-pro.restful.api.html)
[3.1](https://forum.iredmail.org/) | Apr 3, 2018 | | [RESTful API document](./iredadmin-pro.restful.api.html)
[3.0](https://forum.iredmail.org/topic13212.html) | Aug 24, 2017 | Bug fix release. | [RESTful API document](./iredadmin-pro.restful.api-20180403.html)
[2.9.0](https://forum.iredmail.org/topic12946.html) | Jul 1, 2017 | Bug fix release. | [RESTful API document](./iredadmin-pro.restful.api-20170824.html)
[2.8.0](https://forum.iredmail.org/topic12499.html) | Mar 21, 2017 | Bug fix release. | [RESTful API document](./iredadmin-pro.restful.api-20170123.html)
[2.7.0](https://forum.iredmail.org/topic12266.html) | Jan 23, 2017 | Improved RESTful API support. | [RESTful API document](./iredadmin-pro.restful.api-20170123.html)
@ -56,7 +57,8 @@ Version | Release Date | Comment | Extra
Version | Release Date | Comment | RESTful API Document
---|---|---|---
[2.8.0](https://forum.iredmail.org/topic13213.html) | Aug 24, 2017 | Bug fix release. | [RESTful API document](./iredadmin-pro.restful.api.html)
[2.9.0](https://forum.iredmail.org/topic13213.html) | Apr 3, 2018 | | [RESTful API document](./iredadmin-pro.restful.api.html)
[2.8.0](https://forum.iredmail.org/topic13213.html) | Aug 24, 2017 | Bug fix release. | [RESTful API document](./iredadmin-pro.restful.api-20180403.html)
[2.7.0](https://forum.iredmail.org/topic12945.html) | Jul 1, 2017 | Bug fix release. | [RESTful API document](./iredadmin-pro.restful.api-20170824.html)
[2.6.0](https://forum.iredmail.org/topic12498.html) | Mar 21, 2017 | Bug fix release. | [RESTful API document](./iredadmin-pro.restful.api-20170123.html)
[2.5.0](https://forum.iredmail.org/topic12267.html) | Jan 23, 2017 | Improved RESTful API support. | [RESTful API document](./iredadmin-pro.restful.api-20170123.html)

View File

@ -56,10 +56,16 @@ this tutorial with just one shell command:</p>
</thead>
<tbody>
<tr>
<td><a href="https://forum.iredmail.org/">3.1</a></td>
<td>Apr 3, 2018</td>
<td></td>
<td><a href="./iredadmin-pro.restful.api.html">RESTful API document</a></td>
</tr>
<tr>
<td><a href="https://forum.iredmail.org/topic13212.html">3.0</a></td>
<td>Aug 24, 2017</td>
<td>Bug fix release.</td>
<td><a href="./iredadmin-pro.restful.api.html">RESTful API document</a></td>
<td><a href="./iredadmin-pro.restful.api-20180403.html">RESTful API document</a></td>
</tr>
<tr>
<td><a href="https://forum.iredmail.org/topic12946.html">2.9.0</a></td>
@ -243,10 +249,16 @@ this tutorial with just one shell command:</p>
</thead>
<tbody>
<tr>
<td><a href="https://forum.iredmail.org/topic13213.html">2.9.0</a></td>
<td>Apr 3, 2018</td>
<td></td>
<td><a href="./iredadmin-pro.restful.api.html">RESTful API document</a></td>
</tr>
<tr>
<td><a href="https://forum.iredmail.org/topic13213.html">2.8.0</a></td>
<td>Aug 24, 2017</td>
<td>Bug fix release.</td>
<td><a href="./iredadmin-pro.restful.api.html">RESTful API document</a></td>
<td><a href="./iredadmin-pro.restful.api-20180403.html">RESTful API document</a></td>
</tr>
<tr>
<td><a href="https://forum.iredmail.org/topic12945.html">2.7.0</a></td>

View File

@ -27,8 +27,7 @@
<li><a href="#domain">Domain</a></li>
<li><a href="#domain-admin">Domain Admin</a></li>
<li><a href="#mail-user">Mail User</a></li>
<li><a href="#new-subscribable-mailing-list">[NEW] Subscribable Mailing List</a></li>
<li><a href="#mailing-list-unsubscribable">Mailing List (Unsubscribable)</a></li>
<li><a href="#mailing-list">Mailing List</a></li>
<li><a href="#mail-alias">Mail Alias</a></li>
<li><a href="#spam-policy">Spam Policy</a></li>
<li><a href="#throttling">Throttling</a></li>
@ -40,7 +39,6 @@
</ul>
</li>
<li><a href="#changelog">ChangeLog</a><ul>
<li><a href="#iredadmin-pro-sql-290-iredadmin-pro-ldap-31">iRedAdmin-Pro-SQL-2.9.0, iRedAdmin-Pro-LDAP-3.1</a></li>
<li><a href="#iredadmin-pro-sql-280-iredadmin-pro-ldap-30">iRedAdmin-Pro-SQL-2.8.0, iRedAdmin-Pro-LDAP-3.0</a></li>
<li><a href="#iredadmin-pro-sql-270-iredadmin-pro-ldap-290">iRedAdmin-Pro-SQL-2.7.0, iRedAdmin-Pro-LDAP-2.9.0</a></li>
<li><a href="#iredadmin-pro-sql-260-iredadmin-pro-ldap-280">iRedAdmin-Pro-SQL-2.6.0, iRedAdmin-Pro-LDAP-2.8.0</a></li>
@ -53,8 +51,8 @@
<div class="admonition attention">
<p class="admonition-title">Attention</p>
<ul>
<li>This document is applicable to <code>iRedAdmin-Pro-SQL-2.9.0</code> and
<code>iRedAdmin-Pro-LDAP-3.1</code>. If you're running an old release, please
<li>This document is applicable to <code>iRedAdmin-Pro-SQL-2.8.0</code> and
<code>iRedAdmin-Pro-LDAP-3.0</code>. If you're running an old release, please
upgrade iRedAdmin-Pro to the latest release, or check
<a href="./iredadmin-pro.releases.html">document for old releases</a>.</li>
<li>If you need an API which has not yet been implemented, don't hesitate to
@ -350,34 +348,19 @@ RESTFUL_API_CLIENTS = ['172.16.244.1', ...]
<td><code>outboundRelay=smtp:[192.168.1.2]:25</code> or <code>outboundRelay=</code> (disable outbound relay)</td>
</tr>
<tr>
<td><code>addAliasDomain</code></td>
<td>Add new alias domains. Multiple services must be separated by comma.</td>
<td><code>addAliasDomain=alias1.com,alias2.com</code></td>
</tr>
<tr>
<td><code>removeAliasDomain</code></td>
<td>Remove existing alias domains. Multiple services must be separated by comma.</td>
<td><code>removeAllServices=alias1.com,alias2.com</code></td>
</tr>
<tr>
<td><code>aliasDomains</code></td>
<td>Reset all alias domains. If empty, all existing alias domains will be removed. Conflicts with parameter <code>addAliasDomain</code> and <code>removeAliasDomain</code>.</td>
<td><code>aliasDomains=alias1.com,alias2.com</code></td>
</tr>
<tr>
<td><code>addService</code></td>
<td><code>enableService</code></td>
<td>Enable new services. Multiple services must be separated by comma. Available services are listed below.</td>
<td><code>addService=self-service</code></td>
<td><code>enableService=self-service</code></td>
</tr>
<tr>
<td><code>removeService</code></td>
<td><code>disableService</code></td>
<td>Disable existing services. Multiple services must be separated by comma. Available services are listed below.</td>
<td><code>removeService=self-service</code></td>
<td><code>disableService=self-service</code></td>
</tr>
<tr>
<td><code>services</code></td>
<td>Reset all services. If empty, all existing services will be removed.</td>
<td><code>services=mail,self-service</code></td>
<td><code>removeAllServices</code></td>
<td>Disable all services (including mail service)</td>
<td><code>removeAllServices=</code> (empty value)</td>
</tr>
<tr>
<td><code>disableDomainProfile</code></td>
@ -426,19 +409,19 @@ RESTFUL_API_CLIENTS = ['172.16.244.1', ...]
</tr>
<tr>
<td>mail</td>
<td>All mail services. (<strong>LDAP backends only</strong>)</td>
<td>All mail services. (LDAP backends only)</td>
</tr>
<tr>
<td>domainalias</td>
<td>Alias domain support. (<strong>LDAP backends only</strong>)</td>
<td>Alias domain support. (LDAP backends only)</td>
</tr>
<tr>
<td>senderbcc</td>
<td>Per-domain sender bcc. (<strong>LDAP backends only</strong>)</td>
<td>Per-domain sender bcc. (LDAP backends only)</td>
</tr>
<tr>
<td>recipientbcc</td>
<td>Per-domain recipient bcc. (<strong>LDAP backends only</strong>)</td>
<td>Per-domain recipient bcc. (LDAP backends only)</td>
</tr>
</tbody>
</table>
@ -703,16 +686,6 @@ to be a domain admin.</p>
<td>how many mailing lists this admin can create. It's shared by all domains created/managed by this admin.</td>
<td><code>maxLists=300</code></td>
</tr>
<tr>
<td><code>disableViewingMailLog</code></td>
<td>Disallow this admin to view log of inbound/outbound mails.</td>
<td><code>disableViewingMailLog=yes</code> (or <code>no</code>)</td>
</tr>
<tr>
<td><code>disableManagingQuarantinedMails</code></td>
<td>Disallow this admin to manage quarantined mails.</td>
<td><code>disableManagingQuarantinedMails=yes</code> (or <code>no</code>)</td>
</tr>
</tbody>
</table>
</div>
@ -801,16 +774,6 @@ to be a domain admin.</p>
<td>how many mailing lists this admin can create. It's shared by all domains created/managed by this admin.</td>
<td><code>maxLists=300</code></td>
</tr>
<tr>
<td><code>disableViewingMailLog</code></td>
<td>Disallow this admin to view log of inbound/outbound mails.</td>
<td><code>disableViewingMailLog=yes</code> (or <code>no</code>)</td>
</tr>
<tr>
<td><code>disableManagingQuarantinedMails</code></td>
<td>Disallow this admin to manage quarantined mails.</td>
<td><code>disableManagingQuarantinedMails=yes</code> (or <code>no</code>)</td>
</tr>
</tbody>
</table>
</div>
@ -907,17 +870,7 @@ to be a domain admin.</p>
<tr>
<td><code>name</code></td>
<td>Display name</td>
<td><code>name=Michael Jordon</code></td>
</tr>
<tr>
<td><code>gn</code></td>
<td>Given name</td>
<td><code>gn=Jordon</code></td>
</tr>
<tr>
<td><code>sn</code></td>
<td>Surname</td>
<td><code>sn=Jeffery</code></td>
<td><code>name=My New Name</code></td>
</tr>
<tr>
<td><code>password</code></td>
@ -1088,507 +1041,11 @@ to be a domain admin.</p>
</div>
</div>
<h3 class="toggle" id="new-subscribable-mailing-list">[NEW] Subscribable Mailing List</h3>
<h3 class="toggle" id="mailing-list">Mailing List</h3>
<div class="admonition attention">
<p class="admonition-title">Attention</p>
<ul>
<li>Subscribable mailing list requires iRedMail-0.9.8 and later releases,
it's implemented with <a href="http://mlmmj.org"><code>mlmmj</code></a> mailing list manager.</li>
<li>It's available for both SQL and LDAP backends.</li>
</ul>
</div>
<div class="admonition api">
<p class="admonition-title"><code class="get">GET</code> <code class="url">/api/ml/&lt;mail&gt;</code> <code class="comment">Get profile of an existing mailing list account</code></p>
</div>
<div class="admonition api">
<p class="admonition-title"><code class="post">POST</code> <code class="url">/api/ml/&lt;mail&gt;</code> <code class="comment">Create a new mailing list</code> <code class="has_params">Parameters</code></p>
<div class="params">
<table>
<thead>
<tr>
<th>Parameter</th>
<th>Sample Usage</th>
<th>Default Value</th>
<th>Comment</th>
</tr>
</thead>
<tbody>
<tr>
<td><code>name</code></td>
<td><code>name=Sales Team</code></td>
<td></td>
<td>Display name of the mailing list.</td>
</tr>
<tr>
<td><code>accountStatus</code></td>
<td><code>accountStatus=active</code></td>
<td></td>
<td>Enable or disable account. Possible values: <code>active</code>, <code>disabled</code>.</td>
</tr>
<tr>
<td><code>maxMailSize</code></td>
<td><code>maxMailSize=1048576</code> (1M)</td>
<td></td>
<td>Max message size (in bytes).</td>
</tr>
<tr>
<td><code>accessPolicy</code></td>
<td><code>accessPolicy=membersonly</code></td>
<td></td>
<td>Defines who can send email to this mailing list. Possible values: <code>public</code>, <code>domain</code>, <code>subdomain</code>, <code>membersonly</code>, <code>moderatorsonly</code>.</td>
</tr>
<tr>
<td><code>is_newsletter</code></td>
<td><code>is_newsletter=yes</code></td>
<td><code>no</code></td>
<td>Mark this mailing list as a newsletter, to enable subscription/unsubscription from web site.</td>
</tr>
<tr>
<td><code>newsletter_description</code></td>
<td><code>newsletter_description=short description text</code></td>
<td></td>
<td>The short description text displayed on newsletter subscription page.</td>
</tr>
<tr>
<td><code>close_list</code></td>
<td><code>close_list=yes</code></td>
<td><code>no</code></td>
<td>If set to <code>yes</code>, subscription and unsubscription via mail is disabled.</td>
</tr>
<tr>
<td><code>only_moderator_can_post</code></td>
<td><code>only_moderator_can_post=yes</code></td>
<td><code>no</code></td>
<td>If set to <code>yes</code>, only moderators are allowed to post to it. The check is made against the <code>From:</code> header.</td>
</tr>
<tr>
<td><code>only_subscriber_can_post</code></td>
<td><code>only_subscriber_can_post=yes</code></td>
<td><code>yes</code></td>
<td>If set to <code>yes</code>, only subscribed members are allowed to post to it. The check is made against the <code>From:</code> header.</td>
</tr>
<tr>
<td><code>disable_subscription</code></td>
<td><code>disable_subscription=yes</code></td>
<td><code>no</code></td>
<td>If set to <code>yes</code>, subscription is disabled, but unsubscription is still possible.</td>
</tr>
<tr>
<td><code>disable_subscription_confirm</code></td>
<td><code>disable_subscription_confirm=yes</code></td>
<td></td>
<td>If set to <code>yes</code>, mlmmj won't send mail to subscriber to ask for confirmation to subscribe to the list. <strong>WARNING</strong>: This should in principle never ever be used, but there are times on local lists etc. where this is useful. HANDLE WITH CARE!</td>
</tr>
<tr>
<td><code>disable_digest_subscription</code></td>
<td><code>disable_digest_subscription=yes</code></td>
<td></td>
<td>If set to <code>yes</code>, subscription to the digest version of the mailing list is disabled. Useful if you don't want to allow digests and notify users about it.</td>
</tr>
<tr>
<td><code>disable_digest_text</code></td>
<td><code>disable_digest_text=yes</code></td>
<td></td>
<td>If set to <code>yes</code>, digest mails won't have a text part with a thread summary.</td>
</tr>
<tr>
<td><code>disable_nomail_subscription</code></td>
<td><code>disable_nomail_subscription=yes</code></td>
<td></td>
<td>If set to <code>yes</code>, subscription to the 'nomail' version of the mailing list is disabled. Useful if you don't want to allow 'nomail' and notify users about it.</td>
</tr>
<tr>
<td><code>moderated</code></td>
<td><code>moderated=yes</code></td>
<td><code>no</code></td>
<td>If set to <code>yes</code>. Parameter <code>owner</code> <strong>or</strong> <code>moderators</code> is required to specify the moderators. Note: <code>moderators</code> has higher priority (means only addresses specified by <code>moderators</code> are act as moderators).</td>
</tr>
<tr>
<td><code>moderate_non_subscriber_post</code></td>
<td><code>moderate_non_subscriber_post=no</code></td>
<td><code>no</code></td>
<td>If set to <code>yes</code>, all postings from people who are not allowed to post to the list will be moderated. Default (set to <code>no</code>) is denied.</td>
</tr>
<tr>
<td><code>disable_retrieving_old_posts</code></td>
<td><code>disable_retrieving_old_posts=yes</code></td>
<td></td>
<td>If set to <code>yes</code>, retrieving old posts by sending email to address <code>&lt;listname&gt;+get-N@</code> is disabled.</td>
</tr>
<tr>
<td><code>only_subscriber_can_get_old_posts</code></td>
<td><code>only_subscriber_can_get_old_posts=no</code></td>
<td><code>yes</code></td>
<td>If set to <code>yes</code>, only subscribers can retrieve old posts by sending email to <code>LISTNAME+get-N@</code></td>
</tr>
<tr>
<td><code>disable_retrieving_subscribers</code></td>
<td><code>disable_retrieving_subscribers=yes</code></td>
<td><code>yes</code></td>
<td>If set to <code>yes</code>, (owner) retrieving subscribers by sending email to <code>LISTNAME+list@</code> is disabled. Note: only owner can send to such address.</td>
</tr>
<tr>
<td><code>disable_send_copy_to_sender</code></td>
<td><code>disable_send_copy_to_sender=yes</code></td>
<td><code>yes</code></td>
<td>If set to <code>yes</code>, senders won't receive copies of their own posts.</td>
</tr>
<tr>
<td><code>notify_owner_when_sub_unsub</code></td>
<td><code>notify_owner_when_sub_unsub=no</code></td>
<td><code>no</code></td>
<td>Notify the owner(s) when someone sub/unsubscribing to a mailing list.</td>
</tr>
<tr>
<td><code>notify_sender_when_moderated</code></td>
<td><code>notify_sender_when_moderated=no</code></td>
<td><code>no</code></td>
<td>Notify sender (based on the envelope from) when their post is being moderated.</td>
</tr>
<tr>
<td><code>disable_archive</code></td>
<td><code>disable_archive=yes</code></td>
<td><code>no</code></td>
<td>If set to <code>yes</code>, emails won't be saved in the archive but simply deleted.</td>
</tr>
<tr>
<td><code>moderate_subscription</code></td>
<td><code>moderate_subscription=yes</code></td>
<td><code>no</code></td>
<td>If set to <code>yes</code>, subscription will be moderated by owner(s) or moderators specified by <code>subscription_moderators</code>. Moderators specified by <code>subscription_moderators</code> has higher priority. If set to <code>no</code>, subscription is not moderated, also, all moderators which were specified by <code>subscription_moderators</code> will be removed.</td>
</tr>
<tr>
<td><code>extra_addresses</code></td>
<td><code>extra_addresses=extra1@domain.com,extra2@domain.com</code></td>
<td></td>
<td>Define extra addresses of the mailing list.</td>
</tr>
<tr>
<td><code>subscription_moderators</code></td>
<td><code>subscription_moderators=&lt;mail1&gt;,&lt;mail2&gt;,&lt;mail3&gt;</code></td>
<td></td>
<td>Specify subscription moderators. Note: if <code>subscription_moderators</code> is given, <code>moderate_subscription</code> will be set to <code>yes</code> automatically. If no valid moderators are given, subscription will be moderated by owner(s).</td>
</tr>
<tr>
<td><code>owner</code></td>
<td><code>owner=&lt;mail1&gt;,&lt;mail2&gt;,&lt;mail3&gt;</code></td>
<td></td>
<td>Define owner(s) of the mailing list. Owners will get mails sent to <code>&lt;listname&gt;+owner@&lt;domain.com&gt;</code>.</td>
</tr>
<tr>
<td><code>moderators</code></td>
<td><code>moderators=&lt;mail1&gt;,&lt;mail2&gt;</code></td>
<td></td>
<td>Specify moderators of the mailing list. Set to empty value will remove all existing moderators.</td>
</tr>
<tr>
<td><code>max_message_size</code></td>
<td><code>max_message_size=10240</code></td>
<td></td>
<td>Specify max mail message size in <strong>bytes</strong>.</td>
</tr>
<tr>
<td><code>subject_prefix</code></td>
<td><code>subject_prefix=[prefix text]</code></td>
<td></td>
<td>Add a prefix in the <code>Subject:</code> line of mails sent to the list. Set to empty value to remove it.</td>
</tr>
<tr>
<td><code>custom_headers</code></td>
<td><code>custom_headers=&lt;header1&gt;:&lt;value1&gt;\n&lt;header2&gt;:&lt;value2&gt;</code></td>
<td></td>
<td>Add custom headers to every mail coming through. Multiple headers must be separated by <code>\n</code>. Set empty value to remove it. Note: mlmmjadmin will always add <code>X-Mailing-List: &lt;mail&gt;</code> and <code>Reply-To: &lt;mail&gt;</code> for each mailing list account.</td>
</tr>
<tr>
<td><code>remove_headers</code></td>
<td><code>remove_headers=Message-ID,Received</code></td>
<td></td>
<td>Remove given mail headers. NOTE: either <code>header:</code> or <code>header</code> (without <code>:</code>) is ok. Note: mlmmjadmin will always remove <code>DKIM-Signature:</code> and <code>Authentication-Results:</code>.</td>
</tr>
<tr>
<td><code>name</code></td>
<td><code>name=Short description of list</code></td>
<td></td>
<td>Set a short description of the mailing list account.</td>
</tr>
<tr>
<td><code>footer_text</code></td>
<td><code>footer_text=footer in plain text</code></td>
<td></td>
<td>Append footer (in plain text format) to every email sent to the list.</td>
</tr>
<tr>
<td><code>footer_html</code></td>
<td><code>footer_text=&lt;p&gt;footer in html&lt;/p&gt;</code></td>
<td></td>
<td>Append footer (in html format) to every email sent to the list.</td>
</tr>
</tbody>
</table>
</div>
</div>
<div class="admonition api">
<p class="admonition-title"><code class="delete">DELETE</code> <code class="url">/api/ml/&lt;mail&gt;</code> <code class="comment">Delete an existing mailing list</code> <code class="has_params">Parameters</code></p>
<div class="params">
<table>
<thead>
<tr>
<th>Parameter</th>
<th>Summary</th>
<th>Sample Usage</th>
</tr>
</thead>
<tbody>
<tr>
<td><code>keep_archive</code></td>
<td>Archive account settings and messages before deleting the mailing list.</td>
<td><code>keep_archive=no</code></td>
</tr>
</tbody>
</table>
</div>
</div>
<div class="admonition api">
<p class="admonition-title"><code class="put">PUT</code> <code class="url">/api/ml/&lt;mail&gt;</code> <code class="comment">Update profile of an existing mailing list</code> <code class="has_params">Parameters</code></p>
<div class="params">
<table>
<thead>
<tr>
<th>Parameter</th>
<th>Sample Usage</th>
<th>Default Value</th>
<th>Comment</th>
</tr>
</thead>
<tbody>
<tr>
<td><code>name</code></td>
<td><code>name=Sales Team</code></td>
<td></td>
<td>Display name of the mailing list.</td>
</tr>
<tr>
<td><code>accountStatus</code></td>
<td><code>accountStatus=active</code></td>
<td></td>
<td>Enable or disable account. Possible values: <code>active</code>, <code>disabled</code>.</td>
</tr>
<tr>
<td><code>maxMailSize</code></td>
<td><code>maxMailSize=1048576</code> (1M)</td>
<td></td>
<td>Max message size (in bytes).</td>
</tr>
<tr>
<td><code>accessPolicy</code></td>
<td><code>accessPolicy=membersonly</code></td>
<td></td>
<td>Defines who can send email to this mailing list. Possible values: <code>public</code>, <code>domain</code>, <code>subdomain</code>, <code>membersonly</code>, <code>moderatorsonly</code>.</td>
</tr>
<tr>
<td><code>is_newsletter</code></td>
<td><code>is_newsletter=yes</code></td>
<td><code>no</code></td>
<td>Mark this mailing list as a newsletter, to enable subscription/unsubscription from web site.</td>
</tr>
<tr>
<td><code>newsletter_description</code></td>
<td><code>newsletter_description=short description text</code></td>
<td></td>
<td>The short description text displayed on newsletter subscription page.</td>
</tr>
<tr>
<td><code>close_list</code></td>
<td><code>close_list=yes</code></td>
<td><code>no</code></td>
<td>If set to <code>yes</code>, subscription and unsubscription via mail is disabled.</td>
</tr>
<tr>
<td><code>only_moderator_can_post</code></td>
<td><code>only_moderator_can_post=yes</code></td>
<td><code>no</code></td>
<td>If set to <code>yes</code>, only moderators are allowed to post to it. The check is made against the <code>From:</code> header.</td>
</tr>
<tr>
<td><code>only_subscriber_can_post</code></td>
<td><code>only_subscriber_can_post=yes</code></td>
<td><code>yes</code></td>
<td>If set to <code>yes</code>, only subscribed members are allowed to post to it. The check is made against the <code>From:</code> header.</td>
</tr>
<tr>
<td><code>disable_subscription</code></td>
<td><code>disable_subscription=yes</code></td>
<td><code>no</code></td>
<td>If set to <code>yes</code>, subscription is disabled, but unsubscription is still possible.</td>
</tr>
<tr>
<td><code>disable_subscription_confirm</code></td>
<td><code>disable_subscription_confirm=yes</code></td>
<td></td>
<td>If set to <code>yes</code>, mlmmj won't send mail to subscriber to ask for confirmation to subscribe to the list. <strong>WARNING</strong>: This should in principle never ever be used, but there are times on local lists etc. where this is useful. HANDLE WITH CARE!</td>
</tr>
<tr>
<td><code>disable_digest_subscription</code></td>
<td><code>disable_digest_subscription=yes</code></td>
<td></td>
<td>If set to <code>yes</code>, subscription to the digest version of the mailing list is disabled. Useful if you don't want to allow digests and notify users about it.</td>
</tr>
<tr>
<td><code>disable_digest_text</code></td>
<td><code>disable_digest_text=yes</code></td>
<td></td>
<td>If set to <code>yes</code>, digest mails won't have a text part with a thread summary.</td>
</tr>
<tr>
<td><code>disable_nomail_subscription</code></td>
<td><code>disable_nomail_subscription=yes</code></td>
<td></td>
<td>If set to <code>yes</code>, subscription to the 'nomail' version of the mailing list is disabled. Useful if you don't want to allow 'nomail' and notify users about it.</td>
</tr>
<tr>
<td><code>moderated</code></td>
<td><code>moderated=yes</code></td>
<td><code>no</code></td>
<td>If set to <code>yes</code>. Parameter <code>owner</code> <strong>or</strong> <code>moderators</code> is required to specify the moderators. Note: <code>moderators</code> has higher priority (means only addresses specified by <code>moderators</code> are act as moderators).</td>
</tr>
<tr>
<td><code>moderate_non_subscriber_post</code></td>
<td><code>moderate_non_subscriber_post=no</code></td>
<td><code>no</code></td>
<td>If set to <code>yes</code>, all postings from people who are not allowed to post to the list will be moderated. Default (set to <code>no</code>) is denied.</td>
</tr>
<tr>
<td><code>disable_retrieving_old_posts</code></td>
<td><code>disable_retrieving_old_posts=yes</code></td>
<td></td>
<td>If set to <code>yes</code>, retrieving old posts by sending email to address <code>&lt;listname&gt;+get-N@</code> is disabled.</td>
</tr>
<tr>
<td><code>only_subscriber_can_get_old_posts</code></td>
<td><code>only_subscriber_can_get_old_posts=no</code></td>
<td><code>yes</code></td>
<td>If set to <code>yes</code>, only subscribers can retrieve old posts by sending email to <code>LISTNAME+get-N@</code></td>
</tr>
<tr>
<td><code>disable_retrieving_subscribers</code></td>
<td><code>disable_retrieving_subscribers=yes</code></td>
<td><code>yes</code></td>
<td>If set to <code>yes</code>, (owner) retrieving subscribers by sending email to <code>LISTNAME+list@</code> is disabled. Note: only owner can send to such address.</td>
</tr>
<tr>
<td><code>disable_send_copy_to_sender</code></td>
<td><code>disable_send_copy_to_sender=yes</code></td>
<td><code>yes</code></td>
<td>If set to <code>yes</code>, senders won't receive copies of their own posts.</td>
</tr>
<tr>
<td><code>notify_owner_when_sub_unsub</code></td>
<td><code>notify_owner_when_sub_unsub=no</code></td>
<td><code>no</code></td>
<td>Notify the owner(s) when someone sub/unsubscribing to a mailing list.</td>
</tr>
<tr>
<td><code>notify_sender_when_moderated</code></td>
<td><code>notify_sender_when_moderated=no</code></td>
<td><code>no</code></td>
<td>Notify sender (based on the envelope from) when their post is being moderated.</td>
</tr>
<tr>
<td><code>disable_archive</code></td>
<td><code>disable_archive=yes</code></td>
<td><code>no</code></td>
<td>If set to <code>yes</code>, emails won't be saved in the archive but simply deleted.</td>
</tr>
<tr>
<td><code>moderate_subscription</code></td>
<td><code>moderate_subscription=yes</code></td>
<td><code>no</code></td>
<td>If set to <code>yes</code>, subscription will be moderated by owner(s) or moderators specified by <code>subscription_moderators</code>. Moderators specified by <code>subscription_moderators</code> has higher priority. If set to <code>no</code>, subscription is not moderated, also, all moderators which were specified by <code>subscription_moderators</code> will be removed.</td>
</tr>
<tr>
<td><code>extra_addresses</code></td>
<td><code>extra_addresses=extra1@domain.com,extra2@domain.com</code></td>
<td></td>
<td>Define extra addresses of the mailing list.</td>
</tr>
<tr>
<td><code>subscription_moderators</code></td>
<td><code>subscription_moderators=&lt;mail1&gt;,&lt;mail2&gt;,&lt;mail3&gt;</code></td>
<td></td>
<td>Specify subscription moderators. Note: if <code>subscription_moderators</code> is given, <code>moderate_subscription</code> will be set to <code>yes</code> automatically. If no valid moderators are given, subscription will be moderated by owner(s).</td>
</tr>
<tr>
<td><code>owner</code></td>
<td><code>owner=&lt;mail1&gt;,&lt;mail2&gt;,&lt;mail3&gt;</code></td>
<td></td>
<td>Define owner(s) of the mailing list. Owners will get mails sent to <code>&lt;listname&gt;+owner@&lt;domain.com&gt;</code>.</td>
</tr>
<tr>
<td><code>moderators</code></td>
<td><code>moderators=&lt;mail1&gt;,&lt;mail2&gt;</code></td>
<td></td>
<td>Specify moderators of the mailing list. Set to empty value will remove all existing moderators.</td>
</tr>
<tr>
<td><code>max_message_size</code></td>
<td><code>max_message_size=10240</code></td>
<td></td>
<td>Specify max mail message size in <strong>bytes</strong>.</td>
</tr>
<tr>
<td><code>subject_prefix</code></td>
<td><code>subject_prefix=[prefix text]</code></td>
<td></td>
<td>Add a prefix in the <code>Subject:</code> line of mails sent to the list. Set to empty value to remove it.</td>
</tr>
<tr>
<td><code>custom_headers</code></td>
<td><code>custom_headers=&lt;header1&gt;:&lt;value1&gt;\n&lt;header2&gt;:&lt;value2&gt;</code></td>
<td></td>
<td>Add custom headers to every mail coming through. Multiple headers must be separated by <code>\n</code>. Set empty value to remove it. Note: mlmmjadmin will always add <code>X-Mailing-List: &lt;mail&gt;</code> and <code>Reply-To: &lt;mail&gt;</code> for each mailing list account.</td>
</tr>
<tr>
<td><code>remove_headers</code></td>
<td><code>remove_headers=Message-ID,Received</code></td>
<td></td>
<td>Remove given mail headers. NOTE: either <code>header:</code> or <code>header</code> (without <code>:</code>) is ok. Note: mlmmjadmin will always remove <code>DKIM-Signature:</code> and <code>Authentication-Results:</code>.</td>
</tr>
<tr>
<td><code>name</code></td>
<td><code>name=Short description of list</code></td>
<td></td>
<td>Set a short description of the mailing list account.</td>
</tr>
<tr>
<td><code>footer_text</code></td>
<td><code>footer_text=footer in plain text</code></td>
<td></td>
<td>Append footer (in plain text format) to every email sent to the list.</td>
</tr>
<tr>
<td><code>footer_html</code></td>
<td><code>footer_text=&lt;p&gt;footer in html&lt;/p&gt;</code></td>
<td></td>
<td>Append footer (in html format) to every email sent to the list.</td>
</tr>
</tbody>
</table>
</div>
</div>
<h3 class="toggle" id="mailing-list-unsubscribable">Mailing List (Unsubscribable)</h3>
<div class="admonition attention">
<p class="admonition-title">Attention</p>
<ul>
<li>This unsubscribable mailing list is only available in <strong>LDAP</strong> backend.</li>
<li>It's recommended to use the Subscribable Mailing List instead, you're
free to disable public subscribable.</li>
</ul>
<p>Mailing list is only available in OpenLDAP backend. For SQL backends,
please use mail alias account as mailing list.</p>
</div>
<div class="admonition api">
<p class="admonition-title"><code class="get">GET</code> <code class="url">/api/maillist/&lt;mail&gt;</code> <code class="comment">Get profile of an existing mailing list account</code></p>
@ -1627,27 +1084,7 @@ to be a domain admin.</p>
</div>
<div class="admonition api">
<p class="admonition-title"><code class="delete">DELETE</code> <code class="url">/api/maillist/&lt;mail&gt;</code> <code class="comment">Delete an existing mailing list</code> <code class="has_params">Parameters</code></p>
<div class="params">
<table>
<thead>
<tr>
<th>Parameter</th>
<th>Summary</th>
<th>Sample Usage</th>
</tr>
</thead>
<tbody>
<tr>
<td><code>archive</code></td>
<td>Archive subscribable mailing list before deleting the account. NOTE: This option is only applicable to the subscribable mailing list account.</td>
<td><code>archive=no</code></td>
</tr>
</tbody>
</table>
</div>
<p class="admonition-title"><code class="delete">DELETE</code> <code class="url">/api/maillist/&lt;mail&gt;</code> <code class="comment">Delete an existing mailing list</code></p>
</div>
<div class="admonition api">
<p class="admonition-title"><code class="put">PUT</code> <code class="url">/api/maillist/&lt;mail&gt;</code> <code class="comment">Update profile of an existing mailing list</code> <code class="has_params">Parameters</code></p>
@ -2152,43 +1589,6 @@ to be a domain admin.</p>
<p class="admonition-title"><code class="get">GET</code> <code class="url">/api/ldif/alias/&lt;mail&gt;</code> <code class="comment">Export mail alias account to LDIF</code></p>
</div>
<h2 id="changelog">ChangeLog</h2>
<h3 id="iredadmin-pro-sql-290-iredadmin-pro-ldap-31">iRedAdmin-Pro-SQL-2.9.0, iRedAdmin-Pro-LDAP-3.1</h3>
<ul>
<li>New: subscribable mailing list.</li>
<li>Show allocated domain quota while getting domain profile
(<code>GET /api/domain/&lt;domain&gt;</code>).</li>
<li>Able to manage alias domains while updating domain profile
(<code>GET /api/domain/&lt;domain&gt;</code>):<ul>
<li><code>aliasDomains</code>: reset all alias domains</li>
<li><code>addAliasDomain</code>: add new alias domains</li>
<li><code>removeAliasDomain</code>: remove existing alias domains</li>
</ul>
</li>
<li>
<p>Parameter names changed while updating domain profile
(<code>PUT /api/domain/&lt;domain&gt;</code>):</p>
<ul>
<li><code>enableService</code> was renamed to <code>addService</code></li>
<li><code>disableService</code> was renamed to <code>removeService</code></li>
<li><code>removeAllServices</code> was renamed to <code>services</code></li>
</ul>
</li>
<li>
<p>iRedAdmin-Pro-LDAP-3.1:</p>
<ul>
<li>New user profile parameters (<code>PUT /api/user/&lt;mail&gt;</code>):<ul>
<li><code>gn</code> - given name</li>
<li><code>sn</code> - surname</li>
</ul>
</li>
<li>Fixed:<ul>
<li>Not correctly detect existing mail accounts while updating
per-user mail forwarding addresses.</li>
</ul>
</li>
</ul>
</li>
</ul>
<h3 id="iredadmin-pro-sql-280-iredadmin-pro-ldap-30">iRedAdmin-Pro-SQL-2.8.0, iRedAdmin-Pro-LDAP-3.0</h3>
<ul>
<li>NEW: Able to list all managed domains (<code>/domains</code>).</li>

View File

@ -27,7 +27,8 @@
<li><a href="#domain">Domain</a></li>
<li><a href="#domain-admin">Domain Admin</a></li>
<li><a href="#mail-user">Mail User</a></li>
<li><a href="#mailing-list">Mailing List</a></li>
<li><a href="#new-subscribable-mailing-list">[NEW] Subscribable Mailing List</a></li>
<li><a href="#mailing-list-unsubscribable">Mailing List (Unsubscribable)</a></li>
<li><a href="#mail-alias">Mail Alias</a></li>
<li><a href="#spam-policy">Spam Policy</a></li>
<li><a href="#throttling">Throttling</a></li>
@ -39,6 +40,7 @@
</ul>
</li>
<li><a href="#changelog">ChangeLog</a><ul>
<li><a href="#iredadmin-pro-sql-290-iredadmin-pro-ldap-31">iRedAdmin-Pro-SQL-2.9.0, iRedAdmin-Pro-LDAP-3.1</a></li>
<li><a href="#iredadmin-pro-sql-280-iredadmin-pro-ldap-30">iRedAdmin-Pro-SQL-2.8.0, iRedAdmin-Pro-LDAP-3.0</a></li>
<li><a href="#iredadmin-pro-sql-270-iredadmin-pro-ldap-290">iRedAdmin-Pro-SQL-2.7.0, iRedAdmin-Pro-LDAP-2.9.0</a></li>
<li><a href="#iredadmin-pro-sql-260-iredadmin-pro-ldap-280">iRedAdmin-Pro-SQL-2.6.0, iRedAdmin-Pro-LDAP-2.8.0</a></li>
@ -51,8 +53,8 @@
<div class="admonition attention">
<p class="admonition-title">Attention</p>
<ul>
<li>This document is applicable to <code>iRedAdmin-Pro-SQL-2.8.0</code> and
<code>iRedAdmin-Pro-LDAP-3.0</code>. If you're running an old release, please
<li>This document is applicable to <code>iRedAdmin-Pro-SQL-2.9.0</code> and
<code>iRedAdmin-Pro-LDAP-3.1</code>. If you're running an old release, please
upgrade iRedAdmin-Pro to the latest release, or check
<a href="./iredadmin-pro.releases.html">document for old releases</a>.</li>
<li>If you need an API which has not yet been implemented, don't hesitate to
@ -348,19 +350,34 @@ RESTFUL_API_CLIENTS = ['172.16.244.1', ...]
<td><code>outboundRelay=smtp:[192.168.1.2]:25</code> or <code>outboundRelay=</code> (disable outbound relay)</td>
</tr>
<tr>
<td><code>enableService</code></td>
<td><code>addAliasDomain</code></td>
<td>Add new alias domains. Multiple services must be separated by comma.</td>
<td><code>addAliasDomain=alias1.com,alias2.com</code></td>
</tr>
<tr>
<td><code>removeAliasDomain</code></td>
<td>Remove existing alias domains. Multiple services must be separated by comma.</td>
<td><code>removeAllServices=alias1.com,alias2.com</code></td>
</tr>
<tr>
<td><code>aliasDomains</code></td>
<td>Reset all alias domains. If empty, all existing alias domains will be removed. Conflicts with parameter <code>addAliasDomain</code> and <code>removeAliasDomain</code>.</td>
<td><code>aliasDomains=alias1.com,alias2.com</code></td>
</tr>
<tr>
<td><code>addService</code></td>
<td>Enable new services. Multiple services must be separated by comma. Available services are listed below.</td>
<td><code>enableService=self-service</code></td>
<td><code>addService=self-service</code></td>
</tr>
<tr>
<td><code>disableService</code></td>
<td><code>removeService</code></td>
<td>Disable existing services. Multiple services must be separated by comma. Available services are listed below.</td>
<td><code>disableService=self-service</code></td>
<td><code>removeService=self-service</code></td>
</tr>
<tr>
<td><code>removeAllServices</code></td>
<td>Disable all services (including mail service)</td>
<td><code>removeAllServices=</code> (empty value)</td>
<td><code>services</code></td>
<td>Reset all services. If empty, all existing services will be removed.</td>
<td><code>services=mail,self-service</code></td>
</tr>
<tr>
<td><code>disableDomainProfile</code></td>
@ -409,19 +426,19 @@ RESTFUL_API_CLIENTS = ['172.16.244.1', ...]
</tr>
<tr>
<td>mail</td>
<td>All mail services. (LDAP backends only)</td>
<td>All mail services. (<strong>LDAP backends only</strong>)</td>
</tr>
<tr>
<td>domainalias</td>
<td>Alias domain support. (LDAP backends only)</td>
<td>Alias domain support. (<strong>LDAP backends only</strong>)</td>
</tr>
<tr>
<td>senderbcc</td>
<td>Per-domain sender bcc. (LDAP backends only)</td>
<td>Per-domain sender bcc. (<strong>LDAP backends only</strong>)</td>
</tr>
<tr>
<td>recipientbcc</td>
<td>Per-domain recipient bcc. (LDAP backends only)</td>
<td>Per-domain recipient bcc. (<strong>LDAP backends only</strong>)</td>
</tr>
</tbody>
</table>
@ -686,6 +703,16 @@ to be a domain admin.</p>
<td>how many mailing lists this admin can create. It's shared by all domains created/managed by this admin.</td>
<td><code>maxLists=300</code></td>
</tr>
<tr>
<td><code>disableViewingMailLog</code></td>
<td>Disallow this admin to view log of inbound/outbound mails.</td>
<td><code>disableViewingMailLog=yes</code> (or <code>no</code>)</td>
</tr>
<tr>
<td><code>disableManagingQuarantinedMails</code></td>
<td>Disallow this admin to manage quarantined mails.</td>
<td><code>disableManagingQuarantinedMails=yes</code> (or <code>no</code>)</td>
</tr>
</tbody>
</table>
</div>
@ -774,6 +801,16 @@ to be a domain admin.</p>
<td>how many mailing lists this admin can create. It's shared by all domains created/managed by this admin.</td>
<td><code>maxLists=300</code></td>
</tr>
<tr>
<td><code>disableViewingMailLog</code></td>
<td>Disallow this admin to view log of inbound/outbound mails.</td>
<td><code>disableViewingMailLog=yes</code> (or <code>no</code>)</td>
</tr>
<tr>
<td><code>disableManagingQuarantinedMails</code></td>
<td>Disallow this admin to manage quarantined mails.</td>
<td><code>disableManagingQuarantinedMails=yes</code> (or <code>no</code>)</td>
</tr>
</tbody>
</table>
</div>
@ -870,7 +907,17 @@ to be a domain admin.</p>
<tr>
<td><code>name</code></td>
<td>Display name</td>
<td><code>name=My New Name</code></td>
<td><code>name=Michael Jordon</code></td>
</tr>
<tr>
<td><code>gn</code></td>
<td>Given name</td>
<td><code>gn=Jordon</code></td>
</tr>
<tr>
<td><code>sn</code></td>
<td>Surname</td>
<td><code>sn=Jeffery</code></td>
</tr>
<tr>
<td><code>password</code></td>
@ -1041,11 +1088,507 @@ to be a domain admin.</p>
</div>
</div>
<h3 class="toggle" id="mailing-list">Mailing List</h3>
<h3 class="toggle" id="new-subscribable-mailing-list">[NEW] Subscribable Mailing List</h3>
<div class="admonition attention">
<p class="admonition-title">Attention</p>
<p>Mailing list is only available in OpenLDAP backend. For SQL backends,
please use mail alias account as mailing list.</p>
<ul>
<li>Subscribable mailing list requires iRedMail-0.9.8 and later releases,
it's implemented with <a href="http://mlmmj.org"><code>mlmmj</code></a> mailing list manager.</li>
<li>It's available for both SQL and LDAP backends.</li>
</ul>
</div>
<div class="admonition api">
<p class="admonition-title"><code class="get">GET</code> <code class="url">/api/ml/&lt;mail&gt;</code> <code class="comment">Get profile of an existing mailing list account</code></p>
</div>
<div class="admonition api">
<p class="admonition-title"><code class="post">POST</code> <code class="url">/api/ml/&lt;mail&gt;</code> <code class="comment">Create a new mailing list</code> <code class="has_params">Parameters</code></p>
<div class="params">
<table>
<thead>
<tr>
<th>Parameter</th>
<th>Sample Usage</th>
<th>Default Value</th>
<th>Comment</th>
</tr>
</thead>
<tbody>
<tr>
<td><code>name</code></td>
<td><code>name=Sales Team</code></td>
<td></td>
<td>Display name of the mailing list.</td>
</tr>
<tr>
<td><code>accountStatus</code></td>
<td><code>accountStatus=active</code></td>
<td></td>
<td>Enable or disable account. Possible values: <code>active</code>, <code>disabled</code>.</td>
</tr>
<tr>
<td><code>maxMailSize</code></td>
<td><code>maxMailSize=1048576</code> (1M)</td>
<td></td>
<td>Max message size (in bytes).</td>
</tr>
<tr>
<td><code>accessPolicy</code></td>
<td><code>accessPolicy=membersonly</code></td>
<td></td>
<td>Defines who can send email to this mailing list. Possible values: <code>public</code>, <code>domain</code>, <code>subdomain</code>, <code>membersonly</code>, <code>moderatorsonly</code>.</td>
</tr>
<tr>
<td><code>is_newsletter</code></td>
<td><code>is_newsletter=yes</code></td>
<td><code>no</code></td>
<td>Mark this mailing list as a newsletter, to enable subscription/unsubscription from web site.</td>
</tr>
<tr>
<td><code>newsletter_description</code></td>
<td><code>newsletter_description=short description text</code></td>
<td></td>
<td>The short description text displayed on newsletter subscription page.</td>
</tr>
<tr>
<td><code>close_list</code></td>
<td><code>close_list=yes</code></td>
<td><code>no</code></td>
<td>If set to <code>yes</code>, subscription and unsubscription via mail is disabled.</td>
</tr>
<tr>
<td><code>only_moderator_can_post</code></td>
<td><code>only_moderator_can_post=yes</code></td>
<td><code>no</code></td>
<td>If set to <code>yes</code>, only moderators are allowed to post to it. The check is made against the <code>From:</code> header.</td>
</tr>
<tr>
<td><code>only_subscriber_can_post</code></td>
<td><code>only_subscriber_can_post=yes</code></td>
<td><code>yes</code></td>
<td>If set to <code>yes</code>, only subscribed members are allowed to post to it. The check is made against the <code>From:</code> header.</td>
</tr>
<tr>
<td><code>disable_subscription</code></td>
<td><code>disable_subscription=yes</code></td>
<td><code>no</code></td>
<td>If set to <code>yes</code>, subscription is disabled, but unsubscription is still possible.</td>
</tr>
<tr>
<td><code>disable_subscription_confirm</code></td>
<td><code>disable_subscription_confirm=yes</code></td>
<td></td>
<td>If set to <code>yes</code>, mlmmj won't send mail to subscriber to ask for confirmation to subscribe to the list. <strong>WARNING</strong>: This should in principle never ever be used, but there are times on local lists etc. where this is useful. HANDLE WITH CARE!</td>
</tr>
<tr>
<td><code>disable_digest_subscription</code></td>
<td><code>disable_digest_subscription=yes</code></td>
<td></td>
<td>If set to <code>yes</code>, subscription to the digest version of the mailing list is disabled. Useful if you don't want to allow digests and notify users about it.</td>
</tr>
<tr>
<td><code>disable_digest_text</code></td>
<td><code>disable_digest_text=yes</code></td>
<td></td>
<td>If set to <code>yes</code>, digest mails won't have a text part with a thread summary.</td>
</tr>
<tr>
<td><code>disable_nomail_subscription</code></td>
<td><code>disable_nomail_subscription=yes</code></td>
<td></td>
<td>If set to <code>yes</code>, subscription to the 'nomail' version of the mailing list is disabled. Useful if you don't want to allow 'nomail' and notify users about it.</td>
</tr>
<tr>
<td><code>moderated</code></td>
<td><code>moderated=yes</code></td>
<td><code>no</code></td>
<td>If set to <code>yes</code>. Parameter <code>owner</code> <strong>or</strong> <code>moderators</code> is required to specify the moderators. Note: <code>moderators</code> has higher priority (means only addresses specified by <code>moderators</code> are act as moderators).</td>
</tr>
<tr>
<td><code>moderate_non_subscriber_post</code></td>
<td><code>moderate_non_subscriber_post=no</code></td>
<td><code>no</code></td>
<td>If set to <code>yes</code>, all postings from people who are not allowed to post to the list will be moderated. Default (set to <code>no</code>) is denied.</td>
</tr>
<tr>
<td><code>disable_retrieving_old_posts</code></td>
<td><code>disable_retrieving_old_posts=yes</code></td>
<td></td>
<td>If set to <code>yes</code>, retrieving old posts by sending email to address <code>&lt;listname&gt;+get-N@</code> is disabled.</td>
</tr>
<tr>
<td><code>only_subscriber_can_get_old_posts</code></td>
<td><code>only_subscriber_can_get_old_posts=no</code></td>
<td><code>yes</code></td>
<td>If set to <code>yes</code>, only subscribers can retrieve old posts by sending email to <code>LISTNAME+get-N@</code></td>
</tr>
<tr>
<td><code>disable_retrieving_subscribers</code></td>
<td><code>disable_retrieving_subscribers=yes</code></td>
<td><code>yes</code></td>
<td>If set to <code>yes</code>, (owner) retrieving subscribers by sending email to <code>LISTNAME+list@</code> is disabled. Note: only owner can send to such address.</td>
</tr>
<tr>
<td><code>disable_send_copy_to_sender</code></td>
<td><code>disable_send_copy_to_sender=yes</code></td>
<td><code>yes</code></td>
<td>If set to <code>yes</code>, senders won't receive copies of their own posts.</td>
</tr>
<tr>
<td><code>notify_owner_when_sub_unsub</code></td>
<td><code>notify_owner_when_sub_unsub=no</code></td>
<td><code>no</code></td>
<td>Notify the owner(s) when someone sub/unsubscribing to a mailing list.</td>
</tr>
<tr>
<td><code>notify_sender_when_moderated</code></td>
<td><code>notify_sender_when_moderated=no</code></td>
<td><code>no</code></td>
<td>Notify sender (based on the envelope from) when their post is being moderated.</td>
</tr>
<tr>
<td><code>disable_archive</code></td>
<td><code>disable_archive=yes</code></td>
<td><code>no</code></td>
<td>If set to <code>yes</code>, emails won't be saved in the archive but simply deleted.</td>
</tr>
<tr>
<td><code>moderate_subscription</code></td>
<td><code>moderate_subscription=yes</code></td>
<td><code>no</code></td>
<td>If set to <code>yes</code>, subscription will be moderated by owner(s) or moderators specified by <code>subscription_moderators</code>. Moderators specified by <code>subscription_moderators</code> has higher priority. If set to <code>no</code>, subscription is not moderated, also, all moderators which were specified by <code>subscription_moderators</code> will be removed.</td>
</tr>
<tr>
<td><code>extra_addresses</code></td>
<td><code>extra_addresses=extra1@domain.com,extra2@domain.com</code></td>
<td></td>
<td>Define extra addresses of the mailing list.</td>
</tr>
<tr>
<td><code>subscription_moderators</code></td>
<td><code>subscription_moderators=&lt;mail1&gt;,&lt;mail2&gt;,&lt;mail3&gt;</code></td>
<td></td>
<td>Specify subscription moderators. Note: if <code>subscription_moderators</code> is given, <code>moderate_subscription</code> will be set to <code>yes</code> automatically. If no valid moderators are given, subscription will be moderated by owner(s).</td>
</tr>
<tr>
<td><code>owner</code></td>
<td><code>owner=&lt;mail1&gt;,&lt;mail2&gt;,&lt;mail3&gt;</code></td>
<td></td>
<td>Define owner(s) of the mailing list. Owners will get mails sent to <code>&lt;listname&gt;+owner@&lt;domain.com&gt;</code>.</td>
</tr>
<tr>
<td><code>moderators</code></td>
<td><code>moderators=&lt;mail1&gt;,&lt;mail2&gt;</code></td>
<td></td>
<td>Specify moderators of the mailing list. Set to empty value will remove all existing moderators.</td>
</tr>
<tr>
<td><code>max_message_size</code></td>
<td><code>max_message_size=10240</code></td>
<td></td>
<td>Specify max mail message size in <strong>bytes</strong>.</td>
</tr>
<tr>
<td><code>subject_prefix</code></td>
<td><code>subject_prefix=[prefix text]</code></td>
<td></td>
<td>Add a prefix in the <code>Subject:</code> line of mails sent to the list. Set to empty value to remove it.</td>
</tr>
<tr>
<td><code>custom_headers</code></td>
<td><code>custom_headers=&lt;header1&gt;:&lt;value1&gt;\n&lt;header2&gt;:&lt;value2&gt;</code></td>
<td></td>
<td>Add custom headers to every mail coming through. Multiple headers must be separated by <code>\n</code>. Set empty value to remove it. Note: mlmmjadmin will always add <code>X-Mailing-List: &lt;mail&gt;</code> and <code>Reply-To: &lt;mail&gt;</code> for each mailing list account.</td>
</tr>
<tr>
<td><code>remove_headers</code></td>
<td><code>remove_headers=Message-ID,Received</code></td>
<td></td>
<td>Remove given mail headers. NOTE: either <code>header:</code> or <code>header</code> (without <code>:</code>) is ok. Note: mlmmjadmin will always remove <code>DKIM-Signature:</code> and <code>Authentication-Results:</code>.</td>
</tr>
<tr>
<td><code>name</code></td>
<td><code>name=Short description of list</code></td>
<td></td>
<td>Set a short description of the mailing list account.</td>
</tr>
<tr>
<td><code>footer_text</code></td>
<td><code>footer_text=footer in plain text</code></td>
<td></td>
<td>Append footer (in plain text format) to every email sent to the list.</td>
</tr>
<tr>
<td><code>footer_html</code></td>
<td><code>footer_text=&lt;p&gt;footer in html&lt;/p&gt;</code></td>
<td></td>
<td>Append footer (in html format) to every email sent to the list.</td>
</tr>
</tbody>
</table>
</div>
</div>
<div class="admonition api">
<p class="admonition-title"><code class="delete">DELETE</code> <code class="url">/api/ml/&lt;mail&gt;</code> <code class="comment">Delete an existing mailing list</code> <code class="has_params">Parameters</code></p>
<div class="params">
<table>
<thead>
<tr>
<th>Parameter</th>
<th>Summary</th>
<th>Sample Usage</th>
</tr>
</thead>
<tbody>
<tr>
<td><code>keep_archive</code></td>
<td>Archive account settings and messages before deleting the mailing list.</td>
<td><code>keep_archive=no</code></td>
</tr>
</tbody>
</table>
</div>
</div>
<div class="admonition api">
<p class="admonition-title"><code class="put">PUT</code> <code class="url">/api/ml/&lt;mail&gt;</code> <code class="comment">Update profile of an existing mailing list</code> <code class="has_params">Parameters</code></p>
<div class="params">
<table>
<thead>
<tr>
<th>Parameter</th>
<th>Sample Usage</th>
<th>Default Value</th>
<th>Comment</th>
</tr>
</thead>
<tbody>
<tr>
<td><code>name</code></td>
<td><code>name=Sales Team</code></td>
<td></td>
<td>Display name of the mailing list.</td>
</tr>
<tr>
<td><code>accountStatus</code></td>
<td><code>accountStatus=active</code></td>
<td></td>
<td>Enable or disable account. Possible values: <code>active</code>, <code>disabled</code>.</td>
</tr>
<tr>
<td><code>maxMailSize</code></td>
<td><code>maxMailSize=1048576</code> (1M)</td>
<td></td>
<td>Max message size (in bytes).</td>
</tr>
<tr>
<td><code>accessPolicy</code></td>
<td><code>accessPolicy=membersonly</code></td>
<td></td>
<td>Defines who can send email to this mailing list. Possible values: <code>public</code>, <code>domain</code>, <code>subdomain</code>, <code>membersonly</code>, <code>moderatorsonly</code>.</td>
</tr>
<tr>
<td><code>is_newsletter</code></td>
<td><code>is_newsletter=yes</code></td>
<td><code>no</code></td>
<td>Mark this mailing list as a newsletter, to enable subscription/unsubscription from web site.</td>
</tr>
<tr>
<td><code>newsletter_description</code></td>
<td><code>newsletter_description=short description text</code></td>
<td></td>
<td>The short description text displayed on newsletter subscription page.</td>
</tr>
<tr>
<td><code>close_list</code></td>
<td><code>close_list=yes</code></td>
<td><code>no</code></td>
<td>If set to <code>yes</code>, subscription and unsubscription via mail is disabled.</td>
</tr>
<tr>
<td><code>only_moderator_can_post</code></td>
<td><code>only_moderator_can_post=yes</code></td>
<td><code>no</code></td>
<td>If set to <code>yes</code>, only moderators are allowed to post to it. The check is made against the <code>From:</code> header.</td>
</tr>
<tr>
<td><code>only_subscriber_can_post</code></td>
<td><code>only_subscriber_can_post=yes</code></td>
<td><code>yes</code></td>
<td>If set to <code>yes</code>, only subscribed members are allowed to post to it. The check is made against the <code>From:</code> header.</td>
</tr>
<tr>
<td><code>disable_subscription</code></td>
<td><code>disable_subscription=yes</code></td>
<td><code>no</code></td>
<td>If set to <code>yes</code>, subscription is disabled, but unsubscription is still possible.</td>
</tr>
<tr>
<td><code>disable_subscription_confirm</code></td>
<td><code>disable_subscription_confirm=yes</code></td>
<td></td>
<td>If set to <code>yes</code>, mlmmj won't send mail to subscriber to ask for confirmation to subscribe to the list. <strong>WARNING</strong>: This should in principle never ever be used, but there are times on local lists etc. where this is useful. HANDLE WITH CARE!</td>
</tr>
<tr>
<td><code>disable_digest_subscription</code></td>
<td><code>disable_digest_subscription=yes</code></td>
<td></td>
<td>If set to <code>yes</code>, subscription to the digest version of the mailing list is disabled. Useful if you don't want to allow digests and notify users about it.</td>
</tr>
<tr>
<td><code>disable_digest_text</code></td>
<td><code>disable_digest_text=yes</code></td>
<td></td>
<td>If set to <code>yes</code>, digest mails won't have a text part with a thread summary.</td>
</tr>
<tr>
<td><code>disable_nomail_subscription</code></td>
<td><code>disable_nomail_subscription=yes</code></td>
<td></td>
<td>If set to <code>yes</code>, subscription to the 'nomail' version of the mailing list is disabled. Useful if you don't want to allow 'nomail' and notify users about it.</td>
</tr>
<tr>
<td><code>moderated</code></td>
<td><code>moderated=yes</code></td>
<td><code>no</code></td>
<td>If set to <code>yes</code>. Parameter <code>owner</code> <strong>or</strong> <code>moderators</code> is required to specify the moderators. Note: <code>moderators</code> has higher priority (means only addresses specified by <code>moderators</code> are act as moderators).</td>
</tr>
<tr>
<td><code>moderate_non_subscriber_post</code></td>
<td><code>moderate_non_subscriber_post=no</code></td>
<td><code>no</code></td>
<td>If set to <code>yes</code>, all postings from people who are not allowed to post to the list will be moderated. Default (set to <code>no</code>) is denied.</td>
</tr>
<tr>
<td><code>disable_retrieving_old_posts</code></td>
<td><code>disable_retrieving_old_posts=yes</code></td>
<td></td>
<td>If set to <code>yes</code>, retrieving old posts by sending email to address <code>&lt;listname&gt;+get-N@</code> is disabled.</td>
</tr>
<tr>
<td><code>only_subscriber_can_get_old_posts</code></td>
<td><code>only_subscriber_can_get_old_posts=no</code></td>
<td><code>yes</code></td>
<td>If set to <code>yes</code>, only subscribers can retrieve old posts by sending email to <code>LISTNAME+get-N@</code></td>
</tr>
<tr>
<td><code>disable_retrieving_subscribers</code></td>
<td><code>disable_retrieving_subscribers=yes</code></td>
<td><code>yes</code></td>
<td>If set to <code>yes</code>, (owner) retrieving subscribers by sending email to <code>LISTNAME+list@</code> is disabled. Note: only owner can send to such address.</td>
</tr>
<tr>
<td><code>disable_send_copy_to_sender</code></td>
<td><code>disable_send_copy_to_sender=yes</code></td>
<td><code>yes</code></td>
<td>If set to <code>yes</code>, senders won't receive copies of their own posts.</td>
</tr>
<tr>
<td><code>notify_owner_when_sub_unsub</code></td>
<td><code>notify_owner_when_sub_unsub=no</code></td>
<td><code>no</code></td>
<td>Notify the owner(s) when someone sub/unsubscribing to a mailing list.</td>
</tr>
<tr>
<td><code>notify_sender_when_moderated</code></td>
<td><code>notify_sender_when_moderated=no</code></td>
<td><code>no</code></td>
<td>Notify sender (based on the envelope from) when their post is being moderated.</td>
</tr>
<tr>
<td><code>disable_archive</code></td>
<td><code>disable_archive=yes</code></td>
<td><code>no</code></td>
<td>If set to <code>yes</code>, emails won't be saved in the archive but simply deleted.</td>
</tr>
<tr>
<td><code>moderate_subscription</code></td>
<td><code>moderate_subscription=yes</code></td>
<td><code>no</code></td>
<td>If set to <code>yes</code>, subscription will be moderated by owner(s) or moderators specified by <code>subscription_moderators</code>. Moderators specified by <code>subscription_moderators</code> has higher priority. If set to <code>no</code>, subscription is not moderated, also, all moderators which were specified by <code>subscription_moderators</code> will be removed.</td>
</tr>
<tr>
<td><code>extra_addresses</code></td>
<td><code>extra_addresses=extra1@domain.com,extra2@domain.com</code></td>
<td></td>
<td>Define extra addresses of the mailing list.</td>
</tr>
<tr>
<td><code>subscription_moderators</code></td>
<td><code>subscription_moderators=&lt;mail1&gt;,&lt;mail2&gt;,&lt;mail3&gt;</code></td>
<td></td>
<td>Specify subscription moderators. Note: if <code>subscription_moderators</code> is given, <code>moderate_subscription</code> will be set to <code>yes</code> automatically. If no valid moderators are given, subscription will be moderated by owner(s).</td>
</tr>
<tr>
<td><code>owner</code></td>
<td><code>owner=&lt;mail1&gt;,&lt;mail2&gt;,&lt;mail3&gt;</code></td>
<td></td>
<td>Define owner(s) of the mailing list. Owners will get mails sent to <code>&lt;listname&gt;+owner@&lt;domain.com&gt;</code>.</td>
</tr>
<tr>
<td><code>moderators</code></td>
<td><code>moderators=&lt;mail1&gt;,&lt;mail2&gt;</code></td>
<td></td>
<td>Specify moderators of the mailing list. Set to empty value will remove all existing moderators.</td>
</tr>
<tr>
<td><code>max_message_size</code></td>
<td><code>max_message_size=10240</code></td>
<td></td>
<td>Specify max mail message size in <strong>bytes</strong>.</td>
</tr>
<tr>
<td><code>subject_prefix</code></td>
<td><code>subject_prefix=[prefix text]</code></td>
<td></td>
<td>Add a prefix in the <code>Subject:</code> line of mails sent to the list. Set to empty value to remove it.</td>
</tr>
<tr>
<td><code>custom_headers</code></td>
<td><code>custom_headers=&lt;header1&gt;:&lt;value1&gt;\n&lt;header2&gt;:&lt;value2&gt;</code></td>
<td></td>
<td>Add custom headers to every mail coming through. Multiple headers must be separated by <code>\n</code>. Set empty value to remove it. Note: mlmmjadmin will always add <code>X-Mailing-List: &lt;mail&gt;</code> and <code>Reply-To: &lt;mail&gt;</code> for each mailing list account.</td>
</tr>
<tr>
<td><code>remove_headers</code></td>
<td><code>remove_headers=Message-ID,Received</code></td>
<td></td>
<td>Remove given mail headers. NOTE: either <code>header:</code> or <code>header</code> (without <code>:</code>) is ok. Note: mlmmjadmin will always remove <code>DKIM-Signature:</code> and <code>Authentication-Results:</code>.</td>
</tr>
<tr>
<td><code>name</code></td>
<td><code>name=Short description of list</code></td>
<td></td>
<td>Set a short description of the mailing list account.</td>
</tr>
<tr>
<td><code>footer_text</code></td>
<td><code>footer_text=footer in plain text</code></td>
<td></td>
<td>Append footer (in plain text format) to every email sent to the list.</td>
</tr>
<tr>
<td><code>footer_html</code></td>
<td><code>footer_text=&lt;p&gt;footer in html&lt;/p&gt;</code></td>
<td></td>
<td>Append footer (in html format) to every email sent to the list.</td>
</tr>
</tbody>
</table>
</div>
</div>
<h3 class="toggle" id="mailing-list-unsubscribable">Mailing List (Unsubscribable)</h3>
<div class="admonition attention">
<p class="admonition-title">Attention</p>
<ul>
<li>This unsubscribable mailing list is only available in <strong>LDAP</strong> backend.</li>
<li>It's recommended to use the Subscribable Mailing List instead, you're
free to disable public subscribable.</li>
</ul>
</div>
<div class="admonition api">
<p class="admonition-title"><code class="get">GET</code> <code class="url">/api/maillist/&lt;mail&gt;</code> <code class="comment">Get profile of an existing mailing list account</code></p>
@ -1084,7 +1627,27 @@ please use mail alias account as mailing list.</p>
</div>
<div class="admonition api">
<p class="admonition-title"><code class="delete">DELETE</code> <code class="url">/api/maillist/&lt;mail&gt;</code> <code class="comment">Delete an existing mailing list</code></p>
<p class="admonition-title"><code class="delete">DELETE</code> <code class="url">/api/maillist/&lt;mail&gt;</code> <code class="comment">Delete an existing mailing list</code> <code class="has_params">Parameters</code></p>
<div class="params">
<table>
<thead>
<tr>
<th>Parameter</th>
<th>Summary</th>
<th>Sample Usage</th>
</tr>
</thead>
<tbody>
<tr>
<td><code>archive</code></td>
<td>Archive subscribable mailing list before deleting the account. NOTE: This option is only applicable to the subscribable mailing list account.</td>
<td><code>archive=no</code></td>
</tr>
</tbody>
</table>
</div>
</div>
<div class="admonition api">
<p class="admonition-title"><code class="put">PUT</code> <code class="url">/api/maillist/&lt;mail&gt;</code> <code class="comment">Update profile of an existing mailing list</code> <code class="has_params">Parameters</code></p>
@ -1589,6 +2152,43 @@ please use mail alias account as mailing list.</p>
<p class="admonition-title"><code class="get">GET</code> <code class="url">/api/ldif/alias/&lt;mail&gt;</code> <code class="comment">Export mail alias account to LDIF</code></p>
</div>
<h2 id="changelog">ChangeLog</h2>
<h3 id="iredadmin-pro-sql-290-iredadmin-pro-ldap-31">iRedAdmin-Pro-SQL-2.9.0, iRedAdmin-Pro-LDAP-3.1</h3>
<ul>
<li>New: subscribable mailing list.</li>
<li>Show allocated domain quota while getting domain profile
(<code>GET /api/domain/&lt;domain&gt;</code>).</li>
<li>Able to manage alias domains while updating domain profile
(<code>GET /api/domain/&lt;domain&gt;</code>):<ul>
<li><code>aliasDomains</code>: reset all alias domains</li>
<li><code>addAliasDomain</code>: add new alias domains</li>
<li><code>removeAliasDomain</code>: remove existing alias domains</li>
</ul>
</li>
<li>
<p>Parameter names changed while updating domain profile
(<code>PUT /api/domain/&lt;domain&gt;</code>):</p>
<ul>
<li><code>enableService</code> was renamed to <code>addService</code></li>
<li><code>disableService</code> was renamed to <code>removeService</code></li>
<li><code>removeAllServices</code> was renamed to <code>services</code></li>
</ul>
</li>
<li>
<p>iRedAdmin-Pro-LDAP-3.1:</p>
<ul>
<li>New user profile parameters (<code>PUT /api/user/&lt;mail&gt;</code>):<ul>
<li><code>gn</code> - given name</li>
<li><code>sn</code> - surname</li>
</ul>
</li>
<li>Fixed:<ul>
<li>Not correctly detect existing mail accounts while updating
per-user mail forwarding addresses.</li>
</ul>
</li>
</ul>
</li>
</ul>
<h3 id="iredadmin-pro-sql-280-iredadmin-pro-ldap-30">iRedAdmin-Pro-SQL-2.8.0, iRedAdmin-Pro-LDAP-3.0</h3>
<ul>
<li>NEW: Able to list all managed domains (<code>/domains</code>).</li>

View File

@ -74,6 +74,12 @@ check <a href="https://www.iredmail.org/support.html">the details</a> and
</thead>
<tbody>
<tr>
<td><a href="https://forum.iredmail.org/">0.9.8</a></td>
<td>Apr 3, 2018</td>
<td><a href="./upgrade.iredmail.0.9.7-0.9.8.html">Upgrade from iRedMail-0.9.7</a></td>
<td>Contains SQL/LDAP structure change</td>
</tr>
<tr>
<td><a href="https://forum.iredmail.org/topic12944.html">0.9.7</a></td>
<td>Jul 1, 2017</td>
<td><a href="./upgrade.iredmail.0.9.6-0.9.7.html">Upgrade from iRedMail-0.9.6</a></td>