WebKit GuruWebKit Guru
Katalog
Registracija
Za programere

API za preprodavače i automatizaciju

Jedna HTTP adresa pokriva cijeli tijek: čitaj katalog, izradi narudžbu, provjeri status, zatraži Refill ili otkazivanje. Protokol odgovara formatu koji koristi većina SMM panela, pa postojećoj integraciji obično treba samo nova adresa i ključ.

Adresa

POST https://webkit.guru/api/v2

Samo POST. Tijelo se može slati kao application/x-www-form-urlencoded ili kao application/json — oba formata su prihvaćena, a odgovor je uvijek JSON.

Autorizacija

Ključ se šalje u tijelu zahtjeva kao polje key. Kod nas se pohranjuje samo njegov SHA-256 hash, pa se ključ ne može obnoviti iz baze — ako ga izgubiš, izradi novi. Ključ se može opozvati iz nadzorne ploče u bilo kojem trenutku i tada odmah prestaje raditi.

Ograničenje brzine

60 zahtjeva u minuti s jedne IP adrese. Iznad toga endpoint vraća 429 i zaglavlje Retry-After koje kaže koliko sekundi čekati. Statuse traži grupno preko orders, a ne jednu narudžbu po pozivu.

Metode

action=services

Popis usluga

The full catalogue with prices, limits and refill flags. Prices already include your markup — these are the amounts charged to your balance.

ParametarTipObaveznoOpis
keystringdaAPI key from your dashboard, “API” tab
actionstringdaThe string “services”

Odgovor

[
  {
    "service": 21251,
    "name": "Telegram Views",
    "type": "Default",
    "category": "Telegram",
    "rate": 0.41,
    "min": 10,
    "max": 50000000,
    "refill": true,
    "cancel": true
  }
]
action=add

Izradi narudžbu

Charges your balance and queues the order. If the provider rejects it, the amount is refunded automatically.

ParametarTipObaveznoOpis
keystringdaAPI key from your dashboard, “API” tab
actionstringdaThe string “add”
serviceintdaService ID from the services method
linkstringdaLink to the profile or post. The format is validated per platform and metric
quantityintdaQuantity within the service min and max
runsintneDrip-feed: how many runs
intervalintneDrip-feed: interval between runs, in minutes

Odgovor

{ "order": 84213 }
action=status

Status narudžbe

A single order via order, or up to a hundred at once via orders.

ParametarTipObaveznoOpis
keystringdaAPI key from your dashboard, “API” tab
actionstringdaThe string “status”
orderintneID narudžbe
ordersint[]neComma-separated IDs, up to 100

Odgovor

{
  "charge": "410.00",
  "start_count": "15420",
  "status": "in_progress",
  "remains": "3180",
  "currency": "RUB"
}

Odgovor za skupinu

{
  "84213": { "charge": "410.00", "status": "completed",   "remains": "0",    "start_count": "15420", "currency": "RUB" },
  "84214": { "charge": "120.00", "status": "in_progress", "remains": "890",  "start_count": "2310",  "currency": "RUB" },
  "84215": { "error": "Incorrect order ID" }
}
action=refill

Zatraži Refill

Available for services flagged refill. Returns a refill ID to check the status with.

ParametarTipObaveznoOpis
keystringdaAPI key from your dashboard, “API” tab
actionstringdaThe string “refill”
orderintneID narudžbe
ordersint[]neComma-separated IDs, up to 100

Odgovor

{ "refill": 1932 }

Odgovor za skupinu

[
  { "order": 84213, "refill": 1932 },
  { "order": 84214, "error": "Order is not sent to provider yet" }
]
action=refill_status

Refill status

The ID is ours, not the provider's — you never need to know which supplier fulfils the order.

ParametarTipObaveznoOpis
keystringdaAPI key from your dashboard, “API” tab
actionstringdaThe string “refill_status”
refillintneRefill ID
refillsint[]neComma-separated IDs, up to 100

Odgovor

{ "status": "Completed" }

Odgovor za skupinu

