Aller au contenu
GetAPI
Français
Menu

GetAPI.ONE

Générer des images avec GetAPI.ONE

Sélectionnez un modèle d’image dans le catalogue en direct, envoyez la plus petite requête déclarée à la route d’image ONE, validez la structure de la réponse et stockez la sortie en toute sécurité.

Préparer une requête prise en charge

  • Ouvrez le catalogue actuel et sélectionnez un modèle dont le point de terminaison déclaré correspond à la génération d’images.
  • Consultez les tarifs en direct avant un appel facturable ; ce guide ne fige aucun prix.
  • Commencez par une seule sortie et uniquement les champs affichés pour le contrat de ce modèle.
text
POST https://www.getapi.one/v1/images/generations

Envoyer une génération minimale

  1. Définissez GETAPI_ONE_API_KEY dans l’environnement d’un processus de confiance.
  2. Copiez l’identifiant exact du modèle d’image depuis le catalogue actuel.
  3. Décrivez le sujet, la composition et les contraintes dans l’invite.
  4. Envoyez d’abord un seul résultat, puis élargissez les champs facultatifs uniquement après avoir confirmé leur prise en charge par le modèle.
  5. Décodez localement une sortie base64 de taille limitée. Si la réponse contient une URL, enregistrez-la pour un téléchargeur approuvé appliquant des règles explicites de sortie et d’hôte ainsi qu’une revalidation des redirections, au lieu de la déréférencer dans le processus API.
shell
curl --fail-with-body https://www.getapi.one/v1/images/generations \
  -H "Authorization: Bearer $GETAPI_ONE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "<IMAGE_MODEL_ID_FROM_CURRENT_CATALOG>",
    "prompt": "A clean product diagram of a secure server-side API flow",
    "n": 1
  }' > image-response.json
Examiner data[0] et enregistrer les octets renvoyés
import base64
import json
from pathlib import Path
from urllib.parse import urlsplit

payload = json.loads(Path("image-response.json").read_text(encoding="utf-8"))
item = payload["data"][0]

if item.get("b64_json"):
    image_bytes = base64.b64decode(item["b64_json"], validate=True)
    if len(image_bytes) > 25 * 1024 * 1024:
        raise ValueError("Image exceeds the local 25 MB safety limit")
    Path("generated-image.bin").write_bytes(image_bytes)
elif item.get("url"):
    url = item["url"]
    parsed = urlsplit(url)
    if parsed.scheme != "https" or not parsed.hostname:
        raise ValueError("Refusing an invalid or non-HTTPS image URL")
    # Do not dereference provider-controlled URLs from a generic server example.
    # Give this record to an approved downloader that enforces your egress and
    # host policy, rejects private/link-local/loopback destinations, revalidates
    # every redirect, sends no ONE credential, and bounds the response bytes.
    Path("generated-image-url.txt").write_text(url, encoding="utf-8")
    print("URL recorded for an egress-controlled downloader")
else:
    raise ValueError("Expected data[0].url or data[0].b64_json")

Évaluer le résultat

ContrôleCondition de réussite
Fidélité à l’inviteLe sujet et la composition requis sont présents.
Sécurité et droitsLa sortie convient au public visé et vous disposez des droits sur les entrées fournies.
Contrat de réponseExaminez data[0].url ou data[0].b64_json, validez la valeur et enregistrez les octets renvoyés.
Enregistrement opérationnelL’identifiant du modèle, la version de l’invite, l’identifiant de requête s’il est disponible et le résultat sont enregistrés sans la clé.

Vérifier le résultat attendu

  • La requête HTTP réussit et le corps contient la structure de résultat d’image renvoyée par le modèle sélectionné.
  • Un fichier base64 décodé s’ouvre comme le type d’image attendu, ou un résultat URL est enregistré puis récupéré uniquement par votre téléchargeur approuvé, avec contrôle explicite des sorties et des hôtes.
  • La console ONE enregistre la requête ou l’utilisation correspondante.

Corriger les erreurs de requête d’image

SymptômeAction
Paramètre non pris en chargeSupprimez les champs facultatifs de taille, qualité, format ou nombre tant qu’ils ne sont pas confirmés pour ce modèle exact.
Sortie vide ou inutilisableExaminez le corps JSON complet et traitez son URL réelle ou son champ de données encodées ; ne supposez pas une structure unique pour tous les fournisseurs.
Refus lié à la politique ou à l’entréeModifiez l’entrée au lieu de renvoyer continuellement la même requête.

Stocker les entrées et les sorties en toute sécurité

  • Conservez les clés côté serveur et validez la longueur de l’invite, le nombre de sorties et les champs facultatifs avant tout transfert.
  • N’envoyez pas d’images sources confidentielles ni de données personnelles sauf si votre traitement de données approuvé le permet.
  • Considérez les URL renvoyées comme temporaires, sauf indication contraire explicite du contrat du fournisseur ; copiez les sorties approuvées vers un stockage contrôlé.
  • Ne transmettez jamais l’en-tête Authorization de GetAPI.ONE à une URL d’image renvoyée.
  • Traitez les URL renvoyées comme des entrées non fiables : imposez une politique explicite de sortie réseau et d’hôtes, bloquez les destinations privées, link-local et de bouclage, et revalidez chaque redirection dans le téléchargeur dédié.

Étapes suivantes