Utilisez l'API RunComfy pour exécuter wan-ai/wan-2.7/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/wan-ai/wan-2.7/reference-to-video \
--header "Content-Type: application/json" \
--header "Authorization: Bearer <token>" \
--data '{
"prompt": "Use the reference to keep the same product shape, materials, and colors; generate a 5-second clip with natural motion, medium framing, soft daylight, and a smooth camera follow."
}'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/wan-ai/wan-2.7/reference-to-video \
--header "Content-Type: application/json" \
--header "Authorization: Bearer <token>" \
--data '{
"prompt": "Use the reference to keep the same product shape, materials, and colors; generate a 5-second clip with natural motion, medium framing, soft daylight, and a smooth camera follow."
}'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": [
"prompt"
],
"properties": {
"prompt": {
"title": "Prompt",
"description": "",
"type": "string",
"maxLength": 5000,
"default": "Use the reference to keep the same product shape, materials, and colors; generate a 5-second clip with natural motion, medium framing, soft daylight, and a smooth camera follow."
},
"reference_image_urls": {
"title": "URL des images de référence",
"description": "URL d’image de référence pour l’apparence du personnage ou de l’objet. Transmettez plusieurs images pour une génération multi-sujets. Max 20 Mo chacun. Le total combiné des images de référence et des vidéos de référence ne doit pas dépasser 5.",
"type": "array",
"items": {
"type": "string",
"format": "image_uri"
},
"maxItems": 5,
"default": [
"https://playgrounds-storage-public.runcomfy.net/tools/7338/media-files/ref-promo.webp"
]
},
"reference_video_urls": {
"title": "URL des vidéos de référence",
"description": "URL de vidéo de référence pour l’apparence et le mouvement d’un personnage ou d’un objet. Transmettez plusieurs vidéos pour une génération multi-sujets. Max 100 Mo chacun. Le total combiné des images de référence et des vidéos de référence ne doit pas dépasser 5.",
"type": "array",
"items": {
"type": "string",
"format": "video_uri"
},
"maxItems": 5
},
"negative_prompt": {
"title": "Negative Prompt",
"description": "Contenu à éviter dans la vidéo.",
"type": "string",
"maxLength": 500
},
"aspect_ratio": {
"title": "Rapport hauteur/largeur (L:H)",
"description": "",
"type": "string",
"enum": [
"16:9",
"9:16",
"1:1",
"4:3",
"3:4"
],
"default": "16:9"
},
"resolution": {
"title": "Résolution",
"description": "Niveau de résolution vidéo de sortie.",
"type": "string",
"enum": [
"720p",
"1080p"
],
"default": "1080p"
},
"duration": {
"title": "Durée",
"description": "Durée de la vidéo de sortie en secondes (2-10).",
"type": "integer",
"enum": [
2,
3,
4,
5,
6,
7,
8,
9,
10
],
"default": 5
},
"multi_shots": {
"title": "Plans multiples",
"description": "Lorsque la valeur est true, permet une segmentation intelligente multi-shot. Lorsque la valeur est false, génère une seule prise de vue continue.",
"type": "boolean",
"default": false
},
"seed": {
"title": "Seed",
"description": "",
"type": "integer",
"minimum": 0,
"maximum": 2147483647,
"default": 0
}
}
}{
"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.