Инструкция по использованию API сервиса

Данное API создано с целью автоматизирования процесса регистрации на различных сайтах.

Принцип работы:

  • Регистрируетесь на сервисе.
  • Получаете/создаете почтовый ящик, используя наши доменные имена.
  • Регистрируйтесь на сайтах, где требуется подтверждение по почте.
  • Сайт отправляет письмо на указанный Вами адрес.
  • Письмо приходит на наш SMTP сервер, обрабатывается и добавляется в базу данных.
  • Вы делаете запрос к API с MD5 хешем почтового адреса.
  • Получаете список писем или письма по одтельности.

Использование:

1. Создание нового ящика с жизнью на 10 минут

Вызываем API с параметром action, равным new:

https://post-shift.ru/api.php?action=new
Если дополнительно будет указан параметр name, не равным пустоте, то почта будет создана с переданным именем, и будет жить 1 час!

Пример:

https://post-shift.ru/api.php?action=new&name=ghfdh5rhd4
Значение параметра name не должно быть более 10 символов! Если Вы укажете более, то значение параметра будет обрезано до 10 символов!

Если мы укажем дополнительный параметр domain, то можем выбрать домен сомостоятельно. Передавать можно 2 значения: "&domain=post-shift.ru" или "&domain=postshift.ru". Если этот параметр не указан, то домен для почты будет выбран случайным образом.

Получаем ответ от сервера:

Email: pbrqvjxw90@post-shift.ru
Key: d6be5cce6245b61552cdc5201e0488b2
Reload

Где Reload - ссылка для получения нового ящика.

Если мы укажем дополнительный параметр type=json, то ответ вернется в виде JSON:

{"email":"bjlokwva72@post-shift.ru","key":"faf3f53538d0b5a52222ad7ef5040068"}

Где email - наш адрес, а key - ключ, необходимый для дальнейшего доступа к почтовому ящику.


2. Получение списка писем

Вызываем API с параметром action, равным getlist и ключом key:

https://post-shift.ru/api.php?action=getlist&key=faf3f53538d0b5a52222ad7ef5040068

Получаем ответ от сервера со списком писем на почтовом ящике:

ID: 1
Date: Thu, 09 Mar 2017 11:06:11 +0300
Subject: Подтверждение регистрации в ICQ?
From: noreply@icq.com
___________

Если мы укажем дополнительный параметр type=json, то ответ вернется в виде JSON:

[{"id":1,"date":"Thu, 09 Mar 2017 11:06:11 +0300","subject":" Подтверждение регистрации в ICQ?","from":"noreply@icq.com"}]

Где id - номер нашего письма в ящике, date - дата письма, subject - тема письма, from - адрес отправителя.

Если мы укажем дополнительный параметр type=array, то ответ вернется в виде Массива! Доступно только при получении списка писем в почтовом ящике.


3. Получение текста письма

Вызываем API с параметром action, равным getmail, ключом key и номером письма (id):

https://post-shift.ru/api.php?action=getmail&key=faf3f53538d0b5a52222ad7ef5040068&id=1

В ответ получаем текст сообщения, в том виде, в котором он пришел.

Если мы укажем дополнительный параметр type=json, то ответ вернется в виде JSON:

{"message":"test"}

Где message - содержание письма в ящике, с указанным id.

Если мы укажем дополнительный параметр cut=html, то в письме будут вырезаны все HTML теги, кроме ссылок. Доступно только при получении содержимого письма.

Если мы укажем дополнительный параметр base64=decode, то письмо будет декодировано, в случае если оно пришло в виде набора символов. Доступно только при получении содержимого письма.

Если мы укажем дополнительный параметр forced=1, то письмо будет возвращено в том виде, в котором оно приходит на сервер, без пост обработок. Данный параметр исправляет ошибку "Letter not found.", если при запросе через getlist письмо есть, а при запросе getmail возвращается ошибка. Доступно только при получении содержимого письма.


4. Узнать оставшееся время жизние email'а

Вызываем API с параметром action, равным livetime и ключом key:

https://post-shift.ru/api.php?action=livetime&key=faf3f53538d0b5a52222ad7ef5040068

В ответ получим кол-во секунд или сообщение об ошибке, в случае если ящика не существует:

{"error":"key_not_found"}

Где error - текст ошибки.

Если мы укажем дополнительный параметр type=json, то ответ вернется в виде JSON:

{"key":"faf3f53538d0b5a52222ad7ef5040068","livetime":"479"}

Где key - ключ email'a, а livetime время жизни email'a.


5. Продлить время жизни до 10 минут

Вызываем API с параметром action, равным update и ключом key:

https://post-shift.ru/api.php?action=update&key=faf3f53538d0b5a52222ad7ef5040068

В ответ получим кол-во оставшихся секунд (600) или сообщение об ошибке, в случае если ящика не существует.

Внимательно используйте данную функцию, т.к. данная функция не добавляет время, а возвращает его к отметке в 10 минут!
Если Вы генерировали имя почтового ящика, то используйте данную функцию только если время жизни Вашего ящика осталось менее 10 минут, т.к. произойдет сброс с 1 часа на 10 минут!


Если мы укажем дополнительный параметр type=json, то ответ вернется в виде JSON:

{"key":"faf3f53538d0b5a52222ad7ef5040068","livetime":"600"}

Где key - ключ email'a, а livetime новое время жизни email'a.


6. Удалить использованный email

Вызываем API с параметром action, равным delete и ключом key:

https://post-shift.ru/api.php?action=delete&key=faf3f53538d0b5a52222ad7ef5040068

В ответ получим "OK", если нет ошибок, или сообщение об ошибке.

Если мы укажем дополнительный параметр type=json, то ответ вернется в виде JSON:

{"key":"faf3f53538d0b5a52222ad7ef5040068","delete":"ok"}

Где key - ключ email'a, который удалили, а delete содержащее об успешном удалении.


7. Очистить email

Вызываем API с параметром action, равным clear и ключом key:

https://post-shift.ru/api.php?action=clear&key=faf3f53538d0b5a52222ad7ef5040068

В ответ получим "OK", если нет ошибок, или сообщение об ошибке.

Если мы укажем дополнительный параметр type=json, то ответ вернется в виде JSON:

{"key":"faf3f53538d0b5a52222ad7ef5040068","clear":"ok"}

Где key - ключ email'a, который удалили, а clear содержащее об успешном удалении.


Формат ответа API:

API поддерживает формат вывода ответов, для этого достаточно указать в конце запроса:

Формат Запрос Статус
XML &type=xml В разработке
JSON &type=json Поддерживает
HTML &type=html В разработке
Text ничего не указывать Поддерживает

Вопросы и предложения:

Если возникли вопросы или есть предложения, напишите нам через форму обратной связи.