notpanel
УслугиТарифыFAQРозыгрышAPI
notpanel

Подписчики, лайки и просмотры для любой платформы.

Каталог сочетает услуги, которые мы выполняем напрямую, и мощности проверенных партнёров. Доступность, время, refill и drip-feed указаны для каждой услуги; маршрутизация и личности партнёров конфиденциальны.

Продукт

  • Услуги
  • Тарифы
  • Индекс цен
  • Партнёрская программа

Ресурсы

  • API
  • Блог
  • FAQ
  • Статус

Компания

  • О нас
  • Почему NotPanel
  • Связаться с нами

Правовая информация

  • Условия обслуживания
  • Политика конфиденциальности
  • Политика возвратов

Языки

  • English
  • Español
  • Português
  • Русский
  • Türkçe
  • العربية
  • हिन्दी
  • Bahasa Indonesia
  • Français
  • 中文

© 2026 NotPanel. Все права защищены.

support@notpanel.com
notpanel
Документация API
+
Документация API

Введение

  • Обзор
  • Начало работы
  • Аутентификация
  • Ограничения частоты
  • Ошибки

Каталог

  • Список услуг
  • Расширенный каталог
  • Типы услуг

Заказы

  • Разместить заказ
  • Статус заказа
  • Расчёт возврата
  • Refill
  • Отмена

Учётная запись

  • Состояние аккаунта
  • Баланс

Вебхуки

  • Управление вебхуками

Справочник

  • История изменений
  • SDK и библиотеки

Нужна помощь?

support@notpanel.com →

Расширенный каталог услуг

Возвращает постраничный снимок активных услуг с тарифами аккаунта и структурированными данными для поиска. Используйте старое действие services, если SDK требует исходный формат кешированного массива.

POSThttps://notpanel.com/api/v3action=catalog
Требуется API-ключОграничение частоты (общий аккаунт + IP + действие)Тело: application/x-www-form-urlencoded
action=catalog возвращает снимок для поиска. catalog_updated_at — время самого нового обновления метаданных в отфильтрованном результате, а не гарантированное время цены или котировка. Авторитетна сумма из подтверждённого ответа action=add.

Параметры

НазваниеТипОписание
keyОбязательныйstringВаш API-ключ.
actionОбязательныйstringДолжно быть буквальное значение "catalog".
pageintegerНомер страницы от 1 до 100000. По умолчанию 1.
limitintegerСтрок на странице от 1 до 200. По умолчанию 100.
languagelanguage codeНеобязательный язык названия: en, es, pt, ru, tr, ar, hi, id, fr или zh. pt — бразильский португальский, zh — упрощённый китайский. Не передавайте его для старой английской структуры. Администраторы могут проверить или уточнить отдельные названия.
searchstringПоиск по имени без учёта регистра или точный числовой ID услуги. Не более 100 символов.
platforminteger | slugЧисловой ID или slug платформы.
categoryinteger | slugЧисловой ID или slug категории. Для slug требуется platform; числовой ID можно передать без platform.
typestringТочный поддерживаемый тип услуги, например default, custom_comments, package или web_traffic.
sortstringpopular, price_asc, price_desc, time_asc, time_desc, name_asc или newest. По умолчанию popular.
refillbooleanФильтр поддержки refill. Принимает 1, 0, true или false.
dripfeedbooleanФильтр поддержки drip-feed. Принимает 1, 0, true или false.
availablebooleanФильтр текущей доступности заказа. Принимает 1, 0, true или false; action=add повторно проверяет доступность при фиксации заказа.
min_rateUSD decimalМинимальный неотрицательный тариф аккаунта в USD за 1 000 единиц. Используйте каноническое десятичное число от 0 до 999999999999.99999999, не более 12 цифр целой и 8 цифр дробной части; знаки и экспоненты запрещены.
max_rateUSD decimalМаксимальный неотрицательный тариф аккаунта в USD за 1 000 единиц. Не может быть меньше min_rate. Используйте каноническое десятичное число от 0 до 999999999999.99999999, не более 12 цифр целой и 8 цифр дробной части; знаки и экспоненты запрещены.

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

Замените YOUR_API_KEY на ключ, сгенерированный на странице API в вашей панели.

curl -X POST https://notpanel.com/api/v3 \
  -H "Content-Type: application/x-www-form-urlencoded" \
  -d "key=YOUR_API_KEY&action=catalog&platform=instagram&available=true&sort=price_asc&limit=2&language=hi"
