NotPanel API · v3
Документация API
Подключите NotPanel к своей SMM-панели, сайту или боту. Используйте API для просмотра услуг, создания заказов и проверки их статуса.
Отправляйте каждый запрос методом POST с телом в формате form-encoded, где есть key и action. Ответы приходят в JSON.
Начните за три шага
Создайте аккаунт
Регистрация бесплатна. Пополнять баланс нужно только для реальных заказов.
Создать аккаунт бесплатноСоздайте API-ключ
Откройте страницу API в личном кабинете. Ключ показывается один раз — сразу скопируйте его.
Открыть страницу APIОтправьте первый запрос
Получите список услуг с их ID, ценами и лимитами.
Смотреть пример
Ваш первый запрос
action=services только читает данные, поэтому пробовать безопасно. Замените YOUR_API_KEY ключом со страницы API.
- Метод
- POST
- Тело
- application/x-www-form-urlencoded
- Ответ
- JSON-массив услуг
# List the services you can order
curl -X POST https://notpanel.com/api/v3 \
-H "Content-Type: application/x-www-form-urlencoded" \
-d "key=YOUR_API_KEY&action=services"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: "services",
}),
});
const services = await res.json();
console.log(`Found ${services.length} services`);import requests
res = requests.post(
"https://notpanel.com/api/v3",
data={"key": "YOUR_API_KEY", "action": "services"},
)
services = res.json()
print(f"Found {len(services)} services")<?php
$body = http_build_query([
'key' => 'YOUR_API_KEY',
'action' => 'services',
]);
$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,
],
]));
$services = json_decode($response, true);
echo "Found " . count($services) . " services\n";
[
{
"service": "7",
"name": "Instagram Followers",
"type": "Default",
"category": "Instagram Followers",
"rate": "1.20",
"min": "100",
"max": "10000",
"refill": true,
"cancel": true,
"dripfeed": true,
"type_key": "default",
"canonical_name": "Instagram Followers",
"name_language": "en",
"platform": "instagram",
"tags": ["refill", "cancel", "drip_feed"],
"fields": [],
"drip_feed": {
"mode": "batches",
"min_runs": 2,
"max_runs": 100,
"min_interval_minutes": 1,
"max_interval_minutes": 1440,
"max_total_minutes": 2880
},
"step": 1,
"availability": "available",
"average_time_minutes": 30
}
]Справочник API
Каждое действие — это POST на URL API со своим значением action.
Каталог
Поиск услуг и цен
Заказы
Создание заказов и управление ими
Учётная запись
Баланс и лимиты аккаунта
Вебхуки
Уведомления об изменениях заказов
Гайды
Что есть в API
Аутентификация по ключу API
Один секрет на ключ, привязанный к аккаунту. Все ваши ключи делят ограничение аккаунта на число запросов в минуту, и любой ключ можно отозвать в панели управления.
Понятные ограничения частоты
Одно ограничение на аккаунт, растущее вместе с вашими расходами, плюс несколько узких ограничений для тяжёлых действий. Каждый ответ содержит заголовки X-RateLimit.
Подписанные вебхуки
Одно подписанное событие на вызов, когда заказ выполнен, частично выполнен или отменён, а также когда завершено восполнение. Доставка происходит минимум один раз, с повторными попытками.
Заказы, безопасные при повторе
Передавайте собственный
request_id, и повтор запроса никогда не создаст второй заказ. Без него идентичный add в течение 60 с вернёт первый заказ.Бесплатная отмена в начале
Любой заказ можно отменить с полным возвратом в течение первых 15 с. Позже запросы на отмену работают для услуг, которые их поддерживают.
Прямая совместимость с панелями
Панели, работающие со стандартным API «ключ + действие», могут просто сменить базовый URL. Адреса /api/v1, /api/v2 и /api/v3 работают одинаково.