меню
Generic selectors
Exact matches only
Search in title
Search in content
Search in posts
Search in pages

Метод getMessage

Метод для получения информации об SMS или email сообщении

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

 

Синтаксис и URL для вызова метода
getMessage (int id)
https://api.unisender.com/ru/api/getMessage?id=ID&api_key=KEY

 

 

Аргументы
id * id — 31-битное положительное целое, идентификатор сообщения. Такие идентификаторы возвращаются методами createEmailMessage и createSmsMessage. id можно передавать как одно число или как массив для получения нескольких писем (см. пример ниже).
api_key * Ключ доступа к API

 

 

Возвращаемое значение
JSON-массив, каждый элемент массива – объект письма со следующими полями:

    • id — 31-битное положительное целое, идентификатор сообщения.

 

    • sub_user_login — либо логин субпользователя, который создал письмо, либо NULL, если письмо создал мастер-пользователь

 

    • sender_email (только если сообщение — email) — email отправителя

 

    • sender_name (только если сообщение — email) — имя отправителя

 

    • sender (только если сообщение — sms) — имя отправителя

 

    • subject (только если сообщение — email) — тема письма

 

    • body — тело письма

 

    • text_body (только если сообщение — email) — текстовая версия тела письма

 

    • list_id — ID списка рассылки

 

    • last_update — дата и время последнего изменения в письме в формате ГГГГ-ММ-ДД ЧЧ:ММ:CC. Например: 2013-09-15 05:38:11

 

    • service_type — тип письма (email или sms)

 

    • lang_code (только если сообщение — email) — двухбуквенный код языка для автоматического добавления к письму формы отписки (например, ‘ru’, ‘en’)

 

    • active_version_id — ID версии письма

 

    • message_format — возвращает способ создания сообщения: block — блочный редактор, raw_html — html редактор, text — текстовая версия письма

 

    • wrap_type (только если сообщение — email) — выравнивание текста в письме. Возможные варианты:
        • skip — выравнивание не производится

       

        • left — выравнивание по левому краю

       

        • center — выравнивание по центру

       

        • right — выравнивание по правому краю

       

       

 

    • is_draft — является ли письмо черновиком

 

    • images_behavior — (только, если сообщение — email) — как передаются картинки в письме. Возможные варианты:
        • only_links — картинки не передаются, вместо них добавляются ссылки

       

        • attachments — картинки передаются как вложения в письмо

       

        • smart_mode — в данный момент не используется

       

       

 

Пример:

{"result":[
    {
        "id":"3771225",
        "sub_user_login":null,
        "list_id":"910533",
        "last_update":"2013-09-02 07:35:17",
        "service_type":"email",
        "lang_code":"ru",
        "active_version_id":null,
        "message_format":"raw_html",
        "wrap_type":"left",
        "is_draft":"0",
        "images_behavior":"only_links",
        "sender_email":"test@unisender.com",
        "sender_name":"UniSender",
        "subject":"Message Subject",
        "body":"<p>Message body</p>",
        "text_body":"Message body"
    }
    ]
}

Примеры на PHP

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

Пример с использованием POST-запроса

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

// Создаём POST-запрос
$POST = array (
  'api_key' => $api_key,
  'id' => array(1,2,3), // запрашиваем набор сообщений
);

// Устанавливаем соединение
$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/
getMessage?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 "Received messages:
";
    foreach ($jsonObj->result as $one) {
      echo "Message #" . $one['id'] . "
";
      if ('email' == $one['sevice_type']) {
          echo 'From: ' . $one['sender_name'] . '(' . $one['sender_email'] . ')
'
          echo 'Subject: ' . $one['subject'] . '
'
          echo 'Message (text): ' . $one['text_body'] . '
'
      } else {
          echo 'From: ' . $one['sender'] . '
'
          echo 'Message: ' . $one['body'] . '
'
      }
      echo '
';
    }

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

Пример с использованием GET-запроса

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

// Создаём GET-запрос
$api_url = "https://api.unisender.com/ru/api/getMessage?format=
json&api_key=$api_key&id=1";

// Делаем запрос на 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 "Received messages:
";
    foreach ($jsonObj->result as $one) {
      echo "Message #" . $one['id'] . "
";
      if ('email' == $one['sevice_type']) {
          echo 'From: ' . $one['sender_name'] . '(' . $one['sender_email'] . ')
'
          echo 'Subject: ' . $one['subject'] . '
'
          echo 'Message (text): ' . $one['text_body'] . '
'
      } else {
          echo 'From: ' . $one['sender'] . '
'
          echo 'Message: ' . $one['body'] . '
'
      }
      echo '
';
    }
  }

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