API
API
GPT Image 2.5 API
ImageL’API GPT Image 2.5 intègre les modèles de génération et de retouche d’images les plus avancés d’OpenAI à votre application. Créez des images à partir de texte ou retouchez des images de référence, avec des formats flexibles et une sortie en 1K, 2K ou 4K. Choisissez flare pour une génération quotidienne rapide et de qualité, ou sunburst pour des créations exigeantes et des retouches précises.
Corps
application/jsonmodelstringrequisgpt-image-2-5input.promptstringrequisDécrivez l’image souhaitée, notamment le sujet, la composition, le style et l’éclairage. Pour une retouche, précisez les éléments à modifier et ceux à conserver dans les références. Les espaces en début et en fin sont supprimés.
input.modestringfacultatifSélectionnez la variante de GPT Image 2.5. flare est le mode par défaut et privilégie la vitesse pour les créations quotidiennes de qualité et les itérations rapides. sunburst privilégie les exigences élevées de qualité et la précision des retouches, lorsque des modifications exactes des images de référence sont essentielles.
Les deux modes prennent en charge la génération à partir de texte et la retouche d’images. Omettez input.images pour générer à partir de texte ou fournissez des références à retoucher. Pour comparer les modes, conservez le même prompt, les mêmes références, le même format et la même résolution.
Par défaut: flare
input.imagesstring[]facultatifURL 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.
input.aspect_ratiostringfacultatifRapport largeur/hauteur de l’image produite. auto laisse le modèle choisir une composition adaptée. Sélectionnez un rapport proposé pour définir le format, par exemple 1:1 pour une image carrée, 9:16 pour un format portrait ou 16:9 pour un format paysage.
Par défaut: auto
input.resolutionstringfacultatifNiveau de résolution de sortie. Utilisez les valeurs en minuscules 1k, 2k ou 4k pour sélectionner le niveau correspondant. Définissez explicitement ce champ lorsqu’une résolution précise est nécessaire.
Par défaut: 2k
Exemples de requête
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": "gpt-image-2-5",
"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": "gpt-image-2-5",
"status": "processing",
"credits": 5
}
}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.
idstringrequisIdentifiant de la tâche dans data.id, identique au task_id envoyé dans la requête de consultation.
statusstringrequisfailed_reasonstringfacultatifRenvoyé 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": "gpt-image-2-5",
"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": "gpt-image-2-5",
"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.
| Résolution | 1K | 2K | 4K |
|---|---|---|---|
| Une image | 12 | 36 | 50 |
Paramètres facultatifs omis: 5 crédits
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.
