Aan de slag

Snel aan de slag

Ga direct aan de slag met Nano Banana API via een Bearer-token, een JSON-requestbody en de twee productie-endpoints: create en check.

Wat je nodig hebt

  • AEen Nano Banana-account met beschikbare credits
  • Een API-sleutel die is gemaakt vanuit het API-sleuteldashboard

Je API-sleutel ophalen

Log in, open de pagina API-sleutels, voer een sleutelnaam in en klik op Maken. Kopieer de sleutel direct; de volledige sleutel wordt slechts één keer weergegeven.

HTTP-requestheader configureren

Basis-URL

HTTPS
https://nanobanana.io
HTTP
Authorization: Bearer sk_live_your_api_key
Content-Type: application/json

Snelstart

Verstuur een JSON-payload om een asynchrone generatietaak te maken. Bewaar de geretourneerde task_id en gebruik deze om de taakstatus te controleren.

POST /api/v1/create
curl -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",
  "input": {
    "prompt": "Een filmische productfoto van een futuristische camera in de vorm van een banaan",
    "aspect_ratio": "1:1",
    "resolution": "1k"
  }
}'
Respons
{
  "data": {
    "task_id": "d0a8d9f2-5e01-4c5d-9f40-38d197a1c617",
    "model": "nano-banana-2",
    "status": "processing",
    "credits": 20
  }
}

Een taak maken

Verstuur een model-ID en een inputobject om een asynchrone generatietaak te maken. Dit endpoint bevestigt dat de taak in de wachtrij is geplaatst; het wacht niet op het uiteindelijke mediaresultaat.

POST/api/v1/create

Autorisaties

Veld
Type
verplicht
Beschrijving en beperkingen
Authorizationstringverplicht
API-sleutel die als Bearer-token in de requestheader wordt meegestuurd. Voorbeeld: Authorization: Bearer sk_live_your_api_key

Requestbody

application/json
Veld
Type
verplicht
Beschrijving en beperkingen
modelstringverplicht
Openbare model-ID. Gebruik een model uit de API-sectie, bijvoorbeeld nano-banana-2.
inputobjectverplicht
Generatie-input. Deze moet een niet-lege prompt bevatten. Andere inputvelden zijn modelspecifiek; raadpleeg de bijbehorende modeldocumentatie voordat je velden zoals afbeeldingen, beeldverhouding, duur, resolutie of aantal verstuurt.
JSON
{
  "model": "nano-banana-2",
  "input": {
    "prompt": "Een filmische productfoto van een futuristische camera in de vorm van een banaan",
    "aspect_ratio": "1:1",
    "resolution": "1k"
  }
}

Create-respons

application/json

Een succesvolle respons retourneert de taak-ID, model-ID, wachtrijstatus en het aantal credits dat voor deze taak is gereserveerd.

HTTP 201
{
  "data": {
    "task_id": "d0a8d9f2-5e01-4c5d-9f40-38d197a1c617",
    "model": "nano-banana-2",
    "status": "processing",
    "credits": 20
  }
}

Taakstatus ophalen

Poll dit endpoint met de geretourneerde taak-ID totdat de taak is voltooid of mislukt. We raden aan om elke 5 seconden te pollen om de nieuwste taakstatus te controleren.

POST/api/v1/check

Requestbody

application/json
Veld
Type
verplicht
Beschrijving en beperkingen
task_idstringverplicht
De taak-ID die wordt geretourneerd door POST /api/v1/create. Gebruik deze ID om de taakstatus en URL’s van de eindresultaten op te halen.
JSON
{
  "task_id": "d0a8d9f2-5e01-4c5d-9f40-38d197a1c617"
}

Statusrespons

application/json

Wanneer de verwerking is voltooid, bevat de respons URL’s naar de eindresultaten en timingmetadata. Zolang de taak nog wordt uitgevoerd, data wordt geretourneerd als null.

HTTP 200
{
  "id": "adc0e6ec-9c12-44fc-b45f-112187766c3",
  "created_at": 1788652800,
  "model": "nano-banana-2",
  "status": "completed",
  "data": {
    "results": [
      "https://cdn.nanobanana.io/api/predictions/example.mp4"
    ],
    "processing_time": 48
  }
}