SAPE.RU XML-RPC
Наш xml-rpc интерфейс доступен по адресу http://api.sape.ru/xmlrpc/. Обращаться нужно по 80-ому порту, тело xml-запроса класть в POST_DATA. Всё общение происходит полностью в кодировке UTF-8.
Если Вы ещё ничего не знаете про XML-RPC, то рекомендуем почитать на сайте www.xmlrpc.com:
- Реализация протокола для Вашего любимого языка программирования.
- Для любителей PHP рекомендуем Zend Framework.
Описание существующих функций
(int) sape.login((char) login, (char) password [, (boolean) md5 = false])— авторизация в системе, необходимо вызывать в начале каждой сессии. Далее при каждом следующем запросе нужно передавать все вернувшиеся cookie. Если параметр md5 == true, то пароль должен быть в захеширован алгоритмом MD5. Результатом выполнения функции является id пользователя.(array) sape.get_user()— информация о пользователе:- login,
- e-mail,
- баланс,
- число купленных ссылок,
- число купленных ссылок в статусе ОК,
- месячный бюджет,
- месячный бюджет по статусу ОК.
(float) sape.get_balance()— текущий баланс пользователя.(array) sape.get_sites()— список сайтов пользователя, каждый элемeнт содержит:- ID сайта,
- УРЛ,
- CY,
- PR главной страницы,
- ID категории,
- дата регистрации,
- дата последнего изменения максимума ссылок для площадки,
- статус:
NEW— новый,IND— проиндексирован,OK— работает,IND_NOW— в процессе индексации,FAIL— не прошёл модерацию,IND_WAIT— ожидает индексацию,REIND_NOW— в процессе переиндексации,REIND_WAIT— ожидает переиндексацию.
- комментарий модератора,
- уровень домена,
- флаг авторежима,
- максимальное количество ссылок на каждом уровне,
- флаг забаненности в Yandex,
- скрывать УРЛ,
- разделитель ссылок,
- класс ссылок,
- класс контекстных ссылок,
- стоп слова,
- флаги использования стандартных списков стоп-слов,
- флаг приостановки продажи ссылок,
- сумма за сегодня,
- сумма за вчера,
- сумма всего,
- комментарий модератора,
- наличие сайта в Yandex каталоге,
- наличие сайта в DMOZ,
- кол-во страниц в Yandex,
- кол-во страниц в Google.
(int) sape.site_bl_add((array) $domains, [(int) site_id = 0])— добавление списка доменов в BL или GBL (еслиsite_id == 0). $domains - массив доменов, не более 100 элементов. Возвращает кол-во добавленных доменов.(bolean) sape.site_set_max_per_page((int) site_id, (hash) params)— установка максимального количества ссылок. Возвращает false если количество для всех уровней не изменилось и true в противоположном случае. Увеличивать максимальное количество ссылок можно не чаще чем 1 раз в 2 недели. Возможные параметры:- mpp_1; максимальное количество ссылок для главной,
- mpp_2; максимальное количество ссылок для страниц второго уровня,
- mpp_3; максимальное количество ссылок для страниц третьего уровня
(array) sape.get_site_pages((int) site_id)— список страниц сайта, каждый элемент содержит:- ID страницы,
- статус и статус контекстный:
NEW— новая,OK— активная,DEL— удалена,NO_CODE— код не найден.
- УРЛ страницы,
- PR,
- уровень вложенности,
- количество внешних ссылок,
- цена,
- количество ссылок.
(int) sape.site_pages_activate((int) site_id, [(bool) flag_context = false])— активация страниц сайта, возвращает количество активированных страниц.(array) sape.get_site_links((int) site_id [, (char) status, (timestamp) date_start, (timestamp) date_stop, (int) pn = 0])— список ссылок сайта, каждый элемeнт содержит:- ID ссылки,
- статус:
WAIT_WM— ожидает подтверждения вебмастера,WAIT_SEO— ожидает подтверждения оптимизатора,OK— размещена,ERROR— не найдена,SLEEP— заблокирована из-за нехватки денег у оптимизатора.
- ID страницы,
- УРЛ акцептора,
- текст ссылки,
- цена,
- новая цена,
- дата размещения ссылки,
- дата блокировки ссылки (по статусам
ERRORилиSLEEP), - дата смены цены,
- флаг контекстности.
(array) sape.get_sites_links_count([(char) status])— количество ссылок по сайтам.(array) sape.get_site_money_stats((int) site_id [, (int) year [, (int) month [, (int) day]]])— статистика доходов по сайту.(array) sape.get_projects([(boolean) show_deleted])— список проектов пользователя (включая удалённые, если show_deleted == true), каждый элемент содержит:- ID проекта,
- название,
- автоматически снимать ссылки с сайтов, отсутствующих в ПС Яндекс,
- не распространять ограничение на число ВС на избранные сайты,
- разрешить добавлять в проект одинаковые УРЛы,
- автоматически снимать ссылки для главных страниц, количество ВС на которых превысило указанное значение,
- автоматически снимать ссылки для страниц второго УВ, количество ВС на которых превысило указанное значение,
- автоматически снимать ссылки для страниц третьего УВ, количество ВС на которых превысило указанное значение,
- автоматически снимать ссылки, имеющие статус
ERRORстолько дней подряд, - потрачено за сегодня,
- потрачено за вчера,
- потрачено всего,
- дата создания.
(boolean) sape.project_update((int) project_id, (hash) project_params)— изменение настроек проекта в соответствии с переданными параметрами, возможные параметры:- name; название,
- flag_cancel_links_yabl; автоматически снимать ссылки с сайтов, отсутствующих в ПС Яндекс,
- flag_ext_links_max_no_wl; не распространять ограничение на число ВС на избранные сайты,
- flag_allow_nonunique_urls; разрешить добавлять в проект одинаковые УРЛы,
- nof_ext_links_max_l1; автоматически снимать ссылки для главных страниц, количество ВС на которых превысило указанное значение,
- nof_ext_links_max_l2; автоматически снимать ссылки для страниц второго УВ, количество ВС на которых превысило указанное значение,
- nof_ext_links_max_l3; автоматически снимать ссылки для страниц третьего УВ, количество ВС на которых превысило указанное значение,
- nof_days_to_keep_errors; автоматически снимать ссылки, имеющие статус
ERRORстолько дней подряд,
(array) sape.get_urls((int) project_id [, (boolean) show_deleted])— список УРЛов проекта (включая удалённые, если show_deleted == true), каждый элемент содержит:- ID УРЛа,
- ID проекта,
- УРЛ,
- название,
- режим модерации,
- полуавтоматический режим,
- дата создания,
- сумма за сегодня,
- сумма за вчера,
- сумма всего,
- общее количество ссылок,
- период запуска авторежима,
(array) sape.get_url_links((int|array) url_id [, (char) status, (timestamp) date_start, (timestamp) date_stop, (int) pn = 0])— список ссылок УРЛ(a/ов), каждый элемент содержит:- ID ссылки,
- статус:
WAIT_WM— ожидает подтверждения вебмастера,WAIT_SEO— ожидает подтверждения оптимизатора,OK— размещена,ERROR— не найдена,SLEEP— заблокирована из-за нехватки денег у оптимизатора.
- ID сайта,
- УРЛ сайта,
- CY сайта,
- ID страницы,
- УРЛ сраницы,
- PR страницы,
- уровень вложенности страницы,
- количество внешних ссылок на странице,
- текст ссылки,
- цена,
- новая цена,
- дата размещения ссылки,
- дата блокировки ссылки (по статусам ERROR или SLEEP),
- дата смены цены,
- флаг контекстности,
- ID авто-фильтра, по которому пришла ссылка.
(array) sape.get_project_links((int) project_id [, (char) status, (timestamp) date_start, (timestamp) date_stop, (int) pn = 0])— список ссылок проекта, каждый элемент содержит:- ID ссылки,
- статус:
WAIT_WM— ожидает подтверждения вебмастера,WAIT_SEO— ожидает подтверждения оптимизатора,OK— размещена,ERROR— не найдена,SLEEP— заблокирована из-за нехватки денег у оптимизатора.
- ID сайта,
- УРЛ сайта,
- CY сайта,
- ID страницы,
- УРЛ сраницы,
- PR страницы,
- уровень вложенности страницы,
- количество внешних ссылок на странице,
- текст ссылки,
- цена,
- новая цена,
- дата размещения ссылки,
- дата блокировки ссылки (по статусам ERROR или SLEEP),
- дата смены цены,
- флаг контекстности,
- ID авто-фильтра, по которому пришла ссылка.
(array) sape.get_urls_links_count((int) project_id [, (char) status])— количество ссылок по урлам(array) sape.get_url_anchors((int) url_id)— список анкоров УРЛа, каждый элемент содержит:- ID анкора,
- сам анкор,
- количество использованных раз.
(int) sape.get_url_anchors_count((int) url_id)— количество анкоров УРЛа(array) sape.get_urls_anchors_count()— список количества анкоров по всем УРЛам, каждый элемент содержит:- ID урла,
- количество анкоров.
(char) sape.get_placement_status((int) id)— возвращает текущий статус ссылки по ID.(array) sape.get_url_money_stats((int) url_id [, (int) year [, (int) month [, (int) day]]])— статистика расходов по УРЛу.(array) sape.get_project_money_stats((int) project_id [, (int) year [, (int) month [, (int) day]]])— статистика расходов по проекту.(array) sape.get_projects_money_stats((int) year [, (int) month [, (int) day]])— статистика расходов по всем проектам.(array) sape.get_balance_money_stats([(int) year [, (int) month [, (int) day]]])— статистика изменений баланса. Если дата не указана возвращает данные за все время.(array) sape.get_categories()— массив категорий сайтов.(array) sape.get_domain_zones()— массив доменных зон.(array) sape.get_regions()— массив регионов.(array) sape.get_yaca_categories()— массив категорий YACA.(array) sape.get_whitelists()— массив списков избранного.(array) sape.get_messages((hash) filter, [(int) pn = 0 [, ps = 100]])— выбор сообщений по параметрам, указанным в ассоциированном массиве filter (pn - номер страницы, ps - кол-во сообщений на странице). Возможные фильтры:- dates — массив дат за которые необходимо получить сообщения, доступны только последние семь дней
- query — текст фильтра(UTF-8)
- types — массив типов сообщений
- 1 - На собственной странице * размещена новая ссылка * на URL *
- 2 - Новая заявка на размещение на странице * ссылки * на URL *
- 3 - Размещение на странице * ссылки * на URL * утверждено хозяином площадки (АВТО) и оптимизатором (АВТО)
- 4 - Размещение на странице * ссылки * на URL * утверждено хозяином площадки (АВТО) и ожидает подтверждения оптимизатора.
- 5 - Размещение на странице * ссылки * на URL * отменено.
- 6 - На собственной странице * обновился текст ссылки на URL * &mdash новый текст *
- 7 - Заявка на смену текста ссылки на URL * на странице * — новый текст *
- 8 - Новая цена (*) для размещения ссылки * на сайт * на странице * принята.
- 9 - Размещение на странице * ссылки * на URL * подтверждено оптимизатором.
- 10 - Площадка * [ID:*] удалена вебмастером из системы вместе со всеми заявками и ссылками!
- 11 - Проект * удалён
- 12 - В проект * добавлен URL *
- 13 - Удаление URL из проекта
- 14 - От Вашего сайта * [ID:*] в течение последних * дней не было ни одного обращения к нашему серверу за новыми ссылками. Покупка новых ссылок на сайте приостановлена. Напишите в обратную связь, когда исправите проблему.
- 15 - При очередной проверке размещения ссылок, на странице * не была найдена ваша ссылка * на сайт *. Это может быть связано с проблемами хостинга у площадки. Средства с вашего счета не будут списаны за эти сутки, при восстановлении работоспособности площадки размещение вашей ссылки возобновится.
- 16 - Число внешних ссылок на всех страницах сайта * обновлено нашим роботом.
- 17 - Cайт * не проиндексирован поисковой системой Яндекс.
- 18 - Главная страница сайта * не отвечает! Примите необходимые меры и добавьте сайт в систему снова.
- 19 - Ваш сайт * проиндексирован нашим роботом и отправлен на модерацию. Для начала работы следует разрешить найденные роботом страницы к продаже. Сайт заработает после проверки нашим модератором.
- 20 - Cайт * удалён из системы.
- 21 - Ваш сайт * проиндексирован нашим контекстным роботом. Для начала работы следует разрешить найденные роботом страницы с контекстным кодом к продаже.
- 22 - Цена на размещение ссылки * [*] на странице * увеличена с * до * . У Вас есть * дней, чтобы принять новую цену или отказаться от этой ссылки.
- 24 - Размещение на странице * ссылки * на URL * утверждено хозяином площадки и оптимизатором (АВТО).
- 25 - Размещение на странице * ссылки * на URL * утверждено хозяином площадки и ожидает подтверждения оптимизатора.
- 26 - Ваш УРЛ [ID:*] из проекта * был принудительно переведён в ручной режим работы из полу-автоматического в связи с тем, что в течение 10 дней Вами не было одобрено/отклонено ни одной подобранной автоматом заявки.
- 27 - Режим модерации УРЛа * был изменён на ручной/автоматический
- 28 - Проект * усыплён
- row_count — кол-во сообщений
- page_count — кол-во страниц
- messages — массив сообщений, каждый элемент содержит:
- date — дата
- body — текст сообщения(UTF-8)
- type — тип
(int) sape.placements_accept_wm((array) ids)— одобрение ссылок вебмастером, возвращает количество успешно одобренных. Необходимо одобрять ссылки в статусеWAIT_WM. Массив не больше 100 элементов.(array) sape.get_placements_new_prices((int) project_id[, (int) days])— получение новых цен ссылок проекта, изменившихся за опеределенное кол-во дней (по умолчанию 30). Возвращается массив, каждый элемент которого содержит:- id — ID ссылки
- date — дата установки старой цены
- price — старая цена
- date_price_changed — дата установки новой цены
- price_new — новая цена
