Autorizácia
Kľúč sa odovzdáva v tele požiadavky ako pole key. U nás sa ukladá len jeho SHA-256 hash, takže kľúč z databázy obnoviť nemožno — ak sa stratí, vydaj nový. Kľúč môžeš kedykoľvek odvolať v paneli a okamžite prestane fungovať.
Jeden HTTP endpoint pokrýva celý cyklus: získať katalóg, vytvoriť objednávku, overiť stav, vyžiadať doplnenie alebo zrušenie. Protokol sa zhoduje s formátom, ktorý väčšina SMM panelov používa, takže existujúcej integrácii zvyčajne stačí zmeniť URL a kľúč.
Adresa
POST https://webkit.guru/api/v2
Iba POST. Telo môžeš posielať ako application/x-www-form-urlencoded alebo ako application/json — akceptujú sa oba formáty, odpoveď je vždy JSON.
Kľúč sa odovzdáva v tele požiadavky ako pole key. U nás sa ukladá len jeho SHA-256 hash, takže kľúč z databázy obnoviť nemožno — ak sa stratí, vydaj nový. Kľúč môžeš kedykoľvek odvolať v paneli a okamžite prestane fungovať.
60 požiadaviek za minútu z jednej IP adresy. Pri prekročení príde kód 429 a hlavička Retry-After s počtom sekúnd do ďalšieho pokusu. Stavy je lepšie zisťovať dávkovo cez orders než jedna požiadavka na objednávku.
action=servicesThe full catalogue with prices, limits and refill flags. Prices already include your markup — these are the amounts charged to your balance.
| Parameter | Typ | Povinný | Popis |
|---|---|---|---|
| key | string | áno | API key from your dashboard, “API” tab |
| action | string | áno | The string “services” |
Odpoveď
[
{
"service": 21251,
"name": "Telegram Views",
"type": "Default",
"category": "Telegram",
"rate": 0.41,
"min": 10,
"max": 50000000,
"refill": true,
"cancel": true
}
]action=addCharges your balance and queues the order. If the provider rejects it, the amount is refunded automatically.
| Parameter | Typ | Povinný | Popis |
|---|---|---|---|
| key | string | áno | API key from your dashboard, “API” tab |
| action | string | áno | The string “add” |
| service | int | áno | Service ID from the services method |
| link | string | áno | Link to the profile or post. The format is validated per platform and metric |
| quantity | int | áno | Quantity within the service min and max |
| runs | int | nie | Drip-feed: how many runs |
| interval | int | nie | Drip-feed: interval between runs, in minutes |
Odpoveď
{ "order": 84213 }action=statusA single order via order, or up to a hundred at once via orders.
| Parameter | Typ | Povinný | Popis |
|---|---|---|---|
| key | string | áno | API key from your dashboard, “API” tab |
| action | string | áno | The string “status” |
| order | int | nie | ID objednávky |
| orders | int[] | nie | Comma-separated IDs, up to 100 |
Odpoveď
{
"charge": "410.00",
"start_count": "15420",
"status": "in_progress",
"remains": "3180",
"currency": "RUB"
}Odpoveď pre dávku
{
"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=refillAvailable for services flagged refill. Returns a refill ID to check the status with.
| Parameter | Typ | Povinný | Popis |
|---|---|---|---|
| key | string | áno | API key from your dashboard, “API” tab |
| action | string | áno | The string “refill” |
| order | int | nie | ID objednávky |
| orders | int[] | nie | Comma-separated IDs, up to 100 |
Odpoveď
{ "refill": 1932 }Odpoveď pre dávku
[
{ "order": 84213, "refill": 1932 },
{ "order": 84214, "error": "Order is not sent to provider yet" }
]action=refill_statusThe ID is ours, not the provider's — you never need to know which supplier fulfils the order.
| Parameter | Typ | Povinný | Popis |
|---|---|---|---|
| key | string | áno | API key from your dashboard, “API” tab |
| action | string | áno | The string “refill_status” |
| refill | int | nie | Refill ID |
| refills | int[] | nie | Comma-separated IDs, up to 100 |
Odpoveď
{ "status": "Completed" }Odpoveď pre dávku
[
{ "refill": 1932, "status": "Completed" },
{ "refill": 1933, "status": "Pending" }
]action=cancelThe provider may refuse a cancellation, so the order moves to cancel_requested. The actual cancellation and refund are confirmed by status sync.
| Parameter | Typ | Povinný | Popis |
|---|---|---|---|
| key | string | áno | API key from your dashboard, “API” tab |
| action | string | áno | The string “cancel” |
| order | int | nie | ID objednávky |
| orders | int[] | nie | Comma-separated IDs, up to 100 |
Odpoveď
{ "cancel": 1 }Odpoveď pre dávku
[
{ "order": 84213, "cancel": 1 },
{ "order": 84214, "error": "Incorrect order ID" }
]action=balanceCurrent account balance, in rubles.
| Parameter | Typ | Povinný | Popis |
|---|---|---|---|
| key | string | áno | API key from your dashboard, “API” tab |
| action | string | áno | The string “balance” |
Odpoveď
{ "balance": "12480.50", "currency": "RUB" }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=1000PHP
<?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();Pole status metódy status vracia jednu z týchto hodnôt.
Chyby biznis logiky prichádzajú s HTTP kódom 200 a poľom error. HTTP kódmi odpovedá len autorizácia a obmedzenie frekvencie.
Zaregistruj sa, dobiť saldo a vydaj kľúč na karte „API“. Samostatné schválenie nie je potrebné.
Vytvoriť účet