MenuMembuat gambar

Membuat gambar

Ubah deskripsi teks (prompt) menjadi gambar dengan model gambar Google (keluarga Nano Banana / Gemini Image). Endpoint-nya kompatibel dengan OpenAI Images API — SDK openai cukup diarahkan ke base URL Geraikita, dengan gk- key dan saldo GeraiPoints yang sama.

Endpoint

POSThttps://ai.geraikita.com/v1/images/generations
HeaderNilai
AuthorizationBearer gk-... (atau x-api-key: gk-...)
Content-Typeapplication/json

Satu permintaan = satu prompt, menghasilkan 1–4 gambar. Streaming tidak didukung — balasan dikirim sekaligus setelah gambarnya selesai.

Parameter body

ParameterTipeKeterangan
modelstringwajibID model gambar, mis. gemini-3.1-flash-image atau gemini-3-pro-image — daftar lengkapnya ada di tabel harga di bawah.
promptstringwajibDeskripsi gambar yang diinginkan, maksimal 4000 karakter.
nintegeropsionalJumlah gambar, 1–4. Bawaan 1. Tiap gambar yang berhasil ditagih terpisah.
sizestringopsionalSalah satu dari auto | 1024x1024 | 1536x1024 | 1024x1536 | 1792x1024 | 1024x1792. Bawaan auto: rasio dipilih model, umumnya lanskap 16:9 (sekitar 1376×768). Ukuran hanya petunjuk rasio — resolusi akhir mengikuti model.
response_formatstringopsionalurl (bawaan) untuk tautan gambar, atau b64_json untuk data gambar base64 langsung di balasan.

Field lain (mis. quality atau style) diabaikan.

Contoh

Waktu proses umumnya 15–45 detik per permintaan, dan bisa sampai sekitar 4 menit saat jalur cadangan dipakai. Set timeout klien minimal 300 detik supaya permintaan tidak diputus sebelum gambarnya selesai.
curl https://ai.geraikita.com/v1/images/generations \
  --max-time 300 \
  -H "Authorization: Bearer gk-xxxxxxxx" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "gemini-3.1-flash-image",
    "prompt": "Poster promo kopi susu gula aren di atas meja kayu, cahaya pagi yang hangat, tulisan \"DISKON 20%\" besar di bagian atas, gaya ilustrasi flat",
    "n": 1,
    "size": "1024x1024"
  }'

Contoh balasan

data berisi satu objek per gambar yang berhasil — url atau b64_json sesuai response_format. Bila sebagian gambar gagal, jumlah objeknya bisa lebih sedikit dari n.

200 OK · application/json
{
  "created": 1793464057,
  "data": [
    { "url": "https://api.geraikita.com/cdn/ai-gambar/2026/11/xxxxxxxxxxxx.jpg" }
  ]
}

Header balasan: X-Geraikita-Images = jumlah gambar yang berhasil, X-Geraikita-GP-Charged = GeraiPoints yang ditagih untuk permintaan itu.

Harga

Model gambar ditagih per gambar yang berhasil dibuat — bukan per token. Harga terkini (dapat berubah) ada di tabel berikut dan di halaman harga.

Id modelNamaPer gambar
gemini-3.1-flash-imageNano Banana 2 (Gemini 3.1 Flash Image)100 GP / gambar
gemini-3-pro-imageNano Banana Pro (Gemini 3 Pro Image)100 GP / gambar
  • Gambar yang gagal tidak ditagih, begitu juga permintaan yang ditolak (parameter salah atau melanggar kebijakan konten).
  • Saldo GeraiPoints harus cukup untuk n × harga per gambar sebelum permintaan diproses; bila kurang, balasannya 402.
  • Model gambar tidak termasuk Unlimited plan, Bansos (tier gratis), maupun kuota gratis lain — selalu dipotong dari saldo GeraiPoints.
  • Tiap gambar tercatat sebagai satu baris di riwayat pemakaian dashboard, berlabel Gambar.

Kode galat

Bentuk galat sama dengan OpenAI: objek error berisi message, type, param, dan code.

Statustype / codeArti
400invalid_request_errorParameter tidak sah (mis. n di luar 1–4, size tak dikenal, prompt kosong atau terlalu panjang). Tidak ditagih.
400content_policy_violationPrompt melanggar kebijakan konten (lihat di bawah). Tidak ditagih.
401—API key tidak ada atau tidak sah.
402insufficient_quotaSaldo GeraiPoints tidak cukup untuk jumlah gambar yang diminta — silakan top up.
403—Model ini tidak diizinkan untuk API key tersebut — tambahkan ke daftar model key di dashboard.
404model_not_foundModel tidak dikenal atau bukan model gambar.
429rate_limit_exceededTerlalu banyak permintaan — batasnya 10 permintaan/menit per key. Tunggu sesuai header Retry-After.
502image_generation_failedPembuatan gambar gagal di sisi server. Tidak ditagih — silakan coba lagi.
Contoh galat
{
  "error": {
    "message": "...",
    "type": "...",
    "param": "...",
    "code": "..."
  }
}

Memanggil model gambar lewat /v1/chat/completions dibalas 400 dengan arahan ke endpoint ini — pakai /v1/images/generations.

Tips menulis prompt

  • Prompt boleh ditulis dalam bahasa Indonesia, Inggris, atau bahasa lain.
  • Model bisa menulis teks di dalam gambar — tulis teksnya persis di dalam tanda kutip, mis. tulisan "DISKON 20%".
  • Sebutkan subjek, latar, gaya (foto, ilustrasi flat, 3D, cat air), pencahayaan, dan komposisi — makin spesifik, makin sesuai hasilnya.
  • Pilih size sesuai pemakaian: 1024x1024 untuk feed, 1024x1792 untuk story/potret, 1792x1024 untuk banner lanskap.
  • Butuh beberapa variasi? Pakai n sampai 4 dalam satu permintaan — ingat, tiap gambar yang berhasil ditagih.

Kebijakan konten

Permintaan berikut ditolak:

  • Konten seksual atau eksplisit.
  • Konten yang mengeksploitasi atau membahayakan anak.
  • Kekerasan sadis atau gore.
  • Tokoh politik atau tokoh publik nyata.

Penolakan dibalas 400 dengan code content_policy_violation dan tidak ditagih.

Tautan gambar & penyimpanan

URL di data[].url bersifat publik — siapa pun yang memegang tautannya bisa membuka gambar itu — dan tidak dijamin tersedia selamanya. Unduh dan simpan salinan di penyimpananmu sendiri segera setelah gambar dibuat, atau minta b64_json untuk menerima data gambarnya langsung di balasan.