### Get Projects
Source: https://topvisor.com/ru/api/v2/sdk-js
This example demonstrates how to retrieve a list of projects, including their IDs and names, using the API client. It shows how to call the method and handle the response, logging any errors or the project list.
```APIDOC
## Get Projects
### Description
Retrieves a list of projects with their IDs and names.
### Method
`client.gen('/get/projects_2/projects/', ['id', 'name']).call()`
### Parameters
- `path`: '/get/projects_2/projects/'
- `fields`: Array of strings specifying the fields to retrieve (e.g., ['id', 'name'])
### Request Example
```javascript
const res = await client.gen('/get/projects_2/projects/', ['id', 'name']).call();
```
### Response
#### Success Response (200)
- `result`: Array of project objects, each containing 'id' and 'name'.
- `errors`: Null if successful, otherwise an array of error objects.
#### Response Example
```json
{
"result": [
{
"id": 123,
"name": "Project Alpha"
},
{
"id": 456,
"name": "Project Beta"
}
],
"errors": null
}
```
```
--------------------------------
### PHP SDK Example for Sorting Keywords
Source: https://topvisor.com/ru/api/v2/basic-params/orders
This PHP SDK example shows how to retrieve a list of keywords sorted by name in descending order using the Topvisor SDK. It demonstrates setting the project ID, initializing the session, and configuring the sorting parameters.
```php
setData(['project_id' => $project_id]);
$selectorKeywords->serOrders([
TVFields::genOrderData('name', 'DESC')
]);
$page = $selectorKeywords->exec();
if(is_null($page->getResult())) return var_dump($page->getErrors());
// $page — array of keywords
foreach($page->getResult() as $resultItem){
var_dump($resultItem);
}
```
--------------------------------
### Example: Get Keyword with ID
Source: https://topvisor.com/ru/api/v2/basic-params/filters
Illustrates how to retrieve a specific keyword using the 'id' parameter.
```APIDOC
### Request with specifying id
```http
POST /v2/json/get/keywords_2/keywords/
```
```json
{
"project_id": /* Project ID (number) */,
"fields":["id","name","tags"],
"id":80764821
}
```
### Result
```json
{"result":[{"id":"80764821","name":"test request 1","tags":"2"}]}
```
```
--------------------------------
### SDK Example for Retrieving Keywords with Specific Fields
Source: https://topvisor.com/ru/api/v2/basic-params/fields
This PHP SDK example demonstrates how to retrieve keywords, including their ID, name, and group name, by setting the 'fields' parameter.
```php
setData(['project_id' => $project_id]);
$selectorKeywords->setFields(['id', 'name', 'group_name']);
$page = $selectorKeywords->exec();
if(is_null($page->getResult())) return var_dump($page->getErrors());
// $page - array of keywords
foreach($page->getResult() as $resultItem){
var_dump($resultItem);
}
```
--------------------------------
### Example API Request URL
Source: https://topvisor.com/ru/api/v2/intro
An example of a complete API request URL for retrieving a user's avatar.
```html
https://api.topvisor.com/v2/json/get/users_2/profile/avatar
```
--------------------------------
### Example: Get Keywords with Filters
Source: https://topvisor.com/ru/api/v2/basic-params/filters
Shows how to retrieve keywords filtered by tags using the 'filters' parameter with the 'IN' operator.
```APIDOC
### Request with specifying filters
```http
POST /v2/json/get/keywords_2/keywords/
```
```json
{
"project_id": /* Project ID (number) */,
"fields":["id","name","tags"],
"filters":[{
"name":"tags",
"operator":"IN",
"values":[2,3]
}]
}
```
### Result
```json
{"result":[{"id":"80764821","name":"test request 1","tags":"2"},{"id":"80764822","name":"test request
2","tags":"2"},{"id":"80764823","name":"test request 3","tags":"3"}]}
```
```
--------------------------------
### Example: Get a Specific Keyword Using 'id' Parameter
Source: https://topvisor.com/ru/api/v2/basic-params/filters
Demonstrates retrieving a single, specific keyword by its ID using the 'id' parameter. This is a concise way to target a single record.
```http
POST /v2/json/get/keywords_2/keywords/
```
```json
{
"project_id": /* id проекта (число) */,
"fields":["id","name","tags"],
"id":80764821
}
```
--------------------------------
### Get Keywords with Specific Tags using PHP SDK
Source: https://topvisor.com/ru/api/v2/basic-params/filters
Retrieve a list of keywords from a project that have specific tags assigned. This example shows how to set up the session, define the fields to retrieve, set the project ID, and apply a filter for tags using the 'IN' operator.
```php
setFields(['id', 'name', 'tags']);
$selectorKeywords->setData(['project_id' => $project_id]);
$selectorKeywords->setFilters([
TV\Fields::genFilterData('tags', 'IN', [2, 3])
]);
$page = $selectorKeywords->exec();
if(is_null($page->getResult())) return var_dump($page->getErrors());
// $page — array of keywords
foreach($page->getResult() as $resultItem){
var_dump($resultItem);
}
```
--------------------------------
### Example: Get Keywords without Filters
Source: https://topvisor.com/ru/api/v2/basic-params/filters
Demonstrates how to retrieve a list of keywords without applying any filters, showing the basic request structure.
```APIDOC
## Example
To display tag numbers, the fields parameter is used.
For example, let's get a list of keywords added to project NN that have tag 2 or 3.
### Request without specifying filters
```http
POST /v2/json/get/keywords_2/keywords/
```
```json
{
"project_id": /* Project ID (number) */,
"fields":["id","name","tags"]
}
```
### Result
```json
{"result":[{"id":"80764821","name":"test request 1","tags":"2"},{"id":"80764822","name":"test request
2","tags":"2"},{"id":"80764823","name":"test request 3","tags":"3"},{"id":"80764824","name":"test request
4","tags":"4"},{"id":"80764825","name":"test request 5","tags":"5"}]}
```
```
--------------------------------
### Get Keywords with PHP SDK
Source: https://topvisor.com/ru/api/v2/sdk-php/example
Use this snippet to retrieve keywords from a project. It shows how to initialize the SDK, build a request to get keyword IDs and names, apply filters for tags, sort results, and paginate through the data. Ensure the SDK's autoloader is correctly included.
```php
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.'
';
}
// есть ли еще неполученные ключевые фразы
// (если эта страница последняя, $nextOffset будет равен null)
$nextOffset = $page->getNextOffset();
if($nextOffset) $selectorKeywords->setOffset($nextOffset);
// продолжать получать ключевые фразы, пока все страницы не будут получены
}while($nextOffset);
```
--------------------------------
### Get Bank History
Source: https://topvisor.com/ru/api/v2/first-call
This example demonstrates how to retrieve the 10 most recent operations from the bank log using the Topvisor API v2.
```APIDOC
## POST /v2/json/get/bank_2/history
### Description
Retrieves the 10 most recent operations from the bank log.
### Method
POST
### Endpoint
https://api.topvisor.com/v2/json/get/bank_2/history
### Headers
- User-Id: %USER_ID%
- Authorization: bearer %USER_API_KEY%
- Content-Type: application/json
### Request Body
- fields (array) - Required - Specifies the fields to retrieve (e.g., ["date", "info", "sum"]).
- orders (array) - Required - Specifies the sorting order. Example: [{"name": "date", "direction": "DESC"}].
- limit (string) - Required - The maximum number of results to return (e.g., "10").
### Request Example
```json
{
"fields": ["date", "info", "sum"],
"orders": [{"name": "date", "direction": "DESC"}],
"limit": "10"
}
```
### Response
#### Success Response (200)
- result (array) - An array of bank history objects.
- limitedBy (integer) - The number of results returned.
- total (integer) - The total number of available results.
#### Response Example
```json
{
"result": [
{
"date": "2022-05-15 10:52:30",
"info": "Проверка позиций по проекту #NN",
"sum": "‑0.7"
},
{
"date": "2022-05-09 10:52:30",
"info": "Проверка позиций по проекту #NN",
"sum": "‑0.59"
}
],
"limitedBy": 10,
"total": 100
}
```
```
--------------------------------
### Get Web Page Screenshot
Source: https://topvisor.com/ru/api/v2-services/webscreens_2
The `get` method allows you to create a PNG screenshot of a specified web page. You can define the screen width and height, capture a full-page screenshot, specify a fragment's dimensions, and set the browser language.
```APIDOC
## GET /webscreens_2
### Description
Creates a PNG screenshot of a web page. Supports custom screen dimensions, full-page capture, fragment dimensions, and browser language selection.
### Method
GET
### Endpoint
/webscreens_2
### Parameters
#### Query Parameters
- **url** (string) - Required - The URL of the web page to capture.
- **width** (integer) - Optional - The desired width of the screenshot in pixels.
- **height** (integer) - Optional - The desired height of the screenshot in pixels.
- **fullpage** (boolean) - Optional - If true, captures the entire scrollable page.
- **lang** (string) - Optional - The browser language to use for rendering the page (e.g., 'ru', 'en').
### Response
#### Success Response (200)
- **image** (string) - The base64 encoded PNG image data of the screenshot.
#### Response Example
{
"image": "iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII="
}
```
--------------------------------
### Example: Get Keywords Without Filters
Source: https://topvisor.com/ru/api/v2/basic-params/filters
Shows a basic request to retrieve keywords, including their ID, name, and tags, without applying any specific filters. This serves as a baseline for comparison.
```http
POST /v2/json/get/keywords_2/keywords/
```
```json
{
"project_id": /* id проекта (число) */,
"fields":["id","name","tags"]
}
```
--------------------------------
### Example Usage
Source: https://topvisor.com/ru/api/v2/sdk-php/page
Demonstrates how to use the Page class to fetch and process keyword data from the Topvisor API.
```PHP
setData(['project_id' => $projectId]);
$selectorKeywords->setLimit(10);
$page = $selectorKeywords->exec();
if(is_null($page->getResult())){
echo $page->getErrorsString();
return;
}
$countResults = count($page->getResult());
echo "Получено ключевых слов: $countResults";
if($page->getTotal()){
echo ' из '.$page->getTotal();
}
// ...
?>
```
--------------------------------
### Start Sitemap Generation
Source: https://topvisor.com/ru/api/v2-services/audit_2/sitemap
Initiates the process of generating a sitemap for the specified project.
```APIDOC
## Start Sitemap Generation
### Description
Launches the sitemap generation process for a project.
### Method
EDIT
### Endpoint
/sitemap/checker/go
```
--------------------------------
### Example: Get Keywords with 'IN' Filter on Tags
Source: https://topvisor.com/ru/api/v2/basic-params/filters
Illustrates how to use the 'filters' parameter with the 'IN' operator to retrieve keywords that have specific tag values (e.g., tag 2 or 3).
```http
POST /v2/json/get/keywords_2/keywords/
```
```json
{
"project_id": /* id проекта (число) */,
"fields":["id","name","tags"],
"filters":[{
"name":"tags",
"operator":"IN",
"values":[2,3]
}]
}
```
--------------------------------
### Get URLs
Source: https://topvisor.com/ru/api/v2-services/urls_2/urls/get
Retrieves the configured list of URLs for a project.
```APIDOC
## GET /urls_2
### Description
Method retrieves the configured list of URLs for the project.
### Method
GET
### Endpoint
/urls_2
### Parameters
#### Query Parameters
- **project_id** (int) - Required - ID of the project
- **fields** (array of fields) - Optional - Fields of the "URL" object to be returned.
### Response
#### Success Response (200)
- **field1** (type) - Description
```
--------------------------------
### First 10 results
Source: https://topvisor.com/ru/api/v2/basic-params/paging
Example of fetching the first 10 results by setting limit to 10 and offset to 0.
```APIDOC
## First 10 results
### Request
```json
{
"limit":10,
"offset":0
}
```
### Response
```json
{"result":[ /* first 10 results */ ],"nextOffset":10,"total":25}
```
```
--------------------------------
### Get Schedule Additional Settings
Source: https://topvisor.com/ru/api/v2-services/schedule_2/settings
Retrieves the current additional settings for the automatic operation startup schedule.
```APIDOC
## GET /schedule_2/settings
### Description
Retrieves the current additional settings for the automatic operation startup schedule in a project.
### Method
GET
### Endpoint
/schedule_2/settings
### Response
#### Success Response (200)
- **settings** (object) - An object containing the additional settings for the schedule.
```
--------------------------------
### Get Link Information
Source: https://topvisor.com/ru/api/v2-services/tpvsr_2
Retrieves information about existing short links.
```APIDOC
## GET /services/tpvsr_2/get
### Description
Retrieves information about short links.
### Method
GET
### Endpoint
/services/tpvsr_2/get
```
--------------------------------
### Get WebScreens
Source: https://topvisor.com/ru/api/v2-services/webscreens_2/get
Retrieves a PNG screenshot of a web page with specified dimensions and optional parameters.
```APIDOC
## GET /webScreens_2
### Description
This method returns binary image data in .png format. In case of an error, a standard API structure in JSON will be returned. The cost of creating one screenshot is 0.1 RUB.
### Method
GET
### Endpoint
/webScreens_2
### Parameters
#### Query Parameters
- **url** (string) - Required - URL of the web page
- **w** (int) - Required - Screen width
- **h** (int) - Required - Screen height
- **timeout_ms** (int) - Optional - Maximum waiting time for page loading before taking a screenshot (from 1 to 30000 milliseconds). Default: 1500
- **lang** (string) - Optional - Browser language (e.g., ru, en). Default: user's language
- **full_page** (bool) - Optional - Take a full-page screenshot. Cannot be used with clip parameters. Default: false
- **clip_w** (int) - Optional - Width of the clip area. Cannot be used with full_page parameter.
- **clip_h** (int) - Optional - Height of the clip area. Cannot be used with full_page parameter.
- **clip_x** (int) - Optional - X-coordinate of the top-left corner of the clip area. Cannot be used with full_page parameter.
- **clip_y** (int) - Optional - Y-coordinate of the top-left corner of the clip area. Cannot be used with full_page parameter.
### Response
#### Success Response (200)
- **image_data** (binary) - Binary data of the screenshot in PNG format.
#### Error Response
- **error** (object) - Standard API error structure in JSON format.
```
--------------------------------
### Get Schedule
Source: https://topvisor.com/ru/api/v2-services/schedule_2/schedule/get
Retrieves the current schedule for automatic operation launches in a project.
```APIDOC
## GET /schedule_2
### Description
This method allows you to view the current schedule for automatic operation launches in a project.
### Method
GET
### Endpoint
/schedule_2
### Parameters
#### Query Parameters
- **type** (enum) - Required - Description of the parameter and possible values can be found at the link.
- **target_id** (int) - Required - The ID of the object for which the schedule is to be obtained.
### Response
#### Success Response (200)
- **result** (object) - Contains the schedule information.
- **schedule** (object) - Main settings (time and days of launch). See the edit/schedule_2 method for parameter descriptions.
- **settings** (object) - Additional settings (depend on the schedule type). See the edit/schedule_2/settings method for parameter descriptions.
```
--------------------------------
### Get Operation History Summary
Source: https://topvisor.com/ru/api/v2-services/bank_2/log
Retrieves summarized amounts of top-ups and withdrawals, grouped by their purpose.
```APIDOC
## GET history/summary
### Description
Retrieves the sums of top-ups and withdrawals of funds from the balance, grouped by purpose.
### Method
GET
### Endpoint
/services/bank_2/history/summary
### Parameters
#### Query Parameters
- **user_id** (int) - Required - ID of the user.
- **date_from** (date) - Optional - Start date for filtering operations.
- **date_to** (date) - Optional - End date for filtering operations.
### Response
#### Success Response (200)
- **summary** (object) - Object containing summarized financial operations.
- **total_in** (float) - Total amount of top-ups.
- **total_out** (float) - Total amount of withdrawals.
- **details** (array) - Array of detailed summaries by operation purpose.
- **target** (enum) - Purpose of the operation.
- **sum_in** (float) - Total amount of top-ups for this purpose.
- **sum_out** (float) - Total amount of withdrawals for this purpose.
#### Response Example
{
"summary": {
"total_in": 500.75,
"total_out": 150.25,
"details": [
{
"target": "checkPositions",
"sum_in": 200.00,
"sum_out": 50.00
},
{
"target": "wordstat",
"sum_in": 300.75,
"sum_out": 100.25
}
]
}
}
```
--------------------------------
### Results 10-20
Source: https://topvisor.com/ru/api/v2/basic-params/paging
Example of fetching results from the 11th to the 20th by setting limit to 10 and offset to 10.
```APIDOC
## Results: 10-20
### Request
```json
{
"limit":10,
"offset":10
}
```
### Response
```json
{"result":[ /* Results from 11 to 20 */ ],
```
--------------------------------
### Start Radar Content Check
Source: https://topvisor.com/ru/api/v2-services/audit_2/watcher
Initiates a content check for pages within a project using the Radar service.
```APIDOC
## EDIT /services/audit_2/watcher/checker/go
### Description
Sends a project for checking the content of its pages.
### Method
EDIT
### Endpoint
/services/audit_2/watcher/checker/go
```
--------------------------------
### Get Schedule Settings
Source: https://topvisor.com/ru/api/v2-services/schedule_2/settings/get-settings
Retrieves the current additional settings for the automatic scheduling of operations within a project.
```APIDOC
## GET /schedule_2/settings
### Description
Method allows to view the current additional settings for the schedule of automatic operation launch in the project.
### Method
GET
### Endpoint
/schedule_2/settings
### Parameters
#### Query Parameters
- **type** (enum) - Required - Description of the parameter and possible values can be found at the link.
- **target_id** (int) - Required - ID of the object for which the schedule is to be obtained.
### Response
#### Success Response (200)
- The response structure depends on the specified automatic launch function (type parameter). Refer to the additional parameters of the edit/schedule_2/settings method for parameter descriptions.
```
--------------------------------
### Execute Keyword Search and Display Results
Source: https://topvisor.com/ru/api/v2/sdk-php/page
This example demonstrates how to initialize a keyword search using the TV\Pen class, execute the search, and then display the number of results obtained and the total number of results available if pagination is used. It includes error handling for API or server failures.
```PHP
setData(['project_id' => $projectId]);
$selectorKeywords->setLimit(10);
$page = $selectorKeywords->exec();
if(is_null($page->getResult())){
echo $page->getErrorsString();
return;
}
$countResults = count($page->getResult());
echo "Получено ключевых слов: $countResults";
if($page->getTotal()){
echo ' из '.$page->getTotal();
}
//...
```
--------------------------------
### Create Default Session (config.php)
Source: https://topvisor.com/ru/api/v2/sdk-php/session
Initialize a TV\Session object without arguments to use default authorization parameters defined in config.php.
```php
setData(['project_id' => $projectId]);
// Set the fields to retrieve
$selectorKeywords->setFields(['id', 'name']);
// Set filters (e.g., keywords with tags 1, 2, or 3)
$selectorKeywords->setFilters([
TV\Fields::genFilterData('tags', 'IN', [1,2,3])
]);
// Set sorting (e.g., by name ascending)
$selectorKeywords->serOrders([
TV\Fields::genOrderData('name', 'ASC')
]);
// Set the limit for results per page
$selectorKeywords->setLimit(1000);
// Loop to handle pagination
do{
// Execute the request to get a page of results
$page = $selectorKeywords->exec();
// Check for errors
if(is_null($page->getResult())) {
return var_dump($page->getErrors());
}
// Process each keyword in the current page
foreach($page->getResult() as $resultItem){
echo $resultItem->id.': '.$resultItem->name.'
';
}
// Get the offset for the next page, if available
$nextOffset = $page->getNextOffset();
if($nextOffset) $selectorKeywords->setOffset($nextOffset);
}while($nextOffset);
```
### Response
#### Success Response (200)
- **id** (integer) - The unique identifier of the keyword.
- **name** (string) - The text of the keyword.
#### Response Example
```json
{
"example": "12345: example keyword"
}
```
```
--------------------------------
### Пример получения списка запросов из проекта с использованием SDK
Source: https://topvisor.com/ru/api/v2/basic-params/paging
Пример на PHP, демонстрирующий получение всех страниц результатов с использованием SDK, включая обработку пагинации через nextOffset.
```PHP
setData(['project_id' => $projectId]);
$selectorKeywords->setLimit($limit);
// get all result pages
do{
$page = $selectorKeywords->exec();
if(is_null($page->getResult())) return var_dump($page->getErrors());
// $page - array of keywords
foreach($page->getResult() as $resultItem){
var_dump($resultItem);
}
$nextOffset = $page->getNextOffset();
if($nextOffset) $selectorKeywords->setOffset($nextOffset);
}while($nextOffset);
```
--------------------------------
### Construct and Execute API Request with Pen
Source: https://topvisor.com/ru/api/v2/sdk-php/pen
Use the Pen object to set request parameters like project ID and limit, then execute the request to fetch data from the API.
```php
setData(['project_id' => $projectId]);
$selectorKeywords->setLimit(10);
$page = $selectorKeywords->exec();
//...
```
--------------------------------
### Get Regions
Source: https://topvisor.com/ru/api/v2-services/system_2/common
Allows searching the region database.
```APIDOC
## GET regions
### Description
Allows searching the region database.
### Method
GET
### Endpoint
/regions
```
--------------------------------
### Get Operator
Source: https://topvisor.com/ru/api/v2/operators/get
The 'get' operator is used to retrieve objects and other types of data. You can specify fields, filter, sort, or paginate the results using request parameters. The 'result' field will contain an array of objects or values. If an error occurs, 'result' will be null.
```APIDOC
## POST /v2/json/get/{service}/{method}
### Description
Used to retrieve objects and other types of data. Allows specifying fields, filtering, sorting, and pagination.
### Method
POST
### Endpoint
/v2/json/get/{service}/{method}
### Parameters
#### Query Parameters
- **fields** (string) - Optional - Comma-separated list of fields to retrieve.
- **filter** (string) - Optional - Filtering conditions.
- **sort** (string) - Optional - Sorting parameters.
- **limit** (integer) - Optional - Number of results per page.
- **offset** (integer) - Optional - Offset for pagination.
### Response
#### Success Response (200)
- **result** (array) - An array of objects or values.
#### Error Response
- **result** (null) - Indicates an error occurred.
```
--------------------------------
### PHP SDK for Bank History
Source: https://topvisor.com/ru/api/v2/first-call
This PHP code demonstrates how to use the Topvisor SDK to retrieve bank history. It requires setting up the SDK and providing your user ID and API key.
```php
$userId, 'accessToken' => $accessToken]);
$selectorBankHistory = new TV\Pen($TVSession, 'get', 'bank_2', 'history');
$selectorBankHistory‑>setFields(['date', 'info', 'sum']);
$selectorBankHistory‑>setOrders([
TV\Fields::genOrderData('date', 'DESC')
]);
$selectorBankHistory‑>setLimit(10);
$page = $selectorBankHistory‑>exec();
// catch error
if(is_null($page‑>getResult())){
var_dump($page‑>getErrors());
return;
}
// is array of bank history
var_dump($page‑>getResult());
```
--------------------------------
### Get Updates
Source: https://topvisor.com/ru/api/v2-services/content_2/apometr/get-updates
Retrieves the dates of updates for the apometr service.
```APIDOC
## GET /content_2/apometr/updates
### Description
Method retrieves update dates.
### Method
GET
### Endpoint
/content_2/apometr/updates
### Parameters
#### Query Parameters
- **limit** (int) - Optional - Specifies the number of results to return.
### Response
#### Success Response (200)
- **dates** (array) - An array of update dates.
### Response Example
```json
{
"dates": [
"2023-01-01",
"2023-01-15",
"2023-02-01"
]
}
```
```
--------------------------------
### Create Session with Custom userId and accessToken
Source: https://topvisor.com/ru/api/v2/sdk-php/session
Initialize a TV\Session object with a specific userId and accessToken (API Key) for custom authorization.
```php
$userId, 'accessToken' => $accessToken]);
//...
```
--------------------------------
### Get Project List with API Client
Source: https://topvisor.com/ru/api/v2/sdk-js
Use this snippet to fetch a list of projects, including their IDs and names. Ensure you have initialized the API client with your credentials.
```javascript
// получить список проектов с id и name
const res = await client.gen('/get/projects_2/projects/', ['id', 'name']).call();
if (!res.errors) {
console.log('Список моих проектов:');
res.result.forEach((project) => console.log(project));
}
```
--------------------------------
### Get User Avatar
Source: https://topvisor.com/ru/api/v2-services/users_2/profile
Retrieves the current avatar image of the user.
```APIDOC
## get: profile/avatar
### Description
Gets the current avatar of the user.
### Method
GET
### Endpoint
/users_2/profile/avatar
```
--------------------------------
### Get URL List
Source: https://topvisor.com/ru/api/v2-services/urls_2
Retrieves a list of URLs that have been added to the project.
```APIDOC
## GET /urls_2
### Description
Retrieves a list of URLs currently added to the project.
### Method
GET
### Endpoint
/urls_2
```
--------------------------------
### Get Apometr Calendar
Source: https://topvisor.com/ru/api/v2-services/content_2/apometr
Retrieves the update calendar from the Apometr module.
```APIDOC
## GET /apometr/calendar
### Description
Retrieves the update calendar from the Apometr module.
### Method
GET
### Endpoint
/apometr/calendar
```
--------------------------------
### Get Apometr Updates
Source: https://topvisor.com/ru/api/v2-services/content_2/apometr
Retrieves the dates of updates from the Apometr module.
```APIDOC
## GET /apometr/updates
### Description
Retrieves the dates of updates from the Apometr module.
### Method
GET
### Endpoint
/apometr/updates
```
--------------------------------
### Get Radar Check Price
Source: https://topvisor.com/ru/api/v2-services/audit_2/watcher
Retrieves the cost of a Radar check.
```APIDOC
## GET /services/audit_2/watcher/checker/price
### Description
Gets the cost of a Radar check.
### Method
GET
### Endpoint
/services/audit_2/watcher/checker/price
```
--------------------------------
### Get Schedule
Source: https://topvisor.com/ru/api/v2-services/schedule_2/schedule
Retrieves the current schedule for automatic operation launches in the project.
```APIDOC
## GET /get/schedule_2
### Description
Retrieves the current schedule for automatic operation launches in the project.
### Method
GET
### Endpoint
/get/schedule_2
```
--------------------------------
### get/webScreens_2
Source: https://topvisor.com/ru/api/v2-services/webScreens_2/get
Retrieves a PNG screenshot of a specified web page. The cost for generating one screenshot is 0.1 RUB. In case of an error, a standard API JSON structure will be returned.
```APIDOC
## GET /webScreens_2
### Description
Method returns binary image data in .png format. In case of an error, a standard API JSON structure will be returned. The cost of creating one screenshot is 0.1 RUB.
### Method
GET
### Endpoint
/webScreens_2
### Parameters
#### Query Parameters
- **url** (string) - Required - URL of the web page
- **w** (int) - Required - screen width
- **h** (int) - Required - screen height
- **timeout_ms** (int) - Optional - Maximum waiting time for page loading before taking a screenshot (from 1 to 30000 milliseconds). Default: 1500
- **lang** (string) - Optional - Browser language (e.g., ru, en). Default: the language of the user making the API request
- **full_page** (bool) - Optional - Make a full-page screenshot. Cannot be used with clip parameters. Default: false
- **clip_w** (int) - Optional - Fragment width. Cannot be used with full_page parameter.
- **clip_h** (int) - Optional - Fragment height. Cannot be used with full_page parameter.
- **clip_x** (int) - Optional - X coordinate of the top-left corner of the fragment. Cannot be used with full_page parameter.
- **clip_y** (int) - Optional - Y coordinate of the top-left corner of the fragment. Cannot be used with full_page parameter.
### Response
#### Success Response (200)
- **image_data** (binary) - PNG image data
```
--------------------------------
### Get Apometr Text Calendar
Source: https://topvisor.com/ru/api/v2-services/content_2/apometr
Retrieves the text-based update calendar from the Apometr module.
```APIDOC
## GET /apometr/textCalendar
### Description
Retrieves the text-based update calendar from the Apometr module.
### Method
GET
### Endpoint
/apometr/textCalendar
```
--------------------------------
### Initiate Sitemap Generation
Source: https://topvisor.com/ru/api/v2-services/audit_2/sitemap/edit-sitemap_checker_go
This method triggers the generation of a sitemap for a specified project. It accepts filters for projects and a maximum number of pages to include in the sitemap.
```APIDOC
## POST /audit_2/sitemap/checker/go
### Description
Launches the sitemap generation process for a project.
### Method
POST
### Endpoint
/audit_2/sitemap/checker/go
### Parameters
#### Query Parameters
- **filters** (array of filters) - Required - Criteria for filtering projects.
- **max_pages** (enum(100, 1000, 10000, 100000, 150000, 300000)) - Required - Maximum number of pages to generate for the sitemap.
### Response
#### Success Response (200)
- **result** (object)
- **projectsIds** (array of int) - IDs of the projects submitted for sitemap generation.
```
--------------------------------
### Get Apometr History
Source: https://topvisor.com/ru/api/v2-services/content_2/apometr
Retrieves the storm history for a 2-day period from the Apometr module.
```APIDOC
## GET /apometr/history
### Description
Retrieves the storm history for a 2-day period from the Apometr module.
### Method
GET
### Endpoint
/apometr/history
```
--------------------------------
### Default Session Creation (config.php)
Source: https://topvisor.com/ru/api/v2/sdk-php/session
Creates a session using default authorization parameters specified in the config.php file.
```APIDOC
## Default Session Creation (config.php)
### Description
Creates a session using default authorization parameters specified in the config.php file.
### Method
```php