Utilisez l'API RunComfy pour exécuter happyhorse/happyhorse-1.0/reference-to-video. Pour les entrées et sorties acceptées, voir le schéma.
curl --request POST \
--url https://model-api.runcomfy.net/v1/models/happyhorse/happyhorse-1.0/reference-to-video \
--header "Content-Type: application/json" \
--header "Authorization: Bearer <token>" \
--data '{
"image_url_1": "https://playgrounds-storage-public.runcomfy.net/tools/7347/media-files/ref-promo-1.png",
"prompt": "Cinematic medium close-up. The young woman (character1) with natural blonde hair, blue eyes, and light freckles sits in a bright European-style café by a window, warm morning light on her face. She glances up from her book, gives a warm candid smile toward camera, then returns her gaze to the page. Slow dolly-in, shallow depth of field, identity-locked face and freckle pattern from the reference, soft background bokeh, 8K film look."
}'Définissez la variable d'environnement YOUR_API_TOKEN avec votre clé API (gestion dans Profil) et incluez à chaque requête un jeton Bearer dans l'en-tête Authorization : Authorization: Bearer $YOUR_API_TOKEN.
Soumettez une tâche de génération asynchrone et recevez immédiatement un request_id ainsi que des URLs pour le statut, les résultats et l'annulation.
curl --request POST \
--url https://model-api.runcomfy.net/v1/models/happyhorse/happyhorse-1.0/reference-to-video \
--header "Content-Type: application/json" \
--header "Authorization: Bearer <token>" \
--data '{
"image_url_1": "https://playgrounds-storage-public.runcomfy.net/tools/7347/media-files/ref-promo-1.png",
"prompt": "Cinematic medium close-up. The young woman (character1) with natural blonde hair, blue eyes, and light freckles sits in a bright European-style café by a window, warm morning light on her face. She glances up from her book, gives a warm candid smile toward camera, then returns her gaze to the page. Slow dolly-in, shallow depth of field, identity-locked face and freckle pattern from the reference, soft background bokeh, 8K film look."
}'Récupère l'état actuel pour un request_id (« in_queue », « in_progress », « completed » ou « cancelled »).
curl --request GET \
--url https://model-api.runcomfy.net/v1/requests/{request_id}/status \
--header "Authorization: Bearer <token>"Récupère les sorties finales et métadonnées pour le request_id ; si le travail n'est pas terminé, la réponse indique l'état actuel pour poursuivre le polling.
curl --request GET \
--url https://model-api.runcomfy.net/v1/requests/{request_id}/result \
--header "Authorization: Bearer <token>"Annule un travail en file d'attente via request_id ; les travaux en cours ne peuvent pas être annulés.
curl --request POST \
--url https://model-api.runcomfy.net/v1/requests/{request_id}/cancel \
--header "Authorization: Bearer <token>"Fournissez une URL HTTPS accessible publiquement. L'hôte doit autoriser les récupérations côté serveur (sans login/cookies), sans limitation de débit ni blocage des bots. Recommandé : images ≤ 50 Mo (~4K), vidéos ≤ 100 Mo (~2–5 min en 720p). Préférez des URL stables ou pré-signées pour les actifs privés.
{
"type": "object",
"title": "Schéma d'entrée",
"required": [
"image_url_1",
"prompt"
],
"properties": {
"image_url_1": {
"title": "Image de référence 1 (personnage 1)",
"description": "Première image de référence. Marquez ce sujet dans l'invite comme caractère1. Format : JPEG, JPG, PNG ou WEBP. Côté court ≥ 400 px, recommandé 720P ou supérieur, max 10 Mo.",
"type": "string",
"default": "https://playgrounds-storage-public.runcomfy.net/tools/7347/media-files/ref-promo-1.png"
},
"image_url_2": {
"title": "Image de référence 2 (personnage 2)",
"description": "Deuxième image de référence facultative. Marquez ce sujet dans l'invite comme caractère2. Format : JPEG, JPG, PNG ou WEBP. Laissez vide pour sauter.",
"type": "string"
},
"image_url_3": {
"title": "Image de référence 3 (personnage 3)",
"description": "Troisième image de référence facultative. Marquez ce sujet dans l'invite comme caractère3. Format : JPEG, JPG, PNG ou WEBP. Laissez vide pour sauter.",
"type": "string"
},
"image_url_4": {
"title": "Image de référence 4 (personnage4)",
"description": "Quatrième image de référence facultative. Marquez ce sujet dans l'invite comme caractère4. Laissez vide pour sauter.",
"type": "string"
},
"image_url_5": {
"title": "Image de référence 5 (personnage5)",
"description": "Cinquième image de référence facultative. Marquez ce sujet dans l'invite comme caractère5. Laissez vide pour sauter.",
"type": "string"
},
"image_url_6": {
"title": "Image de référence 6 (personnage6)",
"description": "Sixième image de référence facultative. Marquez ce sujet dans l'invite comme caractère6. Laissez vide pour sauter.",
"type": "string"
},
"image_url_7": {
"title": "Image de référence 7 (personnage7)",
"description": "Septième image de référence facultative. Marquez ce sujet dans l'invite comme caractère7. Laissez vide pour sauter.",
"type": "string"
},
"image_url_8": {
"title": "Image de référence 8 (personnage 8)",
"description": "Huitième image de référence facultative. Marquez ce sujet dans l'invite comme caractère8. Laissez vide pour sauter.",
"type": "string"
},
"image_url_9": {
"title": "Image de référence 9 (personnage 9)",
"description": "Neuvième image de référence facultative. Marquez ce sujet dans l'invite comme caractère9. Laissez vide pour sauter.",
"type": "string"
},
"prompt": {
"title": "Prompt",
"description": "Décrivez la scène, le mouvement, la caméra et l'éclairage. Faites référence à chaque image de référence avec caractère1, caractère2, caractère3… dans l'ordre dans lequel elles apparaissent ci-dessus. Max 2 500 caractères chinois / 5 000 caractères non chinois.",
"type": "string",
"default": "Cinematic medium close-up. The young woman (character1) with natural blonde hair, blue eyes, and light freckles sits in a bright European-style café by a window, warm morning light on her face. She glances up from her book, gives a warm candid smile toward camera, then returns her gaze to the page. Slow dolly-in, shallow depth of field, identity-locked face and freckle pattern from the reference, soft background bokeh, 8K film look.",
"maxLength": 5000
},
"aspect_ratio": {
"title": "Rapport hauteur/largeur (L:H)",
"description": "Rapport d’aspect de la vidéo de sortie.",
"type": "string",
"enum": [
"16:9",
"9:16",
"1:1",
"4:3",
"3:4"
],
"default": "16:9"
},
"resolution": {
"title": "Résolution",
"description": "Résolution vidéo de sortie. Le modèle prend en charge 720P ou 1080P.",
"type": "string",
"enum": [
"720P",
"1080P"
],
"default": "1080P"
},
"duration": {
"title": "Durée",
"description": "Durée de la vidéo de sortie en secondes. Valeurs autorisées : 3 à 15.",
"type": "integer",
"enum": [
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15
],
"default": 5
},
"seed": {
"title": "Graine",
"description": "Semence facultative pour des générations reproductibles. Utilisez 0 pour laisser le fournisseur randomiser.",
"type": "integer",
"minimum": 0,
"maximum": 2147483647,
"default": 0
},
"watermark": {
"title": "Filigrane",
"description": "S'il faut conserver le filigrane du fournisseur sur la vidéo générée.",
"type": "boolean",
"default": false
}
}
}{
"output": {
"type": "object",
"properties": {
"image": {
"type": "string",
"format": "uri",
"description": "URL d'une seule image"
},
"video": {
"type": "string",
"format": "uri",
"description": "URL d'une seule vidéo"
},
"images": {
"type": "array",
"description": "plusieurs URLs d'images",
"items": {
"type": "string",
"format": "uri"
}
},
"videos": {
"type": "array",
"description": "plusieurs URLs de vidéos",
"items": {
"type": "string",
"format": "uri"
}
}
}
}
}RunComfy est la première ComfyUI plateforme, offrant des ComfyUI en ligne environnement et services, ainsi que des workflows ComfyUI proposant des visuels époustouflants. RunComfy propose également AI Models, permettant aux artistes d'utiliser les derniers outils d'IA pour créer des œuvres d'art incroyables.