const res = await fetch("https://notpanel.com/api/v3", {
  method: "POST",
  headers: { "Content-Type": "application/x-www-form-urlencoded" },
  body: new URLSearchParams({
    key: "YOUR_API_KEY",
    action: "catalog",
    platform: "instagram",
    available: "true",
    sort: "price_asc",
    limit: "2",
    language: "hi",
  }),
});

const data = await res.json();
console.log(data);
import requests

res = requests.post(
  "https://notpanel.com/api/v3",
  data={
    "key": "YOUR_API_KEY",
    "action": "catalog",
    "platform": "instagram",
    "available": "true",
    "sort": "price_asc",
    "limit": "2",
    "language": "hi",
},
)
print(res.json())
<?php
$body = http_build_query([
    'key' => 'YOUR_API_KEY',
    'action' => 'catalog',
    'platform' => 'instagram',
    'available' => 'true',
    'sort' => 'price_asc',
    'limit' => '2',
    'language' => 'hi',
]);

$response = file_get_contents('https://notpanel.com/api/v3', false, stream_context_create([
    'http' => [
        'method'  => 'POST',
        'header'  => "Content-Type: application/x-www-form-urlencoded\r\n",
        'content' => $body,
        'ignore_errors' => true,
    ],
]));

print_r(json_decode($response, true));

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

{
  "as_of": "2026-08-25T10:30:00.000Z",
  "requested_language": "hi",
  "catalog_updated_at": "2026-08-25T09:45:12.000Z",
  "total": 1,
  "page": 1,
  "per_page": 2,
  "total_pages": 1,
  "lowest_rate_per_1000": "0.50",
  "currency": "USD",
  "items": [
    {
      "service": "42547",
      "name": "Instagram कस्टम कमेंट्स",
      "canonical_name": "Instagram Custom Comments",
      "name_language": "hi",
      "description": "Custom comments for a public post",
      "type": "custom_comments",
      "rate": "0.50",
      "min": "10",
      "max": "5000",
      "platform": {
        "id": 1,
        "slug": "instagram",
        "name": "Instagram"
      },
      "category": {
        "id": 12,
        "slug": "comments",
        "name": "Comments"
      },
      "refill": true,
      "dripfeed": false,
      "available": true,
      "cancel": true,
      "cancel_mode": "grace_window",
      "cancel_window_seconds": 15,
      "average_time": "0-30 minutes",
      "average_time_minutes": 18,
      "average_time_sample_size": 24,
      "average_time_basis": "measured",
      "input_fields": [
        {
          "key": "comments",
          "label": "Comments",
          "type": "textarea",
          "required": true,
          "placeholder": "One comment per line. Each line is a separate comment."
        }
      ],
      "updated_at": "2026-08-25T09:45:12.000Z"
    }
  ]
}

Распространённые ошибки

СтатусТелоПричина
400{"error":"A platform is required when category is a slug"}Slug категории неоднозначен без slug или ID платформы. Передайте platform либо числовой ID категории.
400{"error":"Invalid catalog sort"}Значение sort не входит в документированный список.
400{"error":"language must be one of en, es, pt, ru, tr, ar, hi, id, fr, zh","error_code":"INVALID_LANGUAGE"}Код языка не поддерживается. Используйте один из десяти документированных кодов для названий услуг.

Фильтры и доступность

Совмещайте поиск, платформу, категорию, тип, возможности, доступность и диапазон тарифа. Slug категории ограничивается platform; числовой ID категории однозначен глобально. available — текущий поисковый сигнал, а action=add остаётся окончательной проверкой приёма.

Ответ и актуальность

Ответ содержит as_of, данные пагинации, тариф аккаунта lowest_rate_per_1000 и строки услуг. catalog_updated_at — последнее обновление метаданных в наборе, а не котировка. input_fields перечисляет только дополнительные поля услуги; общие поля add и правила типа всё равно применяются. Поля времени помечают среднее как измеренное, оценочное или неизвестное. Режим и окно отмены — поисковые метаданные; подтверждённый add определяет фактическую сумму и время отмены. Среднее время измеряется от создания заказа до первой наблюдаемой доставки ненулевого количества, включая активные заказы и постепенную доставку. Это оценка начала, а не завершения. Общие средние значения провайдера не используются.

Локализованный поиск

Передайте language, чтобы искать и сортировать по адаптированному с использованием отобранной рыночной терминологии для рынка названию, сохраняя поиск и по каноническому английскому имени. Ответ добавит верхнеуровневое requested_language и поля canonical_name и name_language для каждой услуги. name_language показывает реально возвращённый язык; en означает, что нужный перевод отсутствовал или устарел и использовано английское имя. Единственный стабильный ключ интеграции — ID услуги. Администраторы могут проверить или уточнить отдельные названия.