Метод getCampaignAggregateStats
Получить отчёт по результатам доставки сообщений в заданной рассылке, сгруппированный по типам результата.
Принцип использования
| Синтаксис и URL для вызова метода |
|---|
| getCampaignAggregateStats (int campaign_id) |
| http://api.unisender.com/ru/api/getCampaignAggregateStats?format=json&api_key=KEY&campaign_id=ID |
| Аргументы | |
|---|---|
| api_key * | Ключ доступа к API |
| campaign_id * | Идентификатор кампании, полученный при вызове метода createCampaign. |
| Возвращаемое значение | |
|---|---|
| JSON-объект со следующим полями: | |
| total | Общее количество обработанных сообщений. |
| data | Массив результатов доставки. Каждый результат представляет собой тип результата и количество сообщений. Про типы результатов можно прочитать здесь. |
|
Если были ошибки или предупреждения, они возвращаются в полях error/warnings
в соответствии с описанием
Пример возвращаемого значения:
{
"result":{
"total":241 ,
"data":{
"ok_sent":239 ,
"err_will_retry":2
}
}
}
|
|
Смотрите также
Примеры на PHP
Мы настоятельно рекомендуем использовать POST-запросы, так как это более безопасный метод передачи данных, нежели GET. Более того, по возможности используйте SSL-соединение с UniSender. Подробнее о методах соединения здесь.
Пример с использованием POST-запроса
// Ваш ключ доступа к API (из Личного Кабинета)
$api_key = "xxxxxxxxxxxxxxx";
// Параметры для отправки сообщения
$id = "932498";
// Создаём POST-запрос
$POST = array (
'api_key' => $api_key,
'campaign_id' => $id,
);
// Устанавливаем соединение
$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,
'http://api.unisender.com/ru/api/getCampaignAggregateStats?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 "<table border='1'>";
echo "<tr><td>Status</td><td>Count</td>";
for (var $status in $jsonObj->result->data) {
echo "<tr><td>" . $status . "</td><td>" . $jsonObj->result->data[$status] . "</td></tr>";
}
echo "</table>";
}
} else {
// Ошибка соединения с API-сервером
echo "API access error";
}
Пример с использованием GET-запроса
// Ваш ключ доступа к API (из Личного Кабинета)
$api_key = "xxxxxxxxxxxxxxxxxxxx";
// ID кампании, по которой надо получить статистику
$email_id = "932498";
// Создаём GET-запрос
$api_url = "http://api.unisender.com/ru/api/getCampaignAggregateStats?format=json".
"&api_key=$api_key&campaign_id=$email_id";
// Делаем запрос на 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 "<table border='1'>";
echo "<tr><td>Status</td><td>Count</td>";
for (var $status in $jsonObj->result->data) {
echo "<tr><td>" . $status . "</td><td>" . $jsonObj->result->data[$status] . "</td></tr>";
}
echo "</table>";
}
} else {
// Ошибка соединения с API-сервером
echo "API access error";
}



