Skip to main content
POST
cURL
POST /v1/images/generations L’endpoint texte à image utilise un corps de Request application/json. Envoyez un prompt, gardez la Request HTTP ouverte et lisez l’image générée depuis data[0].b64_json dans la même réponse.
Utilisez https://bettertoken.ai/v1 comme Base URL. Passez votre BetterToken API Key via Authorization: Bearer YOUR_API_KEY.
Vous pouvez saisir Authorization et le corps de Request dans le Playground à droite de la page, puis envoyer la Request directement à https://bettertoken.ai/v1/images/generations.
Ne placez pas d’API Key dans le code navigateur frontend, les dépôts Git, tickets, captures d’écran ou journaux. Pour les appels de proxy côté serveur, stockez les API Key uniquement dans les variables d’environnement serveur ou un gestionnaire de secrets.

Choisir le bon parcours

  • Générer une image à partir d’un texte et enregistrer le résultat : restez sur cette page. Commencez par l’exemple curl, puis utilisez Enregistrer l’image pour décoder data[0].b64_json.
  • Modifier une image existante : utilisez Image to image, qui envoie un ou plusieurs fichiers source au format multipart/form-data.
  • Choisir un modèle, vérifier les paramètres et estimer le budget : consultez les Model ID et prix actuels dans le model plaza, puis utilisez Valeurs recommandées ci-dessous pour les paramètres. L’article en anglais sur la première requête GPT Image 2 donne le contexte complet de la requête et de la réponse.

Démarrage rapide avec curl

Utilisez https://bettertoken.ai/v1 comme Base URL et envoyez une Request à https://bettertoken.ai/v1/images/generations :

Valeurs recommandées

Envoyez explicitement ces champs dans chaque Request :
Générez plusieurs images en envoyant plusieurs Request indépendantes. Ne vous appuyez pas sur une seule Request avec n > 1.

Tailles recommandées

size représente le ratio attendu et le niveau de taille. Les pixels réellement renvoyés peuvent être mappés ou ajustés par le serveur. Utilisez les dimensions de l’image décodée plutôt que de recadrer de force la sortie à la valeur demandée.

Enregistrer l’image

Une réponse réussie suit la structure de réponse d’image OpenAI compatible :
Lisez data[0].b64_json et enregistrez-le comme contenu d’image base64. La réponse peut inclure des champs supplémentaires tels que revised_prompt ; autorisez ces champs dans votre client. Définissez toujours output_format: "png". Enregistrez ensuite l’image décodée sous .png sans inspecter les en-têtes de fichier.

Exemple JavaScript (Node.js)

Ne vous appuyez pas sur output_format: "jpeg" ou output_format: "webp" pour recevoir directement des fichiers JPEG ou WebP. L’endpoint actuel peut toujours renvoyer du contenu image PNG. Si votre produit nécessite du JPEG ou du WebP, recevez d’abord du PNG et convertissez-le dans votre propre code.

Flux de réponse

Cet endpoint est synchrone. Après l’envoi de POST /images/generations, gardez la Request HTTP actuelle ouverte jusqu’à la réponse du serveur. Lorsque la génération réussit, le contenu de l’image est renvoyé dans data[0].b64_json. L’endpoint ne renvoie pas de task_id, et il n’existe pas d’endpoint distinct de requête de statut ou de téléchargement de résultat.

Délais d’attente et tentatives

  • Réglez les délais d’attente du client HTTP sur plusieurs minutes.
  • Réessayez les erreurs de transport, 408, 409, 425, 429 et 5xx.
  • Ne réessayez pas automatiquement 400, 401, les paramètres manquants ou les Request malformées.
  • Utilisez un backoff exponentiel comme 3s, 8s et 15s.
  • Si les images dupliquées sont inacceptables, enregistrez votre propre ID de Request avant de réessayer.

Gestion des erreurs

Les erreurs renvoient généralement du JSON. Lors de l’affichage d’une erreur, lisez d’abord error.message, puis message, puis le texte de statut HTTP.

Checklist d’intégration

  • La Base URL est https://bettertoken.ai/v1.
  • L’en-tête contient Authorization: Bearer YOUR_API_KEY.
  • La Request utilise application/json et POST /images/generations.
  • model est gpt-image-2, response_format est b64_json, output_format est png et n est 1.
  • size est l’une des valeurs recommandées, par exemple 1024x1024.
  • Votre client HTTP autorise plusieurs minutes pour la génération.

Documents associés

Autorisations

Authorization
string
header
requis

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Corps

application/json
model
enum<string>
défaut:gpt-image-2
requis

Use the GPT Image 2 model ID.

Options disponibles:
gpt-image-2
Exemple:

"gpt-image-2"

prompt
string
requis

A detailed description of the image to generate.

Exemple:

"A futuristic AI product poster on a light background, with glass textures, a clean composition, and a premium technology aesthetic."

n
défaut:1

Use 1. Send separate requests when you need multiple output images.

Exemple:

1

size
enum<string>
défaut:1024x1024

The requested image size or aspect-ratio tier. The server may map or adjust the final pixel dimensions, so inspect the decoded image for its actual size.

Options disponibles:
auto,
1024x1024,
1536x1024,
1024x1536,
1536x1152,
1152x1536,
2048x2048,
2048x1152,
3840x2160,
2160x3840
Exemple:

"1024x1024"

response_format
enum<string>
défaut:b64_json

Use b64_json.

Options disponibles:
b64_json
Exemple:

"b64_json"

output_format
enum<string>
défaut:png

Use png. Do not rely on jpeg or webp being returned directly in the selected format.

Options disponibles:
png
Exemple:

"png"

Réponse

Image generation result.