Link Indexing Bot API

Данное API позволяет отправлять ссылки на индексацию программно без взаимодействия с телеграм-ботом.

Для использования API вам потребуется создать API-ключ. Начните чат с ботом https://t.me/Link_Indexing_bot и введите команду /apikey для создания или обновления ключа. Не забудьте пополнить счет - при отправке ссылок на индексацию расходуются лимиты.

При отправке POST тело запроса может быть в JSON, FormData, URLEncodedForm. Если вы получаете ошибку об отсутствии API_KEY хотя он есть в теле, значит тело отправляется неверно и не может быть прочитано сервером.

Отправка на индексацию (Создать задачу)

Для создания задачи совершите POST запрос на URL:
https://link-indexing-bot.ru/api/tasks/new

Тело запроса

Поле Обязательный? Описание
api_key да Ваш ключ для доступа к API
user_id да ID пользователя в телеграме (можно узнать командой /help в боте)
links да Список ссылок для индексации, каждая в новой строке (\n), макс. длина ссылки 2000 символов.
searchengine да Поисковая система: google, yandex или bing
se_type да Способ индексации: normal или hard
priority нет true или false (по умолчанию false). Приоритетный режим только для Yandex. Задачи обрабатываются в первую очередь. Цена x2. Лимит ссылок: normal - 4999, hard - 1000. При priority=true параметр searchengine игнорируется (автоматически yandex).

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

curl -X POST https://link-indexing-bot.ru/api/tasks/new \
  -H "Content-Type: application/json" \
  -d '{
    "api_key": "your_api_key",
    "user_id": "666666666",
    "links": "https://example.com\nhttps://example2.com",
    "searchengine": "yandex",
    "se_type": "normal"
  }'
fetch('https://link-indexing-bot.ru/api/tasks/new', {
  method: 'POST',
  headers: {
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
    api_key: 'your_api_key',
    user_id: '666666666',
    links: 'https://example.com\nhttps://example2.com',
    searchengine: 'yandex',
    se_type: 'normal'
  })
})
.then(response => response.json())
.then(data => console.log(data));
import requests

response = requests.post(
    'https://link-indexing-bot.ru/api/tasks/new',
    json={
        'api_key': 'your_api_key',
        'user_id': '666666666',
        'links': 'https://example.com\nhttps://example2.com',
        'searchengine': 'yandex',
        'se_type': 'normal'
    }
)
print(response.json())
$ch = curl_init('https://link-indexing-bot.ru/api/tasks/new');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, ['Content-Type: application/json']);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode([
    'api_key' => 'your_api_key',
    'user_id' => '666666666',
    'links' => "https://example.com\nhttps://example2.com",
    'searchengine' => 'yandex',
    'se_type' => 'normal'
]));

$response = curl_exec($ch);
curl_close($ch);
echo $response;

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

{
    "status": 201,
    "msg": "Задача успешно создана",
    "data": {
        "limits_used": 1,
        "task_id": "32451",
        "links_count": 2,
        "not_valid_count": 0,
        "not_valid_links": []
    }
}

Пример приоритетного запроса (Yandex Priority):

curl -X POST https://link-indexing-bot.ru/api/tasks/new \
  -H "Content-Type: application/json" \
  -d '{
    "api_key": "your_api_key",
    "user_id": "666666666",
    "links": "https://example.com\nhttps://example2.com",
    "searchengine": "yandex",
    "se_type": "normal",
    "priority": true
  }'
fetch('https://link-indexing-bot.ru/api/tasks/new', {
  method: 'POST',
  headers: {
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
    api_key: 'your_api_key',
    user_id: '666666666',
    links: 'https://example.com\nhttps://example2.com',
    searchengine: 'yandex',
    se_type: 'normal',
    priority: true
  })
})
.then(response => response.json())
.then(data => console.log(data));
import requests

