Новости
22 февраля 2012

По сравнению с версией 1.0.20120120 были внесены следующие изменения: Для параметров: - Оптимизирована работа базы данных плагина. -...

14 февраля 2012

Сервис RDS совместно с форумом Webmasters.ru проводит конкурс seo-статей на общий призовой бюджет $1000! Время проведения с 14 февраля по 5...

25 января 2012

Кроме пополнения через Webmoney, добавлен прием платежей INTERKASSA. Система приема платежей INTERKASSA - осуществляет обработку операций с...

Работа с API

API сайта recipdonor.com позволяет разработчикам различных приложений использовать ресурсы сервера для массовой проверки любых seo-параметров без бана, каптчей, таймаутов, поиска прокси, смены верстки поисковых машин, проблем парсинга значений, предоставления их в нужном формате и прочего. Все это будет происходить за счет сторонних ресурсов других серверов.

На рынке в данный момент существует достаточно онлайн сервисов и программ для получения различных seo-параметров, решающие разные задачи. Их разработчики постоянно сталкиваются с однотипными и повседневными проблемами, такими как распарсивания значений, бана и работы с большим объемом данных. Все это задерживает их разработку, и превращает в рутину или убивает идею на корню.

Все эти проблемы мы берем на себя, и вы сможете получать любые seo-значения напрямую от нас.

  • Тестовая страница RESTful API, которая позволяет посылать тестовые запросы (JSON/XML) и получать ответы от RDS API сервера.

Библиотека .NET для работы с API

  • Версия 0.2.4296.27578 Скачать
    Для работы необходим Microsoft .NET Framework 2.0 и выше.
  • Документация Скачать  Online
    При попытке открыть фаил скомпилированной справки HTML (.chm) содержимое может отображаться неверно:
    • Переход на веб-страницу был отменен.
    • Действие отменено.

    Чтобы устранить эту проблему, выполните следующие шаги.
    • Щелкните правой кнопкой мыши.CHM файл и выберите Свойства
    • На вкладке Общие нажмите кнопку с надписью «Разблокировать»
    • Нажмите кнопку ОК
    Пример работы:
    CSharp:
    
            /// <summary>
            /// Синхронный пример работы 
            /// </summary>
            public static void SyncExample()
            {
                //пример создания проверки без событий
                ICheck CyCheckerWithoutEvents = new CyCheck(new[] {"helloworld.ru"});
                string ApiKey = "ApiKey from RDS";
                CyCheckerWithoutEvents.Start(ApiKey);
            }
    
            /// <summary>
            /// Асинхронный пример работы
            /// </summary>
            public static void AsyncExample()
            {
                //пример создания проверки c событиями
                ICheck CyCheckerEvents = new CyCheck(new[] { "helloworld.ru","ya.ru" }, ProgressChanged, StateChanged);
                //ApiKey - берется из Пользовательской инфы на сайте RDS
                string ApiKey ="ApiKey from RDS";
                //запуск асинхронной проверки, во время работы будут возникать события ProgressChanged-изменения кол-ва проверенных, 
                //StateChanged - изменение состояния сесси
                IAsyncResult asyncResult=CyCheckerEvents.StartAsync(ApiKey);
                //Принудительная остановка проверки
                CyCheckerEvents.CloseAsync();
                //ожидание остановки
                while (!asyncResult.AsyncWaitHandle.WaitOne(1000)) { }
                //Продолжение этой же проверки в синхронном режиме
                CyCheckerEvents.Start();            
                
                Console.ReadKey();
            }
    
            /// <summary>
            /// Обработка события изменения кол-ва проверенных данных
            /// </summary>
            /// <param name="sender">обьект ICheck</param>
            /// <param name="progressChangedEventArgs">аргументы изменения проверки</param>
            static void ProgressChanged(object sender, ProgressChangedEventArgs progressChangedEventArgs)
            {
                
            }
    
            /// <summary>
            /// Обработка события изменения состояния проверки
            /// </summary>
            /// <param name="sender">обьект ICheck</param>
            /// <param name="stateChangedEventArgs">аргумент изменения изменения состояния</param>
            static void StateChanged(object sender, StateChangedEventArgs stateChangedEventArgs)
            {
                switch (stateChangedEventArgs.NewStatus)
                {
                    case TaskStatus.Completed:
                        foreach (KeyValuePair<object,object> keyValuePair in ((ICheck)sender).Result)
                        {
                            Console.WriteLine("itemTocheck - {0},Result - {1}",keyValuePair.Key,keyValuePair.Value);
                        }
                        foreach (KeyValuePair<string,CyApiData> keyValuePair in ((CyCheck) sender).Result)
                        {
                            Console.WriteLine("itemTocheck - {0},Result - {1}", keyValuePair.Key, 
                                 String.Format("{0},{1},{2}", keyValuePair.Value.Cy,keyValuePair.Value.YaBarMirrow,keyValuePair.Value.Yaca));
                        }
                        break;
                }
            }
            

Общие данные:

REST интерфейс доступен по адресу http://www.recipdonor.com:998/api/ или https://www.recipdonor.com:999/api/ (сертификат пока не подписан).

Обращаться необходимо на 998-й или 999-й порт.

Все строковые данные при работе с интерфейсом указываются и возвращаются в кодировке UTF-8.

Описание параметров и их стоимость:

Приглашаем к сотрудничеству компании и проекты, работающие на рынке поисковой оптимизации. И надеемся, что будем друг другу полезны. Для таких разработчиков, использующих наше API в своих продуктах, кроме получения партнерского вознаграждения от привлеченных пользователей, также предусмотрена отдельная программа бонусов от потраченной ими суммы.

Данный функционал пока находится в статусе "beta". Если вам необходимы какие-то дополнительные параметры или в API нужно вносить какие-то корректировки для удобства работы – не бойтесь связываться с нами для оперативных консультаций и разъяснений непонятных моментов. Также можете присылать Ваши вопросы и пожелания на support@recipdonor.com или воспользоваться обратной связью.

Авторизация

В API используется Basic HTTP Authentication.

Чтобы получить права доступа, клиент посылает API ключ пользователя (apikey) и символ двоеточия (":").

f9168c5e-ceb2-4faa-b6bf-329bf39fa1e4:x

Строку необходимо закодировать в base64. Конечный Authorization header имеет вид:

Authorization: Basic RjkxNjhDNUUtQ0VCMi00ZmFhLUI2QkYtMzI5QkYzOUZBMUU0Ong=

Пример простого запроса:

GET /api/age/test.com HTTP/1.1
Authorization: Basic RjkxNjhDNUUtQ0VCMi00ZmFhLUI2QkYtMzI5QkYzOUZBMUU0Ong=
Content-Type: text/xml; charset=utf-8
Host: recipdonor.com:998

API ключ можно получить в профайле по ссылке

Партнерский ключ приложения

Разработчики использующие API recipdonor.com в своих приложениях могут получать пратнерские отчисления.

Для этого доcтаточно добавить Ваш API-ключ приложения в запросы которые посылаются к нашему API.

Ключ в запрос добавляется в виде HTTP Header:

X-RdsAppKey : xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx

Окончательно сформированный запрос может выглядеть примерно так:

GET /api/age/test.com HTTP/1.1
Authorization: Basic RjkxNjhDNUUtQ0VCMi00ZmFhLUI2QkYtMzI5QkYzOUZBMUU0Ong=
Content-Type: text/xml; charset=utf-8
X-RdsAppKey : xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
Host: recipdonor.com:998

Если вы используете нашу клиентскую библиотеку то достаточно добавить в фаил App.config Вашего приложения, строчки:

<configuration>
	<appSettings>
		<add key="dllApi.RdsAppKey" value="xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"/>
	</appSettings>
</configuration>

Если в конфигурационном фаиле уже существуют разделы configuration/appSettings просто добавте строчку в них.

API-ключ приложения можно получить в профайле по ссылке

Статистику по партнерским отчислениям можно посмотреть здесь

Форматы данных

RDS API для получения и выдачи данных использует форматы JSON и XML. По умолчанию используется формат XML. Для переключения на формат JSON в строку запроса необходимо добавить параметр

format=json

В конечном итоге строка будет иметь вид

/api/age/test.com?format=json

Также необходимо учесть, что при использовании XML нужно передавать заголовок,

Content-Type: text/xml; charset=utf-8

а при использовании JSON

Content-Type: application/json; charset=utf-8

Коды ошибок

400 Bad RequestНеверно сформирован запрос.
401 UnauthorizedНеверный API ключ или неправильно сформирован заголовок Authorization.
402 Payment RequiredНедостаточно средств на счету для выполнения запроса.
404 Not FoundМетод не найден. Проверьте имя вызываемого метода.
411 Length RequiredЗаголовок Content-Length не указан.
500 Internal Server ErrorБолее подробное описание ошибки смотрите во внутреннем сообщении.
Проверка тИЦ, Я.Каталог и Зеркало
Стоимость:0,2$ за 1000 запросов

Для осуществления проверки тИЦ используются два API метода /session/new и /session/get.

В примере мы проверим на тИЦ сразу несколько сайтов mozilla.com, mozilla.ru, google.com, msdn.microsoft.com. Инициализация проверки осуществляется методом /session/new.

Создадим проверку послав в API запрос вида


PUT /api/session/new HTTP/1.1
Authorization: Basic RjkxNjhDNUUtQ0VCMi00ZmFhLUI2QkYtMzI5QkYzOUZBMUU0Ong=
Content-Type: text/xml; charset=utf-8
Host: recipdonor.com:998
Content-Length: 247

<InitSession>
	<Parameters>
		<TaskVariant>Cy</TaskVariant>
	</Parameters>
	<DomainNames>
		<string>mozilla.com</string>
		<string>mozilla.ru</string>
		<string>google.com</string>
		<string>msdn.microsoft.com</string>
	</DomainNames>
</InitSession>

HTTP заголовок Authorization описан в разделе Авторизация

Authorization: Basic RjkxNjhDNUUtQ0VCMi00ZmFhLUI2QkYtMzI5QkYzOUZBMUU0Ong=

Справочные данные по методу /session/new

После выполнения запроса мы получим ответ,


<?xml version="1.0" encoding="utf-8"?>
<ApiSessionItemSlimContract>
	<Id>88576b78-03c6-40c3-a4db-f4c30bb97081</Id>
	<ExpireAt>2010-12-15T14:21:31.0993502+02:00</ExpireAt>
	<SessionStatus>ToCheck</SessionStatus>
</ApiSessionItemSlimContract>

что говорит об успешном создании сессии проверки

Id - уникальный идентификатор сессии
ExpireAt - сессия будет уничтожена в указанное время
SessionStatus - Статус ToCheck говорит нам о том, что сессия поставлена на проверку

Системе на проверку параметра тИЦ может уйти некоторое время, ответ вы можете получить не сразу.

Для получения результатов проверки необходимо использовать метод /session/get

Формируем запрос

GET http://recipdonor.com:998/api/session/get/88576b78-03c6-40c3-a4db-f4c30bb97081 HTTP/1.1
Authorization: Basic RjkxNjhDNUUtQ0VCMi00ZmFhLUI2QkYtMzI5QkYzOUZBMUU0Ong=
Content-Type: text/xml; charset=utf-8
Host: recipdonor.com:998
Content-Length: 0

Получаем ответ вида


<?xml version="1.0" encoding="utf-8"?>
<ApiSessionItemContract>
	<Id>88576b78-03c6-40c3-a4db-f4c30bb97081</Id>
	<ExpireAt>2010-12-15T14:21:31.0993502+02:00</ExpireAt>
	<SessionStatus>Completed</SessionStatus>
	<Domains>
		<DomainData>
			<DomainName>mozilla.com</DomainName>
				<Values><Data>
					<Parameter>Cy</Parameter>
					<Value xsi:type="CyApiData">
						<Cy>4800</Cy>
						<Yaca>0</Yaca>
						<YaBarMirrow>1</YaBarMirrow>
					</Value>
				</Data></Values>
		</DomainData>
		<DomainData>
			<DomainName>mozilla.ru</DomainName>
				<Values><Data>
					<Parameter>Cy</Parameter>
					<Value xsi:type="CyApiData">
						<Cy>-666</Cy>
						<Yaca>0</Yaca>
						<YaBarMirrow>0</YaBarMirrow>
					</Value>
				</Data></Values>
		</DomainData>
		<DomainData>
			<DomainName>google.com</DomainName>
				<Values><Data>
					<Parameter>Cy</Parameter>
					<Value xsi:type="CyApiData">
						<Cy>65000</Cy>
						<Yaca>0</Yaca>
						<YaBarMirrow>1</YaBarMirrow>
					</Value>
				</Data></Values>
		</DomainData>
		<DomainData>
			<DomainName>msdn.microsoft.com</DomainName>
				<Values><Data>
					<Parameter>Cy</Parameter>
					<Value xsi:type="CyApiData">
						<Cy>4500</Cy>
						<Yaca>Hi-Tech/Программы/Операционные системы/Windows</Yaca>
						<YaBarMirrow>0</YaBarMirrow>
					</Value>
				</Data></Values>
		</DomainData>
	</Domains>
</ApiSessionItemContract>

Наибольший интерес для нас представляют данные из тегов <Value xsi:type="CyApiData">

Cy - значение тИЦ (-666 = склеен)
Yaca - Я.Каталог ( 0 = не присутствует в Я.Каталог)
YaBarMirrow - зеркало

<?php

// RDS Api ключ пользователя
$api_key = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx";

// XML для инициализации сессии (Cy - тИЦ, IY - Я.Индекс)
$put_data = "
<InitSession>
	<Parameters>
		<TaskVariant>Cy</TaskVariant>
        <TaskVariant>IY</TaskVariant>
	</Parameters>
	<DomainNames>
		<string>msdn.microsoft.com</string>
        <string>gmail.com</string>
	</DomainNames>
</InitSession>";

// Инициализируем запрос для создания сессии
$ch = curl_init("http://recipdonor.com:998/api/session/new");
// Передаем API ключ
curl_setopt($ch, CURLOPT_USERPWD, "{$api_key}:x");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
// При инициализации сессии используется метод PUT
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "PUT");
// Указываем необходимые заголовки
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    "Content-Type: text/xml; charset=utf-8",
    "Content-Length: ".strlen($put_data)));
// Передаем данные для инициализации
curl_setopt($ch, CURLOPT_POSTFIELDS, $put_data);

// Посылаем запрос
$initSessionData = curl_exec($ch);
$responseInfo = curl_getinfo($ch);

if($responseInfo['http_code'] != 200) exit('Wrong request!');

curl_close($ch);

// Обрабатываем пришедший ответ
$sesssionXmlData = new SimpleXMLElement($initSessionData);
// Достаем идентификатор созданой сессии
$sessionId = $sesssionXmlData->Id;

$sessionData = null;
do{
    // Небольшая задержка перед получением данных
    sleep(2);
    // Инициализируем запрос для получения данных сессии
    $ch = curl_init("http://recipdonor.com:998/api/session/get/{$sessionId}");
    // Передаем API ключ
    curl_setopt($ch, CURLOPT_USERPWD, "{$api_key}:x");
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_HTTPHEADER, array("Content-Type: text/xml; charset=utf-8"));

    // Получаем и обрабатываем пришедший ответ
    $response = curl_exec($ch);
    $responseInfo = curl_getinfo($ch);

    if($responseInfo['http_code'] != 200) exit('Wrong request!');

    $sessionData = new SimpleXMLElement($response);
    curl_close($ch);

    // Повоторяем процедуру пока сессия не будет завершена
}while($sessionData->SessionStatus != 'Completed' && $sessionData->SessionStatus != 'Bankrupt');

// Выводим пришедшие данные
foreach($sessionData->Domains->DomainData as $domain)
{
    // Доменное имя
    echo $domain->DomainName.PHP_EOL;

    foreach($domain->Values->Data as $data)
    {
        switch($data->Parameter)
        {
            // Данные тИЦ
            case 'Cy':
                {
                    echo "\t Cy=".$data->Value->Cy.PHP_EOL;
                    echo "\t Yaca=\"".$data->Value->Yaca."\"".PHP_EOL;
                    echo "\t YaBarMirrow=".$data->Value->YaBarMirrow.PHP_EOL;
                    break;
                }
            // Данные Я.Индекс
            case 'IY':
                {
                    echo "\t IY={$data->Value}".PHP_EOL;
                    break;
                }
            default:
                break;
        }
    }
    echo PHP_EOL;
}

/*
 * Результат выполнения скрипта
 *
 * msdn.microsoft.com
 *      Cy=4500 
 *      Yaca="Hi-Tech/Программы/Операционные системы/Windows"
 *      YaBarMirrow=0
 *      IY=155000
 *
 * gmail.com
 *      Cy=1500
 *      Yaca="Hi-Tech/Интернет/Электронная почта"
 *      YaBarMirrow=1
 *      IY=4
 * 
 * */ 
                        


Проверка продажи Seo
Стоимость:0,1$ за 1000 запросов

Наличие сайтов в различных биржах можно проверить используюя API функцию /seo/bulk.

Создаем запрос

Параметр "Parameters" может быть либо упущен, тогда проверка будет осуществляться на наличие во всем seo биржах( Sape, MainLink, LinkFeed, SetLinks, Xap, TrustLink, Propage, Liex, Seozavr, SapeArticles, SapePr, Miralinks, Gogetlinks,Blogun, RotaPost, Rds), либо можно указать конкретные биржи.


POST /api/session/new HTTP/1.1
Authorization: Basic RjkxNjhDNUUtQ0VCMi00ZmFhLUI2QkYtMzI5QkYzOUZBMUU0Ong=
Content-Type: text/xml; charset=utf-8
Host: recipdonor.com:998

<InitSeoData>
  <Domains>
    <string>san-club.net</string>
  </Domains>
  <Parameters>
    <Seo>Mainlink</Seo>
  </Parameters>
</InitSeoData>

Получаем ответ


<ArrayOfSeoItem>
  <SeoItem>
    <Url>san-club.net</Url>
    <Seos>
      <Seo>Mainlink</Seo>
    </Seos>
  </SeoItem>
</ArrayOfSeoItem>
<?php
// RDS Api ключ пользователя
$api_key = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx";

// Формируем XML
$post_data = "
<InitSeoData>
<Parameters>
</Parameters>
<Domains>
<string>san-club.net</string>
</Domains>
<Parameters>
<Seo>Mainlink</Seo>
</Parameters>
</InitSeoData>
";

// Инициализируем запрос для создания сессии
$ch = curl_init("http://recipdonor.com:998/api/seo/bulk");
// Передаем API ключ
curl_setopt($ch, CURLOPT_USERPWD, "{$api_key}:x");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
// При инициализации сессии используется метод PUT
curl_setopt($ch, CURLOPT_POST, true);
// Указываем необходимые заголовки
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    "Content-Type: text/xml; charset=utf-8",
    "Content-Length: ".strlen($post_data)));
// Передаем данные для инициализации
curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data);

// Посылаем запрос
$seoData = curl_exec($ch);
$responseInfo = curl_getinfo($ch);
if($responseInfo['http_code'] != 200) exit('Wrong request!');

curl_close($ch);

// Обрабатываем пришедший ответ
$seoXmlData = new SimpleXMLElement($seoData);

foreach($seoXmlData as $seoItem)
{
	foreach ($seoItem->Seos->Seo as $seo) {
		 echo "{$seoItem->Url} - {$seo}".PHP_EOL;
	}   
} 
 
                        


Получение истории тИЦ, Индекс Я и Google PageRank
Стоимость:1,0$ за 1000 запросов

Множественное получение истории проверок (также присутствует возможность использовать параметры фильтров) возможно используя функцию /historybulk/siteslibrary.

Перед выполнением можно получить кол-во значений в базе для вычисления стоимости запроса /historybulk/count/siteslibrary (такая проверка бесплатная).

Пример запроса множественного получения истории (в данном примере истории тИЦ для одного из сайтов и истории Индекс Я для другого)


<ArrayOfHistoryInit>
<HistoryInit>
<Url>nnsdaasdasdasdm.ru</Url>
<HistoryType>CyHistory</HistoryType>
<OnlyDifferent>true</OnlyDifferent>
<OnlyDates>false</OnlyDates>
<MaxCount xsi:nil="true" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" />
<DatesVariety>
<Dates>
<dateTime>2011-12-12T00:00:00</dateTime>
<dateTime>2012-01-24T00:00:00</dateTime>
<dateTime>2011-12-26T00:00:00</dateTime>
</Dates>
<DatesThrough>
<DateInterval>
<BeginDate>2011-10-21T00:00:00</BeginDate>
<EndDate>2012-01-03T00:00:00</EndDate>
</DateInterval></DatesThrough>
</DatesVariety>
</HistoryInit>
<HistoryInit>
<Url>aabrahaasdasdasdabr.com</Url>
<HistoryType>IyHistory</HistoryType>
<OnlyDifferent>true</OnlyDifferent>
<OnlyDates>true</OnlyDates>
<MaxCount xsi:nil="true" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" />
<DatesVariety>
<Dates>
<dateTime>2011-12-26T00:00:00</dateTime>
<dateTime>2006-12-12T00:00:00</dateTime>
</Dates>
<DatesThrough>
<DateInterval>
<BeginDate>2011-10-21T00:00:00</BeginDate>
<EndDate>2012-01-03T00:00:00</EndDate>
</DateInterval>
</DatesThrough>
</DatesVariety>
</HistoryInit>
</ArrayOfHistoryInit>

Как видно из примера имеется возможность задать различные параметры отдельно для каждой из выборок.

Url - доменное имя.

HistoryType - тип истории. В случае xml запроса может принимать значения: CyHistory - для проверки тИЦ, PrHistory - Google PageRank, IyHistory - Индекс Я. Для Json числовые значения 63, 64, 65 соотвественно.

OnlyDifferent - bool параметр, при true выбираются только те даты, где произошли изменения значений параметра, при false выбираются все.

OnlyDates - bool параметр, при true - получаются только даты проверок без значений (при этом оплата не взымается), при false получаются и даты и значения (такая проверка платная).

MaxCount - максимальное возвращаемое кол-во результатов.

DatesVariety - контейнер в котором можно указать параметры выборки с учетом дат, может содержать в себе Dates - в котором указываются значения дат проверки в которые Вы хотите получить, а также DatesThrough - содержит в себе периоды дат (DateInterval - содержащий начальное и конечное значения) значения проверок в которые Вы хотите получить.

Пример ответа на запрос множественного получения истории (в данном примере истории тИЦ для одного из сайтов и истории Индекс Я для другого)


<ArrayOfHistoryBulkResult>
<HistoryBulkResult><Url>nnsdaasdasdasdm.ru</Url>
<HistoryType>CyHistory</HistoryType>
<OnlyDifferent>true</OnlyDifferent>
<OnlyDates>false</OnlyDates>
<HistoryItems>
<HistoryItem>
<Date>1999-05-31T11:20:00</Date>
<Value>2147483647</Value>
</HistoryItem>
<HistoryItem>
<Date>1999-05-31T11:20:00</Date>
<Value>2147483647</Value>
</HistoryItem>
</HistoryItems>
<ResultsCount>2</ResultsCount>
</HistoryBulkResult>
<HistoryBulkResult>
<Url>aabrahaasdasdasdabr.com</Url>
<HistoryType>IyHistory</HistoryType>
<OnlyDifferent>true</OnlyDifferent>
<OnlyDates>true</OnlyDates>
<HistoryItems>
<HistoryItem>
<Date>1999-05-31T11:20:00</Date>
<Value xsi:nil="true"/>
<Yaca xsi:nil="true"/>
</HistoryItem>
<HistoryItem>
<Date>1999-05-31T11:20:00</Date>
<Value xsi:nil="true"/>
<Yaca xsi:nil="true"/>
</HistoryItem>
</HistoryItems>
<ResultsCount>2</ResultsCount>
</HistoryBulkResult>
</ArrayOfHistoryBulkResult>

В ответе одноименные параметры с запросом, просто копируются из запроса.

HistoryItems - результаты проверок, где Date - дата проверки, Value - значение, Yaca - наличие в Яндекс каталоге(заполнена в случае проверки тИЦ).

ResultsCount - Кол-во результатов

В случае запроса на получение кол-ва результатов /historybulk/count/siteslibrary запрос абсолютно аналогичен, ответ тоже анологичен за исключением того, что массив HistoryItems будет пустой, а заполнен только ResultsCount.

