Bien démarrer
Démarrage rapide
Commencez avec Nano Banana API à l’aide d’un token Bearer, d’un corps de requête JSON et des deux endpoints de production : create et check.
Ce dont vous avez besoin
- AUn compte Nano Banana avec des crédits disponibles
- Une clé API créée depuis le tableau de bord Clés API
Obtenir votre clé API
Connectez-vous, ouvrez la page Clés API, saisissez un nom de clé et cliquez sur Créer. Copiez immédiatement la clé ; la clé complète n’est affichée qu’une seule fois.
Configurer l’en-tête de votre requête HTTP
URL de base
https://nanobanana.ioAuthorization: Bearer sk_live_your_api_key
Content-Type: application/jsonDémarrage rapide
Envoyez un payload JSON pour créer une tâche de génération asynchrone. Enregistrez le task_id retourné et utilisez-le pour vérifier l’état de la tâche.
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",
"input": {
"prompt": "Une photo produit cinématographique d’un appareil photo futuriste en forme de banane",
"aspect_ratio": "1:1",
"resolution": "1k"
}
}'Réponse{
"data": {
"task_id": "d0a8d9f2-5e01-4c5d-9f40-38d197a1c617",
"model": "nano-banana-2",
"status": "processing",
"credits": 20
}
}Créer une tâche
Envoyez un ID de modèle et un objet d’entrée pour créer une tâche de génération asynchrone. Cet endpoint confirme que la tâche a été mise en file d’attente ; il n’attend pas le résultat média final.
/api/v1/createAutorisations
AuthorizationstringrequisAuthorization: Bearer sk_live_your_api_keyCorps de la requête
application/jsonmodelstringrequisinputobjectrequisprompt non vide. Les autres champs d’entrée dépendent du modèle ; consultez la documentation correspondante avant d’envoyer des champs tels que les images, le format, la durée, la résolution ou le nombre.JSON{
"model": "nano-banana-2",
"input": {
"prompt": "Une photo produit cinématographique d’un appareil photo futuriste en forme de banane",
"aspect_ratio": "1:1",
"resolution": "1k"
}
}Réponse de création
application/jsonUne réponse réussie renvoie l’ID de tâche, l’ID du modèle, le statut en file d’attente et le nombre de crédits réservés pour cette tâche.
HTTP 201{
"data": {
"task_id": "d0a8d9f2-5e01-4c5d-9f40-38d197a1c617",
"model": "nano-banana-2",
"status": "processing",
"credits": 20
}
}Obtenir l’état de la tâche
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.
/api/v1/checkCorps de la requête
application/jsontask_idstringrequisJSON{
"task_id": "d0a8d9f2-5e01-4c5d-9f40-38d197a1c617"
}Réponse de statut
application/jsonUne fois le traitement terminé, la réponse inclut les URL des résultats finaux et les métadonnées de temps. Tant que la tâche est en cours, data est renvoyé comme 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
}
}