Module 6 · L'API en directEnviron 1 min
Premier appel avec curl
Avant tout script, un appel à la main vérifie la clé, le modèle et vos réglages. Dans un terminal, saisissez la clé sans qu’elle s’affiche ni reste dans l’historique :
read -s GEMINI_API_KEY && export GEMINI_API_KEYÉcrivez la requête dans un fichier requete.json :
{
"model": "gemini-nano-banana-2.1",
"store": false,
"input": "Photographie de produit : un bol en terre cuite rempli d'huile d'olive vert doré, posé sur une planche en bois d'olivier, trois olives vertes à côté. Lumière naturelle douce venant de la gauche, fond crème uni. Format 1:1.",
"response_format": { "type": "image", "mime_type": "image/jpeg", "aspect_ratio": "1:1", "image_size": "1K" }
}Puis envoyez-la :
curl -s -X POST "https://generativelanguage.googleapis.com/v1beta/interactions" \
-H "x-goog-api-key: $GEMINI_API_KEY" \
-H "Content-Type: application/json" \
-d @requete.json \
-o reponse.jsonDans la requête, store: false demande à Google de ne pas conserver l’échange, et response_format impose une image seule, en 1:1 et en 1K. Le prompt suit la formule : sujet, mise en place, lumière, fond, format. Si l’API répond par une erreur d’authentification, vérifiez que la variable a bien été exportée dans le même terminal.
L’image est demandée en 1K, à 0,0336 $ : le prix d’un essai. La réponse, enregistrée dans reponse.json, contient l’image encodée ; la carte suivante l’en extrait. Le fichier de requête évite aussi le casse-tête des apostrophes françaises dans une ligne de commande.