Историю значений, также можно получить используя функцию /history/siteslibrary, в этом случае посылается Get запрос и данные получаются только для одного домена и одного типа истории.

Перед выполнением можно получить кол-во значений в базе для вычисления стоимости запроса /history/count/siteslibrary.

Запросы для получения кол-ва значений выглядят следующим образом

history/count/siteslibrary/cy/example.com
history/count/siteslibrary/pr/example.com
history/count/siteslibrary/iy/example.com

Запрос для получения истории тИЦ

history/siteslibrary/cy/example.com

Я.Индекс

history/siteslibrary/iy/example.com

Google PageRank

history/siteslibrary/pr/example.com

Запросы для получения {count} значений выглядят следующим образом

history/siteslibrary/cy/example.com/{count}
history/siteslibrary/pr/example.com/{count}
history/siteslibrary/iy/example.com/{count}
В обоих случаях получаем ответ вида
<ArrayOfHistoryItem>
    <HistoryItem>
        <Date>1999-05-31T11:20:00</Date>
        <Value>15</Value>
    </HistoryItem>
    <HistoryItem>
        <Date>1999-05-31T11:20:00</Date>
        <Value>22</Value>
    </HistoryItem>
</ArrayOfHistoryItem>
// Для истории bulk
<?php

// RDS Api ключ пользователя
$api_key = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx";

// Формируем XML
$post_data = "
<ArrayOfHistoryInit>
<HistoryInit>
<Url>nnsdaasdasdasdm.ru</Url>
<HistoryType>CyHistory</HistoryType>
<OnlyDifferent>true</OnlyDifferent>
<OnlyDates>false</OnlyDates>
<MaxCount xsi:nil=\"true\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" />
<DatesVariety>
<Dates>
<dateTime>2011-12-12T00:00:00</dateTime>
<dateTime>2012-01-24T00:00:00</dateTime>
<dateTime>2011-12-26T00:00:00</dateTime>
</Dates>
<DatesThrough>
<DateInterval>
<BeginDate>2011-10-21T00:00:00</BeginDate>
<EndDate>2012-01-03T00:00:00</EndDate>
</DateInterval></DatesThrough>
</DatesVariety>
</HistoryInit>
<HistoryInit>
<Url>aabrahaasdasdasdabr.com</Url>
<HistoryType>IyHistory</HistoryType>
<OnlyDifferent>true</OnlyDifferent>
<OnlyDates>true</OnlyDates>
<MaxCount xsi:nil=\"true\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" />
<DatesVariety>
<Dates>
<dateTime>2011-12-26T00:00:00</dateTime>
<dateTime>2006-12-12T00:00:00</dateTime>
</Dates>
<DatesThrough>
<DateInterval>
<BeginDate>2011-10-21T00:00:00</BeginDate>
<EndDate>2012-01-03T00:00:00</EndDate>
</DateInterval>
</DatesThrough>
</DatesVariety>
</HistoryInit>
</ArrayOfHistoryInit>
";

// Инициализируем запрос для создания сессии
$ch = curl_init("http://recipdonor.com:998/api/historybulk/siteslibrary");
// Передаем API ключ
curl_setopt($ch, CURLOPT_USERPWD, "{$api_key}:x");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
// При инициализации сессии используется метод PUT
curl_setopt($ch, CURLOPT_POST, true);
// Указываем необходимые заголовки
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    "Content-Type: text/xml; charset=utf-8",
    "Content-Length: ".strlen($post_data)));
// Передаем данные для инициализации
curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data);

// Посылаем запрос
$wmData = curl_exec($ch);
$responseInfo = curl_getinfo($ch);
if($responseInfo['http_code'] != 200) exit('Wrong request!');

curl_close($ch);

// Обрабатываем пришедший ответ
$histXmlData = new SimpleXMLElement($wmData);



// Выводим пришедшие данные
foreach($histXmlData->HistoryBulkResult as $histResult)
{
    // Доменное имя
    echo $histResult->HistoryType.PHP_EOL;    
    echo $histResult->Url.PHP_EOL;   
	
    foreach($histResult->HistoryItems->HistoryItem as $histItem)
    {
        echo $histItem->Date.PHP_EOL;                
        echo $histItem->Value.PHP_EOL;                
       
    }
    echo PHP_EOL;
}
?>

// Для простой истории (не множественной)

<?php
// RDS Api ключ пользователя
$api_key = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx";
// Стоимость $ одной проверки 
define("oneItemCost", 0.005);

// Инициализируем запрос
//  /history/count/siteslibrary/cy/microsoft.com - для тИЦ
//  /history/count/siteslibrary/iy/microsoft.com - для Индекс Я
//  /history/count/siteslibrary/pr/microsoft.com - для Google PageRank

$ch = curl_init("http://recipdonor.com:998/api/history/count/siteslibrary/cy/microsoft.com?format=json");

// Передаем API ключ
curl_setopt($ch, CURLOPT_USERPWD, "{$api_key}:x");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

// Посылаем запрос, принимаем ответ отсекаем utf-8 BOM 
$responseData = substr(curl_exec($ch),3);
$historyItemsCount = json_decode($responseData);

$responseInfo = curl_getinfo($ch);
if($responseInfo['http_code'] != 200) exit('Wrong request!');

curl_close($ch);

// Выводим стоимость проверки
echo "The cost of check = $".(oneItemCost * $historyItemsCount);
echo PHP_EOL;

// Инициализируем запрос
$ch = curl_init("http://recipdonor.com:998/api/history/siteslibrary/cy/microsoft.com?format=json");

// Передаем API ключ
curl_setopt($ch, CURLOPT_USERPWD, "{$api_key}:x");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

// Посылаем запрос, получаем ответ, отсекаем utf-8 BOM
$historyItems = json_decode(substr(curl_exec($ch),3));
$responseInfo = curl_getinfo($ch);
if($responseInfo['http_code'] != 200) exit('Wrong request!');

curl_close($ch);

// Выводим результат
foreach($historyItems as $hItem)
{
    echo "{$hItem->Date} - {$hItem->Value}".PHP_EOL;
}

/*
    The cost of check = $0.095
    Sun, 19 Dec 2010 12:50:32 GMT - 23000
    Fri, 10 Dec 2010 12:40:59 GMT - 23000
    Tue, 30 Nov 2010 12:59:50 GMT - 22000
    Mon, 08 Nov 2010 11:41:39 GMT - 22000
    .....
 */ 
                        


Возраст домена
Стоимость:0,01$ за 1000 запросов

Возраст домена можно определеить с помощью функции /age

Пример запроса


 http://recipdonor.com:998/api/age/microsoft.com
<?php

 // RDS Api ключ пользователя
$api_key = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx";

// Инициализируем запрос
$ch = curl_init("http://recipdonor.com:998/api/age/microsoft.com");

// Передаем API ключ
curl_setopt($ch, CURLOPT_USERPWD, "{$api_key}:x");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

// Посылаем запрос
$regDate = new SimpleXMLElement(curl_exec($ch));
$mirrorItemsCount = (int)$responseData;

$responseInfo = curl_getinfo($ch);
if($responseInfo['http_code'] != 200) exit('Wrong request!');

curl_close($ch);

$date = date_parse($regDate);

echo "{$date['day']}/{$date['month']}/{$date['year']}".PHP_EOL; 
                        


Сайты на IP
Стоимость:0,01$ за 1000 запросов

Сайты на IP определяются с помощью функции /sitesonip

<?php
 // RDS Api ключ пользователя
$api_key = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx";

// Максимальное кол-во результатов
$count = 10;

// Инициализируем запрос
$ch = curl_init("http://recipdonor.com:998/api/sitesonip/207.46.232.182/".$count);

// Передаем API ключ
curl_setopt($ch, CURLOPT_USERPWD, "{$api_key}:x");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

// Посылаем запрос
$sitesOnIp = new SimpleXMLElement(curl_exec($ch));
$mirrorItemsCount = (int)$responseData;

$responseInfo = curl_getinfo($ch);
if($responseInfo['http_code'] != 200) exit('Wrong request!');

curl_close($ch);

echo $sitesOnIp->CountAll.PHP_EOL;
$i = 0;
foreach($sitesOnIp->Collection->SiteItem as $site)
{
    echo ++$i.". {$site->Url} - {$site->SubDomen}".PHP_EOL;
} 
                        


Зеркала домена
Стоимость:5,0$ за 1000 запросов

Для получения зеркал домена используется функция /mirror

Также можно получить кол-во зеркал с помощью функции /mirror/count.

Примеры запросов


 http://recipdonor.com:998/api/mirror/microsoft.com
 http://recipdonor.com:998/api/mirror/count/microsoft.com
<?php
// RDS Api ключ пользователя
$api_key = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx";
// Стоимость $ одной проверки
define("oneItemCost", 0.005);

// Инициализируем запрос
$ch = curl_init("http://recipdonor.com:998/api/mirror/count/microsoft.com");

// Передаем API ключ
curl_setopt($ch, CURLOPT_USERPWD, "{$api_key}:x");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

// Посылаем запрос
$responseData = new SimpleXMLElement(curl_exec($ch));
$mirrorItemsCount = (int)$responseData;

$responseInfo = curl_getinfo($ch);
if($responseInfo['http_code'] != 200) exit('Wrong request!');

curl_close($ch);

// Выводим стоимость проверки
echo "Count = ".$mirrorItemsCount.PHP_EOL;
echo "The cost of check = $".(oneItemCost * $mirrorItemsCount).PHP_EOL;

// Инициализируем запрос
$ch = curl_init("http://recipdonor.com:998/api/mirror/microsoft.com");

// Передаем API ключ
curl_setopt($ch, CURLOPT_USERPWD, "{$api_key}:x");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

// Посылаем запрос, получаем ответ, отсекаем utf-8 BOM
$mirrorItems = new SimpleXMLElement(curl_exec($ch));
$responseInfo = curl_getinfo($ch);
if($responseInfo['http_code'] != 200) exit('Wrong request!');

curl_close($ch);

// Выводим результат
foreach($mirrorItems as $mItem)
{
    echo "{$mItem}".PHP_EOL;
}

/*
    Count = 29
    The cost of check = $0.145
    microsft.com
    microsoft.net
    .....
 */ 
                        


Whois
Стоимость:1,0$ за 1000 запросов

Проверка Параметров страницы осуществляется через сессии.

Используются методы /session/new и /session/get.

XML для инициализации сессии


<InitSession>
	<Parameters>
		<TaskVariant>PageValues</TaskVariant>
	</Parameters>
	<DomainNames>
		<string>test.com</string>
	</DomainNames>
</InitSession>

Пример ответа сессии


<Domains>
    <DomainData>
      <DomainName>test.com</DomainName>
      <Values>
        <Data>
          <Parameter>Whois</Parameter>
          <Value xsi:type="WhoisApiData">
            <WhoisStartDate>1997-06-18T00:00:00</WhoisStartDate>
            <WhoisExpDate>2011-06-17T00:00:00</WhoisExpDate>
            <WhoisEmail>de3wa9ue4hy@networksolutionsprivateregistration.com</WhoisEmail>
            <WhoisDns>ns65.worldnic.com ns66.worldnic.com</WhoisDns>
            <WhoisRegInfo>NETWORK SOLUTIONS, LLC.</WhoisRegInfo>
            <Whois>1</Whois>
            <IsSubdomen>false</IsSubdomen>
          </Value>
        </Data>
      </Values>
    </DomainData>
  </Domains>
<?php

// RDS Api ключ пользователя
$api_key = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx";

// XML для инициализации сессии
$put_data = "
<InitSession>
	<Parameters>
        <TaskVariant>Whois</TaskVariant>
	</Parameters>
	<DomainNames>
		<string>test.com</string>
	</DomainNames>
</InitSession>";

// Инициализируем запрос для создания сессии
$ch = curl_init("http://recipdonor.com:998/api/session/new");
// Передаем API ключ
curl_setopt($ch, CURLOPT_USERPWD, "{$api_key}:x");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
// При инициализации сессии используется метод PUT
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "PUT");
// Указываем необходимые заголовки
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    "Content-Type: text/xml; charset=utf-8",
    "Content-Length: ".strlen($put_data)));
// Передаем данные для инициализации
curl_setopt($ch, CURLOPT_POSTFIELDS, $put_data);

// Посылаем запрос
$initSessionData = curl_exec($ch);
$responseInfo = curl_getinfo($ch);

if($responseInfo['http_code'] != 200) exit('Wrong request!');

curl_close($ch);

// Обрабатываем пришедший ответ
$sesssionXmlData = new SimpleXMLElement($initSessionData);
// Достаем идентификатор созданой сессии
$sessionId = $sesssionXmlData->Id;

$sessionData = null;
do{
    // Небольшая задержка перед получением данных
    sleep(2);
    // Инициализируем запрос для получения данных сессии
    $ch = curl_init("http://recipdonor.com:998/api/session/get/{$sessionId}");
    // Передаем API ключ
    curl_setopt($ch, CURLOPT_USERPWD, "{$api_key}:x");
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_HTTPHEADER, array("Content-Type: text/xml; charset=utf-8"));

    // Получаем и обрабатываем пришедший ответ
    $response = curl_exec($ch);
    $responseInfo = curl_getinfo($ch);

    if($responseInfo['http_code'] != 200) exit('Wrong request!');

    $sessionData = new SimpleXMLElement($response);
    curl_close($ch);

    // Повоторяем процедуру пока сессия не будет завершена
}while($sessionData->SessionStatus != 'Completed' && $sessionData->SessionStatus != 'Bankrupt');

// Выводим пришедшие данные
foreach($sessionData->Domains->DomainData as $domain)
{
    // Доменное имя
    echo $domain->DomainName.PHP_EOL;

    foreach($domain->Values->Data as $data)
    {
        echo $data->Parameter.PHP_EOL;
        echo $data->Value.PHP_EOL;

        foreach(get_object_vars($data->Value) as $paramKey => $paramValue)
        {
            echo "{$paramKey} = {$paramValue}".PHP_EOL;
        }
    }
    echo PHP_EOL;
}

/*
WhoisStartDate = 1997-06-18T00:00:00
WhoisExpDate = 2011-06-17T00:00:00
WhoisEmail = de3wa9ue4hy@networksolutionsprivateregistration.com
WhoisDns = ns65.worldnic.com ns66.worldnic.com
WhoisRegInfo = NETWORK SOLUTIONS, LLC.
Whois = 1
IsSubdomen = false
 */ 
                        


Индекс Я
Стоимость:0,2$ за 1000 запросов

Проверка Индекс Я осуществляется через сессии.

Используются методы /session/new и /session/get.

XML для инициализации сессии


<InitSession>
	<Parameters>
		<TaskVariant>IY</TaskVariant>
	</Parameters>
	<DomainNames>
		<string>google.com</string>
		<string>msdn.microsoft.com</string>
	</DomainNames>
</InitSession>

Пример ответа сессии


<Domains>
	<DomainData>
		<DomainName>google.com</DomainName>
		<Values><Data>
			<Parameter>IY</Parameter>
			<Value xsi:type="xsd:int">461000</Value> <!-- значение Индекс Я -->
		</Data></Values>
	</DomainData>
	<DomainData>
		<DomainName>msdn.microsoft.com</DomainName>
		<Values><Data>
			<Parameter>IY</Parameter>
			<Value xsi:type="xsd:int">347000</Value> <!-- значение Индекс Я -->
		</Data></Values>
	</DomainData>
</Domains>
<?php

// RDS Api ключ пользователя
$api_key = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx";

// XML для инициализации сессии
$put_data = "
<InitSession>
	<Parameters>
        <TaskVariant>IY</TaskVariant>
	</Parameters>
	<DomainNames>
		<string>google.com</string>
		<string>msdn.microsoft.com</string>
	</DomainNames>
</InitSession>";

// Инициализируем запрос для создания сессии
$ch = curl_init("http://recipdonor.com:998/api/session/new");
// Передаем API ключ
curl_setopt($ch, CURLOPT_USERPWD, "{$api_key}:x");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
// При инициализации сессии используется метод PUT
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "PUT");
// Указываем необходимые заголовки
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    "Content-Type: text/xml; charset=utf-8",
    "Content-Length: ".strlen($put_data)));
// Передаем данные для инициализации
curl_setopt($ch, CURLOPT_POSTFIELDS, $put_data);

// Посылаем запрос
$initSessionData = curl_exec($ch);
$responseInfo = curl_getinfo($ch);

if($responseInfo['http_code'] != 200) exit('Wrong request!');

curl_close($ch);

// Обрабатываем пришедший ответ
$sesssionXmlData = new SimpleXMLElement($initSessionData);
// Достаем идентификатор созданой сессии
$sessionId = $sesssionXmlData->Id;

$sessionData = null;
do{
    // Небольшая задержка перед получением данных
    sleep(2);
    // Инициализируем запрос для получения данных сессии
    $ch = curl_init("http://recipdonor.com:998/api/session/get/{$sessionId}");
    // Передаем API ключ
    curl_setopt($ch, CURLOPT_USERPWD, "{$api_key}:x");
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_HTTPHEADER, array("Content-Type: text/xml; charset=utf-8"));

    // Получаем и обрабатываем пришедший ответ
    $response = curl_exec($ch);
    $responseInfo = curl_getinfo($ch);

    if($responseInfo['http_code'] != 200) exit('Wrong request!');

    $sessionData = new SimpleXMLElement($response);
    curl_close($ch);

    // Повоторяем процедуру пока сессия не будет завершена
}while($sessionData->SessionStatus != 'Completed' && $sessionData->SessionStatus != 'Bankrupt');

// Выводим пришедшие данные
foreach($sessionData->Domains->DomainData as $domain)
{
    // Доменное имя
    echo $domain->DomainName.PHP_EOL;

    foreach($domain->Values->Data as $data)
    {
        echo $data->Parameter.PHP_EOL;
        echo $data->Value.PHP_EOL;

        foreach(get_object_vars($data->Value) as $paramKey => $paramValue)
        {
            echo "{$paramKey} = {$paramValue}".PHP_EOL;
        }
    }
    echo PHP_EOL;
}

/* 
google.com
IY
461000

msdn.microsoft.com
IY
347000
 */ 
                        


Анализ IP адреса
Стоимость:0,1$ за 1000 запросов

Проверка Анализ IP адреса осуществляется через сессии.

Используются методы /session/new и /session/get.

XML для инициализации сессии


<InitSession>
	<Parameters>
		<TaskVariant>GeoTool</TaskVariant>
	</Parameters>
	<DomainNames>
		<string>195.18.35.94</string>
	</DomainNames>
</InitSession>

Пример ответа сессии


<Domains>
	<DomainData>
		<DomainName>195.18.35.94</DomainName>
		<Values><Data>
			<Parameter>GeoTool</Parameter>
			<Value xsi:type="GeoApiData">
				<City/>									<!-- город -->
				<Country>Russian Federation</Country>	<!-- страна -->
				<Isp>ELKATEL ISP</Isp>					<!-- провайдер -->
				<HostName>altlinux.unsafe.ru</HostName>	<!-- имя хоста -->
				<Iso2>RU</Iso2>							<!-- страна ISO2 -->
				<CityRu/>								<!-- русское название города -->
				<CountryRu>Россия</CountryRu>			<!-- русское название страны -->
			</Value>
		</Data></Values>
	</DomainData>
</Domains>
<?php

// RDS Api ключ пользователя
$api_key = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx";


$put_data = "
<InitSession>
	<Parameters>
        <TaskVariant>GeoTool</TaskVariant>
	</Parameters>
	<DomainNames>
		<string>195.18.35.94</string>
	</DomainNames>
</InitSession>";

// Инициализируем запрос для создания сессии
$ch = curl_init("http://recipdonor.com:998/api/session/new");
// Передаем API ключ
curl_setopt($ch, CURLOPT_USERPWD, "{$api_key}:x");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
// При инициализации сессии используется метод PUT
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "PUT");
// Указываем необходимые заголовки
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    "Content-Type: text/xml; charset=utf-8",
    "Content-Length: ".strlen($put_data)));
// Передаем данные для инициализации
curl_setopt($ch, CURLOPT_POSTFIELDS, $put_data);

// Посылаем запрос
$initSessionData = curl_exec($ch);
$responseInfo = curl_getinfo($ch);

if($responseInfo['http_code'] != 200) exit('Wrong request!');

curl_close($ch);

// Обрабатываем пришедший ответ
$sesssionXmlData = new SimpleXMLElement($initSessionData);
// Достаем идентификатор созданой сессии
$sessionId = $sesssionXmlData->Id;

$sessionData = null;
do{
    // Небольшая задержка перед получением данных
    sleep(2);
    // Инициализируем запрос для получения данных сессии
    $ch = curl_init("http://recipdonor.com:998/api/session/get/{$sessionId}");
    // Передаем API ключ
    curl_setopt($ch, CURLOPT_USERPWD, "{$api_key}:x");
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_HTTPHEADER, array("Content-Type: text/xml; charset=utf-8"));

    // Получаем и обрабатываем пришедший ответ
    $response = curl_exec($ch);
    $responseInfo = curl_getinfo($ch);

    if($responseInfo['http_code'] != 200) exit('Wrong request!');

    $sessionData = new SimpleXMLElement($response);
    curl_close($ch);

    // Повоторяем процедуру пока сессия не будет завершена
}while($sessionData->SessionStatus != 'Completed' && $sessionData->SessionStatus != 'Bankrupt');

// Выводим пришедшие данные
foreach($sessionData->Domains->DomainData as $domain)
{
    // Доменное имя
    echo $domain->DomainName.PHP_EOL;

    foreach($domain->Values->Data as $data)
    {
        echo $data->Parameter.PHP_EOL;
        echo $data->Value.PHP_EOL;

        foreach(get_object_vars($data->Value) as $paramKey => $paramValue)
        {
            echo "{$paramKey} = {$paramValue}".PHP_EOL;
        }
    }
    echo PHP_EOL;
}

/*
195.18.35.94
GeoTool

City = 
Country = Russian Federation
Isp = ELKATEL ISP
HostName = altlinux.unsafe.ru
Iso2 = RU
CityRu = 
CountryRu = Россия
*/ 
                        


Page Rank
Стоимость:0,5$ за 1000 запросов

Проверка Google Page Rank осуществляется через сессии.

Используются методы /session/new и /session/get.

XML для инициализации сессии


<InitSession>
	<Parameters>
		<TaskVariant>Pr</TaskVariant>
	</Parameters>
	<DomainNames>
		<string>mozilla.com</string>
	</DomainNames>
</InitSession>

Пример ответа сессии


<Domains>
	<DomainData>
		<DomainName>mozilla.com</DomainName>
		<Values><Data>
			<Parameter>Pr</Parameter>
			<Value xsi:type="xsd:int">9</Value> <!-- значение Page Rank -->
		</Data></Values>
	</DomainData>
</Domains>
<?php

// RDS Api ключ пользователя
$api_key = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx";


$put_data = "
<InitSession>
	<Parameters>
        <TaskVariant>Pr</TaskVariant>
	</Parameters>
	<DomainNames>
		<string>mozilla.com</string>
	</DomainNames>
</InitSession>";

// Инициализируем запрос для создания сессии
$ch = curl_init("http://recipdonor.com:998/api/session/new");
// Передаем API ключ
curl_setopt($ch, CURLOPT_USERPWD, "{$api_key}:x");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
// При инициализации сессии используется метод PUT
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "PUT");
// Указываем необходимые заголовки
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    "Content-Type: text/xml; charset=utf-8",
    "Content-Length: ".strlen($put_data)));
// Передаем данные для инициализации
curl_setopt($ch, CURLOPT_POSTFIELDS, $put_data);

// Посылаем запрос
$initSessionData = curl_exec($ch);
$responseInfo = curl_getinfo($ch);

if($responseInfo['http_code'] != 200) exit('Wrong request!');

curl_close($ch);

// Обрабатываем пришедший ответ
$sesssionXmlData = new SimpleXMLElement($initSessionData);
// Достаем идентификатор созданой сессии
$sessionId = $sesssionXmlData->Id;

