Source: https://ailoot.ai/models/id/kling-v1/
Canonical: https://ailoot.ai/models/id/kling-v1/
Language: id

# kling-v1

[Markdown](https://ailoot.ai/models/id/kling-v1/index.md) · [JSON](https://ailoot.ai/models/id/kling-v1/facts.json)

## [kling-v1](https://ailoot.ai/models/id/kling-v1/)

kling-v1 membuat video dari prompt teks dengan mode std atau pro yang ditentukan secara eksplisit. Atur durasi adegan dan kontrol prompt, lalu ambil seluruh hasil video yang selesai melalui Ailoot.

- [**Ailoot Ultra · Video** `POST /v1/videos` `kling-v1`](https://ailoot.ai/models/id/kling-v1/#method-0)

Tentang model

Deskripsi ini mencakup kemampuan model. Masukan, keluaran, dan opsi yang tersedia di Ailoot tercantum di bawah untuk metode yang dipilih.

Gunakan kling-v1 dengan model, prompt, dan mode di /v1/videos. Pilih std atau pro dan jelaskan adegan dalam prompt hingga 500 karakter. Permintaan menyediakan durasi lima atau sepuluh detik, aspect\_ratio, model\_name, cfg\_scale, dan negative\_prompt hingga 200 karakter.

Gunakan ruang prompt yang tersedia untuk subjek utama, satu aksi, latar, dan arahan kamera. Dahulukan detail yang menentukan komposisi sebelum bahasa dekoratif. Kontrol cfg\_scale menerima nilai dari 0 hingga 1; simpan pengaturan pilihan bersama brief saat membandingkan variasi berikutnya.

Ikuti ID permintaan asli alih-alih membuat operasi kedua untuk memeriksa kemajuan. Hasil menggunakan data.task\_status dan data.task\_result.videos\[\].url, dengan succeed sebagai penanda selesai. Simpan setiap video yang selesai dan respons lengkapnya, lalu periksa seluruh adegan terhadap prompt.

**Ailoot Ultra · Video** `POST /v1/videos` `kling-v1`

[`kling-v1`](https://ailoot.ai/models/id/#m=kling-v1&route=Ultra&caller=kling-v1&fmt=videos)

Lainnya /`kling-v1`

### Mulai

kling-v1 membuat video dari prompt teks dengan mode std atau pro yang ditentukan secara eksplisit. Atur durasi adegan dan kontrol prompt, lalu ambil seluruh hasil video yang selesai melalui Ailoot.

Masukan yang diterima

Teks

Hasil

Video

### Tersedia di Ailoot · masukan & metode

**Ailoot Ultra · Video** `POST /v1/videos`

Masukan

`text`

Keluaran

`video`

| Kolom | Jenis | Persyaratan | Nilai & batasan | Bawaan |
| --- | --- | --- | --- | --- |
| Kolom`model` | Jenis`string` | PersyaratanWajib | Nilai & batasan kling-v1 Kondisi: Gunakan pemilih perutean Ailoot ini persis seperti yang ditampilkan. | Bawaan— |
| Kolom`prompt` | Jenis`string` | PersyaratanWajib | Nilai & batasan Panjang maksimum: 500 Kondisi: | Bawaan— |
| Kolom`mode` | Jenis`string` | PersyaratanWajib | Nilai & batasan std, pro Kondisi: | Bawaan— |
| Kolom`model_name` | Jenis`string` | PersyaratanOpsional | Nilai & batasan Kondisi: Penggantian nilai bawaan model bersifat opsional. Jangan sertakan untuk menggunakan model yang dipilih secara otomatis; nilai yang ditetapkan secara eksplisit tetap dipertahankan. | Bawaan— |
| Kolom`cfg_scale` | Jenis`number` | PersyaratanOpsional | Nilai & batasan Minimum: 0 Maksimum: 1 Kondisi: | Bawaan— |
| Kolom`aspect_ratio` | Jenis`string` | PersyaratanOpsional | Nilai & batasan Kondisi: | Bawaan— |
| Kolom`negative_prompt` | Jenis`string` | PersyaratanOpsional | Nilai & batasan Panjang maksimum: 200 Kondisi: | Bawaan— |
| Kolom`duration` | Jenis`integer` | PersyaratanOpsional | Nilai & batasan 5, 10 Kondisi: | Bawaan— |

Parameter metode dan siklus hidup

| Parameter | Kontrak |
| --- | --- |
| Parameter`content_type` | Kontrakapplication/json |
| Parameter`required` | Kontrakmodel, prompt, mode |
| Parameter`optional` | Kontrakmodel\_name, cfg\_scale, aspect\_ratio, negative\_prompt, duration |
| Parameter`material_types` | Kontraktext |
| Parameter`conditions` | KontrakGunakan pemilih perutean Ailoot ini persis seperti yang ditampilkan., Penggantian nilai bawaan model bersifat opsional. Jangan sertakan untuk menggunakan model yang dipilih secara otomatis; nilai yang ditetapkan secara eksplisit tetap dipertahankan. |

Alias metode: `/v1/videos/generations`

Siklus hidup: `submit_once_poll_original`

`GET /v1/videos/{request_id}`

`GET /v1/videos/generations/{request_id}`

`GET /v1/videos/{request_id}/content`

`GET /v1/media/assets`

`GET /v1/media/assets/{asset_id}`

### Paket

##### Cara menghitung biaya akhir

Tarif yang ditampilkan memperkirakan biaya sebelum pembuatan. Biaya akhir dihitung dari biaya yang tercatat untuk proses pembuatan awal. Durasi keluaran yang terukur dan kuantitas perkiraan bukanlah kuantitas akhir yang ditagihkan.

Referensi tarif tidak menambah opsi permintaan. Parameter yang didukung tercantum pada metode yang dipilih.

Mode Fast

Tidak ditentukan Saat mode fast dipilih

Mode Flex

Tidak ditentukan Saat mode flex dipilih

Upaya penalaran maksimum

Tidak ditentukan Saat upaya penalaran maksimum menggunakan penyesuaian default

#### Perkiraan tarif untuk perbandingan

#### Harga menurut konfigurasi

Cocokkan setiap biaya dengan kondisi yang ditampilkan. Gunakan satu tarif untuk setiap kelompok konfigurasi alternatif.

| Konfigurasi | Jadwal tarif | Jumlah perkiraan | Biaya |
| --- | --- | --- | --- |
| KonfigurasiTarif dasar token | Jadwal tarifTarif dasar | Jumlah perkiraan— | Biaya Masukan · Token masukan · Perkiraan hanya untuk perbandingan **—** / 1K token Keluaran · Token keluaran · Perkiraan hanya untuk perbandingan **—** / 1K token Masukan · Pembacaan cache · Perkiraan hanya untuk perbandingan **—** / 1K token Masukan · Penulisan cache · Perkiraan hanya untuk perbandingan **—** / 1K token Masukan · Penulisan cache, 1 jam · Perkiraan hanya untuk perbandingan **—** / 1K token |
| KonfigurasiPerkiraan biaya pembuatan | Jadwal tarif— | Jumlah perkiraanestimasi satu kali pembuatan | Biaya Keluaran · Perkiraan biaya pembuatan · Perkiraan hanya untuk perbandingan **$6** estimasi sebelum pembuatan Perkiraan ini bukan biaya tambahan maupun tarif tetap untuk proses pembuatan yang telah selesai. |

Ailoot mencadangkan perkiraan dana sebelum permintaan. Setelah hasil diterima, tagihan akhir diselesaikan berdasarkan penggunaan yang terukur. Penyelesaian tagihan streaming menggunakan catatan penggunaan akhir. [Cara kerja cadangan dan penyelesaian tagihan →](https://ailoot.ai/docs/id/billing/reserve/)

### Contoh permintaan

#### Ailoot Ultra · Video

curl · buat sekali dan simpan hasil secara lengkapBaca tugas asliSimpan setiap aset milik Anda yang telah selesai

```bash
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
export AILOOT_API_KEY
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model": "kling-v1", "prompt": "A happy holiday scene at the beach.", "mode": "pro"}')

Path("request.json").write_text(json.dumps(p,ensure_ascii=False))
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/videos \
  -H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
  --data-binary @request.json -D response-headers.txt -o result.json
# Submit once. Retain the complete result, original identifiers and every response header.
```

```bash
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
export AILOOT_API_KEY
python3 - <<'PY_STATUS'
import json,os,subprocess
from pathlib import Path
from urllib.parse import urljoin,urlsplit
r=json.loads(Path("result.json").read_text())
u=urljoin("https://api.ailoot.ai",r["polling_url"])
p=urlsplit(u)
if p.scheme!="https" or p.netloc!="api.ailoot.ai" or p.username or p.password:
    raise SystemExit("Unexpected returned polling URL; preserve the response")
subprocess.run(["curl","--fail-with-body","--silent","--show-error",u,"-H","Authorization: Bearer "+os.environ["AILOOT_API_KEY"],"-D","status-headers.txt","-o","status.json"],check=True)
# Read this same original polling_url again while pending.
# Preserve unknown/result_pending_check; do not repeat creation.
PY_STATUS
```

```bash
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
export AILOOT_API_KEY
python3 - <<'PY_ASSETS'
import json,os,subprocess
from pathlib import Path
from urllib.parse import urljoin,urlsplit
r=json.loads(Path("status.json").read_text())
roles={}
def visit(v,path=""):
    if isinstance(v,dict):
        for k,x in v.items(): visit(x,path+"/"+k)
    elif isinstance(v,list):
        for i,x in enumerate(v): visit(x,path+"/"+str(i))
    elif isinstance(v,str):
        u=urljoin("https://api.ailoot.ai",v); p=urlsplit(u)
        if p.scheme=="https" and p.netloc=="api.ailoot.ai" and not p.username and not p.password and p.path.startswith("/v1/media/assets/") and p.path.endswith("/content"):
            roles.setdefault(u,[]).append(path)
visit(r)
if not roles: raise SystemExit("No completed owned assets; retain the original status")
manifest=[]
for i,(u,paths) in enumerate(roles.items()):
    target=Path(f"asset-{i}.bin")
    subprocess.run(["curl","--fail-with-body","--silent","--show-error",u,"-H","Authorization: Bearer "+os.environ["AILOOT_API_KEY"],"-o",str(target)],check=True)
    raw=target.read_bytes()
    if not raw: raise SystemExit("Empty asset; retain original status and metadata")
    ext="glb" if raw[:4]==b"glTF" else "png" if raw[:8]==b"\x89PNG\r\n\x1a\n" else "jpg" if raw[:3]==b"\xff\xd8\xff" else "webp" if raw[:4]==b"RIFF" and raw[8:12]==b"WEBP" else "mp4" if raw[4:8]==b"ftyp" else "bin"
    name=f"asset-{i}.{ext}"
    if target.name!=name: target.rename(name)
    manifest.append({"file":name,"response_paths":paths,"bytes":len(raw)})
Path("asset-manifest.json").write_text(json.dumps(manifest,indent=2))
print("Saved",len(manifest),"unique owned assets; every response role retained")
PY_ASSETS
```

### Terima dan simpan hasil

#### Ailoot Ultra · Video

- `GET /v1/videos/{request_id}`
- `GET /v1/videos/generations/{request_id}`
- `GET /v1/videos/{request_id}/content`
- `GET /v1/media/assets`
- `GET /v1/media/assets/{asset_id}`

##### Simpan semua hasil yang selesai

Simpan setiap video yang selesai atau berkas yang dikembalikan; ambil setiap URL aset yang benar-benar dikembalikan.

Simpan respons dan header secara utuh, pengenal asli, setiap keluaran aktual, dan semua bidang penggunaan/akuntansi. Simpan setiap aset unik milik Ailoot dan pertahankan setiap peran yang menunjuk kepadanya.

##### Jika respons asli perlu diperiksa

Simpan id tugas atau operasi publik yang dikembalikan beserta semua header. Baca hanya tugas awal; unknown atau result\_pending\_check tidak mengizinkan pembuatan lain.

Kolom respons

| Kolom | Jenis |
| --- | --- |
| Kolom`id` | Jenisstring |
| Kolom`polling_url` | Jenisstring |
| Kolom`provider_task_id` | Jenisstring |
| Kolom`data.task_id` | Jenisstring |
| Kolom`data.task_status` | Jenisstring |
| Kolom`data.task_result.videos[].url` | Jenisstring |

Kesalahan dan langkah berikutnya

| Respons | Kondisi | Langkah berikutnya |
| --- | --- | --- |
| Respons400 · `invalid_request_error` | KondisiKolom wajib, pemilih model, tipe, atau bentuk masukan tidak valid. | Langkah berikutnyaPeriksa rincian validasi yang dikembalikan sebelum menyiapkan permintaan terpisah. |
| Respons`` | KondisiPermintaan atau hasil asli tidak diketahui atau perlu diperiksa. | Langkah berikutnyaSimpan pengenal dan header asli; baca hanya catatan status/pustaka yang didukung. Jangan kirim ulang permintaan pembuatan. |

### Alias

#### Alias model

**Ailoot Ultra** [`kling-v1`](https://ailoot.ai/models/id/#m=kling-v1&route=Ultra&caller=kling-v1&fmt=videos)

#### Alias jalur metode

`/v1/videos/generations`

#### ID pemanggil terkait

[`kling-v1`](https://ailoot.ai/models/id/#m=kling-v1&route=Ultra&caller=kling-v1&fmt=videos)

FAQ · kling-v1

Input dan hasil apa yang tersedia?

`POST /v1/videos` · `kling-v1`: `text` → `video`

Kolom apa yang digunakan permintaan?

`POST /v1/videos` · `kling-v1`: `model`, `prompt`, `mode`, `model_name`, `cfg_scale`, `aspect_ratio`, `negative_prompt`, `duration`

Batasan apa yang berlaku?

`POST /v1/videos` · `kling-v1`: `prompt.maximum_length`: `500`; `cfg_scale.minimum`: `0`; `cfg_scale.maximum`: `1`; `negative_prompt.maximum_length`: `200`

Hubungkan Ailoot ke Claude Code, OpenCode, Hermes, atau aplikasi Anda.

## Perusahaan dan portofolio proyeknya

Perusahaan dan portofolio proyeknya: jutaan pelanggan; penjualan miliaran setiap bulan.

## Beli token dengan diskon.

Diskon langganan untuk pekerjaan rutin. Kode promo — hingga 50% untuk pembelian token.

Langganan

Pilih paket dengan diskon untuk permintaan rutin Anda.

Kode promo hingga 50%

Masukkan kode saat membeli. Harga dihitung ulang sesuai promosi aktif.

Biaya dalam riwayat

Model, token, dan jumlah tagihan disimpan untuk setiap permintaan.

[Pilih langganan](https://ailoot.ai/docs/id/billing/subscriptions/) · [Lihat harga model](https://ailoot.ai/models/id/)

## Hubungkan API ke produk yang Anda jual.

SaaS, aplikasi, dan bot — sesuai penawaran dan perjanjian lisensi Ailoot. Untuk penjualan kembali, mintalah lisensi reseller.

Aplikasi komersial

Integrasikan pembuatan teks, gambar, video, dan suara dalam fitur berbayar layanan Anda.

Lisensi reseller

Kirim deskripsi proyek dan skema akses. Mintalah ketentuan penggunaan dan penjualan kembali secara tertulis.

Dokumen di situs

Penawaran, perjanjian lisensi, dan kebijakan pemrosesan data tersedia sebelum koneksi.

[Minta lisensi reseller](mailto:support@ailoot.ai) · [Penawaran dan perjanjian lisensi](https://ailoot.ai/legal/offer?lang=id)

## Ailoot · Perusahaan dan portofolio proyeknya





Ailoot bertumpu pada pengalaman operasional yang teruji, basis pelanggan yang besar, layanan yang stabil, dan pemantauan KPI berkelanjutan.





Perusahaan dan portofolio proyeknya: jutaan pelanggan; penjualan miliaran setiap bulan.





Ailoot memanfaatkan pengalaman operasional ini untuk akses API ke fitur AI dalam produk pelanggan, agen, aplikasi, dan otomatisasi.