[
  { "refill": 1932, "status": "Completed" },
  { "refill": 1933, "status": "Pending" }
]
action=cancel

Otkaži narudžbu

The provider may refuse a cancellation, so the order moves to cancel_requested. The actual cancellation and refund are confirmed by status sync.

ParametarTipObaveznoOpis
keystringdaAPI key from your dashboard, “API” tab
actionstringdaThe string “cancel”
orderintneID narudžbe
ordersint[]neComma-separated IDs, up to 100

Odgovor

{ "cancel": 1 }

Odgovor za skupinu

[
  { "order": 84213, "cancel": 1 },
  { "order": 84214, "error": "Incorrect order ID" }
]
action=balance

Saldo

Current account balance, in rubles.

ParametarTipObaveznoOpis
keystringdaAPI key from your dashboard, “API” tab
actionstringdaThe string “balance”

Odgovor

{ "balance": "12480.50", "currency": "RUB" }

Primjeri koda

cURL

curl -X POST https://webkit.guru/api/v2 \
  -d key=YOUR_KEY \
  -d action=add \
  -d service=21251 \
  -d link=https://t.me/example/42 \
  -d quantity=1000

PHP

<?php
$response = file_get_contents('https://webkit.guru/api/v2', false, stream_context_create([
    'http' => [
        'method'  => 'POST',
        'header'  => 'Content-Type: application/x-www-form-urlencoded',
        'content' => http_build_query([
            'key'      => 'YOUR_KEY',
            'action'   => 'add',
            'service'  => 21251,
            'link'     => 'https://t.me/example/42',
            'quantity' => 1000,
        ]),
    ],
]));

$order = json_decode($response, true);

Python

import requests

response = requests.post("https://webkit.guru/api/v2", data={
    "key": "YOUR_KEY",
    "action": "add",
    "service": 21251,
    "link": "https://t.me/example/42",
    "quantity": 1000,
})

order = response.json()

JavaScript

const response = await fetch("https://webkit.guru/api/v2", {
  method: "POST",
  headers: { "Content-Type": "application/json" },
  body: JSON.stringify({
    key: "YOUR_KEY",
    action: "add",
    service: 21251,
    link: "https://t.me/example/42",
    quantity: 1000,
  }),
});

const order = await response.json();

Statusi narudžbe

Polje status metode status vraća jednu od ovih vrijednosti.

pending
Accepted by the panel, not yet sent to the provider
in_progress
U tijeku
processing
Provider accepted it, delivery is about to start
completed
Fully delivered
partial
Partially delivered, the difference is refunded
cancel_requested
Cancellation requested, waiting for the provider
canceled
Cancelled, funds returned
failed
Could not be fulfilled, funds returned

Greške

Poslovne greške vraćaju se s HTTP 200 i poljem error. HTTP statusne kodove koriste samo autorizacija i ograničenje brzine.

401 · Invalid API key
The key is unknown or has been disabled in the dashboard
429 · Rate limit exceeded
More than 60 requests per minute from one address. The response carries a Retry-After header
Incorrect order ID
No order with this ID belongs to your account
Unknown action
The action value is not one of those listed above

Spreman za povezivanje?

Izradi račun, dopuni saldo i izradi ključ na kartici „API”. Posebno odobrenje nije potrebno.

Izradi račun
WebKit GuruWebKit Guru

Накрутка, SMS-активации и временная почта в одном сервисе. Более 3500 услуг, гарантия восполнения, моментальный старт.

Сервис

  • Каталог услуг
  • О сервисе
  • Справка
  • Вопросы и ответы
  • Документация
  • API для разработчиков
  • SMS-активации
  • Временная почта
  • Отзывы

Документы

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

Мы в соцсетях

Поддержка круглосуточно, 24/7

Предлагаемые услуги не являются официальными услугами социальных сетей и не связаны с их правообладателями. Названия и логотипы платформ принадлежат их владельцам и используются для указания совместимости. Сервис не гарантирует конкретный результат продвижения: он зависит от алгоритмов площадок и может меняться. Оформляя заказ, вы соглашаетесь с публичной офертой.

© 2026 webkit.guru