response = requests.post(
    'https://link-indexing-bot.ru/api/tasks/new',
    json={
        'api_key': 'your_api_key',
        'user_id': '666666666',
        'links': 'https://example.com\nhttps://example2.com',
        'searchengine': 'yandex',
        'se_type': 'normal',
        'priority': True
    }
)
print(response.json())
$ch = curl_init('https://link-indexing-bot.ru/api/tasks/new');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, ['Content-Type: application/json']);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode([
    'api_key' => 'your_api_key',
    'user_id' => '666666666',
    'links' => "https://example.com\nhttps://example2.com",
    'searchengine' => 'yandex',
    'se_type' => 'normal',
    'priority' => true
]));

$response = curl_exec($ch);
curl_close($ch);
echo $response;

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

{
    "status": 201,
    "msg": "Задача успешно создана",
    "data": {
        "limits_used": 2,
        "task_id": "32452",
        "links_count": 2,
        "not_valid_count": 0,
        "not_valid_links": []
    }
}

Примечание: limits_used удвоен из-за приоритетного режима (x2). Базовая цена Yandex Normal = 0.5, с x2 = 1 лимит за ссылку.

Информация о задаче

Для просмотра статуса задачи совершите GET запрос на URL:
https://link-indexing-bot.ru/api/tasks/{id} Вместо {id} укажите номер задачи, полученный при ее создании через /tasks/new

Тело запроса

Поле Обязательный? Описание
api_key да Ваш ключ для доступа к API
user_id да ID пользователя в телеграме (можно узнать командой /help в боте)

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

                    {
                      "status": 200,
                      "msg": "",
                      "data": {
                          "id": "1074557",
                          "added": "2025-10-22 08:31:05",
                          "price": "1",
                          "user_id": "redacted",
                          "status": "complete",
                          "searchengine": "Yandex",
                          "se_type": "Normal",
                          "links_count": "1",
                          "notify_email": "0"
                      }
                    }
                

Возможные статусы

                HTTP статус:
                  - 404 - Не найдена
                  - 403 - Неверные апи ключ или юзер айди
                  - 200 - Успех

                Возможные data.status значения:
                - complete
                - active
                - failed
              

Остаток на балансе

Для просмотра информации о юзере и остатке лимитов совершите GET запрос на URL:
https://link-indexing-bot.ru/api/users/{id} Вместо {id} укажите ID пользователя в телеграме (можно узнать командой /help в боте)

Параметры запроса

Поле Обязательный? Описание
api_key да Ваш ключ для доступа к API

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

curl "https://link-indexing-bot.ru/api/users/666666666?api_key=your_api_key"
fetch('https://link-indexing-bot.ru/api/users/666666666?api_key=your_api_key')
  .then(response => response.json())
  .then(data => console.log(data));
import requests

response = requests.get(
    'https://link-indexing-bot.ru/api/users/666666666',
    params={'api_key': 'your_api_key'}
)
print(response.json())
$user_id = '666666666';
$api_key = 'your_api_key';
$url = "https://link-indexing-bot.ru/api/users/{$user_id}?api_key={$api_key}";

$response = file_get_contents($url);
echo $response;

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

{
    "status": 200,
    "msg": "",
    "data": {
        "user_id": "666666666",
        "balance": "1250.50",
        "balance_ref": "45.00"
    }
}

Ошибки

При неправильно сформированном запросе сервер может ответить одной из ошибок:

Код ошибки Описание
400 Ошибка при создании задачи. Скорей всего неправильно оформленный запрос.
403 Неверный или отсутствующий ключ API.
404 Не найдена информация удовлетворяющая запросу (задача с таким ID не существует).
503 Скорей всего возникла ошибка на стороне сервера при отправке ссылок на индексацию.

Пример ошибки

URL: https://link-indexing-bot.ru/api/tasks/new

Тело запроса в JSON формате:

                    {
                        "api_key":"fef34frgad2f4th56heg4fsdfa3f4gthyf3wf3trfgs",
                        "user_id":"666666666",
                        "links":"https://google.com\nhttps://bing.com",
                        "se_type":"normal"
                    }
                

Ответ сервера:

                    {
                        "status":400,
                        "msg":"Task wasn't created: Invalid data provided",
                        "data":[]
                    }
                

В этом примере отсутствует обязательный параметр searchengine.