Základná adresa: https://apksurge.com/api/v1. Zaregistrujte sa, vytvorte API kľúč vo svojom účte a odošlite prvú požiadavku:
Strojový popis API: OpenAPI 3.1 · kolekcia Postman — importujte do Postmanu, Insomnie alebo generátora klientov (openapi-generator) a získate hotové SDK pre svoj jazyk.
curl -H "X-API-Key: VÁŠ_KĽÚČ" "https://apksurge.com/api/v1/app?id=com.whatsapp"
Údaje pokrývajú viac ako 4 mil. aplikácií z Google Play z amerického obchodu v angličtine (ak tam aplikácia nie je, z inej krajiny), aktualizácia každú noc. Aplikácie, ktoré z obchodu zmizli, zostávajú v databáze s posledními údajmi.
Každá požiadavka okrem /v1/health musí obsahovať API kľúč v hlavičke:
X-API-Key: ak_live_…
Akceptuje sa aj: Authorization: Bearer …. Kľúč sa nesmie posielať v parametroch URL: dostal by sa do logov a do histórie prehliadača.
Každé volanie stojí 0–3 tokeny podľa endpointu, bez ohľadu na počet riadkov v odpovedi (do 100); hromadná požiadavka apps stojí 1 token za aplikáciu. Najprv sa míňajú mesačné tokeny, potom kúpené. Ak požiadavka zlyhá z našej strany, tokeny sa vrátia. Plány a balíky
| Hlavička | Význam |
|---|---|
X-Tokens-Cost | koľko tokenov stála táto požiadavka |
X-Tokens-Remaining | koľko tokenov zostáva (mesačné + kúpené) |
X-Cache | HIT — odpoveď z cache (rýchlejšie), MISS — nová požiadavka na index |
X-RateLimit-Limit / -Remaining | limit požiadaviek za minútu pre kľúč a zostávajúci počet |
X-Plan | free | pro | business |
Zostatok tokenov nájdete aj v poli _tokens každej odpovede a v /v1/account (zadarmo). Staré názvy _credits a X-Credits-* sú zastarané, ale zatiaľ fungujú.
Každá odpoveď obsahuje pole ok. Zoznamy obsahujú results, total, page, per, pages. Chyba: ok = false, error je vysvetlenie, code je strojový kód. Dátumy sú v ISO 8601 v UTC.
{ "ok": true, "app": { "id": "com.whatsapp", "title": "WhatsApp", "installs": { "label": "10,000,000,000+", "min": 10000000000, "real": 12445120489 }, … },
"_tokens": { "cost": 1, "monthly_remaining": 999, "balance": 0, "available": 999, "cached": false } }
{ "ok": false, "code": "insufficient_credits", "error": "Not enough tokens: this call costs 2, you have 1. …" }
| HTTP | code | Kedy nastáva |
|---|---|---|
| 400 | invalid_param, invalid_request | nesprávny alebo chýbajúci parameter |
| 401 | missing_api_key, invalid_api_key | chýba kľúč alebo je zrušený |
| 402 | insufficient_credits | nedostatok tokenov — kúpte balík |
| 403 | account_blocked, plan_required | účet je zablokovaný alebo sa endpoint sprístupní po prvom nákupe tokenov |
| 404 | not_found | aplikácia alebo vývojár nie je v databáze, alebo je endpoint neznámy |
| 429 | rate_limited | prekročený limit požiadaviek za minútu |
| 503 | service_unavailable | dočasný problém s databázou — skúste neskôr; tokeny sa nestrhávajú |
Všetky endpointy sú GET /api/v1/{názov}. Stránkovanie: page (od 1) a per (1–100), najďalej po 10 000. výsledok. Zoradenie: sort + order=asc|desc.
Váš plán, zostatok tokenov, dátum obnovenia mesačných tokenov a limit za minútu.
Úplná karta aplikácie: názov, popis, „Čo je nové“, inštalácie (prah a presné číslo), hodnotenie, počet hodnotení a recenzií, rozdelenie hviezdičiek, cena, nákupy, reklama, kategória, vekové hodnotenie, verzia, minimálny Android, dátumy vydania a aktualizácie, ikona, snímky obrazovky, video, vývojár a jeho web. Pri odstránených aplikáciách posledné uložené údaje a dátum zmiznutia.
id * | názov balíka aplikácie |
Až 100 kariet jednou požiadavkou: GET ?ids=a,b,c alebo POST so zoznamom v tele (jeden na riadok alebo JSON {"ids": […]}). 1 token za každú aplikáciu; nenájdené sa vrátia v not_found.
ids * | názvy balíkov oddelené čiarkou, najviac 100 |
Vyhľadávanie a filtre v celej databáze. Vyžaduje sa aspoň jeden filter. Bez q sa zoraďuje podľa inštalácií.
q | slová na hľadanie v názve, popise a mene vývojára |
category | ID kategórie, napr. GAME_PUZZLE (pozri /v1/categories) |
developer_id | ID vývojára v Google Play |
min_installs | minimum inštalácií (prahy Google Play: 1000, 10000…) |
max_installs | maximum inštalácií |
min_score | minimálne hodnotenie, 0–5 |
min_ratings | minimum hodnotení |
free | true — iba bezplatné, false — iba platené |
ads | true — s reklamou, false — bez nej |
iap | true — s nákupmi v aplikácii |
lang | jazyk názvu, kód ISO: en, de, pt… |
released_from | vydané od dátumu, YYYY-MM-DD |
released_to | vydané do tohto dátumu vrátane |
updated_from | aktualizované od dátumu |
updated_to | aktualizované do tohto dátumu vrátane |
status | live (v obchode, predvolené), removed alebo all |
sort | relevance | installs | real_installs | score | ratings | reviews | released | updated | price |
order | desc | asc |
page | strana, od 1 |
per | riadkov na stranu, 1–100 (predvolene 20) |
Návrhy podľa začiatku názvu: 10 najpopulárnejších zhôd. Zadarmo.
q * | začiatok názvu, aspoň 2 znaky |
Vývojár a všetky jeho aplikácie: počet (v obchode aj odstránených), celkové inštalácie, priemerné hodnotenie, prvé vydanie, kategórie, web. V pláne Business aj e-mail, telefón, adresa a právny názov.
id | ID vývojára (z karty aplikácie: developer.id) |
name | alebo presné meno vývojára |
status | all (predvolené), live alebo removed |
sort | relevance | installs | real_installs | score | ratings | reviews | released | updated | price |
page | strana, od 1 |
per | riadkov na stranu, 1–100 (predvolene 20) |
Nové aplikácie podľa dátumu prvého vydania, najnovšie ako prvé.
since | od dátumu, YYYY-MM-DD (predvolene pred 7 dňami) |
until | do tohto dátumu vrátane |
category | ID kategórie, napr. GAME_PUZZLE (pozri /v1/categories) |
min_installs | minimum inštalácií (prahy Google Play: 1000, 10000…) |
lang | jazyk názvu, kód ISO: en, de, pt… |
sort | relevance | installs | real_installs | score | ratings | reviews | released | updated | price |
page | strana, od 1 |
per | riadkov na stranu, 1–100 (predvolene 20) |
Aplikácie, ktoré zmizli z Google Play (nie sú v žiadnej z 19 krajín, ktoré kontrolujeme), podľa dátumu zmiznutia. Karta uchováva posledné údaje.
since | od dátumu, YYYY-MM-DD (predvolene pred 7 dňami) |
until | do tohto dátumu vrátane |
category | ID kategórie, napr. GAME_PUZZLE (pozri /v1/categories) |
min_installs | minimum inštalácií (prahy Google Play: 1000, 10000…) |
sort | removed_at | installs | score |
page | strana, od 1 |
per | riadkov na stranu, 1–100 (predvolene 20) |
Slová a frázy z názvov aplikácií osobitne pre každý jazyk: koľko aplikácií a vývojárov ich používa, koľko z nich je silných (100 tis.+ inštalácií), celkové inštalácie, podiel lídra a skóre príležitosti (opportunity).
lang | jazyk, predvolene en |
q | slovo alebo fráza |
phrase | true — iba dvojslovné frázy, false — iba jednotlivé slová |
min_apps | minimum aplikácií |
max_apps | maximum aplikácií |
sort | opportunity | apps | installs | strong | devs | max_installs |
order | desc | asc |
page | strana, od 1 |
per | riadkov na stranu, 1–100 (predvolene 20) |
Všetky kategórie s počtom aplikácií a celkovými inštaláciami. Zadarmo.
status | live (v obchode, predvolené), removed alebo all |
Aplikácie, ktorých doména webu vývojára je voľná na registráciu, spolu s popularitou aplikácie. Sprístupní sa po prvom nákupe tokenov.
category | ID kategórie, napr. GAME_PUZZLE (pozri /v1/categories) |
min_installs | minimum inštalácií (prahy Google Play: 1000, 10000…) |
status | live (v obchode, predvolené), removed alebo all |
tld | doménová zóna, napr. com |
sort | relevance | installs | real_installs | score | ratings | reviews | released | updated | price |
page | strana, od 1 |
per | riadkov na stranu, 1–100 (predvolene 20) |
Top rebríček Google Play jednej krajiny a kategórie: až 200 pozícií, zmena miesta oproti predchádzajúcej snímke (change: o koľko miest stúpol, "new" — nový v rebríčku), ikona a inštalácie.
country * | krajina, kód ISO: US, DE, BR… |
category * | kategória, napr. GAME_PUZZLE |
collection | free | paid | grossing |
page | strana, od 1 |
per | riadkov na stranu, 1–100 (predvolene 20) |
Všetky rebríčky, v ktorých je aplikácia v poslednej snímke: krajina, kategória, kolekcia, miesto; počet rebríčkov, krajín a najlepšie miesto.
id * | názov balíka aplikácie |
country | iba jedna krajina |
collection | free | paid | grossing |
Krajiny, kde je aplikácia dostupná v Google Play (podľa hreflang v sitemape obchodu). Pri 190+ krajinách sa vráti worldwide = true bez zoznamu.
id * | názov balíka aplikácie |
Konkurencia na trhoch podľa bezplatných rebríčkov: prah vstupu do top 100 a top 200 (inštalácie aplikácie na tomto mieste), podiel nových (za 12 mesiacov) a lokálnych (≤3 krajiny) aplikácií v rebríčku, veľkosť lokálneho trhu. Bez parametrov všetky krajiny; country — kategórie jednej krajiny; category — jedna kategória vo všetkých krajinách.
country | krajina, kód ISO |
category | ID kategórie, napr. GAME_PUZZLE (pozri /v1/categories) |
sort | entry100 | entry200 | new_share | local_share | local_apps | local_installs | local_new |
order | desc | asc |
page | strana, od 1 |
per | riadkov na stranu, 1–100 (predvolene 20) |
Veľkosť databázy: aplikácie v obchode a odstránené, vývojári, nové a odstránené za 7 dní, čas poslednej aktualizácie. Zadarmo.
* — povinný parameter
# curl — one app
curl -H "X-API-Key: $KEY" "https://apksurge.com/api/v1/app?id=org.telegram.messenger"
# curl — puzzle games with 10M+ installs, best rated first
curl -H "X-API-Key: $KEY" "https://apksurge.com/api/v1/search?category=GAME_PUZZLE&min_installs=10000000&sort=score"
# curl — up to 100 apps in one call (POST, one package per line)
curl -H "X-API-Key: $KEY" --data-binary $'com.whatsapp\norg.telegram.messenger' "https://apksurge.com/api/v1/apps"
# Python — apps removed from Google Play this week
import os, requests
r = requests.get("https://apksurge.com/api/v1/removed",
params={"since": "2026-10-20", "min_installs": 100000, "per": 100},
headers={"X-API-Key": os.environ["KEY"]}, timeout=30)
r.raise_for_status()
data = r.json()
for app in data["results"]:
print(app["removed_seen_at"], app["id"], app["installs"]["label"])
print("tokens left:", data["_tokens"]["available"])
// Node.js 18+ (na serveri — nie v prehliadači)
const res = await fetch("https://apksurge.com/api/v1/developer?id=5191370068110375942", { headers: { "X-API-Key": process.env.KEY } });
const d = await res.json();
if (!d.ok) throw new Error(d.error);
console.log(d.developer.name, d.developer.apps, d.developer.total_installs);
// PHP
$ch = curl_init('https://apksurge.com/api/v1/keywords?lang=en&q=vpn&per=50');
curl_setopt_array($ch, [CURLOPT_RETURNTRANSFER => true, CURLOPT_HTTPHEADER => ['X-API-Key: ' . getenv('KEY')]]);
$d = json_decode(curl_exec($ch), true);
foreach ($d['results'] as $k) echo $k['keyword'], ' — ', $k['apps'], PHP_EOL;
Kľúč môžete vytvoriť vo svojom účte. Požiadavka ide priamo z vášho prehliadača. Kľúč sa nikde neukladá a po opätovnom načítaní stránky zmizne. Požiadavky z konzoly míňajú tokeny rovnako ako bežné.