Пример обращение к API через SDK Topvisor: PHP
В примере будут получены ключевые фразы с помощью метода get/keywords_2/keywords/.
<?php
use Topvisor\TopvisorSDK\V2 as TV;
// вместо "..." необходимо прописать путь до файла autoload, если вы используете composer
include(__DIR__.'/../../vendor/autoload.php');
// пропишите путь к SDK Topvisor, если вы не используете composer
//include_once('topvisor-sdk/src/V2/Fields.php');
//include_once('topvisor-sdk/src/V2/Page.php');
//include_once('topvisor-sdk/src/V2/Pen.php');
//include_once('topvisor-sdk/src/V2/Session.php');
$projectId = '%NN%'; // ID вашего проекта
// создание сессии
$Session = new TV\Session();
// начало построения запроса
$selectorKeywords = new TV\Pen($Session, 'get', 'keywords_2', 'keywords');
// установка параметра project_id
$selectorKeywords->setData(['project_id' => $projectId]);
// запрос на получение id и имени ключевой фразы
$selectorKeywords->setFields(['id', 'name']);
// фильтр ключевых фраз с тегом 1, 2 или 3
$selectorKeywords->setFilters([
TV\Fields::genFilterData('tags', 'IN', [1,2,3])
]);
// сортировка ключевых фраз по алфавиту
$selectorKeywords->serOrders([
TV\Fields::genOrderData('name', 'ASC')
]);
// получать по 1000 ключевых фраз за одно обращение к API
$selectorKeywords->setLimit(1000);
do{
// выполнение запроса (получить страницу с результатами)
$page = $selectorKeywords->exec();
// обработка ошибки
if(is_null($page->getResult())) return var_dump($page->getErrors());
// $page - array of keywords
foreach($page->getResult() as $resultItem){
echo $resultItem->id.': '.$resultItem->name.'<br>';
}
// есть ли еще неполученные ключевые фразы
// (если эта страница последняя, $nextOffset будет равен null)
$nextOffset = $page->getNextOffset();
if($nextOffset) $selectorKeywords->setOffset($nextOffset);
// продолжать получать ключевые фразы, пока все страницы не будут получены
}while($nextOffset);