$sessionData = null;
do{
    // Небольшая задержка перед получением данных
    sleep(2);
    // Инициализируем запрос для получения данных сессии
    $ch = curl_init("http://recipdonor.com:998/api/session/get/{$sessionId}");
    // Передаем API ключ
    curl_setopt($ch, CURLOPT_USERPWD, "{$api_key}:x");
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_HTTPHEADER, array("Content-Type: text/xml; charset=utf-8"));

    // Получаем и обрабатываем пришедший ответ
    $response = curl_exec($ch);
    $responseInfo = curl_getinfo($ch);

    if($responseInfo['http_code'] != 200) exit('Wrong request!');

    $sessionData = new SimpleXMLElement($response);
    curl_close($ch);

    // Повоторяем процедуру пока сессия не будет завершена
}while($sessionData->SessionStatus != 'Completed' && $sessionData->SessionStatus != 'Bankrupt');

// Выводим пришедшие данные
foreach($sessionData->Domains->DomainData as $domain)
{
    // Доменное имя
    echo $domain->DomainName.PHP_EOL;

    foreach($domain->Values->Data as $data)
    {
        echo $data->Parameter.PHP_EOL;
        echo $data->Value.PHP_EOL;

        foreach(get_object_vars($data->Value) as $paramKey => $paramValue)
        {
            echo "{$paramKey} = {$paramValue}".PHP_EOL;
        }
    }
    echo PHP_EOL;
}

/*
mozilla.com
Pr
9
*/ 
                        


Индекс Я страницы
Стоимость:0,3$ за 1000 запросов

Проверка индекса старницы в Яндексе осуществляется через сессии.

Используются методы /session/new и /session/get.

XML для инициализации сессии


<InitSession>
	<Parameters>
        <TaskVariant>IYPages</TaskVariant>
	</Parameters>
	<DomainNames>
		<string>www.google.com.ua/intl/en/ads/</string>
	</DomainNames>
</InitSession>

Пример ответа сессии


<Domains>
  <DomainData>
    <DomainName>www.google.com.ua/intl/en/ads/</DomainName>
    <Values>
      <Data>
        <Parameter>IYPages</Parameter>
        <Value xsi:type="xsd:int">1</Value> <!-- 1 = страница в индексе, а 0 = нет -->
      </Data>
    </Values>
  </DomainData>
</Domains>
<?php

// RDS Api ключ пользователя
$api_key = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx";

// XML для инициализации сессии
$put_data = "
<InitSession>
	<Parameters>
        <TaskVariant>IYPages</TaskVariant>
	</Parameters>
	<DomainNames>
		<string>www.google.com.ua/intl/en/ads/</string>
	</DomainNames>
</InitSession>";

// Инициализируем запрос для создания сессии
$ch = curl_init("http://recipdonor.com:998/api/session/new");
// Передаем API ключ
curl_setopt($ch, CURLOPT_USERPWD, "{$api_key}:x");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
// При инициализации сессии используется метод PUT
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "PUT");
// Указываем необходимые заголовки
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    "Content-Type: text/xml; charset=utf-8",
    "Content-Length: ".strlen($put_data)));
// Передаем данные для инициализации
curl_setopt($ch, CURLOPT_POSTFIELDS, $put_data);

// Посылаем запрос
$initSessionData = curl_exec($ch);
$responseInfo = curl_getinfo($ch);

if($responseInfo['http_code'] != 200) exit('Wrong request!');

curl_close($ch);

// Обрабатываем пришедший ответ
$sesssionXmlData = new SimpleXMLElement($initSessionData);
// Достаем идентификатор созданой сессии
$sessionId = $sesssionXmlData->Id;

$sessionData = null;
do{
    // Небольшая задержка перед получением данных
    sleep(2);
    // Инициализируем запрос для получения данных сессии
    $ch = curl_init("http://recipdonor.com:998/api/session/get/{$sessionId}");
    // Передаем API ключ
    curl_setopt($ch, CURLOPT_USERPWD, "{$api_key}:x");
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_HTTPHEADER, array("Content-Type: text/xml; charset=utf-8"));

    // Получаем и обрабатываем пришедший ответ
    $response = curl_exec($ch);
    $responseInfo = curl_getinfo($ch);

    if($responseInfo['http_code'] != 200) exit('Wrong request!');

    $sessionData = new SimpleXMLElement($response);
    curl_close($ch);

    // Повоторяем процедуру пока сессия не будет завершена
}while($sessionData->SessionStatus != 'Completed' && $sessionData->SessionStatus != 'Bankrupt');

// Выводим пришедшие данные
foreach($sessionData->Domains->DomainData as $domain)
{
    // Доменное имя
    echo $domain->DomainName.PHP_EOL;

    foreach($domain->Values->Data as $data)
    {
        echo $data->Parameter.PHP_EOL;
        echo $data->Value.PHP_EOL;

        foreach(get_object_vars($data->Value) as $paramKey => $paramValue)
        {
            echo "{$paramKey} = {$paramValue}".PHP_EOL;
        }
    }
    echo PHP_EOL;
}

/* вывод скрипта
www.google.com.ua/intl/en/ads/
IYPages
1
*/ 
                        


Поддомены
Стоимость:0,2$ за 1000 запросов

Получить поддомены можно через API функциию /subdomens

Примеры запросов


http://recipdonor.com:998/api/subdomens/microsoft.com/ - вернет все поддомены
http://recipdonor.com:998/api/subdomens/microsoft.com/10 - вернет первые 10 поддоменов
<?php
 // RDS Api ключ пользователя
$api_key = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx";

// Инициализируем запрос
$ch = curl_init("http://recipdonor.com:998/api/subdomens/microsoft.com/10");

// Передаем API ключ
curl_setopt($ch, CURLOPT_USERPWD, "{$api_key}:x");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

// Посылаем запрос
$subdomainsData = new SimpleXMLElement(curl_exec($ch));

$responseInfo = curl_getinfo($ch);
if($responseInfo['http_code'] != 200) exit('Wrong request!');

curl_close($ch);

foreach($subdomainsData->Collection->SiteItem as $subdomen)
{
    printf($subdomen->Url.PHP_EOL);
}

printf("Count all : %s".PHP_EOL, $subdomainsData->CountAll);

/* output
support.microsoft.com
msdn.microsoft.com
technet.microsoft.com
search.microsoft.com
office.microsoft.com
...
Count all : 203
 */ 
                        




Индекс Google
Стоимость:0,5$ за 1000 запросов

Проверка Индекс Google осуществляется через сессии.

Используются методы /session/new и /session/get.

XML для инициализации сессии


<InitSession>
	<Parameters>
		<TaskVariant>IG</TaskVariant>
	</Parameters>
	<DomainNames>
		<string>test.com</string>
	</DomainNames>
</InitSession>

Пример ответа сессии


  <Domains>
    <DomainData>
      <DomainName>test.com</DomainName>
      <Values>
        <Data>
          <Parameter>IG</Parameter>
          <Value xsi:type="xsd:int">95</Value>
        </Data>
      </Values>
    </DomainData>
  </Domains>
<?php

// RDS Api ключ пользователя
$api_key = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx";

// XML для инициализации сессии
$put_data = "
<InitSession>
	<Parameters>
        <TaskVariant>IG</TaskVariant>
	</Parameters>
	<DomainNames>
		<string>test.com</string>
	</DomainNames>
</InitSession>";

// Инициализируем запрос для создания сессии
$ch = curl_init("http://recipdonor.com:998/api/session/new");
// Передаем API ключ
curl_setopt($ch, CURLOPT_USERPWD, "{$api_key}:x");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
// При инициализации сессии используется метод PUT
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "PUT");
// Указываем необходимые заголовки
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    "Content-Type: text/xml; charset=utf-8",
    "Content-Length: ".strlen($put_data)));
// Передаем данные для инициализации
curl_setopt($ch, CURLOPT_POSTFIELDS, $put_data);

// Посылаем запрос
$initSessionData = curl_exec($ch);
$responseInfo = curl_getinfo($ch);

if($responseInfo['http_code'] != 200) exit('Wrong request!');

curl_close($ch);

// Обрабатываем пришедший ответ
$sesssionXmlData = new SimpleXMLElement($initSessionData);
// Достаем идентификатор созданой сессии
$sessionId = $sesssionXmlData->Id;

$sessionData = null;
do{
    // Небольшая задержка перед получением данных
    sleep(2);
    // Инициализируем запрос для получения данных сессии
    $ch = curl_init("http://recipdonor.com:998/api/session/get/{$sessionId}");
    // Передаем API ключ
    curl_setopt($ch, CURLOPT_USERPWD, "{$api_key}:x");
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_HTTPHEADER, array("Content-Type: text/xml; charset=utf-8"));

    // Получаем и обрабатываем пришедший ответ
    $response = curl_exec($ch);
    $responseInfo = curl_getinfo($ch);

    if($responseInfo['http_code'] != 200) exit('Wrong request!');

    $sessionData = new SimpleXMLElement($response);
    curl_close($ch);

    // Повоторяем процедуру пока сессия не будет завершена
}while($sessionData->SessionStatus != 'Completed' && $sessionData->SessionStatus != 'Bankrupt');

// Выводим пришедшие данные
foreach($sessionData->Domains->DomainData as $domain)
{
    // Доменное имя
    echo $domain->DomainName.PHP_EOL;

    foreach($domain->Values->Data as $data)
    {
        echo $data->Parameter.PHP_EOL;
        echo $data->Value.PHP_EOL;

        foreach(get_object_vars($data->Value) as $paramKey => $paramValue)
        {
            echo "{$paramKey} = {$paramValue}".PHP_EOL;
        }
    }
    echo PHP_EOL;
}

/*
test.com
IG
95
*/ 
                        


Сайты на IP по Bing
Стоимость:0,2$ за 1000 запросов

Проверка cайты на IP по Bing осуществляется через сессии.

Используются методы /session/new и /session/get.

XML для инициализации сессии


<InitSession>
	<Parameters>
		<TaskVariant>BingIp</TaskVariant>
	</Parameters>
	<DomainNames>
		<string>127.0.0.1</string>
	</DomainNames>
</InitSession>

Пример ответа сессии


    <Domains>
    <DomainData>
      <DomainName>127.0.0.1</DomainName>
      <Values>
        <Data>
          <Parameter>BingIp</Parameter>
          <Value xsi:type="xsd:int">0</Value>
        </Data>
      </Values>
    </DomainData>
  </Domains>
<?php

// RDS Api ключ пользователя
$api_key = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx";

// XML для инициализации сессии
$put_data = "
<InitSession>
	<Parameters>
        <TaskVariant>BingIp</TaskVariant>
	</Parameters>
	<DomainNames>
		<string>127.0.0.1</string>
	</DomainNames>
</InitSession>";

// Инициализируем запрос для создания сессии
$ch = curl_init("http://recipdonor.com:998/api/session/new");
// Передаем API ключ
curl_setopt($ch, CURLOPT_USERPWD, "{$api_key}:x");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
// При инициализации сессии используется метод PUT
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "PUT");
// Указываем необходимые заголовки
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    "Content-Type: text/xml; charset=utf-8",
    "Content-Length: ".strlen($put_data)));
// Передаем данные для инициализации
curl_setopt($ch, CURLOPT_POSTFIELDS, $put_data);

// Посылаем запрос
$initSessionData = curl_exec($ch);
$responseInfo = curl_getinfo($ch);

if($responseInfo['http_code'] != 200) exit('Wrong request!');

curl_close($ch);

// Обрабатываем пришедший ответ
$sesssionXmlData = new SimpleXMLElement($initSessionData);
// Достаем идентификатор созданой сессии
$sessionId = $sesssionXmlData->Id;

$sessionData = null;
do{
    // Небольшая задержка перед получением данных
    sleep(2);
    // Инициализируем запрос для получения данных сессии
    $ch = curl_init("http://recipdonor.com:998/api/session/get/{$sessionId}");
    // Передаем API ключ
    curl_setopt($ch, CURLOPT_USERPWD, "{$api_key}:x");
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_HTTPHEADER, array("Content-Type: text/xml; charset=utf-8"));

    // Получаем и обрабатываем пришедший ответ
    $response = curl_exec($ch);
    $responseInfo = curl_getinfo($ch);

    if($responseInfo['http_code'] != 200) exit('Wrong request!');

    $sessionData = new SimpleXMLElement($response);
    curl_close($ch);

    // Повоторяем процедуру пока сессия не будет завершена
}while($sessionData->SessionStatus != 'Completed' && $sessionData->SessionStatus != 'Bankrupt');

// Выводим пришедшие данные
foreach($sessionData->Domains->DomainData as $domain)
{
    // Доменное имя
    echo $domain->DomainName.PHP_EOL;

    foreach($domain->Values->Data as $data)
    {
        echo $data->Parameter.PHP_EOL;
        echo $data->Value.PHP_EOL;

        foreach(get_object_vars($data->Value) as $paramKey => $paramValue)
        {
            echo "{$paramKey} = {$paramValue}".PHP_EOL;
        }
    }
    echo PHP_EOL;
}

/*
127.0.0.1
BingIp
9910
*/ 
                        


Проверка на наличие в DMOZ
Стоимость:0,2$ за 1000 запросов

Проверка DMOZ осуществляется через сессии.

Используются методы /session/new и /session/get.

XML для инициализации сессии


<InitSession>
	<Parameters>
		<TaskVariant>Dmoz</TaskVariant>
	</Parameters>
	<DomainNames>
		<string>test.com</string>
	</DomainNames>
</InitSession>

Пример ответа сессии


   <Domains>
    <DomainData>
      <DomainName>test.com</DomainName>
      <Values>
        <Data>
          <Parameter>Dmoz</Parameter>
          <Value xsi:type="xsd:int">1</Value>
        </Data>
      </Values>
    </DomainData>
  </Domains>
<?php

// RDS Api ключ пользователя
$api_key = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx";

// XML для инициализации сессии
$put_data = "
<InitSession>
	<Parameters>
        <TaskVariant>Dmoz</TaskVariant>
	</Parameters>
	<DomainNames>
		<string>test.com</string>
	</DomainNames>
</InitSession>";

// Инициализируем запрос для создания сессии
$ch = curl_init("http://recipdonor.com:998/api/session/new");
// Передаем API ключ
curl_setopt($ch, CURLOPT_USERPWD, "{$api_key}:x");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
// При инициализации сессии используется метод PUT
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "PUT");
// Указываем необходимые заголовки
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    "Content-Type: text/xml; charset=utf-8",
    "Content-Length: ".strlen($put_data)));
// Передаем данные для инициализации
curl_setopt($ch, CURLOPT_POSTFIELDS, $put_data);

// Посылаем запрос
$initSessionData = curl_exec($ch);
$responseInfo = curl_getinfo($ch);

if($responseInfo['http_code'] != 200) exit('Wrong request!');

curl_close($ch);

// Обрабатываем пришедший ответ
$sesssionXmlData = new SimpleXMLElement($initSessionData);
// Достаем идентификатор созданой сессии
$sessionId = $sesssionXmlData->Id;

$sessionData = null;
do{
    // Небольшая задержка перед получением данных
    sleep(2);
    // Инициализируем запрос для получения данных сессии
    $ch = curl_init("http://recipdonor.com:998/api/session/get/{$sessionId}");
    // Передаем API ключ
    curl_setopt($ch, CURLOPT_USERPWD, "{$api_key}:x");
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_HTTPHEADER, array("Content-Type: text/xml; charset=utf-8"));

    // Получаем и обрабатываем пришедший ответ
    $response = curl_exec($ch);
    $responseInfo = curl_getinfo($ch);

    if($responseInfo['http_code'] != 200) exit('Wrong request!');

    $sessionData = new SimpleXMLElement($response);
    curl_close($ch);

    // Повоторяем процедуру пока сессия не будет завершена
}while($sessionData->SessionStatus != 'Completed' && $sessionData->SessionStatus != 'Bankrupt');

// Выводим пришедшие данные
foreach($sessionData->Domains->DomainData as $domain)
{
    // Доменное имя
    echo $domain->DomainName.PHP_EOL;

    foreach($domain->Values->Data as $data)
    {
        echo $data->Parameter.PHP_EOL;
        echo $data->Value.PHP_EOL;

        foreach(get_object_vars($data->Value) as $paramKey => $paramValue)
        {
            echo "{$paramKey} = {$paramValue}".PHP_EOL;
        }
    }
    echo PHP_EOL;
}

/*
test.com
Dmoz
1
*/ 
                        


Проверка Я.Бар (Значение тИЦ, Я.Тематика, Я.Регион)
Стоимость:0,2$ за 1000 запросов

Проверка Я.Бар осуществляется через сессии.

Используются методы /session/new и /session/get.

XML для инициализации сессии


<InitSession>
	<Parameters>
		<TaskVariant>YaBar</TaskVariant>
	</Parameters>
	<DomainNames>
		<string>test.com</string>
	</DomainNames>
</InitSession>

Пример ответа сессии


  <Domains>
    <DomainData>
      <DomainName>test.com</DomainName>
      <Values>
        <Data>
          <Parameter>YaBar</Parameter>
          <Value xsi:type="YabarApiData">
            <YaBarCy>160</YaBarCy>
            <YaBarMirrow>1</YaBarMirrow>
            <YaBarInfo/>
            <YaBarRegion/>
            <YaBarYaca>0</YaBarYaca>
            <YaBarYacaUrl/>
          </Value>
        </Data>
      </Values>
    </DomainData>
  </Domains>
<?php

// RDS Api ключ пользователя
$api_key = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx";

// XML для инициализации сессии
$put_data = "
<InitSession>
	<Parameters>
        <TaskVariant>YaBar</TaskVariant>
	</Parameters>
	<DomainNames>
		<string>test.com</string>
	</DomainNames>
</InitSession>";

// Инициализируем запрос для создания сессии
$ch = curl_init("http://recipdonor.com:998/api/session/new");
// Передаем API ключ
curl_setopt($ch, CURLOPT_USERPWD, "{$api_key}:x");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
// При инициализации сессии используется метод PUT
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "PUT");
// Указываем необходимые заголовки
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    "Content-Type: text/xml; charset=utf-8",
    "Content-Length: ".strlen($put_data)));
// Передаем данные для инициализации
curl_setopt($ch, CURLOPT_POSTFIELDS, $put_data);

// Посылаем запрос
$initSessionData = curl_exec($ch);
$responseInfo = curl_getinfo($ch);

if($responseInfo['http_code'] != 200) exit('Wrong request!');

curl_close($ch);

// Обрабатываем пришедший ответ
$sesssionXmlData = new SimpleXMLElement($initSessionData);
// Достаем идентификатор созданой сессии
$sessionId = $sesssionXmlData->Id;

$sessionData = null;
do{
    // Небольшая задержка перед получением данных
    sleep(2);
    // Инициализируем запрос для получения данных сессии
    $ch = curl_init("http://recipdonor.com:998/api/session/get/{$sessionId}");
    // Передаем API ключ
    curl_setopt($ch, CURLOPT_USERPWD, "{$api_key}:x");
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_HTTPHEADER, array("Content-Type: text/xml; charset=utf-8"));

    // Получаем и обрабатываем пришедший ответ
    $response = curl_exec($ch);
    $responseInfo = curl_getinfo($ch);

    if($responseInfo['http_code'] != 200) exit('Wrong request!');

    $sessionData = new SimpleXMLElement($response);
    curl_close($ch);

    // Повоторяем процедуру пока сессия не будет завершена
}while($sessionData->SessionStatus != 'Completed' && $sessionData->SessionStatus != 'Bankrupt');

// Выводим пришедшие данные
foreach($sessionData->Domains->DomainData as $domain)
{
    // Доменное имя
    echo $domain->DomainName.PHP_EOL;

    foreach($domain->Values->Data as $data)
    {
        echo $data->Parameter.PHP_EOL;
        echo $data->Value.PHP_EOL;

        foreach(get_object_vars($data->Value) as $paramKey => $paramValue)
        {
            echo "{$paramKey} = {$paramValue}".PHP_EOL;
        }
    }
    echo PHP_EOL;
}

/*
test.com
YaBar

YaBarCy = 160
YaBarMirrow = 1
YaBarInfo =
YaBarRegion =
YaBarYaca = 0
YaBarYacaUrl =
*/ 
                        


тИЦ картинка
Стоимость:0,1$ за 1000 запросов

Проверка тИЦ по Яндекс картинке осуществляется через сессии.

Используются методы /session/new и /session/get.

XML для инициализации сессии


<InitSession>
	<Parameters>
		<TaskVariant>CyImage</TaskVariant>
	</Parameters>
	<DomainNames>
		<string>test.com</string>
	</DomainNames>
</InitSession>

Пример ответа сессии


  <Domains>
    <DomainData>
      <DomainName>test.com</DomainName>
      <Values>
        <Data>
          <Parameter>CyImage</Parameter>
          <Value xsi:type="xsd:int">160</Value>
        </Data>
      </Values>
    </DomainData>
  </Domains>
<?php

// RDS Api ключ пользователя
$api_key = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx";

// XML для инициализации сессии
$put_data = "
<InitSession>
	<Parameters>
        <TaskVariant>CyImage</TaskVariant>
	</Parameters>
	<DomainNames>
		<string>test.com</string>
	</DomainNames>
</InitSession>";

// Инициализируем запрос для создания сессии
$ch = curl_init("http://recipdonor.com:998/api/session/new");
// Передаем API ключ
curl_setopt($ch, CURLOPT_USERPWD, "{$api_key}:x");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
// При инициализации сессии используется метод PUT
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "PUT");
// Указываем необходимые заголовки
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    "Content-Type: text/xml; charset=utf-8",
    "Content-Length: ".strlen($put_data)));
// Передаем данные для инициализации
curl_setopt($ch, CURLOPT_POSTFIELDS, $put_data);

// Посылаем запрос
$initSessionData = curl_exec($ch);
$responseInfo = curl_getinfo($ch);

if($responseInfo['http_code'] != 200) exit('Wrong request!');

curl_close($ch);

// Обрабатываем пришедший ответ
$sesssionXmlData = new SimpleXMLElement($initSessionData);
// Достаем идентификатор созданой сессии
$sessionId = $sesssionXmlData->Id;

$sessionData = null;
do{
    // Небольшая задержка перед получением данных
    sleep(2);
    // Инициализируем запрос для получения данных сессии
    $ch = curl_init("http://recipdonor.com:998/api/session/get/{$sessionId}");
    // Передаем API ключ
    curl_setopt($ch, CURLOPT_USERPWD, "{$api_key}:x");
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_HTTPHEADER, array("Content-Type: text/xml; charset=utf-8"));

    // Получаем и обрабатываем пришедший ответ
    $response = curl_exec($ch);
    $responseInfo = curl_getinfo($ch);

    if($responseInfo['http_code'] != 200) exit('Wrong request!');

    $sessionData = new SimpleXMLElement($response);
    curl_close($ch);

    // Повоторяем процедуру пока сессия не будет завершена
}while($sessionData->SessionStatus != 'Completed' && $sessionData->SessionStatus != 'Bankrupt');

// Выводим пришедшие данные
foreach($sessionData->Domains->DomainData as $domain)
{
    // Доменное имя
    echo $domain->DomainName.PHP_EOL;

    foreach($domain->Values->Data as $data)
    {
        echo $data->Parameter.PHP_EOL;
        echo $data->Value.PHP_EOL;

        foreach(get_object_vars($data->Value) as $paramKey => $paramValue)
        {
            echo "{$paramKey} = {$paramValue}".PHP_EOL;
        }
    }
    echo PHP_EOL;
}

/*
test.com
CyImage
160
*/ 
                        


Индекс Google стр.
Стоимость:0,5$ за 1000 запросов

Проверка Индекс Google стр. осуществляется через сессии.

Используются методы /session/new и /session/get.

XML для инициализации сессии


<InitSession>
	<Parameters>
		<TaskVariant>IGPages</TaskVariant>
	</Parameters>
	<DomainNames>
		<string>test.com</string>
	</DomainNames>
</InitSession>

Пример ответа сессии


<Domains>
    <DomainData>
      <DomainName>test.com</DomainName>
      <Values>
        <Data>
          <Parameter>IGPages</Parameter>
          <Value xsi:type="xsd:int">1</Value>
        </Data>
      </Values>
    </DomainData>
  </Domains>
<?php

// RDS Api ключ пользователя
$api_key = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx";

// XML для инициализации сессии
$put_data = "
<InitSession>
	<Parameters>
        <TaskVariant>IGPages</TaskVariant>
	</Parameters>
	<DomainNames>
		<string>test.com</string>
	</DomainNames>
</InitSession>";

