Comment utiliser l’API MiniMax H3 Fast
Tutoriel pas à pas sur l’API MiniMax H3 Fast avec Node.js, Python et cURL : envoyer une tâche texte en vidéo, l’interroger ou recevoir un webhook, puis télécharger le video. L’exemple ci-dessous coûte $0,33.
- Points de terminaison
- 3
- Texte en vidéo · Image en vidéo · Référence → vidéo
- Exemple de requête
- $0,33
- Texte en vidéo
- Langages
- 3
- Node.js · Python · cURL
- Générations échouées
- $0
- remboursées automatiquement
Obtenir une clé API
Créez un compte, ajoutez des crédits, puis créez une clé dans Tableau de bord → Clés API. Enregistrez-la sous CHEAPERGEN_API_KEY sur votre serveur. Chaque requête la transmet comme jeton Bearer.
Choisissez un point de terminaison MiniMax H3 Fast
Chaque tâche a son propre point de terminaison. Tous acceptent un corps JSON et renvoient une génération que vous pouvez interroger.
| Tâche | Point de terminaison | Obligatoire | À partir de |
|---|---|---|---|
| Texte en vidéo | minimax/h3-fast/text-to-video | prompt | $0,0369 par seconde |
| Image en vidéo | minimax/h3-fast/image-to-video | prompt, image_url | $0,0369 par seconde |
| Référence → vidéo | minimax/h3-fast/reference-to-video | prompt | $0,0369 par seconde |
Envoyer une tâche texte en vidéo
Ce programme envoie la tâche, interroge son état toutes les 3 secondes jusqu’à sa fin et affiche l’URL video. Remplacez le prompt et les paramètres par les vôtres.
const API = "https://cheapergen.com/api/v1";
const headers = {
Authorization: `Bearer ${process.env.CHEAPERGEN_API_KEY}`,
"Content-Type": "application/json",
};
// 1. Submit the job
let job = await fetch(`${API}/run/minimax/h3-fast/text-to-video`, {
method: "POST",
headers,
body: JSON.stringify({
"prompt": "Un bateau en papier dérive dans une gouttière pleine de pluie au crépuscule, pluie fine et cloche lointaine d’un tramway",
"aspect_ratio": "16:9",
"resolution": "768P",
"duration": 6
}),
}).then((r) => r.json());
// 2. Poll until it finishes (or pass webhook_url and skip polling)
while (job.status === "queued" || job.status === "running") {
await new Promise((r) => setTimeout(r, 3000));
job = await fetch(`${API}/generations/${job.id}`, { headers }).then((r) => r.json());
}
console.log(job.status === "succeeded" ? job.output.video.url : job.error);Définissez les paramètres importants
Les paramètres de minimax/h3-fast/text-to-video, avec l’incidence de chacun sur le prix.
| Paramètre | Type · valeur par défaut | Description | Effet sur le prix |
|---|---|---|---|
| aspect_ratio | string (enum) · 16:9 | Format de l’image de sortie. 16:9 · 9:16 · 1:1 · 4:3 · 3:4 · 21:9 | Oui |
| resolution | string (enum) · 768P | Résolution de sortie. Les résolutions supérieures coûtent plus cher par seconde. 480P · 768P | 480P: $0,0369 par seconde 768P: $0,0546 par seconde |
| duration | integer · 6 | Durée du clip généré en secondes (4–15 s). La facturation se fait à la seconde. | Facturé à la seconde |
| seed | integer | Réutilisez le même seed et les mêmes paramètres pour reproduire un résultat. Laissez ce champ vide pour une valeur aléatoire. | Aucun |
| enable_safety_checker | boolean · true | If set to true, the safety checker will be enabled. Content our Acceptable Use Policy prohibits stays blocked either way. | Aucun |
Les autres points de terminaison MiniMax H3 Fast suivent la même structure, avec leurs propres entrées :
POST /api/v1/run/minimax/h3-fast/image-to-video
{
"prompt": "La fleur s’ouvre lentement dans la lumière du matin, chant d’oiseaux en arrière-plan",
"image_url": "https://cdn.cheapergen.com/samples/portrait.jpg",
"aspect_ratio": "16:9",
"resolution": "768P",
"duration": 6
}POST /api/v1/run/minimax/h3-fast/reference-to-video
{
"prompt": "Le chanteur de @Image1 se produit sur le toit, en suivant le mouvement de caméra de @Video1, avec les voix de @Audio1",
"reference_image_urls": [
"https://cdn.cheapergen.com/samples/reference-1.jpg"
],
"reference_video_urls": [
"https://cdn.cheapergen.com/samples/reference-1.mp4"
],
"reference_audio_urls": [
"https://cdn.cheapergen.com/samples/reference-1.mp3"
],
"aspect_ratio": "16:9",
"resolution": "768P",
"duration": 6
}Récupérer le résultat
Une tâche passe de queued à running, puis à succeeded, failed ou canceled. Interrogez GET /api/v1/generations/{id}, ou indiquez webhook_url pour que nous vous envoyions le résultat par POST. Téléchargez le résultat et stockez-le vous-même.
{
"id": "gen_8c2QmX1nq0k4",
"object": "generation",
"model": "minimax/h3-fast",
"endpoint": "minimax/h3-fast/text-to-video",
"mode": "text-to-video",
"status": "succeeded",
"input": {
"prompt": "Un bateau en papier dérive dans une gouttière pleine de pluie au crépuscule, pluie fine et cloche lointaine d’un tramway",
"aspect_ratio": "16:9",
"resolution": "768P",
"duration": 6
},
"output": {
"video": {
"url": "https://cdn.cheapergen.com/outputs/gen_8c2Q.mp4",
"content_type": "video/mp4",
"duration": 5,
"width": 1280,
"height": 720
}
},
"error": null,
"cost": {
"amount_usd": 0.2255,
"currency": "usd",
"estimated": false,
"official_usd": 0.264,
"list_price_source": "reference",
"list_price_label": "Official MiniMax H3 API",
"saved_usd": 0.0385
},
"source": "api",
"created_at": "2026-10-15T09:21:04Z",
"started_at": "2026-10-15T09:21:06Z",
"completed_at": "2026-10-15T09:22:31Z"
}Calculer le prix avant le lancement
Le point de terminaison de devis est gratuit et ne nécessite pas de clé. Il renvoie le prix, le tarif de official MiniMax H3 API et votre remise pour exactement les paramètres que vous envoyez.
curl -X POST https://cheapergen.com/api/v1/quote/minimax/h3-fast/text-to-video \
-H "Content-Type: application/json" \
-d '{"prompt":"Un bateau en papier dérive dans une gouttière pleine de pluie au crépuscule, pluie fine et cloche lointaine d’un tramway","aspect_ratio":"16:9","resolution":"768P","duration":6}'| État | Code | Signification |
|---|---|---|
| 400 | invalid_request | Un paramètre manque ou dépasse les limites autorisées ; le message indique lequel. |
| 401 | unauthorized | Clé API manquante, mal formée ou révoquée. |
| 402 | insufficient_balance | Crédits insuffisants pour le prix indiqué ; rechargez votre solde ou activez la recharge automatique. |
| 429 | rate_limited | Trop de requêtes ou de générations en cours ; attendez un peu avant de réessayer. |
| 502 | upstream_error | Une erreur s’est produite pendant la génération ; le montant réservé est remboursé et vous pouvez réessayer. |
| 503 | model_unavailable | Aucune capacité n’est disponible pour le moment ; réessayez plus tard ou choisissez un autre modèle. |
FAQ
