Nano Banana 2.1 Ext

GoogleGénération d'imagesà la requêteTarification par palier47 % d'économie par rapport au prix officiel

Nano Banana 2.1 Ext asynchronous image generation and editing: one image per request at a fixed price per resolution (1K/2K/4K), same output quality as Nano Banana 2.1, up to 14 reference images. 1:4, 4:1, 1:8 and 8:1 are available only at 1K.

Prix

$0.0132/ appel

Endpoint

/images/tasks

Mode de livraison

Cycle de vie d'une tâche asynchrone

Disponibilité

Disponible

Documentation de l'API

Configurer et copier la requête

Choisissez les options que ce modèle accepte. Le code ci-dessous se met à jour selon vos choix.

Pas à pas dans la documentation
POSThttps://www.aisplice.store/v1/images/tasksBearer API keyTâche asynchrone

OptionsSeules les options publiées pour ce modèle sont affichées.

# Requires curl and jq
API_KEY="${API_KEY:-YOUR_API_KEY}"

# 1. Submit once
SUBMITTED=$(curl --fail-with-body -sS https://www.aisplice.store/v1/images/tasks \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: model-docs-$(date +%s)-$$" \\
  -d '{
  "model": "Nano Banana 2.1 Ext",
  "prompt": "A cinematic scene with careful composition",
  "size": "auto",
  "resolution": "1K",
  "n": 1
}')
TASK_ID=$(printf '%s' "$SUBMITTED" | jq -r '.task_id // .id // empty')
if [ -z "$TASK_ID" ]; then
  printf '%s\n' "$SUBMITTED" >&2
  exit 1
fi
echo "task_id=$TASK_ID"

# 2. Poll until terminal
while true; do
  STATUS_JSON=$(curl --fail-with-body -sS \
    "https://www.aisplice.store/v1/images/tasks/$TASK_ID" \
    -H "Authorization: Bearer $API_KEY")
  STATUS=$(printf '%s' "$STATUS_JSON" | jq -r '.status // empty' | tr '[:upper:]' '[:lower:]')
  echo "status=$STATUS"
  case "$STATUS" in
    completed|succeeded|success) break ;;
    failed|failure|cancelled|canceled)
      printf '%s\n' "$STATUS_JSON" | jq .
      exit 1
      ;;
  esac
  sleep 3
done

# 3. Fetch the final result
curl --fail-with-body -sS \
  "https://www.aisplice.store/v1/images/tasks/$TASK_ID/content" \
  -H "Authorization: Bearer $API_KEY" | jq .
  1. 1Soumettre la tâche
  2. 2Interroger le statut
  3. 3Récupérer le contenu

Les URL de médias publiques sont recommandées en production. Envoyez d'abord le fichier local, puis placez public_url dans la requête du modèle. Évitez les gros corps en Base64.

Lire le guide d'envoi

Référence des paramètres

model
stringobligatoire

Identifiant exact du modèle pour cette requête.

gemini-nano-banana-2.1-ext
prompt
stringobligatoire

Instruction décrivant le résultat souhaité.

size
stringfacultatif

Output aspect ratio. 1:4, 4:1, 1:8 and 8:1 require 1K. auto follows the reference image when one is given.

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

Résolution de sortie demandée.

1K2K4K
n
integerfacultatif
1
images
string[]facultatif

Optional reference images (URLs or data URIs), up to 14, 20 MB each and 50 MB in total.

Cycle de la réponse

Statut des tâches, états finaux et exemples de réponses de résultat.

Soumettre
{
  "id": "task_xxx",
  "task_id": "task_xxx",
  "object": "image.task",
  "model": "Nano Banana 2.1 Ext",
  "status": "queued"
}
Contenu
{
  "created": 1720000000,
  "data": [
    {
      "url": "https://media.example/result.png"
    }
  ]
}

En attente

queued · submitted · in_progress · processing

Succès

completed · succeeded · success

Échec

failed · failure · cancelled · canceled

Erreurs et production

Règles de nouvelle tentative, idempotence et checklist minimale de production.

400 / 422

Corrigez les champs de la requête ou l'option non prise en charge ; ne réessayez pas sans modification.

401

Vérifiez que la clé API est présente, active et envoyée comme jeton Bearer.

402

Le solde du compte est insuffisant.

409

L'Idempotency-Key est en cours de traitement ou a été réutilisée avec un autre corps.

429

Attendez le délai indiqué par Retry-After avant de réessayer.

5xx

Réessayez avec un backoff exponentiel en conservant l'Idempotency-Key d'origine.

  • Gardez les clés API sur votre serveur pour les applications mobiles et navigateur publiques.
  • Définissez une Idempotency-Key unique pour chaque opération asynchrone facturable.
  • Enregistrez task_id pour que l'interrogation puisse reprendre après un redémarrage.
  • Utilisez un délai d'expiration pour chaque requête HTTP et indiquez l'ID de requête dans vos demandes au support.
  • Lisez les métadonnées des modèles en direct au lieu de coder en dur les prix et les options prises en charge.

Prix et paliers

47 % d'économie par rapport au prix officiel

Prix par requête

$0.0132/ appel

$0.025

Tarification par palier

Prix de base $0.0132

Tarification par palier — le prix final dépend des options demandées. Les paliers non listés sont facturés au prix de base.

TaillePrix
  • 16:9×1$0.0132
  • 1:1×1$0.0132
  • 1:4×1$0.0132
  • 1:8×1$0.0132
  • 21:9×1$0.0132
  • 2:3×1$0.0132
  • 3:2×1$0.0132
  • 3:4×1$0.0132
  • 4:1×1$0.0132
  • 4:3×1$0.0132
  • 4:5×1$0.0132
  • 5:4×1$0.0132
  • 8:1×1$0.0132
  • 9:16×1$0.0132
  • auto×1$0.0132
RésolutionPrix
  • 1k×1$0.0132
  • 2k×1.166666666667$0.0154
  • 4k×1.5$0.0198

Le prix affiché ici est exactement celui qui vous est facturé — les appels échoués sont remboursés automatiquement.

Modèles similaires