// Инициализируем запрос для создания сессии
$ch = curl_init("http://recipdonor.com:998/api/session/new");
// Передаем API ключ
curl_setopt($ch, CURLOPT_USERPWD, "{$api_key}:x");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
// При инициализации сессии используется метод PUT
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "PUT");
// Указываем необходимые заголовки
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    "Content-Type: text/xml; charset=utf-8",
    "Content-Length: ".strlen($put_data)));
// Передаем данные для инициализации
curl_setopt($ch, CURLOPT_POSTFIELDS, $put_data);

// Посылаем запрос
$initSessionData = curl_exec($ch);
$responseInfo = curl_getinfo($ch);

if($responseInfo['http_code'] != 200) exit('Wrong request!');

curl_close($ch);

// Обрабатываем пришедший ответ
$sesssionXmlData = new SimpleXMLElement($initSessionData);
// Достаем идентификатор созданой сессии
$sessionId = $sesssionXmlData->Id;

$sessionData = null;
do{
    // Небольшая задержка перед получением данных
    sleep(2);
    // Инициализируем запрос для получения данных сессии
    $ch = curl_init("http://recipdonor.com:998/api/session/get/{$sessionId}");
    // Передаем API ключ
    curl_setopt($ch, CURLOPT_USERPWD, "{$api_key}:x");
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_HTTPHEADER, array("Content-Type: text/xml; charset=utf-8"));

    // Получаем и обрабатываем пришедший ответ
    $response = curl_exec($ch);
    $responseInfo = curl_getinfo($ch);

    if($responseInfo['http_code'] != 200) exit('Wrong request!');

    $sessionData = new SimpleXMLElement($response);
    curl_close($ch);

    // Повоторяем процедуру пока сессия не будет завершена
}while($sessionData->SessionStatus != 'Completed' && $sessionData->SessionStatus != 'Bankrupt');

// Выводим пришедшие данные
foreach($sessionData->Domains->DomainData as $domain)
{
    // Доменное имя
    echo $domain->DomainName.PHP_EOL;

    foreach($domain->Values->Data as $data)
    {
        echo $data->Parameter.PHP_EOL;
        echo $data->Value.PHP_EOL;

        foreach(get_object_vars($data->Value) as $paramKey => $paramValue)
        {
            echo "{$paramKey} = {$paramValue}".PHP_EOL;
        }
    }
    echo PHP_EOL;
}

/*
test.com
IGPages
1      (проиндексированна)
*/ 
                        


Наличие в WebArchive
Стоимость:0,2$ за 1000 запросов

Проверка WebArchive осуществляется через сессии.

Используются методы /session/new и /session/get.

XML для инициализации сессии


<InitSession>
	<Parameters>
		<TaskVariant>Wa</TaskVariant>
	</Parameters>
	<DomainNames>
		<string>test.com</string>
	</DomainNames>
</InitSession>

Пример ответа сессии


 <Domains>
    <DomainData>
      <DomainName>test.com</DomainName>
      <Values>
        <Data>
          <Parameter>Wa</Parameter>
          <Value xsi:type="WebArchApiData">
            <Wa>0</Wa>
          </Value>
        </Data>
      </Values>
    </DomainData>
  </Domains>

      <?php

// RDS Api ключ пользователя
$api_key = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx";

// XML для инициализации сессии
$put_data = "
<InitSession>
	<Parameters>
        <TaskVariant>Wa</TaskVariant>
	</Parameters>
	<DomainNames>
		<string>test.com</string>
	</DomainNames>
</InitSession>";

// Инициализируем запрос для создания сессии
$ch = curl_init("http://recipdonor.com:998/api/session/new");
// Передаем API ключ
curl_setopt($ch, CURLOPT_USERPWD, "{$api_key}:x");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
// При инициализации сессии используется метод PUT
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "PUT");
// Указываем необходимые заголовки
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    "Content-Type: text/xml; charset=utf-8",
    "Content-Length: ".strlen($put_data)));
// Передаем данные для инициализации
curl_setopt($ch, CURLOPT_POSTFIELDS, $put_data);

// Посылаем запрос
$initSessionData = curl_exec($ch);
$responseInfo = curl_getinfo($ch);

if($responseInfo['http_code'] != 200) exit('Wrong request!');

curl_close($ch);

// Обрабатываем пришедший ответ
$sesssionXmlData = new SimpleXMLElement($initSessionData);
// Достаем идентификатор созданой сессии
$sessionId = $sesssionXmlData->Id;

$sessionData = null;
do{
    // Небольшая задержка перед получением данных
    sleep(2);
    // Инициализируем запрос для получения данных сессии
    $ch = curl_init("http://recipdonor.com:998/api/session/get/{$sessionId}");
    // Передаем API ключ
    curl_setopt($ch, CURLOPT_USERPWD, "{$api_key}:x");
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_HTTPHEADER, array("Content-Type: text/xml; charset=utf-8"));

    // Получаем и обрабатываем пришедший ответ
    $response = curl_exec($ch);
    $responseInfo = curl_getinfo($ch);

    if($responseInfo['http_code'] != 200) exit('Wrong request!');

    $sessionData = new SimpleXMLElement($response);
    curl_close($ch);

    // Повоторяем процедуру пока сессия не будет завершена
}while($sessionData->SessionStatus != 'Completed' && $sessionData->SessionStatus != 'Bankrupt');

// Выводим пришедшие данные
foreach($sessionData->Domains->DomainData as $domain)
{
    // Доменное имя
    echo $domain->DomainName.PHP_EOL;

    foreach($domain->Values->Data as $data)
    {
        echo $data->Parameter.PHP_EOL;
        echo $data->Value.PHP_EOL;

        foreach(get_object_vars($data->Value) as $paramKey => $paramValue)
        {
            echo "{$paramKey} = {$paramValue}".PHP_EOL;
        }
    }
    echo PHP_EOL;
}

/*
test.com
Wa

Wa = 0         (нет в WebArchive)
*/
     
                        


Партнерский код
Стоимость:1,0$ за 1000 запросов

Сайты можно получить из функции /commercials. Перед выполнением можно получить кол-во значений в базе для вычисления стоимости запроса /commercials/count/.

Запрос для получения кол-ва значений (используется для вычисления стоимости основного запроса)

/commercials/count/adsense/pub-xxxxxxxxxxxxxxxx

Для полчения самих значений

/commercials/adsense/pub-xxxxxxxxxxxxxxxx

Получаем ответ вида

<ArrayOfString>
	<string>example.com</string>
	<string>test.com</string>
</ArrayOfString>

      <?php
      // RDS Api ключ пользователя
      $api_key = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx";
      // Стоимость $ одной проверки
      define("oneItemCost", 0.005);

      // Инициализируем запрос
      $ch = curl_init("http://recipdonor.com:998/api/commercials/count/adsense/pub-xxxxxxxxxxxxxxxx?format=json");

      // Передаем API ключ
      curl_setopt($ch, CURLOPT_USERPWD, "{$api_key}:x");
      curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

      // Посылаем запрос, принимаем ответ отсекаем utf-8 BOM
      $responseData = substr(curl_exec($ch),3);
      $adSenseUrlsCount = json_decode($responseData);

      $responseInfo = curl_getinfo($ch);
      if($responseInfo['http_code'] != 200) exit('Wrong request!');

      curl_close($ch);

      // Выводим стоимость проверки
      echo "The cost of check = $".(oneItemCost * $adSenseUrlsCount);
      echo PHP_EOL;

      // Инициализируем запрос
      $ch = curl_init("http://recipdonor.com:998/api/commercials/adsense/pub-xxxxxxxxxxxxxxxx?format=json");

      // Передаем API ключ
      curl_setopt($ch, CURLOPT_USERPWD, "{$api_key}:x");
      curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

      // Посылаем запрос, получаем ответ, отсекаем utf-8 BOM
      $adSenseUrls = json_decode(substr(curl_exec($ch),3));
      $responseInfo = curl_getinfo($ch);
      if($responseInfo['http_code'] != 200) exit('Wrong request!');

      curl_close($ch);

      // Выводим результат
      foreach($adSenseUrls as $url)
      {
      echo $url.PHP_EOL;
      }

      /*
      The cost of check = $0.001
      example.com
      test.com
      .....
      */
     
                        


Параметры страницы
Стоимость:0,03$ за 1000 запросов

Проверка Параметры страницы осуществляется через сессии.

Используются методы /session/new и /session/get.

XML для инициализации сессии


<InitSession>
	<Parameters>
		<TaskVariant>PageValues</TaskVariant>
	</Parameters>
	<DomainNames>
		<string>google.com.ua</string>
	</DomainNames>
</InitSession>

Пример ответа сессии


<Domains>
	<DomainData>
		<DomainName>google.com.ua</DomainName>
		<Values><Data>
			<Parameter>PageValues</Parameter>
			<Value xsi:type="PageValuesApiData">
				<Title>Google</Title>	<!-- заголовок страницы -->
				<LinksIn>13</LinksIn>	<!-- входящие ссылки -->
				<LinksOut>6</LinksOut>	<!-- исходящие ссылки -->
				<ComLinks>0</ComLinks>	<!-- коммерческие ссылки -->
                                <PageSize>16</PageSize> <!-- размер страницы -->
                                <ClearPageSize>9</ClearPageSize> <!-- размер страницы без тегов -->
                                <ResponseCode>OK</ResponseCode> <!-- HttpStatusCode -->
				<Cmses/>		<!-- системы управления сайтом -->
                                <Commercials/>         <!-- контекстная реклама -->
                                <Counters/>        <!-- счетчики -->
			</Value>
		</Data></Values>
	</DomainData>
</Domains>
<?php

// RDS Api ключ пользователя
$api_key = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx";


$put_data = "
<InitSession>
	<Parameters>
        <TaskVariant>PageValues</TaskVariant>
	</Parameters>
	<DomainNames>
		<string>google.com.ua</string>
	</DomainNames>
</InitSession>";

// Инициализируем запрос для создания сессии
$ch = curl_init("http://recipdonor.com:998/api/session/new");
// Передаем API ключ
curl_setopt($ch, CURLOPT_USERPWD, "{$api_key}:x");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
// При инициализации сессии используется метод PUT
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "PUT");
// Указываем необходимые заголовки
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    "Content-Type: text/xml; charset=utf-8",
    "Content-Length: ".strlen($put_data)));
// Передаем данные для инициализации
curl_setopt($ch, CURLOPT_POSTFIELDS, $put_data);

// Посылаем запрос
$initSessionData = curl_exec($ch);
$responseInfo = curl_getinfo($ch);

if($responseInfo['http_code'] != 200) exit('Wrong request!');

curl_close($ch);

// Обрабатываем пришедший ответ
$sesssionXmlData = new SimpleXMLElement($initSessionData);
// Достаем идентификатор созданой сессии
$sessionId = $sesssionXmlData->Id;

$sessionData = null;
do{
    // Небольшая задержка перед получением данных
    sleep(2);
    // Инициализируем запрос для получения данных сессии
    $ch = curl_init("http://recipdonor.com:998/api/session/get/{$sessionId}");
    // Передаем API ключ
    curl_setopt($ch, CURLOPT_USERPWD, "{$api_key}:x");
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_HTTPHEADER, array("Content-Type: text/xml; charset=utf-8"));

    // Получаем и обрабатываем пришедший ответ
    $response = curl_exec($ch);
    $responseInfo = curl_getinfo($ch);

    if($responseInfo['http_code'] != 200) exit('Wrong request!');

    $sessionData = new SimpleXMLElement($response);
    curl_close($ch);

    // Повоторяем процедуру пока сессия не будет завершена
}while($sessionData->SessionStatus != 'Completed' && $sessionData->SessionStatus != 'Bankrupt');

// Выводим пришедшие данные
foreach($sessionData->Domains->DomainData as $domain)
{
    // Доменное имя
    echo $domain->DomainName.PHP_EOL;

    foreach($domain->Values->Data as $data)
    {
        echo $data->Parameter.PHP_EOL;
        echo $data->Value.PHP_EOL;

        foreach(get_object_vars($data->Value) as $paramKey => $paramValue)
        {
            echo "{$paramKey} = {$paramValue}".PHP_EOL;
        }
    }
    echo PHP_EOL;
}

/*
google.com.ua
PageValues

Title = Google
LinksIn = 13
LinksOut = 6
ComLinks = 0
Page Size = 16
ClearPageSize = 9
ResponseCode = OK
Cmses =
Commercials = 
Counters =
 */ 
                        


Alexa
Стоимость:0,2$ за 1000 запросов

Проверка Alexa осуществляется через сессии.

Используются методы /session/new и /session/get.

XML для инициализации сессии


<InitSession>
	<Parameters>
		<TaskVariant>Alexa</TaskVariant>
	</Parameters>
	<DomainNames>
		<string>test.com</string>
	</DomainNames>
</InitSession>

Пример ответа сессии


 <Domains>
    <DomainData>
      <DomainName>test.com</DomainName>
      <Values>
        <Data>
          <Parameter>Alexa</Parameter>
          <Value>19476</Value>
        </Data>
      </Values>
    </DomainData>
  </Domains>
<?php

// RDS Api ключ пользователя
$api_key = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx";

// XML для инициализации сессии
$put_data = "
<InitSession>
	<Parameters>
        <TaskVariant>Alexa</TaskVariant>
	</Parameters>
	<DomainNames>
		<string>test.com</string>
	</DomainNames>
</InitSession>";

// Инициализируем запрос для создания сессии
$ch = curl_init("http://recipdonor.com:998/api/session/new");
// Передаем API ключ
curl_setopt($ch, CURLOPT_USERPWD, "{$api_key}:x");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
// При инициализации сессии используется метод PUT
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "PUT");
// Указываем необходимые заголовки
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    "Content-Type: text/xml; charset=utf-8",
    "Content-Length: ".strlen($put_data)));
// Передаем данные для инициализации
curl_setopt($ch, CURLOPT_POSTFIELDS, $put_data);

// Посылаем запрос
$initSessionData = curl_exec($ch);
$responseInfo = curl_getinfo($ch);

if($responseInfo['http_code'] != 200) exit('Wrong request!');

curl_close($ch);

// Обрабатываем пришедший ответ
$sesssionXmlData = new SimpleXMLElement($initSessionData);
// Достаем идентификатор созданой сессии
$sessionId = $sesssionXmlData->Id;

$sessionData = null;
do{
    // Небольшая задержка перед получением данных
    sleep(2);
    // Инициализируем запрос для получения данных сессии
    $ch = curl_init("http://recipdonor.com:998/api/session/get/{$sessionId}");
    // Передаем API ключ
    curl_setopt($ch, CURLOPT_USERPWD, "{$api_key}:x");
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_HTTPHEADER, array("Content-Type: text/xml; charset=utf-8"));

    // Получаем и обрабатываем пришедший ответ
    $response = curl_exec($ch);
    $responseInfo = curl_getinfo($ch);

    if($responseInfo['http_code'] != 200) exit('Wrong request!');

    $sessionData = new SimpleXMLElement($response);
    curl_close($ch);

    // Повоторяем процедуру пока сессия не будет завершена
}while($sessionData->SessionStatus != 'Completed' && $sessionData->SessionStatus != 'Bankrupt');

// Выводим пришедшие данные
foreach($sessionData->Domains->DomainData as $domain)
{
    // Доменное имя
    echo $domain->DomainName.PHP_EOL;

    foreach($domain->Values->Data as $data)
    {
        echo $data->Parameter.PHP_EOL;
        echo $data->Value.PHP_EOL;

        foreach(get_object_vars($data->Value) as $paramKey => $paramValue)
        {
            echo "{$paramKey} = {$paramValue}".PHP_EOL;
        }
    }
    echo PHP_EOL;
}

/*
test.com
Alexa

Alexa = 19476
*/ 
                        


Индекс Rambler
Стоимость:0,2$ за 1000 запросов

Проверка Индекс Rambler осуществляется через сессии.

Используются методы /session/new и /session/get.

XML для инициализации сессии


<InitSession>
	<Parameters>
		<TaskVariant>IndexRambler</TaskVariant>
	</Parameters>
	<DomainNames>
		<string>test.com</string>
	</DomainNames>
</InitSession>

Пример ответа сессии


 <Domains>
    <DomainData>
      <DomainName>test.com</DomainName>
      <Values>
        <Data>
          <Parameter>IndexRambler</Parameter>
          <Value>14</Value>
        </Data>
      </Values>
    </DomainData>
  </Domains>
<?php

// RDS Api ключ пользователя
$api_key = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx";

// XML для инициализации сессии
$put_data = "
<InitSession>
	<Parameters>
        <TaskVariant>IndexRambler</TaskVariant>
	</Parameters>
	<DomainNames>
		<string>test.com</string>
	</DomainNames>
</InitSession>";

// Инициализируем запрос для создания сессии
$ch = curl_init("http://recipdonor.com:998/api/session/new");
// Передаем API ключ
curl_setopt($ch, CURLOPT_USERPWD, "{$api_key}:x");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
// При инициализации сессии используется метод PUT
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "PUT");
// Указываем необходимые заголовки
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    "Content-Type: text/xml; charset=utf-8",
    "Content-Length: ".strlen($put_data)));
// Передаем данные для инициализации
curl_setopt($ch, CURLOPT_POSTFIELDS, $put_data);

// Посылаем запрос
$initSessionData = curl_exec($ch);
$responseInfo = curl_getinfo($ch);

if($responseInfo['http_code'] != 200) exit('Wrong request!');

curl_close($ch);

// Обрабатываем пришедший ответ
$sesssionXmlData = new SimpleXMLElement($initSessionData);
// Достаем идентификатор созданой сессии
$sessionId = $sesssionXmlData->Id;

$sessionData = null;
do{
    // Небольшая задержка перед получением данных
    sleep(2);
    // Инициализируем запрос для получения данных сессии
    $ch = curl_init("http://recipdonor.com:998/api/session/get/{$sessionId}");
    // Передаем API ключ
    curl_setopt($ch, CURLOPT_USERPWD, "{$api_key}:x");
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_HTTPHEADER, array("Content-Type: text/xml; charset=utf-8"));

    // Получаем и обрабатываем пришедший ответ
    $response = curl_exec($ch);
    $responseInfo = curl_getinfo($ch);

    if($responseInfo['http_code'] != 200) exit('Wrong request!');

    $sessionData = new SimpleXMLElement($response);
    curl_close($ch);

    // Повоторяем процедуру пока сессия не будет завершена
}while($sessionData->SessionStatus != 'Completed' && $sessionData->SessionStatus != 'Bankrupt');

// Выводим пришедшие данные
foreach($sessionData->Domains->DomainData as $domain)
{
    // Доменное имя
    echo $domain->DomainName.PHP_EOL;

    foreach($domain->Values->Data as $data)
    {
        echo $data->Parameter.PHP_EOL;
        echo $data->Value.PHP_EOL;

        foreach(get_object_vars($data->Value) as $paramKey => $paramValue)
        {
            echo "{$paramKey} = {$paramValue}".PHP_EOL;
        }
    }
    echo PHP_EOL;
}

/*
test.com
IndexRambler

IndexRambler = 14
*/ 
                        


Back Google
Стоимость:0,5$ за 1000 запросов

Проверка Back Google осуществляется через сессии.

Используются методы /session/new и /session/get.

XML для инициализации сессии


<InitSession>
	<Parameters>
		<TaskVariant>GoogleBack</TaskVariant>
	</Parameters>
	<DomainNames>
		<string>test.com</string>
	</DomainNames>
</InitSession>

Пример ответа сессии


 <Domains>
    <DomainData>
      <DomainName>test.com</DomainName>
      <Values>
        <Data>
          <Parameter>GoogleBack</Parameter>
          <Value>586</Value>
        </Data>
      </Values>
    </DomainData>
  </Domains>
<?php

// RDS Api ключ пользователя
$api_key = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx";

// XML для инициализации сессии
$put_data = "
<InitSession>
	<Parameters>
        <TaskVariant>GoogleBack</TaskVariant>
	</Parameters>
	<DomainNames>
		<string>test.com</string>
	</DomainNames>
</InitSession>";

// Инициализируем запрос для создания сессии
$ch = curl_init("http://recipdonor.com:998/api/session/new");
// Передаем API ключ
curl_setopt($ch, CURLOPT_USERPWD, "{$api_key}:x");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
// При инициализации сессии используется метод PUT
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "PUT");
// Указываем необходимые заголовки
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    "Content-Type: text/xml; charset=utf-8",
    "Content-Length: ".strlen($put_data)));
// Передаем данные для инициализации
curl_setopt($ch, CURLOPT_POSTFIELDS, $put_data);

// Посылаем запрос
$initSessionData = curl_exec($ch);
$responseInfo = curl_getinfo($ch);

if($responseInfo['http_code'] != 200) exit('Wrong request!');

curl_close($ch);

// Обрабатываем пришедший ответ
$sesssionXmlData = new SimpleXMLElement($initSessionData);
// Достаем идентификатор созданой сессии
$sessionId = $sesssionXmlData->Id;

$sessionData = null;
do{
    // Небольшая задержка перед получением данных
    sleep(2);
    // Инициализируем запрос для получения данных сессии
    $ch = curl_init("http://recipdonor.com:998/api/session/get/{$sessionId}");
    // Передаем API ключ
    curl_setopt($ch, CURLOPT_USERPWD, "{$api_key}:x");
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_HTTPHEADER, array("Content-Type: text/xml; charset=utf-8"));

    // Получаем и обрабатываем пришедший ответ
    $response = curl_exec($ch);
    $responseInfo = curl_getinfo($ch);

    if($responseInfo['http_code'] != 200) exit('Wrong request!');

    $sessionData = new SimpleXMLElement($response);
    curl_close($ch);

    // Повоторяем процедуру пока сессия не будет завершена
}while($sessionData->SessionStatus != 'Completed' && $sessionData->SessionStatus != 'Bankrupt');

// Выводим пришедшие данные
foreach($sessionData->Domains->DomainData as $domain)
{
    // Доменное имя
    echo $domain->DomainName.PHP_EOL;

    foreach($domain->Values->Data as $data)
    {
        echo $data->Parameter.PHP_EOL;
        echo $data->Value.PHP_EOL;

        foreach(get_object_vars($data->Value) as $paramKey => $paramValue)
        {
            echo "{$paramKey} = {$paramValue}".PHP_EOL;
        }
    }
    echo PHP_EOL;
}

/*
test.com
GoogleBack

GoogleBack = 586
*/ 
                        


Упом. Я
Стоимость:0,2$ за 1000 запросов

Проверка кол-ва упоминаний домена в Яндексе осуществляется через сессии.

Используются методы /session/new и /session/get.

XML для инициализации сессии


<InitSession>
	<Parameters>
		<TaskVariant>BY</TaskVariant>
	</Parameters>
	<DomainNames>
		<string>test.com</string>
	</DomainNames>
</InitSession>

Пример ответа сессии


 <Domains>
    <DomainData>
      <DomainName>test.com</DomainName>
      <Values>
        <Data>
          <Parameter>BY</Parameter>
          <Value>750000</Value>
        </Data>
      </Values>
    </DomainData>
  </Domains>
<?php

// RDS Api ключ пользователя
$api_key = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx";

// XML для инициализации сессии
$put_data = "
<InitSession>
	<Parameters>
        <TaskVariant>BY</TaskVariant>
	</Parameters>
	<DomainNames>
		<string>test.com</string>
	</DomainNames>
</InitSession>";

// Инициализируем запрос для создания сессии
$ch = curl_init("http://recipdonor.com:998/api/session/new");
// Передаем API ключ
curl_setopt($ch, CURLOPT_USERPWD, "{$api_key}:x");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
// При инициализации сессии используется метод PUT
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "PUT");
// Указываем необходимые заголовки
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    "Content-Type: text/xml; charset=utf-8",
    "Content-Length: ".strlen($put_data)));
// Передаем данные для инициализации
curl_setopt($ch, CURLOPT_POSTFIELDS, $put_data);

// Посылаем запрос
$initSessionData = curl_exec($ch);
$responseInfo = curl_getinfo($ch);

if($responseInfo['http_code'] != 200) exit('Wrong request!');

curl_close($ch);

// Обрабатываем пришедший ответ
$sesssionXmlData = new SimpleXMLElement($initSessionData);
// Достаем идентификатор созданой сессии
$sessionId = $sesssionXmlData->Id;

