Сервис ipush имеет api для управления отправкой и подпиской на push уведомления

Для использования API необходимо иметь apiToken и ключ Signature, которые выдаются пользователю администратором проекта.

Внимание! apiToken необходимо добавлять в качестве обязательного параметра при обращении к любым методам API.

Внимание! При каждом обращении в API передаваемые параметры должны быть подписаны цифровой подписью apiSignature, для формирования которой необходим не передаваемый ключ Signature.

Алгоритм формирования подписи:
Все передаваемые POST переменные необходимо объединить в одну строку и в конец полученной строки добавить секретный ключ Signature, выданный при регистрации.
Полученную строку необходимо зашифровать методом md5(). Полученную цифровую подпись необходимо добавить к передаваемым POST параметрам в качества параметра apiSignature:

$Signature = "ВАШ_КЛЮЧ_Signature"; $POST = Array( "token" => "12345", "apiToken" => "12345", "date_from" => time() - 12*60*60 ); $all = ""; foreach($POST as $v){ $all .= $v; } $POST["apiSignature"] = md5($all.$Signature);

После основного адреса API добавляется наименование метода API, например https://i-push.ru/api//createDomain/.

Доступные методы:

createDomain

Данный метод создает домен внутри личного кабинета и возвращает id домена

Входные данные:
сlient_id (int) || token (string(20)) [One is REQUIRED] - Параметры идентификации клиента, для которого создает домен
url - адрес сайта, указывается без http
https(true/false) - указываем используется ли ssl сертификат

Результат:
Array( [result] => 1 [response] => Array ( [domain_id] => 10 ) )

getSubscribeList

Данный метод возвращает id пользователей совершивших подписку и подходящих по фильтру

Входные данные:
сlient_id (int) || token (string(20)) [One is REQUIRED] - Параметры идентификации клиента, для которого обращается API
date_from (int) - Метка времени time() создания заявки, начиная с которой необходимо получить заявки
date_to (int) - Метка времени time() создания заявки, до которой необходимо получить заявки

Результат:
Array( [result] => 1 [response] => Array ( [num_queries] => 1 [queries] => Array ( [0] => Array ( [user_id] => 123 [domain_id] => 523 [domain] => site.ru [date_create] => 1436092911 ) ) ) )

createCollectorBlock

Задает список id при щелчке на которые вызывается блок с подпиской

Входные данные:
сlient_id (int) || token (string(20)) [One is REQUIRED] - Параметры идентификации клиента, для которого обращается API
domain_id (int) (string(20)) [One is REQUIRED] -
block_id - id блока. Пример: #callBackBlock

Результат:
Array( [result] => 1 [response] => Array ( [сollectorBlock_id] => 10 ) )

getCollectorBlocks

Вовзращает список блоков

Входные данные:
сlient_id (int) || token (string(20)) [One is REQUIRED] - Параметры идентификации клиента, для которого обращается API
domain_id (int) (string(20)) -

Результат:
Array( [result] => 1 [response] => Array ( [сollectorBlock_id] => 10 ) )

deleteCollectorBlock

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

Входные данные:
сlient_id (int) || token (string(20)) [One is REQUIRED] - Параметры идентификации клиента, для которого обращается API
сollectorBlock_id - id блока который удаляем, по факту блок сохраняется(для использования в аналитике), но больше не используется при сборе обращений

Результат:
Array( [result] => 1 [response] => Array ( [result] => true || false ) )

createPush_version

Создается шаблон для push рассылки

deletePush_version

Удаляется шаблон для рассылки

getPush_version

Получаем список версий

createDistribution

Создаем рассылку

getDistributions

Получаем список версий на рассылку