Управляйте рассылками, подписчиками и шаблонами писем со своего сайта, не заходя в аккаунт: 7 интерфейсов, 29 методов и обратные вызовы о событиях в реальном времени.
Любой из запросов может включать в себя следующие параметры.
Параметр
Описание
format
Формат ответа сервера — XML (по умолчанию) или JSON (если в запросе указана специальная переменная).
fields
Наименования полей, указанные через запятую, которые могут быть получены в результате запроса. Например, вам необходимо получить лишь ID и названия рассылок, нужно будет указать fields=id,title в запросе к соответствующему интерфейсу и т.д. По умолчанию возвращаются все наименования полей.
fields_exclude
Наименования полей, указанные через запятую, которые должны быть исключены из результата запроса. Например, вам необходимо получить все поля из интерфейса списка шаблонов за исключением html_body и text_body , тогда нужно будет указать fields_exclude=html_body,text_body .
Аутентификация
В качестве аутентификации используется уникальный 32-символьный API-ключ. Чтобы получить доступ ко всем интерфейсам, нужен только он.
Параметр
Описание
api_keyобязательный
Уникальный 32-символьный API-ключ. Получить данный ключ можно в настройках аккаунта автора в разделе "API". Чтобы получить доступ ко всем API-интерфейсам необходим только данный ключ.
Формат ответа
Каждый ответ содержит результат выполнения, ошибку, если она возникла, и данные интерфейса.
1 — запрос исполнен удачно (не возникло системных ошибок)
0 — запрос не исполнен или исполнен с ошибками
error
Если во время выполнения возникли какие-либо ошибки, то данное поле содержит код ошибки ( code ) и текст сообщения об ошибке ( message ). Если ошибок не возникло, поле error отсутствует
данные
Набор полей с данными того или иного API-интерфейса. Поля разнятся в зависимости от выбранного интерфейса. Если интерфейс не возвращает никаких данных, данные могут отсутствовать.
Рассылки
Список рассылок, создание, редактирование и удаление, управление шаблонами внутри автоматической серии.
Если есть необходимость получить не весь список рассылок, а только некоторые из них, можно указать их id через запятую. В противном случае в ответе будет содержаться весь список.
Если есть необходимость получить не весь список файлов, а только некоторые из них, можно указать их id через запятую. В противном случае в ответе будет содержаться весь список.
Дата создания в формате ДД/ММ/ГГГГ ЧЧ:ММ:СС (+02GMT)
date_updated
Дата изменения в формате ДД/ММ/ГГГГ ЧЧ:ММ:СС (+02GMT)
name
Название файла
mime
MIME-тип
size
Размер файла в байтах
url_external
Внешний URL для загрузки файла
Загрузка/обновление файла
action=upload
Параметр
Описание
actionобязательный
upload — загрузка файла
nameобязательный
Название файла (не более 128 символов). Если необходимо обновить уже загруженный файл, следует загрузить отредактированный файл с идентичным названием.
mimeобязательный
MIME-тип файла
contentобязательный
Важно! Содержимое файла обязательно кодировать в BASE64.
Ответ
xml
<response><result></result><id></id></response>
Поля ответа
Поле
Описание
id
ID файла возвращается только в том случае, если был загружен новый файл.
Удаление файла
action=delete
Параметр
Описание
actionобязательный
delete — удаление
id
ID файла для удаления. Через запятую можно указать несколько ID.
Ответ
xml
<response><result></result></response>
Шаблоны писем
Шаблоны писем: текстовая и HTML-часть, прикреплённые файлы.
Если есть необходимость получить не весь список шаблонов, а только некоторые из них, можно указать их id через запятую. В противном случае в ответе будет содержаться весь список.
delivery_id
ID рассылки, из которой вы хотите получить шаблоны.
Если есть необходимость получить не весь список подписчиков, а только некоторых из них, можно указать их id через запятую. В противном случае в ответе будет содержаться весь список.
search[...]
Критерии поиска подписчиков:
search[date_from_day] (день), search[date_from_month] (месяц), search[date_from_year] (год) — подписчики, попавшие в список позже выбранной даты в формате ДД.ММ.ГГГГ
search[date_to_day] (день), search[date_to_month] (месяц), search[date_to_year] (год) — подписчики, попавшие в список ранее выбранной даты в формате ДД.ММ.ГГГГ
search[email] — поиск по email-адресу
search[name_first] — по имени
search[name_mid] — по отчеству
search[name_last] — по фамилии
search[email_state] — состояние адреса:
disabled — несуществующий
active — активированный
activation — неактивированный
search[country_id] — по ID страны
search[city] — по городу
search[address] — по адресу
search[phones] — по телефону
search[sex] — по полу: 0 - если не указан, m - мужской, w - женский
search[queue] — 0 - не получают серии, 1 - получают
search[birth_day] (день), search[birth_month] (месяц), search[birth_year] (год) — дата рождения
search[deliveries_ids] — id рассылок через запятую
search[f_included_in_deliveries] — 1 - подписаны на рассылки, указанные в search[deliveries_ids], 0 - не подписаны
ID рассылки, на которую будет подписан подписчик. Через запятую можно указать несколько рассылок. Подписчик сразу начнет получать письма серии.
id
ID подписчиков, которых вы хотите подписать на выбранную рассылку. ID указываются через запятую.
По умолчанию, если не указать параметр ID, на рассылку будет подписан весь список
search[...]
Критерии поиска подписчиков:
search[date_from_day] (день), search[date_from_month] (месяц), search[date_from_year] (год) — подписчики, попавшие в список позже выбранной даты в формате ДД.ММ.ГГГГ
search[date_to_day] (день), search[date_to_month] (месяц), search[date_to_year] (год) — подписчики, попавшие в список ранее выбранной даты в формате ДД.ММ.ГГГГ
search[email] — поиск по email-адресу
search[name_first] — по имени
search[name_mid] — по отчеству
search[name_last] — по фамилии
search[email_state] — состояние адреса:
disabled — несуществующий
active — активированный
activation — неактивированный
search[country_id] — по ID страны
search[city] — по городу
search[address] — по адресу
search[phones] — по телефону
search[sex] — по полу: 0 - если не указан, m - мужской, w - женский
search[queue] — 0 - не получают серии, 1 - получают
search[birth_day] (день), search[birth_month] (месяц), search[birth_year] (год) — дата рождения
search[deliveries_ids] — id рассылок через запятую
search[f_included_in_deliveries] — 1 - подписаны на рассылки, указанные в search[deliveries_ids], 0 - не подписаны
search[groups_ids] — id групп через запятую
Ответ
xml
<response><result></result></response>
Отправка шаблона
action=on_template
Параметр
Описание
actionобязательный
on_template — отправка шаблона указанному списку подписчиков.
template_idобязательный
ID шаблона
from_nameобязательный
Имя отправителя письма
from_emailобязательный
Обратный email-адрес
archive_delivery_id
ID рассылки, в архив которой будет положено письмо после отправки, если это необходимо.
Планирование отправки письма на более поздний срок. Необходимо указать дату отправки в формате ДД.ММ.ГГГГ,ЧЧ:ММ (например, 1 января 2017 года 15:00 это 1.1.2017,15:00). Созданное задание отобразится в разделе планирования писем.
archive_delivery_id
ID рассылки, в архив которой будет положено письмо после отправки, если это необходимо
file_id
ID файла, который необходимо прикрепить. Через запятую можно указать несколько ID.
Если есть необходимость получить не весь список групп, а только некоторые из них, можно указать их id через запятую. В противном случае в ответе будет содержаться весь список.
Если есть необходимость получить статистику не всего списка рассылок, а только некоторых из них, можно указать их id через запятую. В противном случае в ответе будет содержаться весь список.
date — дата открытия в формате ДД/ММ/ГГГГ ЧЧ:ММ:СС (+02GMT)
subscriber — email-адрес подписчика
Обратные вызовы (callbacks)
Специализированный набор функций API, с помощью которого вы можете удалённо отслеживать изменения в вашем аккаунте на Falconsender в режиме реального времени.
Подключение
Введите URL уже готового скрипта в разделе API в настройках авторского аккаунта. Скрипт должен обрабатывать запросы от нашего сервера.
После сохранения к скрипту придёт GET-запрос с переменной action=test. Чтобы скрипт был принят, он должен вернуть строку TEST:OK — именно в верхнем регистре.
Дальше после каждого вызова скрипт должен возвращать строку из ID запроса, кода действия и слова ok, разделённых двоеточием. В любом другом случае запрос считается неудачным, и в течение 24 часов каждые 5 минут вызов будет повторяться.
Для передачи всех данных используется кодировка UTF-8. Данные поступают POST-запросом.
Переменные в каждом запросе
Переменная
Описание
request_id
Уникальный ID запроса. Желательно сохранять его на своей стороне и всегда проверять, чтобы не дублировать события.
date_tstamp
Дата события в формате UNIX-времени. Часовой пояс (GMT) Москвы.
date
Дата события в формате " ДД/ММ/ГГГГ ЧЧ:ММ:CC ". Часовой пояс (GMT) Москвы.
subscriber_id
ID подписчика
email
Электронный адрес подписчика
action
Код события. Могут передаваться дополнительные переменные. Значения переменной action указаны ниже.
Коды событий
Значение переменной action. С некоторыми событиями передаются дополнительные переменные.
action
Событие
subscriber_added
Добавлен новый подписчик
name_last, name_first, name_mid — Фамилия, имя и отчество подписчика
birth_day, birth_month, birth_year — Дата рождения подписчика
city — Город подписчика
company — Компания подписчика
subscriber_subscribed
Подписка на рассылку
delivery_id — ID рассылки, на которую подписчик подписался
subscriber_unsubscribed
Подписчик отписался
delivery_id — ID рассылки, от которой произошла отписка
subscriber_activated
Подписчик активирован без дополнительных переменных
subscriber_deleted
Подписчик удалил себя из списка автора без дополнительных переменных
Частые вопросы об API
Доступ и формат
На каких тарифах доступен API?
Только на платных — Basic и Pro. На бесплатном тарифе API не работает.
Где взять API-ключ?
В настройках аккаунта автора, в разделе API. Ключ состоит из 32 символов, и для доступа ко всем интерфейсам нужен только он.
В каком формате приходит ответ?
По умолчанию в XML. Чтобы получить JSON, передайте в запросе параметр format. Все данные передаются в кодировке UTF-8.
Как узнавать о новых подписчиках сразу?
Через обратные вызовы: укажите в настройках API адрес своего скрипта, и сервис будет присылать ему POST-запрос при каждом событии — подписке, отписке, активации и удалении подписчика.