Метод getCampaigns

Метод для получения перечня всех имеющихся рассылок. Количество получаемых за раз рассылок ограничено числом 10000. Для получения полного списка рассылок при их количестве более 10000, используйте параметры from и to.

Принцип использования

Синтаксис и URL для вызова метода
getCampaigns ([datetime from, datetime to])
https://api.unisender.com/ru/api/getCampaigns?format=json&api_key=KEY&from=TIME&to=TIME

Аргументы
api_key * Ключ доступа к API
from Дата и время старта рассылки, начиная с которой нужно выводить рассылки, в формате «ГГГГ-ММ-ДД чч:мм:сс», часовой пояс UTC.
to Дата и время старта рассылки, заканчивая которой нужно выводить рассылки, в формате «ГГГГ-ММ-ДД чч:мм:сс», часовой пояс UTC.
limit Количество записей в ответе на один запрос должно быть целым числом в диапазоне 1 - 100 , по умолчанию стоит 50 записей.
offset Параметр указывает, с какой позиции начинать выборку. Значение должно быть 0, или больше (позиция первой записи начинается с 0), по умолчанию 0.

Возвращаемое значение

JSON-массив, каждый элемент массива – объект с полями id, start_time, status, message_id, subject, sender_name, sender_email, stats_url, где:

id - id текущей рассылки;

start_time - время старта рассылки, возвращается в формате «ГГГГ-ММ-ДД чч:мм:сс» в UTC;

status - текущий статус рассылки (см. возможные статусы рассылок);

message_id - id сообщения, передаваемого в данной рассылке;

list_id - id списка, для которого создавалась рассылка;

subject - тема письма рассылки;

sender_name - значение поля "От кого" в данной рассылке;

sender_email - значение поля "С адреса" в данной рассылке;

stats_url - URL страницы отчета по данной рассылке. 


Пример возвращаемого значения:

{
    "result": [
        {
            "id": 6626556,
            "start_time": "2015-09-28 10:03:59",
            "status": "waits_schedule",
            "message_id": 3769465,
"list_id": 32127465, "subject": ", спецпредложения туроператоров и
горящие туры"
, "sender_name": "test", "sender_email": "admin-test@unisender.com", "stats_url": "https://unisender.local/ru/v5/bursts/view/6626556" }, ... ] }

 

Примеры на PHP

Мы настоятельно рекомендуем использовать POST-запросы, так как это более безопасный метод передачи данных, нежели GET. Используйте SSL-соединение с UniSender. Подробнее о методах соединения здесь.

Пример с использованием POST-запроса
// Ваш ключ доступа к API (из Личного Кабинета)
$api_key = "xxxxxxxxxxxxxxxx";

// Создаём POST-запрос
$POST = array (
  'api_key' => $api_key,
);

// Устанавливаем соединение
$ch = curl_init();
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $POST);
curl_setopt($ch, CURLOPT_TIMEOUT, 10);
curl_setopt($ch, CURLOPT_URL, 'https://api.unisender.com/ru/api/
getCampaigns?format=json');
$result = curl_exec($ch);

if ($result) {
  // Раскодируем ответ API-сервера
  $jsonObj = json_decode($result);

  if(null===$jsonObj) {
    // Ошибка в полученном ответе
    echo "Invalid JSON";

  }
  elseif(!empty($jsonObj->error)) {
    // Ошибка получения списка рассылок
    echo "An error occured: " . $jsonObj->error . "(code: " . $jsonObj->code . ")";

  } else {
    // Выводим коды и статусы всех имеющихся рассылок
    echo "Here's a list of your campaigns:<br>";
    foreach ($jsonObj->result as $one) {
      echo "Campaign #" . $one->id . " (" . $one->status . ")". "<br>";
    }

  }
} else {
  // Ошибка соединения с API-сервером
  echo "API access error";
}

Пример с использованием GET-запроса
// Ваш ключ доступа к API (из Личного Кабинета)
$api_key = "xxxxxxxxxxxxxxxxxxxxxx";

// Создаём GET-запрос
$api_url = "https://api.unisender.com/ru/api/getCampaigns?format=
json&api_key=$api_key"; // Делаем запрос на API-сервер $result = file_get_contents($api_url); if ($result) { // Раскодируем ответ API-сервера $jsonObj = json_decode($result); if(null===$jsonObj) { // Ошибка в полученном ответе echo "Invalid JSON"; } elseif(!empty($jsonObj->error)) { // Ошибка получения списка рассылок echo "An error occured: " . $jsonObj->error . "(code: " . $jsonObj->code . ")"; } else { // Выводим коды и статусы всех имеющихся рассылок echo "Here's a list of your campaigns:<br>"; foreach ($jsonObj->result as $one) { echo "Campaign #" . $one->id . " (" . $one->status . ")". "<br>"; } } } else { // Ошибка соединения с API-сервером echo "API access error"; }