← Dynasty Gallery

Dynasty Gallery API v2

Semua data galeri + komik multi-provider + image proxy — siap untuk web & APK kamu. Envelope: { success, data, meta } · Error: { success:false, error:{ code, message } } · CORS terbuka · Rate limit 60 req/menit (gambar 900/menit).

⚠️ ATURAN EMAS: SEMUA URL gambar (cover, thumbnail, halaman chapter) HARUS diakses lewat /api/image?url=… — sumber aslinya memakai hotlink protection (403 jika tanpa Referer yang benar).

Meta

GET/api
Katalog semua endpoint dalam JSON (machine-readable) — cocok untuk auto-discovery dari APK.
curl https://dynasty-gallery.vercel.app/api
GET/api/health
Status layanan.

Galeri (dynasty-scans.com)

GET/api/listing
Daftar image galeri, 36 per halaman.
ParamKet
page1..100000 (default 1)
tagslug tag, contoh yuri, hololive
categorytags|authors|pairings|doujins (default tags)
curl "https://dynasty-gallery.vercel.app/api/listing?page=1"
curl "https://dynasty-gallery.vercel.app/api/listing?page=2&tag=yuri&category=tags"
GET/api/detail?id=39796
Detail satu image: judul, gambar full, tag terstruktur (authors/pairings/doujins/scanlators), dan prev/next.
curl "https://dynasty-gallery.vercel.app/api/detail?id=39796"

Komik — Gabungan

GET/api/comics/home
Beranda gabungan 3 provider: update terbaru merge + dedupe per judul (data terbaru menang) + populer.
curl https://dynasty-gallery.vercel.app/api/comics/home
GET/api/comics/search
Pencarian terpadu lintas provider (paralel, hasil digabung).
ParamKet
qkata kunci (wajib ≥ 2 karakter)
provideropsional: doujindesu|dojing|komiktap
limitper provider (default 10, max 25)
curl "https://dynasty-gallery.vercel.app/api/comics/search?q=office"
curl "https://dynasty-gallery.vercel.app/api/comics/search?q=hero&provider=komiktap&limit=15"
GET/api/comics/providers
Metadata provider (label, kemampuan sort/filter, format id chapter) — untuk membangun UI dinamis.

Komik — Per Provider

Ganti {provider} dengan doujindesudojingkomiktapmangatoonshinigamikomfap

GET/api/{provider}/home
Beranda provider (update + populer).
GET/api/{provider}/genres
Daftar genre (slug + nama + jumlah).
GET/api/{provider}/manga
Browse + search + filter + sort + pagination.
ParamKet
page, limitpagination (limit max 50)
searchkata kunci judul
genreslug genre (lihat /genres)
type, statushanya doujindesu: doujinshi|manga|manhwa, publishing|completed|hiatus
sortdoujindesu: latest_chapter|rating|views|title · dojing/komiktap: latest_chapter|title|popular
curl "https://dynasty-gallery.vercel.app/api/desu/manga?page=1&limit=24&sort=rating"
curl "https://dynasty-gallery.vercel.app/api/komiktap/manga?search=office"
GET/api/{provider}/detail?slug=…
Detail komik + daftar chapter (id, nomor, judul, tanggal).
curl "https://dynasty-gallery.vercel.app/api/komiktap/detail?slug=cleaning-service"
GET/api/{provider}/chapter?id=…
Halaman chapter: data.pages[] = URL gambar → selalu lewat proxy. Id chapter dari /detail (doujindesu pakai UUID).
curl "https://dynasty-gallery.vercel.app/api/komiktap/chapter?id=cleaning-service-chapter-1"

🖼️ Image Proxy

GET/api/image?url=…
Bypass hotlink protection + inject Referer + cache CDN (1–7 hari). Rate limit 900/menit. Mendukung GET & HEAD (untuk prefetch).
Host yang diizinkan: dynasty-scans.com/system/*pic.desu.xxxcdn-static.desu.xxx*.desu.picsdojing.net/wp-content/*komiktap.info/wp-content/**.uqni.net*.wibulep.xyz*.komik.me*.linksaya.com*.shngm.id
# contoh di Android/WebView:
String proxied = "https://dynasty-gallery.vercel.app/api/image?url=" + URLEncoder.encode(rawUrl, "UTF-8");

Respon Error

{
  "success": false,
  "error": { "code": "RATE_LIMITED", "message": "Terlalu banyak request" }
}

Dynasty Gallery API v2 · zero-dependency · deploy Vercel · katalog JSON