HiAPI
Blog

Tutoriel

Comment utiliser l'API Nano Banana 2.1 ? Générez votre première image en 5 minutes

4 étapes pour l'essayer en ligne, 4 étapes pour l'intégrer via l'API, avec des exemples curl et Python prêts à exécuter, des exemples d'édition par image de référence et un aide-mémoire des erreurs courantes.

Oct 10, 2026
Comment utiliser l'API Nano Banana 2.1 ? Générez votre première image en 5 minutes

TL;DR

  • C'est quoi : le dernier-né de la série Nano Banana, édité par Google, avec un seul et même ID de modèle pour la génération texte-image et l'édition par image de référence. Déjà disponible sur HiAPI, ouvrez la page du modèle et saisissez un prompt pour générer ; les nouveaux utilisateurs reçoivent 200 crédits à l'inscription, de quoi produire environ 4 images 1K.
  • Combien ça coûte : facturation à l'image, 1K $0.022, 2K $0.036, 4K $0.058, soit environ 33 %–39 % moins cher que Nano Banana 2, sans surcoût pour les images de référence.
  • Comment appeler l'API : POST https://api.hiapi.ai/v1/tasks, model renseigné à gemini-nano-banana-2.1, récupérez le taskId puis interrogez le statut ou attendez le callback, et téléchargez data.output[0].url.

Nano Banana 2.1 vient de sortir et deux questions reviennent le plus souvent : ce qu'il sait faire, et en combien de temps l'intégrer à son propre projet. Pour la première, voir les 5 points ci-dessous ; pour la seconde, 5 minutes suffisent.

Que sait faire Nano Banana 2.1 ?

  • 30 à 40 % moins cher que NB 2. À résolution égale, chaque image coûte environ 33 %–39 % de moins, seulement $0.022 en 1K, et les paramètres s'écrivent comme pour NB 2.
  • Jusqu'à 10 images de référence en une fois. Mannequin, vêtements, décor, photo produit : envoyez tout ensemble et fusionnez en une seule image, idéal pour les essayages et les propositions d'identité de marque.
  • 15 formats, jusqu'à 1:8 et 8:1. Outre les classiques 1:1, 4:5, 16:9, 21:9, il produit aussi des formats allongés comme 1:4, 4:1, 1:8, 8:1 : images longues de fiche produit et bannières en une seule génération.
  • Trois paliers de résolution : 1K, 2K, 4K. 1K pour tester les prompts, 2K et 4K pour les rendus finaux.
  • Génération texte-image et édition partagent le même ID de modèle. Un prompt seul donne une génération texte-image, l'ajout d'une image de référence en fait une édition : pas besoin de deux jeux de code.

Photo de mode Nano Banana 2.1, 2K / 16:9, sortie 2752×1536.

Générer avec ce prompt →

Deux parcours pour démarrer : essai en ligne ou API ?

Pour voir d'abord le résultat, choisissez l'essai en ligne ; pour intégrer à un produit, choisissez l'API. Les deux passent par le même modèle, au même tarif.

Essai en ligne (environ 1 minute)

  1. Ouvrez la page du modèle Nano Banana 2.1, ou cliquez directement sur le lien sous l'image ci-dessus : le prompt est prérempli.
  2. Inscrivez-vous ou connectez-vous : un nouveau compte dispose de 200 crédits.
  3. Choisissez le format et la résolution : 44 crédits par image en 1K.
  4. Cliquez sur Générer, puis téléchargez si le résultat vous convient.

Intégration API (environ 5 minutes)

  1. Créez une clé API (sk-...) dans la console HiAPI.
  2. POST /v1/tasks pour créer une tâche ; la réponse contient data.taskId.
  3. Interrogez avec GET /v1/tasks/{id}, ou ajoutez callback.url dans la requête pour attendre la notification.
  4. Une fois data.status passé à success, téléchargez l'image depuis data.output[0].url.

1K à $0.022 l'image : avec $10, vous produisez environ 450 images, de quoi ajuster le prompt jusqu'à satisfaction. Voir tous les paramètres dans la documentation en chinois.

Première image : version curl

Créer une tâche :

curl -s -X POST https://api.hiapi.ai/v1/tasks \
  -H "Authorization: Bearer sk-YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "gemini-nano-banana-2.1",
    "input": {
      "prompt": "A fashion editorial photograph of a model in an ivory linen blazer on a sunlit white-stucco terrace above the Mediterranean, 50mm lens, soft directional light, cinematic color grade",
      "aspect_ratio": "4:5",
      "resolution": "2K",
      "output_format": "png"
    }
  }'

L'ID de tâche renvoyé se trouve dans data.taskId :

{"code":200,"data":{"taskId":"tk-hiapi-..."},"message":"success"}

Consulter le résultat :

curl -s https://api.hiapi.ai/v1/tasks/YOUR_TASK_ID \
  -H "Authorization: Bearer sk-YOUR_KEY"

Seul prompt est obligatoire. aspect_ratio vaut auto par défaut, resolution vaut 1K par défaut, et output_format accepte jpg ou png.

Première image : version Python

Création, interrogation et téléchargement en un seul bloc : copiez, remplacez la clé par la vôtre et exécutez :

import requests, time

