NAKRYTKA.VIP API
Полный REST API для автоматизации заказов. Аутентификация по токену, JSON-ответы, вебхуки и SDK для популярных языков.
https://nakrytka.vip/api/v1Аутентификация
Используйте Bearer-токен в заголовке Authorization. Создайте ключ в личном кабинете.
# Pass your API key in the Authorization header
curl -X GET "https://nakrytka.vip/api/v1/balance" \
-H "Authorization: Bearer YOUR_API_KEY"Базовый URL
Все запросы идут на HTTPS. Ответы — JSON, кодировка UTF-8.
Все эндпоинты ниже добавляются к этому базовому пути.
Лимиты запросов
Лимит зависит от тарифа. Заголовки ответа: X-RateLimit-Remaining.
- Free60 req/min
- Pro300 req/min
- Agency1200 req/min
Пример: создание заказа
curl -X POST "https://nakrytka.vip/api/v1/orders" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"service_id": "svc_abc123",
"link": "https://instagram.com/yourprofile",
"quantity": 1000
}'Эндпоинты
Полный список доступных методов API.
/api/v1/balanceGet account balance
Returns the current account balance and currency.
Запрос
curl -X GET "https://nakrytka.vip/api/v1/balance" \
-H "Authorization: Bearer YOUR_API_KEY"Ответ
{
"success": true,
"balance": 1250.50,
"currency": "RUB"
}/api/v1/servicesList services
Returns all active services with rates, min/max and average time.
Параметры
platformstring— Filter by platform (e.g. instagram)categorystring— Filter by category slug
Запрос
curl -X GET "https://nakrytka.vip/api/v1/services?platform=instagram" \
-H "Authorization: Bearer YOUR_API_KEY"Ответ
{
"success": true,
"services": [
{
"id": "svc_abc123",
"name": "Instagram Followers — Premium",
"platform": "instagram",
"ratePer1000": 89.0,
"minOrder": 10,
"maxOrder": 100000,
"averageTime": "0-1 hour"
}
]
}/api/v1/ordersPlace new order
Creates a new order for a service. Auto-starts within 30 seconds.
Параметры
service_idrequiredstring— Service ID from /serviceslinkrequiredstring— Target URL (post, profile, channel)quantityrequiredinteger— Number of units (min/max per service)
Запрос
curl -X POST "https://nakrytka.vip/api/v1/orders" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"service_id": "svc_abc123",
"link": "https://instagram.com/yourprofile",
"quantity": 1000
}'Ответ
{
"success": true,
"order": {
"id": "ord_xyz789",
"orderNumber": "SMB-2026-001234",
"status": "PENDING",
"totalAmount": 89.0,
"currency": "RUB",
"startCount": 0,
"remains": 1000,
"createdAt": "2026-01-15T10:30:00Z"
}
}/api/v1/orders/:idGet order status
Returns detailed status of a single order, including progress and start count.
Параметры
idrequiredstring— Order ID (path param)
Запрос
curl -X GET "https://nakrytka.vip/api/v1/orders/ord_xyz789" \
-H "Authorization: Bearer YOUR_API_KEY"Ответ
{
"success": true,
"order": {
"id": "ord_xyz789",
"status": "IN_PROGRESS",
"progress": 65,
"startCount": 1200,
"remains": 350,
"completedAt": null,
"updatedAt": "2026-01-15T11:05:00Z"
}
}/api/v1/ordersList user orders
Returns paginated list of the authenticated user's orders.
Параметры
pageinteger— Page number (default 1)limitinteger— Page size (default 20, max 100)statusstring— Filter by status (PENDING, IN_PROGRESS, COMPLETED, ...)
Запрос
curl -X GET "https://nakrytka.vip/api/v1/orders?limit=10&status=COMPLETED" \
-H "Authorization: Bearer YOUR_API_KEY"Ответ
{
"success": true,
"orders": [ { "id": "ord_xyz789", "status": "COMPLETED", "..." : "..." } ],
"pagination": { "page": 1, "limit": 10, "total": 47, "pages": 5 }
}/api/v1/orders/:id/cancelCancel order
Cancels a pending or partially-completed order. Refund is credited to the balance for the unfinished quantity.
Параметры
idrequiredstring— Order ID (path param)
Запрос
curl -X POST "https://nakrytka.vip/api/v1/orders/ord_xyz789/cancel" \
-H "Authorization: Bearer YOUR_API_KEY"Ответ
{
"success": true,
"order": {
"id": "ord_xyz789",
"status": "CANCELED",
"refundedAmount": 31.15,
"currency": "RUB"
}
}Вебхуки
Мы отправляем POST-запрос на ваш URL при смене статуса заказа. Подпись HMAC-SHA256 передается в заголовке X-NAKRYTKA.VIP-Signature для проверки подлинности.
- order.status_changed — статус заказа обновлён
- order.completed — заказ завершён
- order.refunded — заказ отменён с возвратом
- payment.received — зачисление депозита
Мы ретраим до 5 раз с экспоненциальной задержкой. Ожидаем HTTP 200 для подтверждения.
Пример payload
{
"event": "order.status_changed",
"timestamp": "2026-01-15T11:05:00Z",
"data": {
"order": {
"id": "ord_xyz789",
"orderNumber": "SMB-2026-001234",
"status": "COMPLETED",
"progress": 100,
"startCount": 1200,
"remains": 0,
"completedAt": "2026-01-15T11:05:00Z"
}
},
"signature": "sha256=ab12cd34..."
}Коды ошибок
| Code | Name | Description |
|---|---|---|
| 200 | OK | Request completed successfully |
| 400 | Bad Request | Invalid or missing parameter |
| 401 | Unauthorized | Missing or invalid API key |
| 402 | Payment Required | Insufficient account balance |
| 403 | Forbidden | API key lacks required permission |
| 404 | Not Found | Resource does not exist |
| 409 | Conflict | Order cannot be canceled in current status |
| 429 | Too Many Requests | Rate limit exceeded — back off and retry |
| 500 | Server Error | Internal server error — contact support |
Лимиты запросов
Каждый ответ содержит заголовки с информацией о текущем лимите:
- X-RateLimit-Limit: 60
- X-RateLimit-Remaining: 42
- X-RateLimit-Reset: 1737000000
При превышении возвращается 429. Используйте экспоненциальный backoff.
Готовы автоматизировать?
Создайте API ключ за 30 секунд и начните интеграцию уже сегодня.