$sessionData = null;
do{
    // Небольшая задержка перед получением данных
    sleep(2);
    // Инициализируем запрос для получения данных сессии
    $ch = curl_init("http://recipdonor.com:998/api/session/get/{$sessionId}");
    // Передаем API ключ
    curl_setopt($ch, CURLOPT_USERPWD, "{$api_key}:x");
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_HTTPHEADER, array("Content-Type: text/xml; charset=utf-8"));

    // Получаем и обрабатываем пришедший ответ
    $response = curl_exec($ch);
    $responseInfo = curl_getinfo($ch);

    if($responseInfo['http_code'] != 200) exit('Wrong request!');

    $sessionData = new SimpleXMLElement($response);
    curl_close($ch);

    // Повоторяем процедуру пока сессия не будет завершена
}while($sessionData->SessionStatus != 'Completed' && $sessionData->SessionStatus != 'Bankrupt');

// Выводим пришедшие данные
foreach($sessionData->Domains->DomainData as $domain)
{
    // Доменное имя
    echo $domain->DomainName.PHP_EOL;

    foreach($domain->Values->Data as $data)
    {
        echo $data->Parameter.PHP_EOL;
        echo $data->Value.PHP_EOL;

        foreach(get_object_vars($data->Value) as $paramKey => $paramValue)
        {
            echo "{$paramKey} = {$paramValue}".PHP_EOL;
        }
    }
    echo PHP_EOL;
}

/*
test.com
BY

BY = 750000
*/ 
                        


Картинки Я
Стоимость:0,1$ за 1000 запросов

Проверка кол-ва проиндексированный картинок сайта в Яндексе осуществляется через сессии.

Используются методы /session/new и /session/get.

XML для инициализации сессии


<InitSession>
	<Parameters>
		<TaskVariant>YandexImage</TaskVariant>
	</Parameters>
	<DomainNames>
		<string>test.com</string>
	</DomainNames>
</InitSession>

Пример ответа сессии


 <Domains>
    <DomainData>
      <DomainName>test.com</DomainName>
      <Values>
        <Data>
          <Parameter>YandexImage</Parameter>
          <Value>0</Value>
        </Data>
      </Values>
    </DomainData>
  </Domains>
<?php

// RDS Api ключ пользователя
$api_key = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx";

// XML для инициализации сессии
$put_data = "
<InitSession>
	<Parameters>
        <TaskVariant>YandexImage</TaskVariant>
	</Parameters>
	<DomainNames>
		<string>test.com</string>
	</DomainNames>
</InitSession>";

// Инициализируем запрос для создания сессии
$ch = curl_init("http://recipdonor.com:998/api/session/new");
// Передаем API ключ
curl_setopt($ch, CURLOPT_USERPWD, "{$api_key}:x");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
// При инициализации сессии используется метод PUT
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "PUT");
// Указываем необходимые заголовки
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    "Content-Type: text/xml; charset=utf-8",
    "Content-Length: ".strlen($put_data)));
// Передаем данные для инициализации
curl_setopt($ch, CURLOPT_POSTFIELDS, $put_data);

// Посылаем запрос
$initSessionData = curl_exec($ch);
$responseInfo = curl_getinfo($ch);

if($responseInfo['http_code'] != 200) exit('Wrong request!');

curl_close($ch);

// Обрабатываем пришедший ответ
$sesssionXmlData = new SimpleXMLElement($initSessionData);
// Достаем идентификатор созданой сессии
$sessionId = $sesssionXmlData->Id;

$sessionData = null;
do{
    // Небольшая задержка перед получением данных
    sleep(2);
    // Инициализируем запрос для получения данных сессии
    $ch = curl_init("http://recipdonor.com:998/api/session/get/{$sessionId}");
    // Передаем API ключ
    curl_setopt($ch, CURLOPT_USERPWD, "{$api_key}:x");
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_HTTPHEADER, array("Content-Type: text/xml; charset=utf-8"));

    // Получаем и обрабатываем пришедший ответ
    $response = curl_exec($ch);
    $responseInfo = curl_getinfo($ch);

    if($responseInfo['http_code'] != 200) exit('Wrong request!');

    $sessionData = new SimpleXMLElement($response);
    curl_close($ch);

    // Повоторяем процедуру пока сессия не будет завершена
}while($sessionData->SessionStatus != 'Completed' && $sessionData->SessionStatus != 'Bankrupt');

// Выводим пришедшие данные
foreach($sessionData->Domains->DomainData as $domain)
{
    // Доменное имя
    echo $domain->DomainName.PHP_EOL;

    foreach($domain->Values->Data as $data)
    {
        echo $data->Parameter.PHP_EOL;
        echo $data->Value.PHP_EOL;

        foreach(get_object_vars($data->Value) as $paramKey => $paramValue)
        {
            echo "{$paramKey} = {$paramValue}".PHP_EOL;
        }
    }
    echo PHP_EOL;
}

/*
test.com
YandexImage

YandexImage = 0
*/ 
                        


Картинки G
Стоимость:0,2$ за 1000 запросов

Проверка кол-ва проиндексированный картинок сайта в Google осуществляется через сессии.

Используются методы /session/new и /session/get.

XML для инициализации сессии


<InitSession>
	<Parameters>
		<TaskVariant>GoogleImage</TaskVariant>
	</Parameters>
	<DomainNames>
		<string>test.com</string>
	</DomainNames>
</InitSession>

Пример ответа сессии


 <Domains>
    <DomainData>
      <DomainName>test.com</DomainName>
      <Values>
        <Data>
          <Parameter>GoogleImage</Parameter>
          <Value>80</Value>
        </Data>
      </Values>
    </DomainData>
  </Domains>
<?php

// RDS Api ключ пользователя
$api_key = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx";

// XML для инициализации сессии
$put_data = "
<InitSession>
	<Parameters>
        <TaskVariant>GoogleImage</TaskVariant>
	</Parameters>
	<DomainNames>
		<string>test.com</string>
	</DomainNames>
</InitSession>";

// Инициализируем запрос для создания сессии
$ch = curl_init("http://recipdonor.com:998/api/session/new");
// Передаем API ключ
curl_setopt($ch, CURLOPT_USERPWD, "{$api_key}:x");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
// При инициализации сессии используется метод PUT
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "PUT");
// Указываем необходимые заголовки
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    "Content-Type: text/xml; charset=utf-8",
    "Content-Length: ".strlen($put_data)));
// Передаем данные для инициализации
curl_setopt($ch, CURLOPT_POSTFIELDS, $put_data);

// Посылаем запрос
$initSessionData = curl_exec($ch);
$responseInfo = curl_getinfo($ch);

if($responseInfo['http_code'] != 200) exit('Wrong request!');

curl_close($ch);

// Обрабатываем пришедший ответ
$sesssionXmlData = new SimpleXMLElement($initSessionData);
// Достаем идентификатор созданой сессии
$sessionId = $sesssionXmlData->Id;

$sessionData = null;
do{
    // Небольшая задержка перед получением данных
    sleep(2);
    // Инициализируем запрос для получения данных сессии
    $ch = curl_init("http://recipdonor.com:998/api/session/get/{$sessionId}");
    // Передаем API ключ
    curl_setopt($ch, CURLOPT_USERPWD, "{$api_key}:x");
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_HTTPHEADER, array("Content-Type: text/xml; charset=utf-8"));

    // Получаем и обрабатываем пришедший ответ
    $response = curl_exec($ch);
    $responseInfo = curl_getinfo($ch);

    if($responseInfo['http_code'] != 200) exit('Wrong request!');

    $sessionData = new SimpleXMLElement($response);
    curl_close($ch);

    // Повоторяем процедуру пока сессия не будет завершена
}while($sessionData->SessionStatus != 'Completed' && $sessionData->SessionStatus != 'Bankrupt');

// Выводим пришедшие данные
foreach($sessionData->Domains->DomainData as $domain)
{
    // Доменное имя
    echo $domain->DomainName.PHP_EOL;

    foreach($domain->Values->Data as $data)
    {
        echo $data->Parameter.PHP_EOL;
        echo $data->Value.PHP_EOL;

        foreach(get_object_vars($data->Value) as $paramKey => $paramValue)
        {
            echo "{$paramKey} = {$paramValue}".PHP_EOL;
        }
    }
    echo PHP_EOL;
}

/*
test.com
GoogleImage

GoogleImage = 80
*/ 
                        


Индекс B
Стоимость:0,2$ за 1000 запросов

Проверка кол-ва проиндексированный страниц сайта в Bing осуществляется через сессии.

Используются методы /session/new и /session/get.

XML для инициализации сессии


<InitSession>
	<Parameters>
		<TaskVariant>BingIndex</TaskVariant>
	</Parameters>
	<DomainNames>
		<string>test.com</string>
	</DomainNames>
</InitSession>

Пример ответа сессии


 <Domains>
    <DomainData>
      <DomainName>test.com</DomainName>
      <Values>
        <Data>
          <Parameter>BingIndex</Parameter>
          <Value>24</Value>
        </Data>
      </Values>
    </DomainData>
  </Domains>
<?php

// RDS Api ключ пользователя
$api_key = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx";

// XML для инициализации сессии
$put_data = "
<InitSession>
	<Parameters>
        <TaskVariant>BingIndex</TaskVariant>
	</Parameters>
	<DomainNames>
		<string>test.com</string>
	</DomainNames>
</InitSession>";

// Инициализируем запрос для создания сессии
$ch = curl_init("http://recipdonor.com:998/api/session/new");
// Передаем API ключ
curl_setopt($ch, CURLOPT_USERPWD, "{$api_key}:x");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
// При инициализации сессии используется метод PUT
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "PUT");
// Указываем необходимые заголовки
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    "Content-Type: text/xml; charset=utf-8",
    "Content-Length: ".strlen($put_data)));
// Передаем данные для инициализации
curl_setopt($ch, CURLOPT_POSTFIELDS, $put_data);

// Посылаем запрос
$initSessionData = curl_exec($ch);
$responseInfo = curl_getinfo($ch);

if($responseInfo['http_code'] != 200) exit('Wrong request!');

curl_close($ch);

// Обрабатываем пришедший ответ
$sesssionXmlData = new SimpleXMLElement($initSessionData);
// Достаем идентификатор созданой сессии
$sessionId = $sesssionXmlData->Id;

$sessionData = null;
do{
    // Небольшая задержка перед получением данных
    sleep(2);
    // Инициализируем запрос для получения данных сессии
    $ch = curl_init("http://recipdonor.com:998/api/session/get/{$sessionId}");
    // Передаем API ключ
    curl_setopt($ch, CURLOPT_USERPWD, "{$api_key}:x");
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_HTTPHEADER, array("Content-Type: text/xml; charset=utf-8"));

    // Получаем и обрабатываем пришедший ответ
    $response = curl_exec($ch);
    $responseInfo = curl_getinfo($ch);

    if($responseInfo['http_code'] != 200) exit('Wrong request!');

    $sessionData = new SimpleXMLElement($response);
    curl_close($ch);

    // Повоторяем процедуру пока сессия не будет завершена
}while($sessionData->SessionStatus != 'Completed' && $sessionData->SessionStatus != 'Bankrupt');

// Выводим пришедшие данные
foreach($sessionData->Domains->DomainData as $domain)
{
    // Доменное имя
    echo $domain->DomainName.PHP_EOL;

    foreach($domain->Values->Data as $data)
    {
        echo $data->Parameter.PHP_EOL;
        echo $data->Value.PHP_EOL;

        foreach(get_object_vars($data->Value) as $paramKey => $paramValue)
        {
            echo "{$paramKey} = {$paramValue}".PHP_EOL;
        }
    }
    echo PHP_EOL;
}

/*
test.com
BingIndex

BingIndex = 24
*/ 
                        


Bing исход.
Стоимость:0,2$ за 1000 запросов

Проверка кол-ва исходящих ссылок с сайта по Bing осуществляется через сессии.

Используются методы /session/new и /session/get.

XML для инициализации сессии


<InitSession>
	<Parameters>
		<TaskVariant>Bing</TaskVariant>
	</Parameters>
	<DomainNames>
		<string>test.com</string>
	</DomainNames>
</InitSession>

Пример ответа сессии


 <Domains>
    <DomainData>
      <DomainName>test.com</DomainName>
      <Values>
        <Data>
          <Parameter>Bing</Parameter>
          <Value>2</Value>
        </Data>
      </Values>
    </DomainData>
  </Domains>
<?php

// RDS Api ключ пользователя
$api_key = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx";

// XML для инициализации сессии
$put_data = "
<InitSession>
	<Parameters>
        <TaskVariant>Bing</TaskVariant>
	</Parameters>
	<DomainNames>
		<string>test.com</string>
	</DomainNames>
</InitSession>";

// Инициализируем запрос для создания сессии
$ch = curl_init("http://recipdonor.com:998/api/session/new");
// Передаем API ключ
curl_setopt($ch, CURLOPT_USERPWD, "{$api_key}:x");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
// При инициализации сессии используется метод PUT
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "PUT");
// Указываем необходимые заголовки
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    "Content-Type: text/xml; charset=utf-8",
    "Content-Length: ".strlen($put_data)));
// Передаем данные для инициализации
curl_setopt($ch, CURLOPT_POSTFIELDS, $put_data);

// Посылаем запрос
$initSessionData = curl_exec($ch);
$responseInfo = curl_getinfo($ch);

if($responseInfo['http_code'] != 200) exit('Wrong request!');

curl_close($ch);

// Обрабатываем пришедший ответ
$sesssionXmlData = new SimpleXMLElement($initSessionData);
// Достаем идентификатор созданой сессии
$sessionId = $sesssionXmlData->Id;

$sessionData = null;
do{
    // Небольшая задержка перед получением данных
    sleep(2);
    // Инициализируем запрос для получения данных сессии
    $ch = curl_init("http://recipdonor.com:998/api/session/get/{$sessionId}");
    // Передаем API ключ
    curl_setopt($ch, CURLOPT_USERPWD, "{$api_key}:x");
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_HTTPHEADER, array("Content-Type: text/xml; charset=utf-8"));

    // Получаем и обрабатываем пришедший ответ
    $response = curl_exec($ch);
    $responseInfo = curl_getinfo($ch);

    if($responseInfo['http_code'] != 200) exit('Wrong request!');

    $sessionData = new SimpleXMLElement($response);
    curl_close($ch);

    // Повоторяем процедуру пока сессия не будет завершена
}while($sessionData->SessionStatus != 'Completed' && $sessionData->SessionStatus != 'Bankrupt');

// Выводим пришедшие данные
foreach($sessionData->Domains->DomainData as $domain)
{
    // Доменное имя
    echo $domain->DomainName.PHP_EOL;

    foreach($domain->Values->Data as $data)
    {
        echo $data->Parameter.PHP_EOL;
        echo $data->Value.PHP_EOL;

        foreach(get_object_vars($data->Value) as $paramKey => $paramValue)
        {
            echo "{$paramKey} = {$paramValue}".PHP_EOL;
        }
    }
    echo PHP_EOL;
}

/*
test.com
Bing

Bing = 2
*/ 
                        


Посещаемость
Стоимость:1,0$ за 1000 запросов

Проверка посещаемости через сессии.

Используются методы /session/new и /session/get.

XML для инициализации сессии


<InitSession>
	<Parameters>
		<TaskVariant>Counters</TaskVariant>
	</Parameters>
	<DomainNames>
	<Counter>
                <SiteId>452325</SiteId>
                <CounterType>Top100Rambler</CounterType>
                <Url>bookz.ru</Url>
              </Counter>
	</DomainNames>
</InitSession>

SiteId - ID счетчика на сайте, CounterType - идентификатор счетчика(Liveinternet, YandexMetrica, Top100Rambler, MailRu, HotLog, Spylog, Bigmir, KMindex, Topstat, MyCounter, Log24, YandeG, OpenStat).

Пример ответа сессии


 <Domains>
    <DomainData>
      <DomainName>test.com</DomainName>
      <Values>
        <Data>
          <Parameter>Bing</Parameter>
          <Value xsi:type="CounterApiData">
            <Value>58352</Value>
            <Access>1</Access>
            <CounterType>Top100Rambler</CounterType>
          </Value>
        </Data>
      </Values>
    </DomainData>
  </Domains>

Value - значение счетчика за вчера или за день. Access - наличие доступа к статистике сайта(1 - Есть доступ, 2 - Нет доступа, 0 - Счетчик не присутствует на сайте).

<?php

// RDS Api ключ пользователя
$api_key = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx";

// XML для инициализации сессии
$put_data = "
<InitSession>
	<Parameters>
        <TaskVariant>Counters</TaskVariant>
	</Parameters>
	<DomainNames>
            <Counter>
              <SiteId>452325</SiteId>
              <CounterType>Top100Rambler</CounterType>
              <Url>bookz.ru</Url>
            </Counter>
	</DomainNames>
</InitSession>";

// Инициализируем запрос для создания сессии
$ch = curl_init("http://recipdonor.com:998/api/session/new");
// Передаем API ключ
curl_setopt($ch, CURLOPT_USERPWD, "{$api_key}:x");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
// При инициализации сессии используется метод PUT
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "PUT");
// Указываем необходимые заголовки
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    "Content-Type: text/xml; charset=utf-8",
    "Content-Length: ".strlen($put_data)));
// Передаем данные для инициализации
curl_setopt($ch, CURLOPT_POSTFIELDS, $put_data);

// Посылаем запрос
$initSessionData = curl_exec($ch);
$responseInfo = curl_getinfo($ch);

if($responseInfo['http_code'] != 200) exit('Wrong request!');

curl_close($ch);

// Обрабатываем пришедший ответ
$sesssionXmlData = new SimpleXMLElement($initSessionData);
// Достаем идентификатор созданой сессии
$sessionId = $sesssionXmlData->Id;

$sessionData = null;
do{
    // Небольшая задержка перед получением данных
    sleep(2);
    // Инициализируем запрос для получения данных сессии
    $ch = curl_init("http://recipdonor.com:998/api/session/get/{$sessionId}");
    // Передаем API ключ
    curl_setopt($ch, CURLOPT_USERPWD, "{$api_key}:x");
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_HTTPHEADER, array("Content-Type: text/xml; charset=utf-8"));

    // Получаем и обрабатываем пришедший ответ
    $response = curl_exec($ch);
    $responseInfo = curl_getinfo($ch);

    if($responseInfo['http_code'] != 200) exit('Wrong request!');

    $sessionData = new SimpleXMLElement($response);
    curl_close($ch);

    // Повоторяем процедуру пока сессия не будет завершена
}while($sessionData->SessionStatus != 'Completed' && $sessionData->SessionStatus != 'Bankrupt');

// Выводим пришедшие данные
foreach($sessionData->Domains->DomainData as $domain)
{
    // Доменное имя
    echo $domain->DomainName.PHP_EOL;

    foreach($domain->Values->Data as $data)
    {
        echo $data->Parameter.PHP_EOL;
        echo $data->Value.PHP_EOL;

        foreach(get_object_vars($data->Value) as $paramKey => $paramValue)
        {
            echo "{$paramKey} = {$paramValue}".PHP_EOL;
        }
    }
    echo PHP_EOL;
}

/*
test.com
Counters

Value  = 2
Access = 1
CounterType = Top100Rambler
*/ 
                        


Twitter
Стоимость:0,2$ за 1000 запросов

Проверка кол-ва упоминаний в Twitter осуществляется через сессии.

Используются методы /session/new и /session/get.

XML для инициализации сессии


<InitSession>
	<Parameters>
		<TaskVariant>Twitter</TaskVariant>
	</Parameters>
	<DomainNames>
		<string>test.com</string>
	</DomainNames>
</InitSession>

Пример ответа сессии


 <Domains>
    <DomainData>
      <DomainName>test.com</DomainName>
      <Values>
        <Data>
          <Parameter>Twitter</Parameter>
          <Value>1040</Value>
        </Data>
      </Values>
    </DomainData>
  </Domains>
<?php

// RDS Api ключ пользователя
$api_key = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx";

// XML для инициализации сессии
$put_data = "
<InitSession>
	<Parameters>
        <TaskVariant>Twitter</TaskVariant>
	</Parameters>
	<DomainNames>
		<string>test.com</string>
	</DomainNames>
</InitSession>";

// Инициализируем запрос для создания сессии
$ch = curl_init("http://recipdonor.com:998/api/session/new");
// Передаем API ключ
curl_setopt($ch, CURLOPT_USERPWD, "{$api_key}:x");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
// При инициализации сессии используется метод PUT
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "PUT");
// Указываем необходимые заголовки
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    "Content-Type: text/xml; charset=utf-8",
    "Content-Length: ".strlen($put_data)));
// Передаем данные для инициализации
curl_setopt($ch, CURLOPT_POSTFIELDS, $put_data);

// Посылаем запрос
$initSessionData = curl_exec($ch);
$responseInfo = curl_getinfo($ch);

if($responseInfo['http_code'] != 200) exit('Wrong request!');

curl_close($ch);

// Обрабатываем пришедший ответ
$sesssionXmlData = new SimpleXMLElement($initSessionData);
// Достаем идентификатор созданой сессии
$sessionId = $sesssionXmlData->Id;

$sessionData = null;
do{
    // Небольшая задержка перед получением данных
    sleep(2);
    // Инициализируем запрос для получения данных сессии
    $ch = curl_init("http://recipdonor.com:998/api/session/get/{$sessionId}");
    // Передаем API ключ
    curl_setopt($ch, CURLOPT_USERPWD, "{$api_key}:x");
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_HTTPHEADER, array("Content-Type: text/xml; charset=utf-8"));

    // Получаем и обрабатываем пришедший ответ
    $response = curl_exec($ch);
    $responseInfo = curl_getinfo($ch);

    if($responseInfo['http_code'] != 200) exit('Wrong request!');

    $sessionData = new SimpleXMLElement($response);
    curl_close($ch);

    // Повоторяем процедуру пока сессия не будет завершена
}while($sessionData->SessionStatus != 'Completed' && $sessionData->SessionStatus != 'Bankrupt');

// Выводим пришедшие данные
foreach($sessionData->Domains->DomainData as $domain)
{
    // Доменное имя
    echo $domain->DomainName.PHP_EOL;

    foreach($domain->Values->Data as $data)
    {
        echo $data->Parameter.PHP_EOL;
        echo $data->Value.PHP_EOL;

        foreach(get_object_vars($data->Value) as $paramKey => $paramValue)
        {
            echo "{$paramKey} = {$paramValue}".PHP_EOL;
        }
    }
    echo PHP_EOL;
}

/*
test.com
Twitter

Twitter = 1040
*/ 
                        


SEMRush
Стоимость:0,2$ за 1000 запросов

Проверка SEMRush рейтинга осуществляется через сессии.

Используются методы /session/new и /session/get.

XML для инициализации сессии


<InitSession>
	<Parameters>
		<TaskVariant>Semrush</TaskVariant>
	</Parameters>
	<DomainNames>
		<string>test.com</string>
	</DomainNames>
</InitSession>

Пример ответа сессии


 <Domains>
    <DomainData>
      <DomainName>test.com</DomainName>
      <Values>
        <Data>
          <Parameter>Semrush</Parameter>
          <Value xsi:type="SemrushApiData">
            <Value>5852</Value>
            <Traffic>7005</Traffic>
            <Costs>6262</Costs>
          </Value>
        </Data>
      </Values>
    </DomainData>
  </Domains>
<?php

// RDS Api ключ пользователя
$api_key = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx";

// XML для инициализации сессии
$put_data = "
<InitSession>
	<Parameters>
        <TaskVariant>Semrush</TaskVariant>
	</Parameters>
	<DomainNames>
		<string>test.com</string>
	</DomainNames>
</InitSession>";

// Инициализируем запрос для создания сессии
$ch = curl_init("http://recipdonor.com:998/api/session/new");
// Передаем API ключ
curl_setopt($ch, CURLOPT_USERPWD, "{$api_key}:x");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
// При инициализации сессии используется метод PUT
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "PUT");
// Указываем необходимые заголовки
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    "Content-Type: text/xml; charset=utf-8",
    "Content-Length: ".strlen($put_data)));
// Передаем данные для инициализации
curl_setopt($ch, CURLOPT_POSTFIELDS, $put_data);

// Посылаем запрос
$initSessionData = curl_exec($ch);
$responseInfo = curl_getinfo($ch);

if($responseInfo['http_code'] != 200) exit('Wrong request!');

curl_close($ch);

// Обрабатываем пришедший ответ
$sesssionXmlData = new SimpleXMLElement($initSessionData);
// Достаем идентификатор созданой сессии
$sessionId = $sesssionXmlData->Id;

