Skip to main content
Flatkey propose deux familles d’API d’images. Utilisez les endpoints compatibles OpenAI /v1/images/generations et /v1/images/edits pour gpt-image-2. Utilisez l’endpoint natif Gemini generateContent pour les modèles d’images Gemini.
Vous ne pouvez pas appeler les modèles d’images Gemini avec le SDK OpenAI Images, /v1/images/generations, ni /v1/images/edits. Utilisez les exemples d’API Gemini native présents sur cette page. Sinon, la requête peut retourner get_channel_failed.

Modèles d’images pris en charge

Consultez le Répertoire des modèles pour la liste complète des modèles et les tarifs en vigueur.

Utiliser gpt-image-2

Utiliser le SDK OpenAI

Générer une image avec curl

Cet endpoint retourne l’image générée dans data[0].b64_json ; gpt-image-2 ne fournit pas d’URL d’image hébergée. Consultez la référence de l’API Images pour tous les champs.

Modifier une image avec curl

Utilisez /v1/images/edits pour envoyer une image d’entrée accompagnée d’instructions de modification. Cet endpoint utilise multipart/form-data ; image est obligatoire et mask est facultatif.
image prend en charge les formats PNG, JPEG et WebP. Omettez mask pour modifier l’intégralité de l’image selon le prompt. Lorsqu’un masque est fourni, ses zones transparentes identifient les régions à redessiner. L’image modifiée est retournée dans data[0].b64_json. Consultez la référence de l’API de modification pour tous les champs.

Utiliser les modèles d’images Gemini

Les modèles d’images Gemini utilisent l’endpoint suivant. Remplacez {model} par un identifiant de modèle :
La requête doit inclure "IMAGE" dans generationConfig.responseModalities. Les images générées sont retournées dans candidates[].content.parts[].inlineData.

Utiliser curl

Utiliser Python et enregistrer l’image

Installez un client HTTP :

Utiliser Node.js et enregistrer l’image

Champs de requête Gemini

array
requis
Contenu de la conversation. Pour la génération texte-vers-image, placez la description de l’image dans parts[].text.
array
requis
Modalités de réponse. Utilisez ["TEXT", "IMAGE"] pour du texte et des images, ou ["IMAGE"] pour demander des images uniquement.
string
requis
L’identifiant du modèle apparaît dans le chemin de l’URL, pas dans le corps de la requête. Par exemple, gemini-3-pro-image.

Format de réponse Gemini

inlineData.data contient l’image encodée en base64. Une réponse peut contenir du texte et plusieurs parties d’image. Parcourez parts plutôt que de supposer que l’image est toujours le premier élément.

Résolution des problèmes

L’API retourne get_channel_failed

Assurez-vous que l’endpoint correspond au modèle :
  • Utilisez /v1/images/generations pour générer avec gpt-image-2.
  • Utilisez /v1/images/edits pour modifier avec gpt-image-2.
  • Utilisez /v1beta/models/{model}:generateContent pour les modèles d’images Gemini.

La réponse Gemini ne contient pas d’image

Assurez-vous que generationConfig.responseModalities contient "IMAGE". Vérifiez également la réponse pour détecter une erreur ou un blocage de sécurité.

Rédiger des prompts efficaces

  • Précisez le style : photoréaliste, peinture à l’huile, aquarelle, rendu 3D
  • Incluez des détails d’éclairage : heure dorée, éclairage studio, ombres dramatiques
  • Précisez la composition : gros plan, grand angle, vue aérienne, orientation portrait
  • Ajoutez des modificateurs de qualité : très détaillé, 4K, photographie professionnelle