DramaBox API avatar

DramaBox API

Under maintenance

Pricing

Pay per usage

Go to Apify Store
DramaBox API

DramaBox API

Under maintenance

DramaBox-only Apify Actor wrapping the Ezvid Movies API Gateway. Pull catalog, search, detail, episode lists and per-language feeds from DramaBox with a single, cursor-paginated interface. Built for streaming sites, content aggregators and SEO pipelines.

Pricing

Pay per usage

Rating

5.0

(1)

Developer

Ezvid.Net

Ezvid.Net

Maintained by Community

Actor stats

0

Bookmarked

10

Total users

4

Monthly active users

11 days ago

Last modified

Share

DramaBox API Actor

A single-provider fork of ezvidnet/short-drama-api. Wraps the Ezvid Movies API Gateway and exposes only the DramaBox endpoints behind a small, cursor-paginated interface.

The upstream actor supports 15 providers. This Actor is hard-coded to DramaBox — simpler input schema, smaller surface area, easier to publish as a free/cheap public Actor.

Endpoints

ActionUpstreamPaginationRequired input
homeGET /api/dramabox/homecursor
categoriesGET /api/dramabox/categoriescursor
latestGET /api/dramabox/latest?page=Npage-based
vipGET /api/dramabox/vipcursor
searchGET /api/dramabox/search?q=...cursorquery
detailGET /api/dramabox/detail/{id}cursorid
episodesGET /api/dramabox/episodes/{id}cursorid

All endpoints require an X-API-Key header.

Output

Each upstream record is enriched with a _meta block:

{
"id": "abc123",
"title": "Sample Drama",
"poster": "https://cdn.ezvid.net/posters/abc123.jpg",
"stream": "https://stream.ezvid.net/hls/abc123/master.m3u8",
"_meta": {
"provider": "dramabox",
"action": "home",
"page": 1,
"url": "https://api.ezvid.net/api/dramabox/home?limit=20",
"fetchedAt": "2026-08-21T07:40:01.123Z"
}
}

A run summary is also written to the OUTPUT key-value store with counts and timestamps.

Quick examples

1. Pull 50 latest home records

{ "action": "home", "limit": 50, "maxPages": 1 }

2. Search DramaBox for "revenge"

{ "action": "search", "query": "revenge", "limit": 20, "maxPages": 1 }

3. Detail for a specific drama

{ "action": "detail", "id": "abc123" }

4. Full episode list

{ "action": "episodes", "id": "abc123" }

5. Page-based latest feed (walk 5 pages)

{ "action": "latest", "page": 1, "maxPages": 5 }

6. VIP feed, Indonesian language

{ "action": "vip", "language": "id", "limit": 20, "maxPages": 3 }

Authentication

The Actor calls Ezvid's API with an X-API-Key header.

  • Bring your own key — paste your Ezvid key into the apiKey input.
  • Built-in key (pay-per-result) — leave apiKey blank and set EZVID_API_KEY in the Actor's Settings → Environment variables. When you publish on Apify Store, users without their own key can still run the Actor and the upstream cost comes out of your account.

Sign up for a key at https://api.ezvid.net/.

Input

FieldTypeDefaultNotes
actionenumhomeOne of: home, categories, latest, vip, search, detail, episodes
querystringRequired for search
idstringRequired for detail, episodes
languagestringOptional. See /api/dramabox/langs
categorystringOptional category scope
pageinteger1Starting page for latest
limitinteger20Page size, 1–100
maxPagesinteger1Pages to walk, 1–50
apiKeystringYour Ezvid key (overrides built-in)

Local development

Requirements: Node 20+, npm.

# Install
npm install
# Set your key
cp .env.example .env
# then edit .env and set EZVID_API_KEY
# Run with the bundled input fixture
npm start

The Actor reads input from storage/key_value_store/INPUT.json when run locally via the Apify CLI:

# Optional: install the Apify CLI and run with its local runtime
npx apify run

Deploying to Apify

# 1. Login (one-time)
npx apify login
# 2. Push — auto-creates the Actor on the platform using the name
# in .actor/actor.json ("dramabox-api")
npx apify push
# 3. In the Apify Console (https://console.apify.com):
# - Open "dramabox-api"
# - Settings → Environment variables → add EZVID_API_KEY=<your key>
# (skip if you want every run to bring its own key)
# - Publication → "Publish" → fill the public listing from this README

The CLI has no apify actors create command. apify push is the command that both creates the Actor (if it doesn't exist) and uploads the source.

Pricing (suggestion)

On Apify Store you can set pay-per-event pricing so users pay only for records they actually pull:

EventSuggested price
Actor start$0.001
Record returned$0.0005 – 0.002

The built-in key is billed to the Actor, not to the end user.

Limits & caveats

  • Upstream API may rate-limit. The Actor retries 429 / 5xx up to 3 times with exponential backoff. If you still hit a limit, lower maxPages or run in smaller batches.
  • The Ezvid API is not affiliated with the upstream drama providers — make sure your use case complies with their terms.
  • The Actor returns metadata + HLS URLs only; playback is the consumer's job.

Differences vs ezvidnet/short-drama-api

AreaUpstreamThis fork
Providers15 (dramawave, reelshort, …)1 (dramabox)
provider inputrequired enumdropped
ep / localeused by watch, source on other providersunused (no watch / source actions)
Built-in keyhard-coded master key for pay-per-resultempty by default — bring your own
Dependenciesapify onlyapify only

License

MIT.