API = "https://api.hiapi.ai/v1/tasks"
HEADERS = {"Authorization": "Bearer sk-YOUR_KEY"}

payload = {
    "model": "gemini-nano-banana-2.1",
    "input": {
        "prompt": "A fashion editorial photograph of a model in an ivory linen blazer on a sunlit white-stucco terrace above the Mediterranean, 50mm lens, soft directional light, cinematic color grade",
        "aspect_ratio": "4:5",
        "resolution": "2K",
        "output_format": "png",
    },
}

resp = requests.post(API, headers=HEADERS, json=payload, timeout=30)
task_id = resp.json()["data"]["taskId"]

while True:
    status = requests.get(f"{API}/{task_id}", headers=HEADERS, timeout=30).json()["data"]
    if status["status"] in ("success", "fail"):
        break
    time.sleep(2)

if status["status"] == "success":
    image_url = status["output"][0]["url"]
    with open("nano-banana-2-1.png", "wb") as f:
        f.write(requests.get(image_url, timeout=60).content)
else:
    print(status.get("error"))

Édition par image de référence : un seul champ suffit

Ajoutez image_input dans input et la même requête devient une édition. Ci-dessous, on reprend directement la photo de mode ci-dessus comme image de référence et on change seulement la couleur de la veste :

curl -s -X POST https://api.hiapi.ai/v1/tasks \
  -H "Authorization: Bearer sk-YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "gemini-nano-banana-2.1",
    "input": {
      "prompt": "Change the model'\''s blazer to deep burgundy silk while keeping her pose, the terrace, and the lighting unchanged",
      "image_input": ["https://static.hiapi.ai/model-examples/gemini-nano-banana-2.1/2026/10/08/1791466473082-3e77d5c2a1ef0ef6-coastal-fashion-2k.webp"],
      "resolution": "2K"
    }
  }'

image_input accepte jusqu'à 10 URL publiques, aux formats JPEG, PNG et WebP, 30 Mo maximum par image. Dans le prompt, séparez ce qu'il faut « modifier » de ce qu'il faut « conserver » : plus les éléments à conserver sont précis, plus l'image d'origine reste fidèle.

3 points à vérifier avant la mise en production

  1. Utilisez un callback côté serveur. Ajoutez "callback": {"url": "https://yourapp.com/webhook", "when": "final"} dans le corps de la requête : la notification part automatiquement à la fin de la tâche, plus besoin d'interroger en boucle.
  2. En cas de timeout, ne renvoyez pas le POST. Chaque POST /v1/tasks crée une nouvelle tâche et est facturé séparément. Enregistrez d'abord le taskId et dédupliquez dans votre propre système avant de réessayer.
  3. Indiquez explicitement resolution à chaque requête. La résolution détermine directement le prix unitaire : figez-la dans la requête pour que la facture reste prévisible.

Erreurs courantes, une par ligne

  • 400 additional properties '<field>' not allowed → nom de champ mal orthographié, ou champ d'un autre modèle (par exemple image_urls) → corrigez d'après la documentation, par exemple image_input.
  • 400, message indiquant une valeur aspect_ratio invalide → un format hors liste a été transmis → choisissez l'une des 15 valeurs autorisées listées dans l'erreur.
  • 401 permission_denied → clé absente, erronée ou révoquée → vérifiez l'en-tête Authorization: Bearer sk-... et, si besoin, recréez la clé dans la console.
  • Création réussie mais tâche en fail / INVALID_REQUEST → l'URL de l'image de référence est inaccessible ou ne pointe pas vers une image → utilisez un JPEG, PNG ou WebP accessible publiquement.
  • Le lien de l'image ne fonctionne plus après quelques jours → les liens de sortie ont une durée de validité → téléchargez dès réception du résultat et conservez le fichier lui-même.

Le montant prélevé pour une tâche échouée est automatiquement remboursé en totalité.

Questions fréquentes

Nano Banana 2.1 peut-il remplacer directement NB 2 ? Oui. Les noms de paramètres sont identiques : changez model en gemini-nano-banana-2.1 pour basculer, à résolution égale chaque image coûte environ 33 %–39 % de moins. Seul point d'attention : la 2.1 sort du JPG par défaut ; pour du PNG, indiquez explicitement "output_format": "png".

Les images de référence sont-elles facturées en plus ? Non. Le prix ne dépend que de la résolution de sortie : une ou dix images de référence, c'est pareil.

Peut-on obtenir un fond transparent ? Les formats de sortie sont jpg ou png ; pour un fond transparent, choisissez GPT Image 2.5, qui prend en charge background: transparent en 1K.

Combien d'images par requête ? Une tâche produit une image. Pour en obtenir plusieurs, créez plusieurs tâches en parallèle ; la facturation se fait à l'image.

Articles de la série Nano Banana 2.1

Essayez maintenant : cliquez sur Générer avec ce prompt → juste sous la photo de mode ci-dessus : le prompt est déjà rempli, choisissez 2K, 16:9 et obtenez le même rendu en un clic.

Articles similaires

Voir tous les articles →

Commencez avec des artefacts IA persistants

Obtenez votre clé API et appelez des modèles d'image, de vidéo et d'audio via une API unique basée sur les tasks.

Lire la documentation de l'API