🌐 Language: 🇬🇧 English | 🇮🇩 Bahasa Indonesia | 🇸🇦 العربية | 🇨🇳 中文 | 🇪🇸 Español | 🇧🇷 Português
Self-hosted ReelShort content API — direct official integration. One call returns every episode URL — free and paid — as playable HLS. 18 language catalogs.
Buy once, host forever. Full TypeScript source, no license fees, no hidden dependencies.
Self-hosted ReelShort streaming API — direct, first-party integration for short dramas: trending & ranking feeds, keyword search, and a single-call endpoint that resolves every episode of a drama into playable m3u8 streams. No third-party provider in the middle.
- Live docs console: https://api-pro.hoshiyomi.my.id/docs/reelshort
- Free API key: https://t.me/dramaboxplusbot — grab a key and test every endpoint instantly.
What runs on the demo is exactly this code.
A production-tested TypeScript service that talks directly to ReelShort — first-party requests, no reseller API between you and the source.
- One call = the whole drama —
/stream?id=<drama>resolves every episode (free and paid) into playable HLS in a single response. No per-episode looping on your side. - No third-party API — direct requests with server-side signing and automatic guest-session rotation. Nothing can ban you, raise prices, or disappear.
- No per-request fees — your only cost is your VPS.
- Resell / white-label ready — your server, your keys, your pricing.
- 🔓 Full-series unlock in 1 call — every released episode returns a playable m3u8 (free + paid), fanned out server-side with concurrency limits
- 📡 9 clean endpoints — trending, For You tabs, popular ranking, search, detail, episodes, batch stream, languages
- 🌍 18 language catalogs via
?lang=— Indonesian, English, Japanese, Korean, Spanish, Arabic, and more (each language is its own localized catalog) - 🏷️ Friendly input — accepts raw drama IDs or web slugs; sensible defaults everywhere
- ⚡ Smart caching — layered TTL with per-request
X-Cache: HIT|MISStransparency - 🛡️ Signed requests — server-side realtime signing + auto guest-session rotation on expiry
- 🔑 API key system — tiers, rate limits, daily quotas
npm install
cp .env.example .env # adjust
npm start # tsx runtime — no build step neededRequirements: Node.js ≥ 18, any Linux VPS (512 MB RAM is plenty). No database to install.
| Endpoint | Purpose |
|---|---|
GET /api/trending |
For You feed (V3), paginated |
GET /api/foryou |
For You feed V4 by tab |
GET /api/rank |
Popular ranking snapshot (top titles) |
GET /api/search |
Keyword search, paginated |
GET /api/detail |
Drama detail + metadata |
GET /api/episodes |
Episode list (id, lock status, duration) |
GET /api/stream |
Every episode URL in one call |
GET /api/episodes/all |
Alias of batch stream |
GET /api/languages |
Supported language codes (18) |
curl "http://localhost:3107/api/stream?id=6a9a2a1759516005be053227&lang=in" \
-H "X-API-Key: YOUR_KEY"{
"success": true,
"mode": "all",
"total": 42,
"resolved": 42,
"episodes": [
{ "serial_number": 1, "is_lock": 0, "duration": 182,
"video_url": "https://…m3u8" },
{ "serial_number": 13, "is_lock": 1,
"video_url": "https://…m3u8" }
]
}Every video_url is a standard HLS playlist — play it with hls.js, native <video> on Safari, VLC, or ffplay.
| dramabox | freereels | melolo | moboreels | goodshort |
|---|---|---|---|---|
| VIP unlock | Zero paywall | DRM decrypt | Full unlock | 1080p ad-unlock |
- Free API key & questions: @dramaboxplusbot
- Live console: https://api-pro.hoshiyomi.my.id/docs/reelshort
Full source code. Self-hosted. Resell-ready. Your API, your rules.