API

Nano Banana 2 Lite API

Image

Nano Banana 2 Lite API offre une génération d’images rapide et efficace, avec une cohérence fiable des personnages, une fusion fluide de plusieurs images et une édition en langage naturel pour les workflows créatifs du quotidien. Intégrez Nano Banana 2 Lite API pour une génération visuelle légère et de haute qualité.

Autorisations

Bearerstringheaderrequis

Clé API pour autoriser les requêtes

Corps

application/json
modelstringrequis
nano-banana-2-lite
input.promptstringrequis

Décrivez l’image à créer ou les modifications à apporter à vos images de référence. Les espaces en début et fin sont supprimés.

Longueur maximale : 5 000 caractères

input.imagesstring[]facultatif

URL facultatives d’images de référence. Utilisez uniquement des URL HTTPS accessibles publiquement. Omettez ce champ pour générer des images à partir de texte.

Nombre maximal d’éléments : 14

input.aspect_ratiostringfacultatif

Rapport largeur/hauteur de sortie. Auto laisse le modèle choisir.

Par défaut: auto

auto1:12:33:23:44:34:55:49:1616:921:91:44:11:88:1

Exemples de requête

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-lite",
  "input": {
    "prompt": "Une photo produit cinématographique d’un appareil photo futuriste en forme de banane"
  }
}'
POST /api/v1/create · HTTP 201
{
  "data": {
    "task_id": "task_example",
    "model": "nano-banana-2-lite",
    "status": "processing",
    "credits": 18
  }
}

Interrogez cet endpoint avec l’ID de tâche renvoyé jusqu’à ce que la tâche soit terminée ou échoue. Nous recommandons un polling toutes les 5 secondes pour vérifier le dernier état de la tâche.

POST /api/v1/check
{
  "task_id": "task_example"
}

Réponse

Statut de la tâche renvoyé par POST /api/v1/check. Les identifiants, URLs et horodatages ci-dessous sont des exemples.

idstringrequis

Identifiant de la tâche dans data.id, identique au task_id envoyé dans la requête de consultation.

statusstringrequis
completed indique que la génération a réussi et que data.data contient les résultats. Pour les autres statuts, data.data vaut null.
failed_reasonstringfacultatif

Renvoyé uniquement lorsque status vaut failed, pour expliquer l’échec. Ce champ est absent pour completed et processing.

Terminée · completed

Les URLs de téléchargement figurent dans data.data.results.

POST /api/v1/check · HTTP 200
{
  "data": {
    "id": "task_example",
    "created_at": 1791244800,
    "model": "nano-banana-2-lite",
    "status": "completed",
    "data": {
      "results": [
        "https://example.com/generated.png"
      ],
      "processing_time": 18
    }
  }
}

Autres statuts

Pour processing ou failed, data.data vaut null. Cet exemple montre failed : seul failed inclut failed_reason. Continuez les consultations pour processing ; arrêtez-les pour failed.

POST /api/v1/check · HTTP 200
{
  "data": {
    "id": "task_example",
    "created_at": 1791244800,
    "model": "nano-banana-2-lite",
    "status": "failed",
    "data": null,
    "failed_reason": "Generation failed."
  }
}

Consommation de crédits

Crédits consommés pour une requête générant une image.

Crédits consommés pour une requête générant une image.
GénérationCrédits par requête
Une image18

Renseignez explicitement les paramètres input indiqués pour appliquer le tarif correspondant. Les requêtes générant plusieurs images peuvent consommer davantage de crédits.

Le champ credits renvoyé par POST /api/v1/create indique les crédits débités pour la tâche.