API
API
Nano Banana 2.1 API
GörüntüNano Banana 2.1 API, daha net görseller ve daha hassas düzenleme sunar. Metin istemlerinden görseller oluşturun veya referans görselleri düzenleyin; esnek en-boy oranlarından ve 4K’ya kadar çıktı çözünürlüğünden yararlanın. Uygulamanıza yüksek kaliteli görsel oluşturma ve düzenleme özellikleri eklemek için API’yi entegre edin.
Gövde
application/jsonmodelstringzorunlunano-banana-2-1input.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.
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.
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. Küçük harfli 1k, 2k veya 4k değerlerini kullanın. Alan belirtilmezse veya boş bırakılırsa varsayılan değer 2k olur.
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-2-1",
"input": {
"prompt": "Fütüristik muz şeklinde bir kameranın sinematik ürün fotoğrafı",
"aspect_ratio": "1:1",
"resolution": "2k"
}
}'POST /api/v1/create · HTTP 201{
"data": {
"task_id": "task_example",
"model": "nano-banana-2-1",
"status": "processing",
"credits": 20
}
}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-2-1",
"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-2-1",
"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 | 12 | 20 | 30 |
İsteğe bağlı parametreler belirtilmedi: 12 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.
