PR.SAPE.RU XML-RPC
Наш xml-rpc интерфейс доступен по адресу http://api.pr.sape.ru/xmlrpc/. Обращаться нужно по 80-ому порту, тело xml-запроса класть в POST_DATA. Всё общение происходит полностью в кодировке UTF-8.
Если Вы ещё ничего не знаете про XML-RPC, то рекомендуем почитать на сайте www.xmlrpc.com:
- Реализация протокола для Вашего любимого языка программирования .
- Для любителей PHP рекомендуем Zend Framework .
Описание существующих функций
-
integer sape_pr.login(string $login, string $password, boolean $md5)
Авторизация в системе, необходимо вызывать в начале каждой сессии. Далее при каждом следующем запросе нужно передавать все вернувшиеся cookie. Результатом выполнения функции является id пользователя. Параметр md5 по-умолчанию false. -
array sape_pr.project.index(struct $filter)
Список кампаний пользователя. Фильтр - массив параметров - может включать в себя:- is_archived - находится в архиве true/false
- id - id кампании
- id
- name - название
- is_seo_checking - заявки проверяет оптимизатор
- budget - бюджет
- is_archived - в архиве
- created_at - дата создания
-
integer sape_pr.project.create(string $name, integer $budget)
Добавление кампании -
void sape_pr.project.set_budget(integer $id, integer $budget)
Установка бюджет для проекта. Если проект был в архиве, то он будет открыт снова. -
void sape_pr.project.unset_budget(integer $id)
Снятие параметра бюджета для проекта. Если проект был в архиве, то он будет открыт снова. -
void sape_pr.project.set_is_archive(integer $id, boolean $is_archived)
Установка флага "архивности" проекта -
array sape_pr.project.adverts(integer $project_id, boolean $ignore_moved, integer $page, integer $per_page)
Список заявок для проекта. Текст заявки можно получить методом sape_pr.advert.get_content. Каждый элемент содержит:- id
- type - тип заявки
- site_id - ID площадки
- status - статус заявки
- links - ссылки текста
- price - стоимость
- credit_period - длительность рассрочки
- credit_status - статус рассрочки
- placement_url - адрес размещения
- cy - тИЦ площадки
- pr - PR площадки
- is_indexed - статус индексации
- date_billing - дата списания денег
- created_at - дата-время создания
- placed_at - дата-время размещения
- status_at - дата-время установки статуса
- link - ссылка в новости
- news - статья
- archive - ссылка в архиве
- review - обзор
- 4 - проверка модератором
- 7 - ожидает действия от оптимизатора
- 5 - на размещении
- 11 - проверка размещения
- 12 - доработка размещения
- 20 - размещена
- 21 - отклонена вебмастером
- 22 - отменена оптимизатором
- 23 - отклонена модератором
- 25 - к снятию
- 26 - снята
- 1 - выплаты еще не начаты
- 2 - идет выплата
- 3 - идет выплата (списывается резерв)
- 5 - выплаты приостановлены
- 6 - недостаточно средств
- 10 - выплаты завершены
- 20 - выплаты приостановлены
-
array sape_pr.site.search(string $type, struct $filter, integer $page, integer $per_page)
Поиск площадок Фильтр - массив параметров - может включать в себя:- price_from - цена от
- price_to - цена до
- cy_from - тИЦ от
- cy_to - тИЦ до
- in_yaca - находится в Я.Каталоге
- in_dmoz - есть в DMOZ
- ag_yandex - есть в Яндекс.Новостях
- ag_google - есть в Google.Новостях
- ag_novoteka - есть в Новотеке
- id - id площадки
- id - ID сайта
- url - url сайта
- price - стоимость выбранного типа размещения
- credit_available - доступна покупка в рассрочку
- cy - тИЦ
- pr - PR
- in_yaca - находится в Я.Каталоге
- in_dmoz - находится в DMOZ
- ag_yandex - есть в Яндекс.Новостях
- ag_google - есть в Google.Новостях
- ag_novoteka - есть в Новотеке
- advert_indexed_percent - процент индексации заявок
- avg_placement_time - среднее время размещения заявки
- placement_uniqueness - уникальность размещений
-
array sape_pr.site.ownlist(array $ids)
Получить данные по собственным площадкам. По каждой площадке будет возвращён массив со следующими данными:- id - ID площадки
- url - адрес площадки
- is_disabled - true, если площадка деактивирована
- placement_propability - вероятность размещения
- indexation_percent - процент индексации
- uniqueness_percent - процент уникальности
- average_placement_times - массив со средними временами размещения (в часах) по типам заявок
- advert_type_prices - массив с ценами на типы заявок
- link - ссылка в новости
- news - статья
- archive - ссылка в архиве
- review - обзор
-
void sape_pr.site.update(integer $id, struct $params)
Обновить параметры площадки- price_link: Цена за размещение ссылки
- price_news: Цена за размещение статьи
- price_archive: Цена за размещение ссылки в архиве
- price_review: Цена за размещение за размещения обзора
- avg_republic: Примерное число републикаций
- format: Формат подачи (описание)
- chars_min: Минимум знаков
- chars_max: Максимум знаков
- flag_images: Изображения
- contact: Контактная информация
- requirements: Требования к контенту
- placement_example: Примеры размещения
- is_credit_available: Включить покупку в рассрочку см. http://help.sape.ru/pr/faq/1206
- is_disabled: Не принимать новые заявки
- is_placement_outside_only: Размещение ссылок только ВНЕ текста новости
- is_non_thematic_advert: Принимаю нетематические ссылки
- is_non_thematic_article: Принимаю нетематические статьи и пишу нетематические обзоры
- words_stop_list: Стоп-лист
- is_stop_unprintable_words: Фильтровать нецензурные слова
- is_stop_adult_words: Фильтровать adult-слова
- description: Описание
-
array sape_pr.site.adverts(struct $filter, boolean $ignore_moved, integer $page, integer $per_page)
Список заявок для площадок. Текст заявки можно получить методом sape_pr.advert.get_content. Каждый элемент содержит:- id
- type - тип
- site_id - ID площадки
- site_url - домен площадки
- status - статус
- price - стоимость
- credit_period - длительность рассрочки
- credit_status - статус рассрочки
- placement_url - адрес размещения
- placement_in_text - признак размещения ссылки в тексте материала
- placement_out_text - признак размещения ссылки вне текста материала
- is_placement_guarantied - гарантия размещения вебмастером
- is_placement_unique - признак уникальности текста размещённого материала
- is_indexed - статус индексации (null, если статус неизвестен)
- error - статус ошибки
- wait_days - кол-во дней для размещения заявки вебмастером
- created_at - дата-время создания
- updated_at - дата-время последнего какого-либо обновления
- placed_at - дата-время размещения
- status_at - дата-время отмены/отклонения
- link - ссылка в новости
- news - статья
- archive - ссылка в архиве
- review - обзор
- 1 - новая заявка
- 2 - новая заявка в отделе контента
- 3 - в работе у отдела контента
- 4 - проверка модератором
- 7 - ожидает действия от оптимизатора
- 5 - на размещении
- 11 - проверка размещения
- 12 - доработка размещения
- 13 - требует размещения
- 14 - ждёт отправки
- 20 - размещена
- 21 - отклонена вебмастером
- 22 - отменена оптимизатором
- 23 - отклонена модератором
- 24 - отклонена стоп-листом
- 100 - перенесена другому оптимизатору
- 101 - перенесена другому вебмастеру
- 1 - выплаты еще не начаты
- 2 - идет выплата
- 3 - идет выплата (списывается резерв)
- 5 - выплаты приостановлены
- 6 - недостаточно средств
- 10 - выплаты завершены
- 20 - выплаты приостановлены
- 0 - без ошибок (ссылка найдена)
- 1 - сервер недоступен
- 2 - страница запрещена для индексирования в robots.txt
- 3 - страница запрещена для индексирования в мета-тегах
- 4 - некорректный URL
- 5 - запрос перенаправляется на другую страницу
- 6 - страница содержит фреймы
- 10 - ссылка не найдена
- 11 - ссылка находится в <noindex>
- 12 - текст ссылки отличается
- advert_ids - массив ID заявок (иначе выбираются все заявки согласно сотальным условиям выборки)
- site_ids - массив ID площадок (иначе выборка по всем площадкам пользователя)
- status_codes - массив кодов статусов (иначе выборка по всем статусам заявки)
-
integer sape_pr.advert.create(string $type, integer $project_id, integer $site_id, struct $param)
Создание заявки Параметры:- wait_days - период ожидания (дней)
- max_price - максимальная цена покупки
- credit_period - период рассрочки 90 или 180 дней
- text - текст заяки
- is_text_final - запретить склонение текста ссылки
- place_in_text - размещение в тексте
- place_outside - размещение вне текста
-
struct sape_pr.advert.get(integer $id)
Получение параметров заявки (см. описание site.adverts) -
struct sape_pr.advert.get_content(integer $id, integer $revision)
Получение текста заявки Параметры:- body - текст
- author - автор (для статей)
- title - заголовок (для статей)
- version - версия текста
-
void sape_pr.advert.cancel(integer $id)
Отмена заявки оптимизатором. В случае отсутствия возможности отмены будет возвращена ошибка 404. -
void sape_pr.advert.approve(integer $id, integer $placement_type)
Утверждение размещения. Если для заявки уже указан конкретный способ размещения, $placement_type указывать не нужно. Если для заявки указаны оба способа размещения (как в тексте, так и в не текста), укажите в качестве $placement_type явно выбранный тип размещения:- 1 - в тексте
- 2 - вне текста
-
void sape_pr.advert.return_wm_improve(integer $id, string $reason)
Отправить заявку на доработку вебмастеру. -
void sape_pr.advert.reject(integer $id, string $reason)
Отклонение заявки вебмастером. В случае отсутствия возможности отклонения будет возвращена ошибка 404. -
array sape_pr.advert.comments(integer $id, mixed $is_read)
Комментарии заявки. Возвращает массив комментариев заявки (либо null, если нет ни одного). Каждый элемент содержит:- id
- author - автор комментария
- text - комментарий
- created_at - датавремя создания
- is_read - просмотрен ли комментарий
-
void sape_pr.advert.add_comment(integer $id, string $text)
Добавляет комментарий к заявке -
void sape_pr.advert.place(integer $id, string $url)
Указание адреса размещения. -
void sape_pr.advert.guarantee(integer $id)
Гарантирование размещения заявки -
void sape_pr.advert.return_seo_rework(integer $id, string $reason)
Отправка заявки на доработку оптимизатору -
array sape_pr.text.index(integer $project_id)
Список текстов пользователя. Каждый элемент содержит:- id
- title - название
- text - дата создания
-
integer sape_pr.text.create(integer $project_id, string $title, string $content)
Добавление текста -
array sape_pr.billing.outgoing(string $date)
Отчет по расходам в рамках проектов на определенную дату. Дата в формате YYYY-MM-DD Для каждой записи будет возврщена структура:- advert_id - id заяки
- amount - сумма списания
-
float sape_pr.billing.money_hold()
Прогнозируемый баланс по всем заявкам пользователя.
