API
API
Nano Banana Pro API
GörüntüNano Banana Pro API, 4K upscaling desteğiyle yüksek kaliteli 2K görüntü üretimi sunar; ayrıca daha güçlü prompt anlayışı, doğru metin oluşturma, gelişmiş ışıklandırma ve kompozisyon üzerinde daha fazla kontrol sağlar. Uygulamalarınıza daha hassas ve production-ready görüntü üretimi eklemek için API’yi entegre edin.
Gövde
application/jsonmodelstringzorunlunano-banana-proinput.promptstringzorunluOluşturmak istediğiniz görüntüyü veya referans görüntülerinizde yapmak istediğiniz değişiklikleri açıklayın. Baştaki ve sondaki boşluklar temizlenir.
Maksimum uzunluk: 5.000 karakter
input.imagesstring[]isteğe bağlıİsteğe bağlı referans görsel URL’leri. Yalnızca herkese açık HTTPS URL’lerini kullanın. Metinden görsel oluşturmak için bu alanı atlayın.
Maksimum öğe sayısı: 14
input.aspect_ratiostringisteğe bağlıÇıktının genişlik-yükseklik oranı. Auto seçeneği modelin karar vermesini sağlar.
Varsayılan: auto
input.resolutionstringisteğe bağlıÇıktı çözünürlük seviyesi; değerler büyük/küçük harfe duyarlı değildir. Varsayılanı kullanmak için alanı atlayın veya boş bırakın.
Varsayılan: 2k
İstek örnekleri
POST /api/v1/createcurl -X POST https://nanobanana.io/api/v1/create \
-H "Authorization: Bearer sk_live_your_api_key" \
-H "Content-Type: application/json" \
-d '{
"model": "nano-banana-pro",
"input": {
"prompt": "Fütüristik muz şeklinde bir kameranın sinematik ürün fotoğrafı"
}
}'POST /api/v1/create · HTTP 201{
"data": {
"task_id": "task_example",
"model": "nano-banana-pro",
"status": "processing",
"credits": 50
}
}Görev tamamlanana veya başarısız olana kadar döndürülen görev ID’si ile bu endpoint’i poll edin. En güncel görev durumunu kontrol etmek için her 5 saniyede bir polling yapmanızı öneririz.
POST /api/v1/check{
"task_id": "task_example"
}Yanıt
POST /api/v1/check tarafından döndürülen görev durumu. Aşağıdaki kimlikler, URL’ler ve zaman damgaları örnektir.
idstringzorunludata.id içindeki görev kimliği, sorgu isteğinde kullanılan task_id ile aynıdır.
statusstringzorunlufailed_reasonstringisteğe bağlıYalnızca status failed olduğunda hata nedenini açıklamak için döndürülür. completed ve processing durumlarında bu alan bulunmaz.
Tamamlandı · completed
İndirme URL’leri data.data.results içindedir.
POST /api/v1/check · HTTP 200{
"data": {
"id": "task_example",
"created_at": 1791244800,
"model": "nano-banana-pro",
"status": "completed",
"data": {
"results": [
"https://example.com/generated.png"
],
"processing_time": 18
}
}
}Diğer durumlar
processing veya failed durumunda data.data null olur. Bu örnek failed durumunu gösterir: yalnızca failed, failed_reason içerir. processing için sorgulamaya devam edin; failed için durdurun.
POST /api/v1/check · HTTP 200{
"data": {
"id": "task_example",
"created_at": 1791244800,
"model": "nano-banana-pro",
"status": "failed",
"data": null,
"failed_reason": "Generation failed."
}
}Kredi tüketimi
Tek bir görsel oluşturan isteğin tükettiği kredi miktarı.
| Çözünürlük | 1K | 2K | 4K |
|---|---|---|---|
| Tek görsel | 30 | 30 | 50 |
İsteğe bağlı parametreler belirtilmedi: 50 kredi
İlgili ücreti kullanmak için listelenen input parametrelerini açıkça belirtin. Birden fazla görsel oluşturan istekler daha fazla kredi tüketebilir.
POST /api/v1/create yanıtındaki credits alanı, görev için kesilen kredi miktarını gösterir.