$sessionData = null;
do{
    // Небольшая задержка перед получением данных
    sleep(2);
    // Инициализируем запрос для получения данных сессии
    $ch = curl_init("http://recipdonor.com:998/api/session/get/{$sessionId}");
    // Передаем API ключ
    curl_setopt($ch, CURLOPT_USERPWD, "{$api_key}:x");
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_HTTPHEADER, array("Content-Type: text/xml; charset=utf-8"));

    // Получаем и обрабатываем пришедший ответ
    $response = curl_exec($ch);
    $responseInfo = curl_getinfo($ch);

    if($responseInfo['http_code'] != 200) exit('Wrong request!');

    $sessionData = new SimpleXMLElement($response);
    curl_close($ch);

    // Повоторяем процедуру пока сессия не будет завершена
}while($sessionData->SessionStatus != 'Completed' && $sessionData->SessionStatus != 'Bankrupt');

// Выводим пришедшие данные
foreach($sessionData->Domains->DomainData as $domain)
{
    // Доменное имя
    echo $domain->DomainName.PHP_EOL;

    foreach($domain->Values->Data as $data)
    {
        echo $data->Parameter.PHP_EOL;
        echo $data->Value.PHP_EOL;

        foreach(get_object_vars($data->Value) as $paramKey => $paramValue)
        {
            echo "{$paramKey} = {$paramValue}".PHP_EOL;
        }
    }
    echo PHP_EOL;
}

/*
test.com
Semrush

Value = 1040
Traffic = 7005
Costs = 6262
*/ 
                        


Валидатор
Стоимость:0,2$ за 1000 запросов

Проверка валидности страницы осуществляется через сессии.

Используются методы /session/new и /session/get.

XML для инициализации сессии


<InitSession>
	<Parameters>
		<TaskVariant>Validator</TaskVariant>
	</Parameters>
	<DomainNames>
		<string>test.com</string>
	</DomainNames>
</InitSession>

Пример ответа сессии


 <Domains>
    <DomainData>
      <DomainName>test.com</DomainName>
      <Values>
        <Data>
          <Parameter>Validator</Parameter>
          <Value xsi:type="ValidatorApiData">
            <IsValid>false</IsValid>
            <Errors>77</Errors>
            <Warnings>3</Warnings>
          </Value>
        </Data>
      </Values>
    </DomainData>
  </Domains>
<?php

// RDS Api ключ пользователя
$api_key = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx";

// XML для инициализации сессии
$put_data = "
<InitSession>
	<Parameters>
        <TaskVariant>Validator</TaskVariant>
	</Parameters>
	<DomainNames>
		<string>test.com</string>
	</DomainNames>
</InitSession>";

// Инициализируем запрос для создания сессии
$ch = curl_init("http://recipdonor.com:998/api/session/new");
// Передаем API ключ
curl_setopt($ch, CURLOPT_USERPWD, "{$api_key}:x");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
// При инициализации сессии используется метод PUT
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "PUT");
// Указываем необходимые заголовки
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    "Content-Type: text/xml; charset=utf-8",
    "Content-Length: ".strlen($put_data)));
// Передаем данные для инициализации
curl_setopt($ch, CURLOPT_POSTFIELDS, $put_data);

// Посылаем запрос
$initSessionData = curl_exec($ch);
$responseInfo = curl_getinfo($ch);

if($responseInfo['http_code'] != 200) exit('Wrong request!');

curl_close($ch);

// Обрабатываем пришедший ответ
$sesssionXmlData = new SimpleXMLElement($initSessionData);
// Достаем идентификатор созданой сессии
$sessionId = $sesssionXmlData->Id;

$sessionData = null;
do{
    // Небольшая задержка перед получением данных
    sleep(2);
    // Инициализируем запрос для получения данных сессии
    $ch = curl_init("http://recipdonor.com:998/api/session/get/{$sessionId}");
    // Передаем API ключ
    curl_setopt($ch, CURLOPT_USERPWD, "{$api_key}:x");
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_HTTPHEADER, array("Content-Type: text/xml; charset=utf-8"));

    // Получаем и обрабатываем пришедший ответ
    $response = curl_exec($ch);
    $responseInfo = curl_getinfo($ch);

    if($responseInfo['http_code'] != 200) exit('Wrong request!');

    $sessionData = new SimpleXMLElement($response);
    curl_close($ch);

    // Повоторяем процедуру пока сессия не будет завершена
}while($sessionData->SessionStatus != 'Completed' && $sessionData->SessionStatus != 'Bankrupt');

// Выводим пришедшие данные
foreach($sessionData->Domains->DomainData as $domain)
{
    // Доменное имя
    echo $domain->DomainName.PHP_EOL;

    foreach($domain->Values->Data as $data)
    {
        echo $data->Parameter.PHP_EOL;
        echo $data->Value.PHP_EOL;

        foreach(get_object_vars($data->Value) as $paramKey => $paramValue)
        {
            echo "{$paramKey} = {$paramValue}".PHP_EOL;
        }
    }
    echo PHP_EOL;
}

/*
test.com
Validator

IsValid = false
Errors = 77
Warnings = 3
*/ 
                        


Я.Блог
Стоимость:0,2$ за 1000 запросов

Проверка кол-ва упоминаний в Я.Блогах осуществляется через сессии.

Используются методы /session/new и /session/get.

XML для инициализации сессии


<InitSession>
	<Parameters>
		<TaskVariant>YaBlog</TaskVariant>
	</Parameters>
	<DomainNames>
		<string>test.com</string>
	</DomainNames>
</InitSession>

Пример ответа сессии


 <Domains>
    <DomainData>
      <DomainName>test.com</DomainName>
      <Values>
        <Data>
          <Parameter>YaBlog</Parameter>
          <Value xsi:type="xsd:int">203</Value>
        </Data>
      </Values>
    </DomainData>
  </Domains>
<?php

// RDS Api ключ пользователя
$api_key = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx";

// XML для инициализации сессии
$put_data = "
<InitSession>
	<Parameters>
        <TaskVariant>YaBlog</TaskVariant>
	</Parameters>
	<DomainNames>
		<string>test.com</string>
	</DomainNames>
</InitSession>";

// Инициализируем запрос для создания сессии
$ch = curl_init("http://recipdonor.com:998/api/session/new");
// Передаем API ключ
curl_setopt($ch, CURLOPT_USERPWD, "{$api_key}:x");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
// При инициализации сессии используется метод PUT
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "PUT");
// Указываем необходимые заголовки
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    "Content-Type: text/xml; charset=utf-8",
    "Content-Length: ".strlen($put_data)));
// Передаем данные для инициализации
curl_setopt($ch, CURLOPT_POSTFIELDS, $put_data);

// Посылаем запрос
$initSessionData = curl_exec($ch);
$responseInfo = curl_getinfo($ch);

if($responseInfo['http_code'] != 200) exit('Wrong request!');

curl_close($ch);

// Обрабатываем пришедший ответ
$sesssionXmlData = new SimpleXMLElement($initSessionData);
// Достаем идентификатор созданой сессии
$sessionId = $sesssionXmlData->Id;

$sessionData = null;
do{
    // Небольшая задержка перед получением данных
    sleep(2);
    // Инициализируем запрос для получения данных сессии
    $ch = curl_init("http://recipdonor.com:998/api/session/get/{$sessionId}");
    // Передаем API ключ
    curl_setopt($ch, CURLOPT_USERPWD, "{$api_key}:x");
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_HTTPHEADER, array("Content-Type: text/xml; charset=utf-8"));

    // Получаем и обрабатываем пришедший ответ
    $response = curl_exec($ch);
    $responseInfo = curl_getinfo($ch);

    if($responseInfo['http_code'] != 200) exit('Wrong request!');

    $sessionData = new SimpleXMLElement($response);
    curl_close($ch);

    // Повоторяем процедуру пока сессия не будет завершена
}while($sessionData->SessionStatus != 'Completed' && $sessionData->SessionStatus != 'Bankrupt');

// Выводим пришедшие данные
foreach($sessionData->Domains->DomainData as $domain)
{
    // Доменное имя
    echo $domain->DomainName.PHP_EOL;

    foreach($domain->Values->Data as $data)
    {
        echo $data->Parameter.PHP_EOL;
        echo $data->Value.PHP_EOL;

        foreach(get_object_vars($data->Value) as $paramKey => $paramValue)
        {
            echo "{$paramKey} = {$paramValue}".PHP_EOL;
        }
    }
    echo PHP_EOL;
}

/*
test.com
YaBlog

Value = 203
*/ 
                        


MJ
Стоимость:0,2$ за 1000 запросов

Проверка кол-ва входящих ссылок на сайт по MajesticSeo.com осуществляется через сессии.

Используются методы /session/new и /session/get.

XML для инициализации сессии


<InitSession>
	<Parameters>
		<TaskVariant>Majestic</TaskVariant>
	</Parameters>
	<DomainNames>
		<string>test.com</string>
	</DomainNames>
</InitSession>

Пример ответа сессии


 <Domains>
    <DomainData>
      <DomainName>test.com</DomainName>
      <Values>
        <Data>
          <Parameter>Majestic</Parameter>
          <Value xsi:type="xsd:int">60949</Value>
        </Data>
      </Values>
    </DomainData>
  </Domains>
<?php

// RDS Api ключ пользователя
$api_key = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx";

// XML для инициализации сессии
$put_data = "
<InitSession>
	<Parameters>
        <TaskVariant>Majestic</TaskVariant>
	</Parameters>
	<DomainNames>
		<string>test.com</string>
	</DomainNames>
</InitSession>";

// Инициализируем запрос для создания сессии
$ch = curl_init("http://recipdonor.com:998/api/session/new");
// Передаем API ключ
curl_setopt($ch, CURLOPT_USERPWD, "{$api_key}:x");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
// При инициализации сессии используется метод PUT
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "PUT");
// Указываем необходимые заголовки
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    "Content-Type: text/xml; charset=utf-8",
    "Content-Length: ".strlen($put_data)));
// Передаем данные для инициализации
curl_setopt($ch, CURLOPT_POSTFIELDS, $put_data);

// Посылаем запрос
$initSessionData = curl_exec($ch);
$responseInfo = curl_getinfo($ch);

if($responseInfo['http_code'] != 200) exit('Wrong request!');

curl_close($ch);

// Обрабатываем пришедший ответ
$sesssionXmlData = new SimpleXMLElement($initSessionData);
// Достаем идентификатор созданой сессии
$sessionId = $sesssionXmlData->Id;

$sessionData = null;
do{
    // Небольшая задержка перед получением данных
    sleep(2);
    // Инициализируем запрос для получения данных сессии
    $ch = curl_init("http://recipdonor.com:998/api/session/get/{$sessionId}");
    // Передаем API ключ
    curl_setopt($ch, CURLOPT_USERPWD, "{$api_key}:x");
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_HTTPHEADER, array("Content-Type: text/xml; charset=utf-8"));

    // Получаем и обрабатываем пришедший ответ
    $response = curl_exec($ch);
    $responseInfo = curl_getinfo($ch);

    if($responseInfo['http_code'] != 200) exit('Wrong request!');

    $sessionData = new SimpleXMLElement($response);
    curl_close($ch);

    // Повоторяем процедуру пока сессия не будет завершена
}while($sessionData->SessionStatus != 'Completed' && $sessionData->SessionStatus != 'Bankrupt');

// Выводим пришедшие данные
foreach($sessionData->Domains->DomainData as $domain)
{
    // Доменное имя
    echo $domain->DomainName.PHP_EOL;

    foreach($domain->Values->Data as $data)
    {
        echo $data->Parameter.PHP_EOL;
        echo $data->Value.PHP_EOL;

        foreach(get_object_vars($data->Value) as $paramKey => $paramValue)
        {
            echo "{$paramKey} = {$paramValue}".PHP_EOL;
        }
    }
    echo PHP_EOL;
}

/*
test.com
Majestic

Value = 60949
*/ 
                        


Индекс S
Стоимость:0,2$ за 1000 запросов

Проверка Индекс Solomono осуществляется через сессии.

Используются методы /session/new и /session/get.

XML для инициализации сессии


<InitSession>
	<Parameters>
		<TaskVariant>Solomono</TaskVariant>
	</Parameters>
	<DomainNames>
		<string>test.com</string>
	</DomainNames>
</InitSession>

Пример ответа сессии


 <Domains>
    <DomainData>
      <DomainName>test.com</DomainName>
      <Values>
        <Data>
          <Parameter>Solomono</Parameter>
          <Value xsi:type="SolomonoApiData">
            <Value>0</Value>
            <LinksIn>374</LinksIn>
            <LinksOut>0</LinksOut>
          </Value>
        </Data>
      </Values>
    </DomainData>
  </Domains>
<?php

// RDS Api ключ пользователя
$api_key = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx";

// XML для инициализации сессии
$put_data = "
<InitSession>
	<Parameters>
        <TaskVariant>Solomono</TaskVariant>
	</Parameters>
	<DomainNames>
		<string>test.com</string>
	</DomainNames>
</InitSession>";

// Инициализируем запрос для создания сессии
$ch = curl_init("http://recipdonor.com:998/api/session/new");
// Передаем API ключ
curl_setopt($ch, CURLOPT_USERPWD, "{$api_key}:x");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
// При инициализации сессии используется метод PUT
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "PUT");
// Указываем необходимые заголовки
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    "Content-Type: text/xml; charset=utf-8",
    "Content-Length: ".strlen($put_data)));
// Передаем данные для инициализации
curl_setopt($ch, CURLOPT_POSTFIELDS, $put_data);

// Посылаем запрос
$initSessionData = curl_exec($ch);
$responseInfo = curl_getinfo($ch);

if($responseInfo['http_code'] != 200) exit('Wrong request!');

curl_close($ch);

// Обрабатываем пришедший ответ
$sesssionXmlData = new SimpleXMLElement($initSessionData);
// Достаем идентификатор созданой сессии
$sessionId = $sesssionXmlData->Id;

$sessionData = null;
do{
    // Небольшая задержка перед получением данных
    sleep(2);
    // Инициализируем запрос для получения данных сессии
    $ch = curl_init("http://recipdonor.com:998/api/session/get/{$sessionId}");
    // Передаем API ключ
    curl_setopt($ch, CURLOPT_USERPWD, "{$api_key}:x");
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_HTTPHEADER, array("Content-Type: text/xml; charset=utf-8"));

    // Получаем и обрабатываем пришедший ответ
    $response = curl_exec($ch);
    $responseInfo = curl_getinfo($ch);

    if($responseInfo['http_code'] != 200) exit('Wrong request!');

    $sessionData = new SimpleXMLElement($response);
    curl_close($ch);

    // Повоторяем процедуру пока сессия не будет завершена
}while($sessionData->SessionStatus != 'Completed' && $sessionData->SessionStatus != 'Bankrupt');

// Выводим пришедшие данные
foreach($sessionData->Domains->DomainData as $domain)
{
    // Доменное имя
    echo $domain->DomainName.PHP_EOL;

    foreach($domain->Values->Data as $data)
    {
        echo $data->Parameter.PHP_EOL;
        echo $data->Value.PHP_EOL;

        foreach(get_object_vars($data->Value) as $paramKey => $paramValue)
        {
            echo "{$paramKey} = {$paramValue}".PHP_EOL;
        }
    }
    echo PHP_EOL;
}

/*
test.com
Solomono

Value = 0
LinksIn = 374
LinksOut = 0
*/ 
                        


Рейтинг Я.Б.
Стоимость:0,2$ за 1000 запросов

Проверка авторитетности блога по Я.Блогам осуществляется через сессии.

Используются методы /session/new и /session/get.

XML для инициализации сессии


<InitSession>
	<Parameters>
		<TaskVariant>RatingBlog</TaskVariant>
	</Parameters>
	<DomainNames>
		<string>test.com</string>
	</DomainNames>
</InitSession>

Пример ответа сессии


 <Domains>
    <DomainData>
      <DomainName>test.com</DomainName>
      <Values>
        <Data>
          <Parameter>RatingBlog</Parameter>          
          <Value xsi:type="RatingBlogApiData">
            <Value>-666</Value>
            <Readers>0</Readers>
          </Value>
        </Data>
      </Values>
    </DomainData>
  </Domains>
<?php

// RDS Api ключ пользователя
$api_key = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx";

// XML для инициализации сессии
$put_data = "
<InitSession>
	<Parameters>
        <TaskVariant>RatingBlog</TaskVariant>
	</Parameters>
	<DomainNames>
		<string>test.com</string>
	</DomainNames>
</InitSession>";

// Инициализируем запрос для создания сессии
$ch = curl_init("http://recipdonor.com:998/api/session/new");
// Передаем API ключ
curl_setopt($ch, CURLOPT_USERPWD, "{$api_key}:x");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
// При инициализации сессии используется метод PUT
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "PUT");
// Указываем необходимые заголовки
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    "Content-Type: text/xml; charset=utf-8",
    "Content-Length: ".strlen($put_data)));
// Передаем данные для инициализации
curl_setopt($ch, CURLOPT_POSTFIELDS, $put_data);

// Посылаем запрос
$initSessionData = curl_exec($ch);
$responseInfo = curl_getinfo($ch);

if($responseInfo['http_code'] != 200) exit('Wrong request!');

curl_close($ch);

// Обрабатываем пришедший ответ
$sesssionXmlData = new SimpleXMLElement($initSessionData);
// Достаем идентификатор созданой сессии
$sessionId = $sesssionXmlData->Id;

$sessionData = null;
do{
    // Небольшая задержка перед получением данных
    sleep(2);
    // Инициализируем запрос для получения данных сессии
    $ch = curl_init("http://recipdonor.com:998/api/session/get/{$sessionId}");
    // Передаем API ключ
    curl_setopt($ch, CURLOPT_USERPWD, "{$api_key}:x");
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_HTTPHEADER, array("Content-Type: text/xml; charset=utf-8"));

    // Получаем и обрабатываем пришедший ответ
    $response = curl_exec($ch);
    $responseInfo = curl_getinfo($ch);

    if($responseInfo['http_code'] != 200) exit('Wrong request!');

    $sessionData = new SimpleXMLElement($response);
    curl_close($ch);

    // Повоторяем процедуру пока сессия не будет завершена
}while($sessionData->SessionStatus != 'Completed' && $sessionData->SessionStatus != 'Bankrupt');

// Выводим пришедшие данные
foreach($sessionData->Domains->DomainData as $domain)
{
    // Доменное имя
    echo $domain->DomainName.PHP_EOL;

    foreach($domain->Values->Data as $data)
    {
        echo $data->Parameter.PHP_EOL;
        echo $data->Value.PHP_EOL;

        foreach(get_object_vars($data->Value) as $paramKey => $paramValue)
        {
            echo "{$paramKey} = {$paramValue}".PHP_EOL;
        }
    }
    echo PHP_EOL;
}

/*
test.com
RatingBlog

Value = -666
Readers = 0
*/ 
                        


Семантическое ядро сайта
Стоимость:0,05$ за 1000 запросов

Сбор семантического ядра осуществляется через сессии.

Используются методы /session/new и /session/get.

XML для инициализации сессии


<InitSession>
  <Parameters>
    <TaskVariant>SemanticNew</TaskVariant>
  </Parameters>
  <DomainNames>
    <SemanticData>
      <Type>Auto</Type>
      <Queries><string>avto</string></Queries>
      <MinRate>5</MinRate>
      <MaxResults>10</MaxResults>
    </SemanticData>
  </DomainNames>
</InitSession>

Пример ответа сессии


 <Domains>
  <DomainData IsValid="true"><DomainName>avto</DomainName>
    <Values>
      <Data>
      <Parameter>SemanticNew</Parameter>
      <Value xsi:type="SemanticApiData">
        <Items>
          <SemanticApiResult><Query>avto</Query><TotalFound>2255</TotalFound>
            <Items>
              <SemanticApiItem><Text>avto ru</Text><Frequency>6458</Frequency></SemanticApiItem>
              <SemanticApiItem><Text>www avtobazar euro ru</Text><Frequency>1868</Frequency></SemanticApiItem>
              <SemanticApiItem><Text>avto ge</Text><Frequency>1554</Frequency></SemanticApiItem>
              <SemanticApiItem><Text>avto936 fdnjirjkf wtys</Text><Frequency>1163</Frequency></SemanticApiItem>
              <SemanticApiItem><Text>avto ria ua</Text><Frequency>791</Frequency>
              </SemanticApiItem><SemanticApiItem><Text>www avto ru</Text><Frequency>779</Frequency></SemanticApiItem>
              <SemanticApiItem><Text>avto geo</Text><Frequency>764</Frequency></SemanticApiItem>
              <SemanticApiItem><Text>avto64 ru</Text><Frequency>623</Frequency></SemanticApiItem>
              <SemanticApiItem><Text>avto</Text><Frequency>509</Frequency></SemanticApiItem>
              <SemanticApiItem><Text>avtobomba ru</Text><Frequency>489</Frequency></SemanticApiItem>
            </Items>
          </SemanticApiResult>
        </Items>
      </Value>
      </Data>
    </Values>
  </DomainData>
</Domains>
<?php

// RDS Api ключ пользователя
$api_key = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx";

// XML для инициализации сессии
$put_data = "
<InitSession>
  <Parameters>
    <TaskVariant>SemanticNew</TaskVariant>
  </Parameters>
  <DomainNames>
    <SemanticData>
      <Type>Auto</Type>
      <Queries><string>avto</string></Queries>
      <MinRate>5</MinRate>
      <MaxResults>10</MaxResults>
    </SemanticData>
  </DomainNames>
</InitSession>";

// Инициализируем запрос для создания сессии
$ch = curl_init("http://recipdonor.com:998/api/session/new");
// Передаем API ключ
curl_setopt($ch, CURLOPT_USERPWD, "{$api_key}:x");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
// При инициализации сессии используется метод PUT
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "PUT");
// Указываем необходимые заголовки
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    "Content-Type: text/xml; charset=utf-8",
    "Content-Length: ".strlen($put_data)));
// Передаем данные для инициализации
curl_setopt($ch, CURLOPT_POSTFIELDS, $put_data);

// Посылаем запрос
$initSessionData = curl_exec($ch);
$responseInfo = curl_getinfo($ch);

if($responseInfo['http_code'] != 200) exit('Wrong request!');

curl_close($ch);

// Обрабатываем пришедший ответ
$sesssionXmlData = new SimpleXMLElement($initSessionData);
// Достаем идентификатор созданой сессии
$sessionId = $sesssionXmlData->Id;

$sessionData = null;
do{
    // Небольшая задержка перед получением данных
    sleep(2);
    // Инициализируем запрос для получения данных сессии
    $ch = curl_init("http://recipdonor.com:998/api/session/get/{$sessionId}");
    // Передаем API ключ
    curl_setopt($ch, CURLOPT_USERPWD, "{$api_key}:x");
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_HTTPHEADER, array("Content-Type: text/xml; charset=utf-8"));

    // Получаем и обрабатываем пришедший ответ
    $response = curl_exec($ch);
    $responseInfo = curl_getinfo($ch);

    if($responseInfo['http_code'] != 200) exit('Wrong request!');

    $sessionData = new SimpleXMLElement($response);
    curl_close($ch);

    // Повоторяем процедуру пока сессия не будет завершена
}while($sessionData->SessionStatus != 'Completed' && $sessionData->SessionStatus != 'Bankrupt');

// Выводим пришедшие данные
foreach($sessionData->Domains->DomainData as $domain)
{
    // Доменное имя
    echo $domain->DomainName.PHP_EOL;    

    foreach($domain->Values->Data as $data)
    {
        echo $data->Parameter.PHP_EOL;        
        
        foreach (get_object_vars($data->Value->Items->SemanticApiResult) as $item => $itemValue){
			
        	if($item == "Items"){
        		foreach($itemValue as $paramKey => $paramValue)
        		{
        			echo "{$paramKey} = {$paramValue->Text} - {$paramValue->Frequency}".PHP_EOL;
        		}
        		continue;
        	}
        	
        	echo $item . " - " . $itemValue.PHP_EOL;
	        
        }
    }
    echo PHP_EOL;
}

/*
avto
SemanticNew
Query - avto
TotalFound - 2255
SemanticApiItem = avto ru - 6458
SemanticApiItem = www avtobazar euro ru - 1868
SemanticApiItem = avto ge - 1554
SemanticApiItem = avto936 fdnjirjkf wtys - 1163
SemanticApiItem = avto ria ua - 791
SemanticApiItem = www avto ru - 779
SemanticApiItem = avto geo - 764
SemanticApiItem = avto64 ru - 623
SemanticApiItem = avto - 509
SemanticApiItem = avtobomba ru - 489
*/ 
                        


