API Documentation

Jana imej & video AI secara programatik.

Pengenalan

NASZ API membolehkan anda menjana imej & video AI secara programatik. Semua request guna HTTP biasa dengan respons JSON.

Base URL
https://naszstudio.my.id
Daftar akaun di /dev/login untuk dapatkan API key & 15 kredit percubaan percuma.

Authentication

Setiap request mesti sertakan API key dalam header Authorization:

Authorization: Bearer sk_live_xxxxxxxxxxxxxxxx

Dapatkan key dari dashboard. Key ditunjuk sekali sahaja semasa dijana — simpan elok-elok.

Kredit & Kos

Kredit ditolak semasa request. Jika gagal, kredit dikembalikan automatik.

OperasiKos
Imej (setiap model)3 kredit / imej
Video Seedance 2.050 kredit
Video Seedance 2.0 Fast35 kredit
Video setiap saat > 5s+5 kredit

POST  Generate Imej

/v1/images/generations

Jana satu atau lebih imej dari prompt teks.

Body Parameter
FieldJenisWajibKeterangan
promptstringYaPenerangan imej
modelstringTidakModel ID (lihat seksyen Model)
nintegerTidakBilangan imej (1-4), default 1
aspect_ratiostringTidak16:9, 9:16, 1:1, 4:3
image_urlstringTidakImej rujukan
Contoh Request
curl -X POST https://naszstudio.my.id/v1/images/generations \
  -H "Authorization: Bearer sk_live_xxx" \
  -H "Content-Type: application/json" \
  -d '{"prompt":"desa di kaki gunung waktu golden hour","n":1,"aspect_ratio":"16:9"}'
Contoh Respons
{
  "created": 1775035361,
  "data": [ { "url": "https://cdn.../image-0.jpg" } ],
  "credits_charged": 3
}
Contoh Python
import requests

API_KEY = "sk_live_xxx"
BASE = "https://naszstudio.my.id"
h = {"Authorization": f"Bearer {API_KEY}"}

r = requests.post(f"{BASE}/v1/images/generations", headers=h, json={
    "prompt": "kucing comel duduk atas sofa", "n": 1, "aspect_ratio": "1:1",
})
print(r.json()["data"][0]["url"])

POST  Generate Video

/v1/videos/generations

Jana video dari prompt. Bersifat async — pulang generation_id, kemudian poll untuk dapatkan hasil.

FieldJenisWajibKeterangan
promptstringYaPenerangan video
modelstringTidakseedance-2.0 (default) / seedance-2.0-fast
aspect_ratiostringTidak16:9, 9:16, 1:1, 4:3
durationintegerTidak4-15 saat, default 5
Contoh Request
curl -X POST https://naszstudio.my.id/v1/videos/generations \
  -H "Authorization: Bearer sk_live_xxx" \
  -H "Content-Type: application/json" \
  -d '{"prompt":"kucing berlari di padang","duration":5}'
Respons (202)
{
  "generation_id": "a1b2c3...",
  "status": "queued",
  "credits_charged": 50,
  "poll_url": "/v1/videos/generations/a1b2c3..."
}
Poll Status

GET /v1/videos/generations/{id}

import requests, time
h={"Authorization":"Bearer sk_live_xxx"}
BASE="https://naszstudio.my.id"
r=requests.post(f"{BASE}/v1/videos/generations",headers=h,json={"prompt":"ombak laut","duration":5})
gid=r.json()["generation_id"]
while True:
    s=requests.get(f"{BASE}/v1/videos/generations/{gid}",headers=h).json()
    if s["status"]=="completed": print(s["asset_url"]); break
    if s["status"]=="failed": print(s["error_message"]); break
    time.sleep(8)
Status: queuedprocessingcompleted / failed. Kredit dikembalikan automatik jika gagal.

GET  Semak Baki Kredit

/v1/account/credits

curl https://naszstudio.my.id/v1/account/credits -H "Authorization: Bearer sk_live_xxx"
{ "email": "anda@email.com", "total_credits": 15 }

Model Tersedia

ModelJenisModel ID
Nano Banana ProImej7c02ef35-3a6b-4df6-b78d-873e5032c3b4
Nano Banana 2Imej7418e71f-4133-4e1b-9895-bee19f48f2ce
ChatGPT 2Imejgpt-image-2
Seedance 2.0Videoseedance-2.0
Seedance 2.0 FastVideoseedance-2.0-fast

Aspect Ratio

NilaiResolusi
16:92752 x 1536 (Landscape)
9:161536 x 2752 (Portrait)
1:11536 x 1536 (Square)
4:32048 x 1536 (Photo)

Pengendalian Ralat

{ "error": { "code": "INSUFFICIENT_CREDITS", "message": "Kredit tidak mencukupi." } }
HTTPKodMaksud
401UNAUTHORIZEDAPI key tiada
401INVALID_API_KEYKey tidak sah / dibatalkan
402INSUFFICIENT_CREDITSKredit tidak cukup
429RATE_LIMITEDTerlalu banyak request
502GENERATION_FAILEDGagal (kredit dikembalikan)

Had & Rate Limit

  • Rate limit: 30 request / minit setiap API key
  • Lebihan pulang 429 dengan header Retry-After
  • Maksimum imej setiap request: 4
  • Prompt maksimum: 5000 aksara