Почтовый релей

Получение статуса почтовых служб

GET /mail/settings/general/status

Ответ на успешный запрос:

[
  {
    "name": "string",
    "status": "active" | "activating" | "deactivating" | "failed" | "inactive" | "reloading",
    "msg": [
      "string",
      ...
    ]
  },
  ...
]
  • name - имя демона;

  • status - одна из строк, означающих состояние демона;

  • msg - массив строк с сообщениями об ошибках, если ошибки есть.

Основные настройки

Получение настроек почтового сервера

GET /mail/settings/general

Ответ на успешный запрос:

{
  "mail_domain": "string" | "null",
  "mail_hostname": "string",
  "mail_additional_domains": [
    "string",
    ...
  ],
  "mail_relay_domains": [
    "string",
    ...
  ]
}
  • mail_domain - основной почтовый домен. Если не настроен - null;

  • mail_hostname - имя хоста почтового сервера. Если не настроено - null;

  • mail_additional_domains - массив дополнительных почтовых доменов. Если не настроены - пустой массив;

  • mail_relay_domains - массив relay-доменов. Если не настроены - пустой массив. Каждый элемент массива имеет вид from_domain|to_domain, где:

    • from_domain - валидное доменное имя;

    • to_domain - валидное доменное имя или IP-адрес.

Сохранение настроек почтового сервера

PUT /mail/settings/general

Json-тело запроса:

{
  "mail_domain": "string",
  "mail_hostname": "string",
  "mail_additional_domains": [
    "string",
    ...
  ],
  "mail_relay_domains": [
    "string",
    ...
  ]
}
  • mail_domain - основной почтовый домен. Если не настроен - null. Не может быть пустым;

  • mail_hostname - имя хоста почтового сервера. Если не настроено - null. Не может быть пустым;

  • mail_additional_domains - массив дополнительных почтовых доменов. Каждый элемент массива должен быть валидным доменным именем и не может быть пустой строкой или null. Может быть пустым;

  • mail_relay_domains - массив relay-доменов. Может быть пустым. Каждый элемент массива должен иметь вид from_domain|to_domain, где:

    • from_domain - валидное доменное имя, не может быть пустой строкой или null;

    • to_domain - валидное доменное имя или IP-адрес, не может быть пустой строкой или null.

Ответ на успешный запрос: 200 ОК

Настройки IMAP(S), POP3(S), Web-почты

Получение настроек

GET /mail/settings/general/server_access

Ответ на успешный запрос:

{
  "imap_enabled": "boolean",
  "pop3_enabled": "boolean",
  "webmail_enabled": "boolean"
}
  • imap_enabled - true, когда IMAP включен, и false, когда выключен;

  • pop3_enabled - true, когда POP3 включен, и false, когда выключен;

  • webmail_enabled - true, когда интерфейс веб-почты включен, и false, когда выключен.

Изменение настроек

PATCH /mail/settings/general/server_access

Json-тело запроса (все или некоторые поля):

{
  "imap_enabled": "boolean",
  "pop3_enabled": "boolean",
  "webmail_enabled": "boolean"
}
  • imap_enabled - true, когда IMAP включен, и false, когда выключен;

  • pop3_enabled - true, когда POP3 включен, и false, когда выключен;

  • webmail_enabled - true, когда интерфейс веб-почты включен, и false, когда выключен.

Ответ на успешный запрос: 200 ОК

Внешний диск для хранения почты

Получение списка доступных дисков

GET /mail/settings/general/ext_hdd/list

Ответ на успешный запрос:

[
  {
    "id": "string",
    "title": "string"
  },
  ...
]
  • id - идентификатор диска;

  • title - название.

Подключение диска

POST /mail/settings/general/ext_hdd

Json-тело запроса:

{
  "id": "string"
}
  • id - идентификатор диска.

Ответ на успешный запрос: 200 ОК

Получение текущего состояния диска для хранения почты

GET /mail/settings/general/ext_hdd

Ответ на успешный запрос:

{
  "disk_id": "string" | "null",
  "title": "string" | "null",
  "status": "connecting" | "connected" | "disconnected" | "error" | "check",
  "fs_uuid": "string" | "null",
  "free_size": "integer" | "null",
  "total_size": "integer" | "null",
  "error": "string" | "null"
}
  • disk_id - идентификатор диска. Может быть null, если диск не подключен;

  • title - название диска. Может быть null, если диск не подключен;

  • fs_uuid - идентификатор файловой системы. Может быть null, если диск не подключен;

  • status - текущее состояние диска:

    • connecting- диск в процессе монтирования;

    • connected- диск подключен и работает нормально;

    • disconnected: диск не подключен;

    • error- при подключении диска произошла ошибка;

    • check- проверка формата почтовых ящиков.

  • free_size - количество свободного места, байт. Может быть null, если диск не подключен;

  • total_size - размер диска, байт. Может быть null, если диск не подключен;

  • error - текст ошибки, если текущее состояние диска - error, иначе - null.

Отключение диска

DELETE /mail/settings/general/ext_hdd

Ответ на успешный запрос: 200 ОК

Включенность почтового сервера

Получение настроек

GET /mail/settings/general/state

Ответ на успешный запрос:

{
  "enabled": "boolean"
}
  • enabled - опция раздела Основные настройки: true - включена, false - выключена.

Включение/отключение почтового сервера

PUT /mail/settings/general/state

Json-тело запроса:

{
  "enabled": "boolean"
}
  • enabled - опция раздела Основные настройки: true - включена, false - выключена.

Ответ на успешный запрос: 200 ОК

Last updated