Позиции сайта
Стоимость:0,3$ за 1000 запросов

Проверка позиций сайта осуществляется через сессии.

Используются методы /session/new и /session/get.

XML для инициализации сессии


<InitSession>
  <Parameters>
    <TaskVariant>Positions</TaskVariant>
  </Parameters>
  <DomainNames>
    <PositionsData>
      <Domain>test.com</Domain>
      <MaxResults>10</MaxResults>
    </PositionsData>
  </DomainNames>
</InitSession>

Пример ответа сессии


<Domains>
  <DomainData>
    <DomainName>test.com</DomainName>
    <Values>
      <Data>
        <Parameter>Positions</Parameter>
        <Value xsi:type="PositionsApiData">
          <Items>
            <PositionsApiResult>
              <Url>test.com/</Url><Request>test</Request><Frequency>5215</Frequency>
              <Positions>
                <PositionApiItem><Value>1</Value><Region>GoogleMoscow</Region></PositionApiItem>
              </Positions>
            </PositionsApiResult>
            <PositionsApiResult>
              <Url>test.com/</Url><Request>title test</Request><Frequency>153</Frequency>
              <Positions>
                <PositionApiItem><Value>1</Value><Region>GoogleMoscow</Region></PositionApiItem>
              </Positions>
            </PositionsApiResult>
            <PositionsApiResult>
              <Url>test.com/</Url><Request>tester com</Request><Frequency>100</Frequency>
              <Positions>
                <PositionApiItem><Value>6</Value><Region>GoogleMoscow</Region></PositionApiItem>
              </Positions>  
            </PositionsApiResult>
            <PositionsApiResult>
              <Url>test.com/</Url><Request>test com</Request><Frequency>62</Frequency>
              <Positions>
                <PositionApiItem><Value>1</Value><Region>GoogleMoscow</Region></PositionApiItem>
              </Positions>  
            </PositionsApiResult>
            <PositionsApiResult>
              <Url>test.com/</Url><Request>еуые</Request><Frequency>41</Frequency>
              <Positions>
                <PositionApiItem><Value>1</Value><Region>GoogleMoscow</Region></PositionApiItem>
              </Positions>
            </PositionsApiResult>
            <PositionsApiResult>
              <Url>test.com/</Url><Request>1001pp ru контакты</Request><Frequency>33</Frequency>
              <Positions>
                <PositionApiItem><Value>48</Value><Region>YandexMoscow</Region></PositionApiItem>
              </Positions>  
            </PositionsApiResult>
            <PositionsApiResult>
              <Url>test.com/</Url><Request>1001pp ru адрес</Request><Frequency>28</Frequency>
              <Positions>
                <PositionApiItem><Value>41</Value><Region>YandexMoscow</Region></PositionApiItem>
              </Positions>  
            </PositionsApiResult>
          </Items>
          <TotalFound>7</TotalFound>
        </Value>
      </Data> 
    </Values>
  </DomainData>
</Domains>
<?php

// RDS Api ключ пользователя
$api_key = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx";

// XML для инициализации сессии
$put_data = "
<InitSession>
  <Parameters>
    <TaskVariant>Positions</TaskVariant>
  </Parameters>
  <DomainNames>
    <PositionsData>
      <Domain>test.com</Domain>
      <MaxResults>10</MaxResults>
    </PositionsData>
  </DomainNames>
</InitSession>";

// Инициализируем запрос для создания сессии
$ch = curl_init("http://recipdonor.com:998/api/session/new");
// Передаем API ключ
curl_setopt($ch, CURLOPT_USERPWD, "{$api_key}:x");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
// При инициализации сессии используется метод PUT
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "PUT");
// Указываем необходимые заголовки
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    "Content-Type: text/xml; charset=utf-8",
    "Content-Length: ".strlen($put_data)));
// Передаем данные для инициализации
curl_setopt($ch, CURLOPT_POSTFIELDS, $put_data);

// Посылаем запрос
$initSessionData = curl_exec($ch);
$responseInfo = curl_getinfo($ch);

if($responseInfo['http_code'] != 200) exit('Wrong request!');

curl_close($ch);

// Обрабатываем пришедший ответ
$sesssionXmlData = new SimpleXMLElement($initSessionData);
// Достаем идентификатор созданой сессии
$sessionId = $sesssionXmlData->Id;

$sessionData = null;
do{
    // Небольшая задержка перед получением данных
    sleep(2);
    // Инициализируем запрос для получения данных сессии
    $ch = curl_init("http://recipdonor.com:998/api/session/get/{$sessionId}");
    // Передаем API ключ
    curl_setopt($ch, CURLOPT_USERPWD, "{$api_key}:x");
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_HTTPHEADER, array("Content-Type: text/xml; charset=utf-8"));

    // Получаем и обрабатываем пришедший ответ
    $response = curl_exec($ch);
    $responseInfo = curl_getinfo($ch);

    if($responseInfo['http_code'] != 200) exit('Wrong request!');

    $sessionData = new SimpleXMLElement($response);
    curl_close($ch);

    // Повоторяем процедуру пока сессия не будет завершена
}while($sessionData->SessionStatus != 'Completed' && $sessionData->SessionStatus != 'Bankrupt');

// Выводим пришедшие данные
foreach($sessionData->Domains->DomainData as $domain)
{
    // Доменное имя
    echo $domain->DomainName.PHP_EOL;    

    foreach($domain->Values->Data as $data)
    {
        echo $data->Parameter.PHP_EOL;                
        foreach (get_object_vars($data->Value->Items) as $item => $itemValue){	        	
        	if($item == "PositionsApiResult"){        		
        		foreach ($itemValue as $value => $valueValue) {        			
        			echo $valueValue->Url." - ".$valueValue->Request." - ".$valueValue->Frequency.PHP_EOL;
        			foreach($valueValue->Positions as $position)
        			{
        				echo "{$position->PositionApiItem->Region} = {$position->PositionApiItem->Value}".PHP_EOL;
        			}
        		}        		
        		continue;
        	}
        	echo $item . " - " . $itemValue.PHP_EOL;
        }
    }
    echo PHP_EOL;
}

/*
test.com
Positions
test.com/ - test - 5215
GoogleMoscow = 1
test.com/ - title test - 153
GoogleMoscow = 1
test.com/ - tester com - 100
GoogleMoscow = 6
test.com/ - test com - 62
GoogleMoscow = 1
test.com/ - еуые - 41
GoogleMoscow = 1
test.com/ - 1001pp ru контакты - 33
YandexMoscow = 48
test.com/ - 1001pp ru адрес - 28
YandexMoscow = 41
*/ 
                        


Поиск по WebMoney данным
Стоимость:10,0$ за 1000 запросов

Получить WebMoney Id для сайтов можно используя API функцию wmidsbysite.

Перед выполнением можно получить кол-во значений в базе для вычисления стоимости запроса wmidsbysite/count.

Получить сайты для WebMoney Id можно используя API функцию sitesbywmid.

Перед выполнением можно получить кол-во значений в базе для вычисления стоимости запроса sitesbywmid/count/bulk.

Пример запроса получения WebMoney Id для сайтов

Параметр "Count" может быть упущен и тогда возвратятся все возможные результаты.


POST /api/wmidsbysite HTTP/1.1
Authorization: Basic RjkxNjhDNUUtQ0VCMi00ZmFhLUI2QkYtMzI5QkYzOUZBMUU0Ong=
Content-Type: text/xml; charset=utf-8
Host: recipdonor.com:998

<ArrayOfInitWmId>
<InitWmId>
<Url>test.com</Url>
<MaxCount xsi:nil=\"true\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\"/>
</InitWmId>
<InitWmId>
<Url>test2.com</Url>
<MaxCount>1</MaxCount>
</InitWmId>
</ArrayOfInitWmId>

Получаем ответ


<ArrayOfUrlWmIdsApiItem>
<UrlWmIdsApiItem>
<Url>test.com</Url>
<WmIds>
<long>111111111111</long>
<long>999999999999</long>
</WmIds>
<ResultsCount>
2
</ResultsCount>
</UrlWmIdsApiItem>
<UrlWmIdsApiItem>
<Url>test2.com</Url>
<WmIds>
<long>222222222222</long>
</WmIds>
<ResultsCount>
1
</ResultsCount>
</UrlWmIdsApiItem>
</ArrayOfUrlWmIdsApiItem>
<?php
// RDS Api ключ пользователя
$api_key = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx";

// Формируем XML
$post_data = "
<ArrayOfInitWmId>
<InitWmId>
<Url>test.com</Url>
<MaxCount xsi:nil=\"true\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\"/>
</InitWmId>
<InitWmId>
<Url>test2.com</Url>
<MaxCount>1</MaxCount>
</InitWmId>
</ArrayOfInitWmId>
";

// Инициализируем запрос для создания сессии
$ch = curl_init("http://recipdonor.com:998/api/wmidsbysite");
// Передаем API ключ
curl_setopt($ch, CURLOPT_USERPWD, "{$api_key}:x");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
// При инициализации сессии используется метод PUT
curl_setopt($ch, CURLOPT_POST, true);
// Указываем необходимые заголовки
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    "Content-Type: text/xml; charset=utf-8",
    "Content-Length: ".strlen($post_data)));
// Передаем данные для инициализации
curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data);

// Посылаем запрос
$wmData = curl_exec($ch);
$responseInfo = curl_getinfo($ch);
if($responseInfo['http_code'] != 200) exit('Wrong request!');

curl_close($ch);

// Обрабатываем пришедший ответ
$wmXmlData = new SimpleXMLElement($wmData);


foreach($wmXmlData as $wmItem)
{
    echo "{$wmItem->Url} - {$wmItem->WmIds}".PHP_EOL;
} 
                        


Занятость доменного имени
Стоимость:0,3$ за 1000 запросов

Проверить занятость доменного имени в других доменных зонах можно используя API функцию domainemployment.


POST /api/domainemployment/test.com HTTP/1.1
Authorization: Basic RjkxNjhDNUUtQ0VCMi00ZmFhLUI2QkYtMzI5QkYzOUZBMUU0Ong=
Content-Type: text/xml; charset=utf-8
Host: recipdonor.com:998

Получаем ответ


<ArrayOfString>
<string>test.su</string>
<string>test.org.ua</string>
<string>test.ru</string>
<string>test.dn.ua</string>
<string>test.msk.ru</string>
<string>test.de</string>
</ArrayOfString>
<?php
// RDS Api ключ пользователя
$api_key = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx";
$url = "test.com";

// Инициализируем запрос для создания сессии
$ch = curl_init("http://recipdonor.com:998/api/domainemployment/".$url);
// Передаем API ключ
curl_setopt($ch, CURLOPT_USERPWD, "{$api_key}:x");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
// При инициализации сессии используется метод PUT
curl_setopt($ch, CURLOPT_GET, true);
// Указываем необходимые заголовки
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    "Content-Type: text/xml; charset=utf-8"));
// Передаем данные для инициализации

// Посылаем запрос
$deData = curl_exec($ch);
$responseInfo = curl_getinfo($ch);
if($responseInfo['http_code'] != 200) exit('Wrong request!');

curl_close($ch);

// Обрабатываем пришедший ответ
$deXmlData = new SimpleXMLElement($deData);


foreach($deXmlData as $deItem)
{
    echo "{$deItem}".PHP_EOL;
} 
                        


Индекс Я раздел
Стоимость:0,2$ за 1000 запросов

Проверка Индекс Я раздел осуществляется через сессии.

Используются методы /session/new и /session/get.

XML для инициализации сессии


<InitSession>
	<Parameters>
		<TaskVariant>IYChapter</TaskVariant>
	</Parameters>
	<DomainNames>
		<string>google.com</string>
		<string>msdn.microsoft.com</string>
	</DomainNames>
</InitSession>

Пример ответа сессии


<Domains>
	<DomainData>
		<DomainName>google.com</DomainName>
		<Values><Data>
			<Parameter>IYChapter</Parameter>
			<Value xsi:type="xsd:int">461000</Value> <!-- значение Индекс Я раздел -->
		</Data></Values>
	</DomainData>
	<DomainData>
		<DomainName>msdn.microsoft.com</DomainName>
		<Values><Data>
			<Parameter>IY</Parameter>
			<Value xsi:type="xsd:int">347000</Value> <!-- значение Индекс Я раздел -->
		</Data></Values>
	</DomainData>
</Domains>
<?php

// RDS Api ключ пользователя
$api_key = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx";

// XML для инициализации сессии
$put_data = "
<InitSession>
	<Parameters>
        <TaskVariant>IYChapter</TaskVariant>
	</Parameters>
	<DomainNames>
		<string>google.com</string>
		<string>msdn.microsoft.com</string>
	</DomainNames>
</InitSession>";

// Инициализируем запрос для создания сессии
$ch = curl_init("http://recipdonor.com:998/api/session/new");
// Передаем API ключ
curl_setopt($ch, CURLOPT_USERPWD, "{$api_key}:x");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
// При инициализации сессии используется метод PUT
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "PUT");
// Указываем необходимые заголовки
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    "Content-Type: text/xml; charset=utf-8",
    "Content-Length: ".strlen($put_data)));
// Передаем данные для инициализации
curl_setopt($ch, CURLOPT_POSTFIELDS, $put_data);

// Посылаем запрос
$initSessionData = curl_exec($ch);
$responseInfo = curl_getinfo($ch);

if($responseInfo['http_code'] != 200) exit('Wrong request!');

curl_close($ch);

// Обрабатываем пришедший ответ
$sesssionXmlData = new SimpleXMLElement($initSessionData);
// Достаем идентификатор созданой сессии
$sessionId = $sesssionXmlData->Id;

$sessionData = null;
do{
    // Небольшая задержка перед получением данных
    sleep(2);
    // Инициализируем запрос для получения данных сессии
    $ch = curl_init("http://recipdonor.com:998/api/session/get/{$sessionId}");
    // Передаем API ключ
    curl_setopt($ch, CURLOPT_USERPWD, "{$api_key}:x");
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_HTTPHEADER, array("Content-Type: text/xml; charset=utf-8"));

    // Получаем и обрабатываем пришедший ответ
    $response = curl_exec($ch);
    $responseInfo = curl_getinfo($ch);

    if($responseInfo['http_code'] != 200) exit('Wrong request!');

    $sessionData = new SimpleXMLElement($response);
    curl_close($ch);

    // Повоторяем процедуру пока сессия не будет завершена
}while($sessionData->SessionStatus != 'Completed' && $sessionData->SessionStatus != 'Bankrupt');

// Выводим пришедшие данные
foreach($sessionData->Domains->DomainData as $domain)
{
    // Доменное имя
    echo $domain->DomainName.PHP_EOL;

    foreach($domain->Values->Data as $data)
    {
        echo $data->Parameter.PHP_EOL;
        echo $data->Value.PHP_EOL;

        foreach(get_object_vars($data->Value) as $paramKey => $paramValue)
        {
            echo "{$paramKey} = {$paramValue}".PHP_EOL;
        }
    }
    echo PHP_EOL;
}

/* 
google.com
IY
461000

msdn.microsoft.com
IY
347000
 */ 
                        


Проверка позиций сайта
Стоимость:0,3$ за 1000 запросов

Проверка позиций сайта осуществляется через сессии.

Используются методы /session/new и /session/get.

XML для инициализации сессии


<InitSession>
  <Parameters>
    <TaskVariant>PositionsCheck</TaskVariant>
  </Parameters>
  <DomainNames>
    <PositionsCheckData>
      <Domain>talks.su</Domain>
      <Region>YandexMoscow</Region>
      <Request>новости украина</Request>
      <AllResults>true</AllResults>
      <MaxNesting>3</MaxNesting>
    </PositionsCheckData>
  </DomainNames>
</InitSession>

Domain - анализируемые домен, Region - регион, по которому осуществляется проверка, Request - запрос, AllResults - флаг, отвечающий за показ всех результатов либо только позиции данного домена, MaxNesting - максимальная глубина поиска.

На данный момент доступны следующие регионы - для Яндекса: Москва(YandexMoscow), Киев(YandexKiev), Одесса(YandexOdessa), Донецк(YandexDonetsk), Днепропетровск(YandexDnepr), Харьков(YandexXarkov), Санкт-Петербург(YandexPiter), Екатерингбург(YandexEkaterinburg), Минск(YandexMinsk); для Google - Москва(GoogleMoscow), Киев(GoogleKiev).

Пример ответа сессии


 <Domains>
    <DomainData>      
      <DomainName>talks.su</DomainName>
      <Values>
        <Data>
          <Parameter>PositionsCheck</Parameter>
          <Value xsi:type="PositionsCheckApiData">
            <Domain>talks.su</Domain>
            <Region>YandexMoscow</Region>
            <Request>новости украина</Request>
            <Items>
              <PositionsCheckApiItem>
                <Position>1</Position>
                <Url>newsukraine.com.ua/</Url>
              </PositionsCheckApiItem>
              <PositionsCheckApiItem>
                <Position>2</Position>
                <Url>ua.rian.ru/</Url>
              </PositionsCheckApiItem>
              <PositionsCheckApiItem>
                <Position>3</Position>
                <Url>ukr.net/index.php</Url>
              </PositionsCheckApiItem>
              <PositionsCheckApiItem>
                <Position>4</Position>
                <Url>korrespondent.net/ukraine</Url>
              </PositionsCheckApiItem>
              <PositionsCheckApiItem>
                <Position>5</Position>
                <Url>novostiukrainy.ru/</Url>
              </PositionsCheckApiItem>
              <PositionsCheckApiItem>
                <Position>6</Position>
                <Url>news.mail.ru/inworld/ukraina/</Url>
              </PositionsCheckApiItem>
              <PositionsCheckApiItem>
                <Position>7</Position>
                <Url>for-ua.com/ukraine</Url>
              </PositionsCheckApiItem>
              <PositionsCheckApiItem>
                <Position>8</Position>
                <Url>news.qs.kiev.ua/</Url>
              </PositionsCheckApiItem>
              <PositionsCheckApiItem>
                <Position>9</Position>
                <Url>news.meta.ua/</Url>
              </PositionsCheckApiItem>
              <PositionsCheckApiItem>
                <Position>10</Position>
                <Url>news.online.ua/</Url>
              </PositionsCheckApiItem>
             ...
            </Items>
            <Positions>
              <int>139</int>
            </Positions>
          </Value>
        </Data>
      </Values>
    </DomainData>
  </Domains>
<?php

// RDS Api ключ пользователя
$api_key = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx";

// XML для инициализации сессии
$put_data = "
<InitSession>
  <Parameters>
    <TaskVariant>PositionsCheck</TaskVariant>
  </Parameters>
  <DomainNames>
    <PositionsCheckData>
      <Domain>talks.su</Domain>
      <Region>YandexMoscow</Region>
      <Request>новости украина</Request>
      <AllResults>true</AllResults>
      <MaxNesting>3</MaxNesting>
    </PositionsCheckData>
  </DomainNames>
  </InitSession>";

// Инициализируем запрос для создания сессии
$ch = curl_init("http://recipdonor.com:998/api/session/new");
// Передаем API ключ
curl_setopt($ch, CURLOPT_USERPWD, "{$api_key}:x");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
// При инициализации сессии используется метод PUT
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "PUT");
// Указываем необходимые заголовки
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    "Content-Type: text/xml; charset=utf-8",
    "Content-Length: ".strlen($put_data)));
// Передаем данные для инициализации
curl_setopt($ch, CURLOPT_POSTFIELDS, $put_data);

// Посылаем запрос
$initSessionData = curl_exec($ch);
$responseInfo = curl_getinfo($ch);

if($responseInfo['http_code'] != 200) exit('Wrong request!');

curl_close($ch);

// Обрабатываем пришедший ответ
$sesssionXmlData = new SimpleXMLElement($initSessionData);
// Достаем идентификатор созданой сессии
$sessionId = $sesssionXmlData->Id;

$sessionData = null;
do{
    // Небольшая задержка перед получением данных
    sleep(2);
    // Инициализируем запрос для получения данных сессии
    $ch = curl_init("http://recipdonor.com:998/api/session/get/{$sessionId}");
    // Передаем API ключ
    curl_setopt($ch, CURLOPT_USERPWD, "{$api_key}:x");
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_HTTPHEADER, array("Content-Type: text/xml; charset=utf-8"));

    // Получаем и обрабатываем пришедший ответ
    $response = curl_exec($ch);
    $responseInfo = curl_getinfo($ch);

    if($responseInfo['http_code'] != 200) exit('Wrong request!');

    $sessionData = new SimpleXMLElement($response);
    curl_close($ch);

    // Повоторяем процедуру пока сессия не будет завершена
}while($sessionData->SessionStatus != 'Completed' && $sessionData->SessionStatus != 'Bankrupt');

// Выводим пришедшие данные
foreach($sessionData->Domains->DomainData as $domain)
{
    // Доменное имя
    echo $domain->DomainName.PHP_EOL;    

    foreach($domain->Values->Data as $data)
    {
        echo $data->Parameter.PHP_EOL;    
        echo $data->Value->Region.PHP_EOL;
        echo $data->Value->Request.PHP_EOL;
        foreach (get_object_vars($data->Value->Items) as $item => $itemValue){	        	
        	if($item == "PositionsCheckApiItem"){        		
        		foreach ($itemValue as $value => $valueValue) {        			
        			echo $valueValue->Position." - ".$valueValue->Url.PHP_EOL;        			
        		}        		
        		continue;
        	}
        	echo $item . " - " . $itemValue.PHP_EOL;
        }
        foreach (get_object_vars($data->Value->Positions) as $item => $itemValue){        
        	echo $itemValue.PHP_EOL;
        }        
    }
    echo PHP_EOL;
}

/*
talks.su
PositionsCheck
YandexMoscow
новости украина
1 - newsukraine.com.ua/
2 - ua.rian.ru/
3 - ukr.net/index.php
4 - korrespondent.net/ukraine
5 - novostiukrainy.ru/
6 - news.mail.ru/inworld/ukraina/
7 - for-ua.com/ukraine
8 - news.qs.kiev.ua/
9 - news.meta.ua/
10 - news.online.ua/
...
139 - talks.su/
...
139
*/ 
                        


API методы:

Sape
Url: sape/{domain}
HTTP метод(ы): GET
Параметры:
  • {domain} – Доменное имя
XML:
<int>1</int>
JSON:
1
Sape Bulk
Url: sape/bulk
HTTP метод(ы): POST
XML:
<ArrayOfString>
    <string>example.com</string>
    <string>test.com</string>
</ArrayOfString>
JSON:
["example.com","test.com"]
XML:
<ArrayOfSapeItem>
    <SapeItem>
        <Url>example.com</Url>
        <Sape>0</Sape>
    </SapeItem>
    <SapeItem>
        <Url>test.com</Url>
        <Sape>0</Sape>
    </SapeItem>
</ArrayOfSapeItem>
JSON:
[{"Url":"test.com","Sape":0},
{"Url":"example.com","Sape":0}]
Инициализация сессии
Url: session/new
HTTP метод(ы): PUT
XML:
<InitSession>
    <Parameters>
        <TaskVariant>Cy</TaskVariant>
        <TaskVariant>Cy</TaskVariant>
    </Parameters>
    <DomainNames>
        <string>String content</string>
        <string>String content</string>
    </DomainNames>
    <Refresh>true</Refresh>
</InitSession>
JSON:
{"DomainNames":["String content"],"Parameters":[0],"Refresh":true}
DomainNames — Доменное имя, путь или IP, в зависимости от Parameters
Parameters — Возможные значения: IY - Индекс Я, IYPages - Индекс Я страницы, GeoData - гео данные по IP адресу, CY - тИЦ, PR - Google Page Rank, DMOZ - Наличие в каталоге DMOZ, IG - Индекс Google, Whois - регистрационные данные о владельце, PageValues(входящие ссылки, исходящие ссылки, "платные" ссылки, содержание тега title страницы, CMS Движок), BingIp - Кол-во сайтов на IP по Bing, CyImage - тИЦ картинка, IGPages - проиндексированность страниц в Google, Wa - наличие в WebArchive, YaBar - данные Я.Бар
Refresh — true - проверка минуя базу данных(медленнее)
XML:
<ApiSessionItemSlimContract>
  <Id>1627aea5-8e0a-4371-9022-9b504344e724</Id>
  <ExpireAt>Mon, 06 Dec 2010 15:41:33 GMT</ExpireAt>
  <Progress>75</Progress>
  <SessionStatus>AtChecking</SessionStatus>
