Импорт комментариев в Cackle

HTTP метод Endpoint Ограничение Комментарий
POST http://cackle.me/api/3.0/comment/post.json 1 раз в 5 секунд Импорт комментариев на определенной странице сайта. Кодировка данных запроса UTF-8.

Параметры запроса:

Параметр Описание Комментарий
id Идентификатор вашего виджета Можно получить в панели администрирования: меню "Установить", вкладка "CMS Платформа", выбрать WordPress.
siteApiKey Секретный ключ виджета Можно получить в панели администрирования: меню "Установить", вкладка "CMS Платформа", выбрать WordPress.
accountApiKey Секретный ключ аккаунта Можно получить в панели администрирования: меню "Установить", вкладка "CMS Платформа", выбрать WordPress.
comments Список комментариев в формате JSON

Пример параметра comments:

{
  "chan": "12345",
  "url": "http://site.ru/post12345",
  "title": "Мой сайт | Пост 12345",
  "comments": [{
    "id": "111",
    "msg": "Привет мир!",
    "ip": "84.195.0.32",
    "status": "approved",
    "created": "1422820372367",
    "user": {
      "id": "808",
      "name": "Остап Бендер",
      "email": "ostap@example.org",
      "avatar": "//yourscr.com/40cc32af4753cdee62f527ef8ebe37df.png"
    }
  }, {
    "id": "888",
    "parent": "111",
    "msg": "Да, да, привет.",
    "media": "http://cackle.me/static/img/flat-comment.png http://cackle.me/static/img/flat-review.png",
    "ip": "40.105.4.195",
    "status": "approved",
    "created": "1425412776446",
    "name": "Саня",
    "email": "san@example.org"
  }]
}

Описание полей страницы:

Параметр Обязательный Описание Комментарий
chan Нет Идентификатор к которому будут привязаны комментарии на странице вашего сайта По умолчанию это адрес страницы без протокола и домена. Например: для адреса http://example.ru/page/12345, chan будет /page/12345.
Если ваш сайт использует CMS (WordPress, Joomla, Bitrix), то chan это идентификатор поста из БД.
url Да Адрес страницы
title Нет Название страницы Обычно берется из тега <title>...</title> на странице сайта.

Описание полей comments:

Параметр Обязательный Описание Комментарий
id Да Идентификатор комментария Уникален в рамках одного виджета.
parent Нет Идентификатор родительского комментария
msg Да Текст комментария
media Нет Ссылки на изображения Список ссылок разделенные пробелами на изображения в форматах png, jpg, gif.
ip Да IP адрес С которого был опубликован комментарий.
status Да Статус комментария Доступны: pending (в ожидании), approved (одобрен), spam (отмечен как СПАМ), deleted (удален). По умолчанию выставляется approved.
created Да Дата создания В миллисекундах.
user Да, если name, email отсутствуют Автор комментария Зарегистрированный пользователь вашего сайта. Если подключена услуга "Единая авторизация", то такой пользователь может входить под своим аккаунтом.
name Нет Имя анонимного юзера
email Нет Email анонимного юзера

Пример импорта на php с библиотекой curl

$comments=[];
$comments[]=Array(
    'id' => '111',
    'ip' => '111.111.111.111',
    'status' => 'approved',
    'msg'=> 'Привет мир!',
    'created' => '1422820372367',
    'user' => array(
    'id' => '808',
    'name' => 'Остап Бендер',
    'email' => 'ostap@example.org',
    'avatar' => 'http://cackle.me/static/img/logo.png'
        )
    );

$data = array(
    'chan' => '12345',
    'url' => 'http://cackle.me/test',
    'title' => 'Мой сайт | Товар 12345',
    'comments' => $comments);


function sendReviewsRequest($fields){
    $postfields = json_encode($fields);
    $curl_fields = array(
    'id' => 17216,
    'accountApiKey' => 'YrFno4qO3keCSOKGfjPh2SCbwkD3N6qp1NtCE66hA2IuxRtETTnmWlyyH7dOnVOa',
        'siteApiKey' => '97aCphfMrlnXIxxdYPFsF4dP4UrGc9oZVJLghOpDXneXgxIUnGdayyRzYj4az5TZ',
        'comments' => $postfields
    );
$curl=curl_init('http://cackle.me/api/3.0/comment/post.json');
curl_setopt($curl,CURLOPT_RETURNTRANSFER,true);
curl_setopt($curl,CURLOPT_POST,true);
curl_setopt($curl,CURLINFO_HEADER_OUT,true);
curl_setopt($curl,CURLOPT_POSTFIELDS,http_build_query($curl_fields));
$result = curl_exec($curl);
curl_close($curl);
print_r($result);
}
sendReviewsRequest($data);