Миграция

Миграция позволяет настроить перенос и последующую сборку писем со старого почтового сервера.

Для сборки писем необходимо включить миграцию для домена и сборщик писем для каждого пользователя.

Состояние миграции

GET /domains/{domain_id}/migration

Ответ

HTTP 200 OK

{
  "server": "imap.mail.ru",
  "port": 993,
  "proto": 1,
  "use_ssl": true,
  "is_active": true
}

Описание полей

Название

Тип

Описание

server

String

Адрес сервера

port

Number

Порт сервера

proto

Number

Протокол

use_ssl

Boolean

Используется ли ssl

is_active

Boolean

Включена ли сейчас миграция

Протоколы

Код

Протокол

0

POP3

1

IMAP

2

Exchange

Включение миграции

POST /domains/{domain_id}/migration

Поля

server: required: string

Адрес сервера

port: required: integer

Порт сервера

proto: required: integer

Протокол

use_ssl: required: boolean

Флаг использования SSL. Для Exchange использование SSL обязательно

{
  "server": "imap.mail.ru",
  "port": 993,
  "proto": 1,
  "use_ssl": true
}

Ответ

HTTP 201 CREATED

{
  "server": "imap.mail.ru",
  "port": 993,
  "proto": 1,
  "use_ssl": true,
  "is_active": true
}

Ошибки

code

message

119

Миграция уже включена

Редактирование миграции

PUT /domains/{domain_id}/migration

Поля

server: required: string

Адрес сервера

port: required: integer

Порт сервера

use_ssl: required: boolean

Флаг использования SSL. Для Exchange использование SSL обязательно

{
  "server": "imap.mail.ru",
  "port": 993,
  "use_ssl": true
}

Ответ

HTTP 200 OK

{
  "server": "imap.mail.ru",
  "port": 993,
  "proto": 1,
  "use_ssl": true,
  "is_active": true
}

Ошибки

code

message

120

Миграция выключена

При редактировании миграции нельзя изменить протокол. Если есть необходимость в его измении, то нужно выключить текущую миграцию и включить уже с новыми настройками.

Выключение миграции

DELETE /domains/{domain_id}/migration

Ответ

HTTP 204 NO CONTENT

Список сборщиков

GET /domains/{domain_id}/collectors

Параметры фильтрации (строки запроса)

status__in: optional: number

Фильтрует список сборщиков, с переданными статусами, через запятую

status__not_in: optional: number

Фильтрует список сборщиков, исключая переданные статусы, через запятую

export: optional: string

Значение „csv“. Выгрузка пользователей и их статусов в формате csv

Ответ

HTTP 200 OK

{
  "paging": {...},
  "data": [
    {
      "id": 1,
      "status": 1,
      "email": "user@domain.ru"
      "firstname": "Ivan",
      "lastname": "Ivanov",
      "last_error": ""
    }
  ]
}

Список сборщиков разбивается на страницы. Механизм постраничной навигации описан в разделе Постраничная навигация.

Описание полей

Название

Тип

Описание

id

Number

Идентификатор сборщика

status

Number

Статус сборщика

email

String

Email, с которого собираются письма

firstname

String

Имя пользователя

lastname

String

Фамилия пользователя

last_error

String

Последняя ошибка, возникшая при создании или редактировании сборщика

Статусы

Статус

Описание

0

Сборка отключена

1

Сборщик работает

2

Сборщик приостановлен

3

Ошибка аутентификации

4

Ошибка авторизации. Неверный логин или пароль

5

Превышен лимит запросов

6

Внутренняя ошибка сборщика

7

В очереди

8

Ожидание активации сборщика

9

Выполняется создание сборщика

10

Ошибка создания сборщика

11

Ошибка редактирования сборщика

12

Почтовый аккаунт стороннего сервиса заблокирован

13

Ожидание активации сборщика пользователем

Ошибки

code

message

120

Миграция выключена

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

GET /domains/{domain_id}/collectors/{user_id}

Ответ

HTTP 200 OK

{
  "id": 1,
  "status": 1,
  "email": "user@domain.ru"
  "firstname": "Ivan",
  "lastname": "Ivanov",
  "last_error": ""
}

Ошибки

code

message

120

Миграция выключена

Включение сборщика

POST /domains/{domain_id}/collectors/{user_id}

Поля

username: required: string

Имя для авторизации

passwd: required: string

Пароль

{
  "username": "user@old-mail.ru",
  "passwd": "password"
}

Ответ

HTTP 201 CREATED

{
  "status": 7,
  "message": "В очереди"
}

Ошибки

code

message

120

Миграция выключена

121

Сборщик уже включен

Для включения сборщика требуется большое количество времени. Поэтому в ответ на запрос возвращается статус 7 (в очереди). После его получения необходимо отправлять запросы на получение сборщика с переодичностью раз в 10 секунд до тех пор, пока не будет получен другой статус.

Редактирование сборщика

PUT /domains/{domain_id}/collectors/{user_id}

Поля

username: required: string

Имя для авторизации

passwd: required: string

Пароль

{
  "username": "user@old-mail.ru",
  "passwd": "password"
}

Ответ

HTTP 200 OK

{
  "status": 7,
  "message": "В очереди"
}

Ошибки

code

message

120

Миграция выключена

Для редактирования сборщика требуется большое количество времени. Поэтому в ответ на запрос возвращается статус 7 (в очереди). После его получения необходимо отправлять запросы на получение сборщика с переодичностью раз в 10 секунд до тех пор, пока не будет получен другой статус.

Выключение сборщика

DELETE /domains/{domain_id}/collectors/{user_id}

Ответ

HTTP 204 NO CONTENT