Articles.Sape XML-RPC
Xml-rpc интерфейс статей доступен по адресу http://api.articles.sape.ru/xmlrpc/. Обращаться нужно по 80-ому порту, тело xml-запроса класть в POST_DATA. Всё общение происходит полностью в кодировке UTF-8.
Если Вы ещё ничего не знаете про XML-RPC, то рекомендуем почитать на сайте www.xmlrpc.com:
- Реализация протокола для Вашего любимого языка программирования.
- Для любителей PHP рекомендуем Zend Framework.
Описание существующих функций
-
(int)sape_articles.login((string) login, (string) token) — Авторизация в системе, необходимо вызывать в начале каждой сессии.
Свой токен для поля token вы можете получить в системе в разделе Паспорт.
Далее при каждом следующем запросе нужно передавать все вернувшиеся cookie.
Желательно авторизовавшись 1 раз выполнять все запросы в рамках одной и той же сессии, не вызывая login повторно.
Результатом выполнения функции является id пользователя. -
(string)sape_articles.testAuth() — Проверяет коректность авторизации возвращает id авторизованного пользователя если метод вернул число значит клиент авторизован. Иначе - вернет ошибку доступа (как и любой другой метод)
-
(array)sape_articles.seoGetProjectList() — Возвращает писок проектов пользователя.
поля списка:
"id" - int id проекта
"name" - string название проекта
"auto_decline_time" int Автоматически отказываться от размещения статей со статусом error более дней
"accept_price_change" int Одобрять статьи, изменившие цену? 1 - да, 3 - нет
"amount_today" float потрачено сегодня рубли
"amount_yesterday" float потрачено вчера рубли
"amount_total" float потрачено всего
"date_added" date дата создания -
(array)sape_articles.seoGetProjectPlaced(int projectId) — Возвращает список размещенных статей проекта, информацию о площадке размещения и ссылках внутри статьи.
поля списка:
"id" — id статьи
"name" — внутренне имя статьи
"title" — поле TITLE
"header" — заголовок статьи
"price" — цена размещения сатьи в месяц
"date_placed" — дата размещения
"date_indexed" — дата индексации
"nof_indexed_announcement" — количество анонсов в индексе ПС
"site_url" — URL площадки
"full_url" — URL размещения статьи на площадке
"site_cy" — ТИЦ статьи
"site_pr" — PR статьи
"site_flag_in_yaca" — флаг присутствие в яндекс каталоге
"site_flag_in_dmoz" — флаг присутствие в каталоге DMOZ
"links" — список ссылок внутри статьи; поля: "url" - url сслыки "anchor" - тест ссылки -
(boolean)sape_articles.seoProjectAdd(string $name, array $params) — Создание нового проекта
$name - название проекта
$params - массив параметров с полями:
"auto_decline_time" - int количество дней через которое снимается размещенная статья в статусе error
"accept_price_change" - Соглашаться ли со сменой цены автоматически? 1 - да 0 - нет -
(boolean)sape_articles.seoProjectDelete(int $projectId, int $ignorePlaced) Удаление проекта
$projectId - id проекта
$ignorePlaced - флаг игнорирования размещенных статей 1 - удалить проект несмотря на размещенные статьи(статьи снимаются) 0 - не удалять проект с размещенными статьями -
(boolean)sape_articles.seoProjectUpdate(int $projectId, array $params) Обновление проекта
$name - название проекта
$params - массив параметров с полями:
"name" - название проекта
"accept_price_change" - Действие со статьями, изменившими цену 1 - принимать 0 - отклонять
"auto_decline_time" - колическтво дней, чтобы автоматически отказываться от размещения статей со статусом error
"black_list" - список id черных списков; если задан пустым - все связи разрываются если не задан - старые связи остаются -
(int)sape_articles.isArticleUri((string) pageUri) — Секретная функция результат понятен для тех кому надо