Endpoint
Gambar
POST /images/generations membuat dan mengedit gambar dengan model text-to-image seperti GPT image, Gemini image, FLUX, dan Seedream.
Coba di playgroundBuat dan edit gambar dengan setiap model gambar di katalog: GPT image, Gemini image, FLUX, Seedream, Recraft, dan lainnya. Endpoint ini memakai path OpenAI SDK, sehingga client.images.generate(...) bekerja tanpa perubahan.
POST https://api14.com/api/v1/images/generations
POST /api/v1/images diterima sebagai alias. Keduanya meneruskan body tanpa perubahan.
Request
| Parameter | Tipe | Wajib | Deskripsi |
|---|---|---|---|
model | string | ya | ID model gambar, mis. openai/gpt-5.4-image-2. |
prompt | string | ya | Apa yang akan digambar. |
n | integer | tidak | Jumlah gambar. Setiap gambar ditagih. |
size | string | tidak | mis. 1024x1024, 1536x1024. Ukuran yang didukung berbeda untuk tiap model. |
aspect_ratio | string | tidak | mis. 16:9, 1:1, untuk model yang menerima rasio, bukan ukuran. |
quality | string | tidak | mis. low, medium, high jika didukung. |
response_format | string | tidak | b64_json atau url jika didukung. |
image | string atau string[] | tidak | Gambar referensi sebagai URL atau data: URI untuk editing / image-to-image. |
Opsi khusus model (resolusi, rasio aspek) tercantum per model di GET /images/models dan di halaman tiap model.
Contoh
import OpenAI from "openai";
const client = new OpenAI({
baseURL: "https://api14.com/api/v1",
apiKey: process.env.API14_API_KEY,
});
const result = await client.images.generate({
"model": "openai/gpt-5.4-image-2",
"prompt": "A minimalist product photo of a ceramic mug on a wooden table",
"n": 1,
"aspect_ratio": "1:1"
});
import { writeFile } from "node:fs/promises";
await writeFile("image.png", Buffer.from(result.data[0].b64_json, "base64"));
Respons
{
"created": 1791100000,
"data": [
{ "b64_json": "iVBORw0KGgoAAAANSUhEUgAA..." }
],
"usage": { "cost": 0.04 }
}
Beberapa model mengembalikan url alih-alih b64_json. Unduh URL yang dihosting dengan segera; URL tersebut bisa kedaluwarsa.
Gambar lewat chat
Model gambar yang juga menghasilkan teks dapat dipanggil lewat Chat completions dengan modalities:
{
"model": "google/gemini-2.5-flash-image",
"modalities": ["image", "text"],
"messages": [{ "role": "user", "content": "A watercolor fox, square" }]
}
Gambar yang dihasilkan dikembalikan di choices[0].message.images[] sebagai data URL.
Menampilkan daftar model gambar
# Public, no API key needed
curl https://api14.com/api/v1/images/models
curl "https://api14.com/api/v1/models?category=image"
Harga
Model gambar ditagih sesuai harga yang tercantum, per gambar atau per 1M token gambar, tergantung model. Biaya pastinya diambil dari respons upstream dan dipotong dari saldo USD Anda.
Error
| Status | Kode | Kapan |
|---|---|---|
| 400 | model_required / invalid_json | model tidak ada atau body salah format. |
| 402 | insufficient_balance | Saldo USD Anda $0. |
| 403 | model_not_allowed / plan_required | Allowlist key atau paket tidak mencakup model ini. |
| 404 | model_not_found | ID model tidak dikenal atau dinonaktifkan. |
| 413 | payload_too_large | Body (mis. gambar referensi inline) melebihi batas ukuran. |
Error validasi dari upstream (ukuran tidak didukung, kebijakan konten) diteruskan dengan statusnya. Lihat Error.