APK API belgeleri

Google Play verilerini sunan REST API: 4 milyon uygulama, geliştiriciler, yeni ve kaldırılan uygulamalar, başlık anahtar kelimeleri. Biçim: JSON, kodlama: UTF-8, CORS açık.

Hızlı başlangıç

Temel URL: https://apkapi.com/api/v1. Kaydol, API anahtarınızı hesabınızda oluşturun ve ilk isteğinizi gönderin:

Makinece okunabilir API açıklaması: OpenAPI 3.1 · Postman koleksiyonu — dilinize hazır bir SDK almak için Postman, Insomnia veya bir istemci oluşturucuya (openapi-generator) aktarın.

curl -H "X-API-Key: YOUR_KEY" "https://apkapi.com/api/v1/app?id=com.whatsapp"

Veriler, ABD mağazasından İngilizce olarak 4 milyondan fazla Google Play uygulamasını kapsar (uygulama ABD'de yoksa başka bir ülkeden) ve her gece güncellenir. Mağazadan kaybolan uygulamalar son verileriyle veritabanında kalır.

Kimlik doğrulama

/v1/health dışındaki her istek, başlıkta API anahtarını içermelidir:

X-API-Key: ak_live_…

Ayrıca kabul edilir: Authorization: Bearer …. Anahtarı URL parametrelerinde göndermek yasaktır: günlüklere ve tarayıcı geçmişine düşer.

Anahtarı sunucunuzda tutun. Sayfa JavaScript'ine koyarsanız her ziyaretçi kopyalayabilir. Ön uç isteklerini arka ucunuzdan geçirin.

Krediler ve sınırlar

Her çağrı, yanıttaki satır sayısından (100'e kadar) bağımsız olarak uç noktaya göre 0–3 kredi tutar; toplu apps çağrısı uygulama başına 1 kredidir. Önce bu ayın plan kredileri, sonra ön ödemeli bakiye kullanılır. İstek bizim tarafımızda başarısız olursa krediler iade edilir. Planlar ve paketler

BaşlıkAnlamı
X-Credits-Costbu isteğin kredi tutarı
X-Credits-Remainingkalan kredi (plan + bakiye)
X-CacheHIT — önbellekten (daha hızlı), MISS — dizine yeni sorgu
X-RateLimit-Limit / -Remaininganahtarın dakikalık sınırı ve kalanı
X-Planfree | pro | scale | business

Kalan kredileriniz her yanıttaki _credits alanında ve /v1/account içinde de (ücretsiz) bulunur.

Yanıt biçimi ve hatalar

Her yanıtta bir ok alanı vardır. Listeler results, total, page, per, pages içerir. Hata: ok = false, error açıklama, code makinece okunabilir koddur. Tarihler UTC olarak ISO 8601 biçimindedir.

{ "ok": true, "app": { "id": "com.whatsapp", "title": "WhatsApp", "installs": { "label": "10,000,000,000+", "min": 10000000000, "real": 12445120489 }, … },
  "_credits": { "cost": 1, "plan_remaining": 1999, "balance": 0, "available": 1999, "cached": false } }

{ "ok": false, "code": "insufficient_credits", "error": "Not enough credits: this call costs 2, you have 1. …" }
HTTPcodeNe zaman
400invalid_param, invalid_requestgeçersiz veya eksik parametre
401missing_api_key, invalid_api_keyanahtar yok veya iptal edilmiş
402insufficient_creditsyetersiz kredi — yükleme yapın veya planınızı yükseltin
403account_blocked, plan_requiredhesap engellendi veya uç nokta daha yüksek plan gerektiriyor
404not_founduygulama veya geliştirici veritabanında yok ya da uç nokta bilinmiyor
429rate_limiteddakikalık istek sınırı aşıldı
503service_unavailablegeçici veritabanı sorunu — daha sonra tekrar deneyin; kredi kesilmez

Uç noktalar

Tüm uç noktalar GET /api/v1/{name} biçimindedir. Sayfalama: page (1'den) ve per (1–100), 10.000. sonuca kadar. Sıralama: sort + order=asc|desc.

GET/api/v1/accountücretsiz

Planınız, plan kredileriniz ve bakiyeniz, kredi sıfırlama tarihi ve dakikalık sınır.

Uygulamalar
GET/api/v1/app 1 kr.

Tam uygulama kaydı: başlık, açıklama, yenilikler, yüklemeler (eşik ve tam sayı), puan, değerlendirme ve yorum sayısı, yıldız dağılımı, fiyat, uygulama içi satın almalar, reklamlar, kategori, içerik derecelendirmesi, sürüm, minimum Android, yayın ve güncelleme tarihleri, simge, ekran görüntüleri, video, geliştirici ve web sitesi. Kaldırılan uygulamalar için: son kaydedilen veriler ve kaldırılma tarihi.

id *uygulama paket adı
GET · POST/api/v1/apps Uygulama başına 1 kredi

Tek çağrıda 100 uygulamaya kadar: GET ?ids=a,b,c veya gövdede listeyle POST (satır başına bir tane ya da JSON {"ids": […]}). Uygulama başına 1 kredi; bizde olmayan kimlikler not_found içinde döner.

ids *paket adları, virgülle ayrılmış, 100'e kadar
GET/api/v1/suggest ücretsiz

Başlığın başına göre öneriler: en popüler 10 eşleşme. Ücretsiz.

q *başlığın başı, 2+ karakter
Geliştiriciler
GET/api/v1/developer 2 kr.

Bir geliştirici ve tüm uygulamaları: sayılar (mağazada ve kaldırılan), toplam yükleme, ortalama puan, ilk yayın, kategoriler, web sitesi. Business planında: e-posta, telefon, adres ve tüzel ad.

idgeliştirici kimliği (uygulamadaki developer.id)
nameveya geliştiricinin tam adı
statusall (varsayılan), live veya removed
sortrelevance | installs | real_installs | score | ratings | reviews | released | updated | price
pagesayfa, 1'den
persayfa başına satır, 1–100 (varsayılan 20)
Mağaza değişiklikleri
GET/api/v1/new 2 kr.

İlk yayın tarihine göre yeni uygulamalar, en yeniler üstte.

sincebu tarihten itibaren, YYYY-MM-DD (varsayılan: 7 gün önce)
untilbu tarihe kadar, dahil
categorykategori kimliği, ör. GAME_PUZZLE (bkz. /v1/categories)
min_installsminimum yükleme (Google Play eşikleri: 1000, 10000…)
langbaşlık dili, ISO kodu: en, de, pt…
sortrelevance | installs | real_installs | score | ratings | reviews | released | updated | price
pagesayfa, 1'den
persayfa başına satır, 1–100 (varsayılan 20)
GET/api/v1/removed 2 kr.

Google Play'den kaybolan uygulamalar (kontrol ettiğimiz 19 ülkenin hiçbirinde yok), kaldırılma tarihine göre. Uygulama kaydı son verilerini korur.

sincebu tarihten itibaren, YYYY-MM-DD (varsayılan: 7 gün önce)
untilbu tarihe kadar, dahil
categorykategori kimliği, ör. GAME_PUZZLE (bkz. /v1/categories)
min_installsminimum yükleme (Google Play eşikleri: 1000, 10000…)
sortremoved_at | installs | score
pagesayfa, 1'den
persayfa başına satır, 1–100 (varsayılan 20)
Pazar
GET/api/v1/keywords 2 kr.

Her dil için uygulama başlıklarından kelimeler ve ifadeler: bunları kaç uygulama ve geliştirici kullanıyor, kaçı güçlü (100 bin+ yükleme), toplam yükleme, liderin payı ve fırsat puanı.

langdil, varsayılan en
qkelime veya ifade
phrasetrue — yalnızca iki kelimelik ifadeler, false — yalnızca tek kelimeler
min_appsminimum uygulama
max_appsmaksimum uygulama
sortopportunity | apps | installs | strong | devs | max_installs
orderdesc | asc
pagesayfa, 1'den
persayfa başına satır, 1–100 (varsayılan 20)
GET/api/v1/categories ücretsiz

Uygulama sayıları ve toplam yüklemeleriyle tüm kategoriler. Ücretsiz.

statuslive (mağazada, varsayılan), removed veya all
GET/api/v1/free_domains 3 kr.Pro+

Geliştirici web sitesi alan adı kayıt edilebilen uygulamalar ve uygulamanın popülerliği. Pro plan ve üzeri.

categorykategori kimliği, ör. GAME_PUZZLE (bkz. /v1/categories)
min_installsminimum yükleme (Google Play eşikleri: 1000, 10000…)
statuslive (mağazada, varsayılan), removed veya all
tldalan adı bölgesi, ör. com
sortrelevance | installs | real_installs | score | ratings | reviews | released | updated | price
pagesayfa, 1'den
persayfa başına satır, 1–100 (varsayılan 20)
GET/api/v1/charts 2 kr.

Bir ülke ve kategori için Google Play listesi: 200 sıraya kadar, önceki anlık görüntüden bu yana sıra değişimi (change: kaç sıra yükseldiği, yeni girişler için "new"), simge ve yüklemeler.

country *ülke, ISO kodu: US, DE, BR…
category *kategori, ör. GAME_PUZZLE
collectionfree | paid | grossing
pagesayfa, 1'den
persayfa başına satır, 1–100 (varsayılan 20)
GET/api/v1/rankings 1 kr.

Son anlık görüntüde uygulamanın yer aldığı tüm listeler: ülke, kategori, koleksiyon, sıra; liste ve ülke sayısı ve en iyi sıra.

id *uygulama paket adı
countryyalnızca bir ülke
collectionfree | paid | grossing
GET/api/v1/availability 1 kr.

Uygulamanın Google Play'de sunulduğu ülkeler (mağaza site haritasındaki hreflang'dan). 190'dan fazla ülke varsa liste olmadan worldwide = true döner.

id *uygulama paket adı
GET/api/v1/markets 1 kr.

Ücretsiz listelere dayalı pazar rekabeti: ilk 100 ve ilk 200 giriş eşiği (o sıradaki uygulamanın yükleme sayısı), üst sıralardaki yeni (son 12 ay) ve yerel (≤3 ülke) uygulamaların payı ve yerel pazarın büyüklüğü. Parametresiz: tüm ülkeler; country: bir ülkenin kategorileri; category: tüm ülkelerde bir kategori.

countryülke, ISO kodu
categorykategori kimliği, ör. GAME_PUZZLE (bkz. /v1/categories)
sortentry100 | entry200 | new_share | local_share | local_apps | local_installs | local_new
orderdesc | asc
pagesayfa, 1'den
persayfa başına satır, 1–100 (varsayılan 20)
GET/api/v1/stats ücretsiz

Veritabanı boyutu: mağazadaki ve kaldırılan uygulamalar, geliştiriciler, son 7 gündeki yeni ve kaldırılanlar, son güncelleme zamanı. Ücretsiz.

* — zorunlu parametre

Kod örnekleri

# curl — one app
curl -H "X-API-Key: $KEY" "https://apkapi.com/api/v1/app?id=org.telegram.messenger"

# curl — puzzle games with 10M+ installs, best rated first
curl -H "X-API-Key: $KEY" "https://apkapi.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://apkapi.com/api/v1/apps"
# Python — apps removed from Google Play this week
import os, requests
r = requests.get("https://apkapi.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("credits left:", data["_credits"]["available"])
// Node.js 18+ (sunucuda, tarayıcıda değil)
const res = await fetch("https://apkapi.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://apkapi.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;

Deneyin

Anahtarı hesabınızda oluşturabilirsiniz. İstek doğrudan tarayıcınızdan gider. Anahtar hiçbir yerde saklanmaz ve sayfa yenilenince kaybolur. Konsoldan yapılan istekler diğerleri gibi kredi harcar.