</ApiSessionItemSlimContract>
JSON:
{"ExpireAt":""/Date(928138800000+0300)"/","Id":"1627aea5-8e0a-4371-9022-9b504344e724","SessionStatus":null}
ExpireAt — Дата окончания жизни сессии
Id — Уникальный идентификатор сессии
SessionStatus — Completed - завершена, Bankrupt - банкрот
Получение данных сессии
Url: session/get/{sid}
HTTP метод(ы): GET
Параметры:
  • {sid} – Идентификатор сессии
XML:
<ApiSessionItemContract>
    <Id>815b62ee-cf23-4a14-962e-fff3062f573b</Id>
    <ExpireAt>2010-12-06T15:41:33.0514582+02:00</ExpireAt>
    <SessionStatus>Completed</SessionStatus>
    <Domains>
        <DomainData>
            <DomainName>test.com</DomainName>
            <Values>
                <Data>
                    <Parameter>Cy</Parameter>
                    <Value xsi:type="CyApiData">
                        <Cy>4700</Cy>
                        <Yaca>0</Yaca>
                        <YaBarMirrow>1</YaBarMirrow>
                    </Value>
                </Data>
            </Values>
        </DomainData>
    </Domains>
</ApiSessionItemContract>
JSON:
{
    "Domains":[{
        "DomainName":"test.com",
        "Values":[{
            "Parameter":"Cy",
            "Value":{"Cy":4700,"Yaca":"0","YaBarMirrow":1}
    }]}],
    "Id":"815b62ee-cf23-4a14-962e-fff3062f573b",
    "ExpireAt":"Mon, 06 Dec 2010 15:41:33 GMT",
    "SessionStatus":"Completed"}
ExpireAt — Дата окончания жизни сессии
Id — Уникальный идентификатор сессии
SessionStatus — Completed - завершена, Bankrupt - банкрот
Domains/DomainData/DomainName — Доменное имя проверяемого сайта
Domains/DomainData/DomainName/Values/Data/Parameter — Имя проверяемого параметра (CY - тИЦ)
Domains/DomainData/DomainName/Values/Data/Value — Данные проверки, могут меняться в зависимости от проверяемого параметра (Cy - Значение тИЦ, Yaca - Яндекс Каталог, YaBarMirrow - зеркало)
История проверок
Url: history/siteslibrary/{htype}/{domain}
HTTP метод(ы): GET
Параметры:
  • {htype} – Тип истории (CY - Тиц, IY - Индекс Яндекс, PR - Page Rank)
  • {domain} – Доменное имя
XML:
<ArrayOfHistoryItem>
    <HistoryItem>
        <Date>1999-05-31T11:20:00</Date>
        <Value>2147483647</Value>
    </HistoryItem>
    <HistoryItem>
        <Date>1999-05-31T11:20:00</Date>
        <Value>2147483647</Value>
    </HistoryItem>
</ArrayOfHistoryItem>
JSON:
[{"Date":"\/Date(928138800000+0300)\/",
"Value":2147483647}]
HistoryItem/Date — Дата проверки
HistoryItem/Value — Значение
Кол-во значений в истории проверок
Url: history/count/siteslibrary/{htype}/{domain}
HTTP метод(ы): GET
Параметры:
  • {htype} – Тип истории (CY - Тиц, IY - Индекс Яндекс)
  • {domain} – Доменное имя
XML:
<int>50</int>
JSON:
50
Зеркала домена
Url: mirror/{domain}
HTTP метод(ы): GET
Параметры:
  • {domain} – Доменное имя
XML:
<ArrayOfString>
    <string>ztest.com</string>
    <string>atest.com</string>
</ArrayOfString>
JSON:
["ztest.com", "atest.com"]
Кол-во зеркал у домена
Url: mirror/count/{domain}
HTTP метод(ы): GET
Параметры:
  • {domain} – Доменное имя
XML:
<int>5</int>
JSON:
5
Возраст домена
Url: age/{domain}
HTTP метод(ы): GET
Параметры:
  • {domain} – Доменное имя
XML:
<dateTime>1999-05-31T11:20:00</dateTime>
JSON:
"\/Date(928138800000+0300)\/"
Cайты на IP
Url: sitesonip/{ip}/{count}
HTTP метод(ы): GET
Параметры:
  • {ip/domain} – ip адрес или доменное имя
  • {count} – максимальное кол-во результатов
XML:
<SiteItemCollection>
<Collection>
    <SiteItem>
        <Url>fff.test.com</Url>
        <SubDomen>[PAYSUB]fff[/PAYSUB].test.com</SubDomen>
    </SiteItem>
    <SiteItem>
        <Url>test.com</Url>
        <SubDomen>test.com</SubDomen>
    </SiteItem>
</Collection>
<CountAll>2</CountAll>
</SiteItemCollection>
JSON:
{"Collection":[
    {"Url":"microsoft.com","SubDomen":"microsoft.com"},
    {"Url":"microsoft.ru","SubDomen":"microsoft.ru"}],
"CountAll" : 2}
Collection/SiteItem/Url — Доменное имя
Collection/SiteItem/SubDomen — FREESUB - бесплатный поддомен, PAYSUB - платный поддомен
CountAll — Полное кол-во результатов. Результатов в возвращаемой коллекции может быть не больше 10000.
Поддомены
Url: subdomens/{domain}/{count}
HTTP метод(ы): GET
Параметры:
  • {domain} – Доменное имя
  • {count} – Кол-во возвращаемых результатов (30 - по умолчанию)
XML:
<SiteItemCollection>
<Collection>
    <SiteItem>
        <Url>fff.test.com</Url>
        <SubDomen>[PAYSUB]fff[/PAYSUB].test.com</SubDomen>
    </SiteItem>
    <SiteItem>
        <Url>test.com</Url>
        <SubDomen>test.com</SubDomen>
    </SiteItem>
</Collection>
<CountAll>2</CountAll>
</SiteItemCollection>
JSON:
{"Collection":[
    {"Url":"microsoft.com","SubDomen":"microsoft.com"},
    {"Url":"microsoft.ru","SubDomen":"microsoft.ru"}],
"CountAll" : 2}
Collection/SiteItem/Url — Доменное имя
Collection/SiteItem/SubDomen — FREESUB - бесплатный поддомен, PAYSUB - платный поддомен
CountAll — Полное кол-во результатов. Результатов в возвращаемой коллекции может быть не больше 10000.
Whois
Url: whois/{domain}
HTTP метод(ы): GET
Параметры:
  • {domain} – Доменное имя
XML:
<WhoisItem>
    <WhoisStartDate>1999-05-31T11:20:00</WhoisStartDate>
    <WhoisExpDate>1999-05-31T11:20:00</WhoisExpDate>
    <WhoisEmail>test@test.com</WhoisEmail>
    <WhoisDns>dns</WhoisDns>
    <WhoisInfo>info</WhoisInfo>
    <WhoisPhone>phone</WhoisPhone>
    <WhoisRegInfo>reg info</WhoisRegInfo>
</WhoisItem>
JSON:
{"WhoisDns":"String content",
"WhoisEmail":"String content",
"WhoisExpDate":"\/Date(928138800000+0300)\/",
"WhoisInfo":"String content",
"WhoisPhone":"String content",
"WhoisRegInfo":"String content",
"WhoisStartDate":"\/Date(928138800000+0300)\/"}
WhoisStartDate — Дата регистрации
WhoisExpDate — Дата окончания действия
WhoisEmail — E-mail регистратора
WhoisDns — DNS серверa
WhoisInfo — Владелец
WhoisPhone — Телефон
WhoisRegInfo — Регистратор
Наличие покупных ссылок
Url: /links/bulk/
HTTP метод(ы): POST
XML:
<ArrayOfString>
<string>example.com</string>
<string>test.com</string>
</ArrayOfString>
JSON:
["test.com"]
XML:
<ArrayOfLinksItem>
  <LinksItem>
    <Url>example.com</Url>
    <BuyLinks>0</BuyLinks>
  </LinksItem>
  <LinksItem>
    <Url>test.com</Url>
    <BuyLinks>1</BuyLinks>
  </LinksItem>
</ArrayOfLinksItem>
JSON:
[{"BuyLinks":0,"Url":"test.com"}]
Кол-во сайтов на IP (массовая проверка)
Url: /sitesonip/bulk/count
HTTP метод(ы): POST
XML:
<ArrayOfString>
<string>255.127.64.1</string>
<string>255.127.64.2</string>
</ArrayOfString>
JSON:
["255.127.64.1"]
XML:
<ArrayOfIpCountItem>
  <IpCountItem>
    <Address>255.127.64.1</Address>
    <Count>551</Count>
  </IpCountItem>
  <IpCountItem>
    <Address>255.127.64.2</Address>
    <Count>531</Count>
  </IpCountItem>
</ArrayOfIpCountItem>
JSON:
[{"Count":551,"Address":"255.127.64.1"}]
Пользовательские данные
Url: /user/data
HTTP метод(ы): GET
XML:
<UserData>
  <RdsAccountBalance>12678967.54</RdsAccountBalance>
  <RdsEmail>tester@test.com</RdsEmail>
</UserData>
JSON:
{"RdsAccountBalance":12678967.54,"RdsEmail":"tester@test.com"}
Сайты владельца по партнерскому коду
Url: /api/commercials/{comType}/{code}
HTTP метод(ы): GET
Параметры:
  • {comType} – Тип партнерской программы (AdSense)
  • {code} – Партнерский код
XML:
<ArrayOfString>
<string>example.com</string>
<string>test.com</string>
</ArrayOfString>
JSON:
["test.com","example.com"]
Кол-во сайтов по партнерскому коду
Url: /api/commercials/count/{comType}/{code}
HTTP метод(ы): GET
Параметры:
  • {comType} – Тип партнерской программы (AdSense)
  • {code} – Партнерский код
XML:
<int>5</int>
JSON:
5
Кол-во позиций сайта
Url: /api/positions/count
HTTP метод(ы): POST
XML:
<InitPositionsData>
<Url>test.com</Url>
</InitPositionsData>
JSON:
XML:
<ArrayOfPositionsCountItem>
<PositionsCountItem>
<SearchEngine>Google</SearchEngine>
<Count>7</Count>
</PositionsCountItem>
<PositionsCountItem><SearchEngine>Yandex</SearchEngine><Count>2</Count>
</PositionsCountItem>
</ArrayOfPositionsCountItem>
JSON:
{
    arrayofpositionscountitem:{
        positionscountitem:[
            {
                searchengine:'Google',
                count:7
            },
            {
                searchengine:'Yandex',
                count:2
            }
        ]
    }
}
WebMoney Id привязанные к доменам
Url: wmidsbysite
HTTP метод(ы): POST
XML:
<ArrayOfInitWmId>
<InitWmId>
<Url>test.com</Url>
<MaxCount xsi:nil="true" />
</InitWmId>
<InitWmId>
<Url>test2.com</Url>
<MaxCount>1</MaxCount>
</InitWmId>
</ArrayOfInitWmId>
JSON:
[{"Url":"test.com","MaxCount" : "2"}]
Url — Доменное имена
MaxCount — Максимальное кол-во результатов
XML:
<ArrayOfUrlWmIdsApiItem>
<UrlWmIdsApiItem>
<Url>test.com</Url>
<WmIds>
<long>111111111111</long>
<long>999999999999</long>
</WmIds>
<ResultsCount>2</ResultsCount>
</UrlWmIdsApiItem>
<UrlWmIdsApiItem>
<Url>test2.com</Url>
<WmIds>
<long>222222222222</long>
</WmIds>
<ResultsCount>1</ResultsCount>
</UrlWmIdsApiItem>
</ArrayOfUrlWmIdsApiItem>
JSON:
[{"Url":"test.com","WmIds":[111111111111,999999999999]},{"Url":"test2.com","WmIds":[222222222222]}]
UrlWmIdsApiItem/Url — Доменное имя
UrlWmIdsApiItem/WmIds — WebMoney Id привязанные к доменному имени
UrlWmIdsApiItem/ResultsCount — Кол-во результатов
Кол-во WebMoney Id привязанных к доменам
Url: wmidsbysite/count
HTTP метод(ы): POST
XML:
<ArrayOfString>
<string>test.com</string>
<string>test2.com</string>
</ArrayOfString>
JSON:
["test.com", "test2.com"]
XML:
<ArrayOfUrlWmIdsApiItem><UrlWmIdsApiItem><Url>test.com</Url><ResultsCount>1</ResultsCount></UrlWmIdsApiItem><UrlWmIdsApiItem><Url>test2.com</Url><ResultsCount>0</ResultsCount></UrlWmIdsApiItem></ArrayOfUrlWmIdsApiItem>
JSON:
[{"Url":"test.com", "ResultsCount":"1"},{"Url":"test2.com", "ResultsCount":"0"}]
Домены привязанные к WebMoney Id
Url: sitesbywmid
HTTP метод(ы): POST
XML:
<ArrayOfInitWmId>
<InitWmId>
<Url>999999999999</Url>
<MaxCount xsi:nil="true" />
</InitWmId>
<InitWmId>
<Url>111111111111</Url>
<MaxCount>1</MaxCount>
</InitWmId>
</ArrayOfInitWmId>
JSON:
[{"Url":"999999999999",MaxCount" : "2"}]
Collection — Доменные имена
Count — Максимальное кол-во результатов
XML:
<ArrayOfWmIdUrlsApiItem>
<WmIdUrlsApiItem>
<WmId>111111111111</WmId>
<Urls>
<string>test.com</string>
</Urls>
<ResultsCount>1</ResultsCount>
</WmIdUrlsApiItem>
<WmIdUrlsApiItem>
<WmId>222222222222</WmId>
<Urls>
<string>test2.com</string>
<string>test3.com</string>
</Urls>
<ResultsCount>2</ResultsCount>
</WmIdUrlsApiItem>
</ArrayOfWmIdUrlsApiItem>
JSON:
[{"WmId":111111111111,"Urls":["test.com"], "ResultsCount":"1"},{"WmId":222222222222,"Urls":["test2.com","test3.com"],"ResultsCount":"2"}]
WmIdUrlsApiItem/WmId — WebMoney Id
WmIdUrlsApiItem/ResultsCount — Кол-во результатов
WmIdUrlsApiItem/Urls — Доменные имена привязанные к WebMoney Id
Кол-во доменов привязанных к WebMoney Id
Url: sitesbywmid/count/bulk
HTTP метод(ы): POST
XML:
<ArrayOfLong>
<long>0</long>
<long>4</long>
</ArrayOfLong>
JSON:
["111111111111", "222222222222"]
XML:
<WmIdUrlsApiItem>
		  <WmId>0</WmId>
		  <ResultsCount>11
		  </ResultsCount>
		  </WmIdUrlsApiItem>
		  <WmIdUrlsApiItem>
		  <WmId>4</WmId>
		  <ResultsCount>0
		  </ResultsCount>
		  </WmIdUrlsApiItem>
		  </ArrayOfWmIdUrlsApiItem>
JSON:
[{"WmId":"0", "ResultsCount":"11"},{"WmId":"4", "ResultsCount":"0"}]
Множественное получение истории проверок
Url: historybulk/siteslibrary
HTTP метод(ы): POST
XML:
<ArrayOfHistoryInit>
<HistoryInit>
<Url>nnsdaasdasdasdm.ru</Url>
<HistoryType>CyHistory</HistoryType>
<OnlyDifferent>true</OnlyDifferent>
<OnlyDates>false</OnlyDates>
<MaxCount xsi:nil="true" />
<DatesVariety>
<Dates>
<dateTime>2011-12-12T00:00:00</dateTime>
<dateTime>2012-01-24T00:00:00</dateTime>
<dateTime>2011-12-26T00:00:00</dateTime>
</Dates>
<DatesThrough>
<DateInterval>
<BeginDate>2011-10-21T00:00:00</BeginDate>
<EndDate>2012-01-03T00:00:00</EndDate>
</DateInterval></DatesThrough>
</DatesVariety>
</HistoryInit>
<HistoryInit>
<Url>aabrahaasdasdasdabr.com</Url>
<HistoryType>IyHistory</HistoryType>
<OnlyDifferent>true</OnlyDifferent>
<OnlyDates>true</OnlyDates>
<MaxCount xsi:nil="true" />
<DatesVariety>
<Dates>
<dateTime>2011-12-26T00:00:00</dateTime>
<dateTime>2006-12-12T00:00:00</dateTime>
</Dates>
<DatesThrough>
<DateInterval>
<BeginDate>2011-10-21T00:00:00</BeginDate>
<EndDate>2012-01-03T00:00:00</EndDate>
</DateInterval>
</DatesThrough>
</DatesVariety>
</HistoryInit>
</ArrayOfHistoryInit>
JSON:
[{"DatesVariety":{"Dates":["\/Date(928138800000+0300)\/"],"DatesThrough":[{"BeginDate":"\/Date(928138800000+0300)\/","EndDate":"\/Date(928138800000+0300)\/"}]},"HistoryType":63,"MaxCount":2147483647,"OnlyDates":false,"OnlyDifferent":true,"Url":"asdasdasd.com"}]
Url — Доменное имя
HistoryType — Тип истории. В случае xml запроса может принимать значения: CyHistory - для проверки тИЦ, PrHistory - Google PageRank, IyHistory - Индекс Я. Для Json числовые значения 63, 64, 65 соотвественно
OnlyDifferent — Может принимать значения true/false. При true - выбираются только те даты где произошло изменения значения параметра, при false выбираются все
OnlyDates — Может принимать значения true/false. При true - получаются только даты проверок без значений (при этом оплата не взымается), при false получаются и даты и значения (такая проверка платная)
MaxCount — Максимальное возвращаемое кол-во результатов
DatesVariety — Контейнер в котором можно указать параметры выборки с учетом дат
Dates — Содержит в себе даты значения проверок в которые Вы хотите получить
DatesThrough — Содержит в себе периоды дат (DateInterval - содержащий начальное и конечное значения) значения проверок в которые Вы хотите получить
XML:
<ArrayOfHistoryBulkResult>
<HistoryBulkResult><Url>nnsdaasdasdasdm.ru</Url>
<HistoryType>IyHistory</HistoryType>
<OnlyDifferent>true</OnlyDifferent>
<OnlyDates>false</OnlyDates>
<HistoryItems>
<HistoryItem>
<Date>1999-05-31T11:20:00</Date>
<Value>2147483647</Value>
</HistoryItem>
<HistoryItem>
<Date>1999-05-31T11:20:00</Date>
<Value>2147483647</Value>
</HistoryItem>
</HistoryItems>
<ResultsCount>2</ResultsCount>
</HistoryBulkResult>
<HistoryBulkResult>
<Url>aabrahaasdasdasdabr.com</Url>
<HistoryType>CyHistory</HistoryType>
<OnlyDifferent>true</OnlyDifferent>
<OnlyDates>true</OnlyDates>
<HistoryItems>
<HistoryItem>
<Date>1999-05-31T11:20:00</Date>
<Value xsi:nil="true"/>
<Yaca xsi:nil="true"/>
</HistoryItem>
<HistoryItem>
<Date>1999-05-31T11:20:00</Date>
<Value xsi:nil="true"/>
<Yaca xsi:nil="true"/>
</HistoryItem>
</HistoryItems>
<ResultsCount>2</ResultsCount>
</HistoryBulkResult>
</ArrayOfHistoryBulkResult>
JSON:
[{"HistoryItems":[{"Date":"\/Date(928138800000+0300)\/","Value":2147483647,"Yac":true}],"HistoryType":63,"OnlyDates":false,"OnlyDifferent":true,"ResultsCount":1,"Url":"asdasdasd.com"}]
ArrayOfHistoryBulkResult — Коллекция HistoryBulkResult - с рузультатми выборок истории по переданным раннее HistoryInit
HistoryItems — Коллекция HistoryItem, где Date - дата проверки, Value - значение, Yaca - наличие в Яндекс каталоге(заполнена в случае проверки тИЦ)
ResultsCount — Кол-во результатов
Множественное получение кол-ва результатов истории проверок
Url: historybulk/count/siteslibrary
HTTP метод(ы): POST
XML:
<ArrayOfHistoryInit>
<HistoryInit>
<Url>nnsdaasdasdasdm.ru</Url>
<HistoryType>CyHistory</HistoryType>
<OnlyDifferent>true</OnlyDifferent>
<MaxCount xsi:nil="true" />
<DatesVariety>
<Dates>
<dateTime>2011-12-12T00:00:00</dateTime>
<dateTime>2012-01-24T00:00:00</dateTime>
<dateTime>2011-12-26T00:00:00</dateTime>
</Dates>
<DatesThrough>
<DateInterval>
<BeginDate>2011-10-21T00:00:00</BeginDate>
<EndDate>2012-01-03T00:00:00</EndDate>
</DateInterval></DatesThrough>
</DatesVariety>
</HistoryInit>
<HistoryInit>
<Url>aabrahaasdasdasdabr.com</Url>
<HistoryType>IyHistory</HistoryType>
<OnlyDifferent>true</OnlyDifferent>
<MaxCount xsi:nil="true" />
<DatesVariety>
<Dates>
<dateTime>2011-12-26T00:00:00</dateTime>
<dateTime>2006-12-12T00:00:00</dateTime>
</Dates>
<DatesThrough>
<DateInterval>
<BeginDate>2011-10-21T00:00:00</BeginDate>
<EndDate>2012-01-03T00:00:00</EndDate>
</DateInterval>
</DatesThrough>
</DatesVariety>
</HistoryInit>
</ArrayOfHistoryInit>
JSON:
[{"DatesVariety":{"Dates":["\/Date(928138800000+0300)\/"],"DatesThrough":[{"BeginDate":"\/Date(928138800000+0300)\/","EndDate":"\/Date(928138800000+0300)\/"}]},"HistoryType":63,"MaxCount":2147483647,"OnlyDates":false,"OnlyDifferent":true,"Url":"asdasdasd.com"}]
Url — Доменное имя
HistoryType — Тип истории. В случае xml запроса может принимать значения: CyHistory - для проверки тИЦ, PrHistory - Google PageRank, IyHistory - Индекс Я. Для Json числовые значения 63, 64, 65 соотвественно
OnlyDifferent — Может принимать значения true/false. При true - выбираются только те даты где произошло изменения значения параметра, при false выбираются все
MaxCount — Максимальное возвращаемое кол-во результатов
DatesVariety — Контейнер в котором можно указать параметры выборки с учетом дат
Dates — Содержит в себе даты значения проверок в которые Вы хотите получить
DatesThrough — Содержит в себе периоды дат (DateInterval - содержащий начальное и конечное значения) значения проверок в которые Вы хотите получить
XML:
<ArrayOfHistoryBulkResult>
<HistoryBulkResult><Url>nnsdaasdasdasdm.ru</Url>
<HistoryType>IyHistory</HistoryType>
<OnlyDifferent>true</OnlyDifferent>
<OnlyDates>false</OnlyDates>
<ResultsCount>2</ResultsCount>
</HistoryBulkResult>
<HistoryBulkResult>
<Url>aabrahaasdasdasdabr.com</Url>
<HistoryType>CyHistory</HistoryType>
<OnlyDifferent>true</OnlyDifferent>
<OnlyDates>true</OnlyDates>
<ResultsCount>2</ResultsCount>
</HistoryBulkResult>
</ArrayOfHistoryBulkResult>
JSON:
[{"HistoryType":63,"OnlyDates":false,"OnlyDifferent":true,"ResultsCount":1,"Url":"asdasdasd.com"}]
ArrayOfHistoryBulkResult — Коллекция HistoryBulkResult - содержащая кол-ва проверок по переданным раннее HistoryInit
ResultsCount — Кол-во результатов
Занятость доменного имени
Url: domainemployment/{domain}
HTTP метод(ы): GET
XML:
<ArrayOfString>
<string>test.su/string>
<string>test.org.ua</string>
</ArrayOfString>
JSON:
["test.su", "test.org.ua"]

RDS © 2012 Все права защищены.

Ап ТИЦ: 17-02-2012 6
Ап Индекс Я: 12-02-2012 11
Ап PR: 07-02-2012 16