API Vidéo - Création
Crée une vidéo complète avec plusieurs séquences. Chaque séquence peut contenir des médias (images ou vidéos) animés selon le type d’animation spécifié. Vous pouvez ajouter une intro, une outro, des transitions entre séquences, un logo, et des effets avant/après.Authentification
Toutes les requêtes doivent inclure l’en-tête :x-api-key: VOTRE_API_KEY
En-têtes
string
requis
Votre clé API IACrea
string
requis
Doit être
application/jsonCorps de requête
object
requis
Objet vidéo contenant toutes les séquences et paramètres
string
requis
Format de la vidéo :
"landscape" | "portrait" | "square"string
Template vidéo. Défaut :
"SaleProperty". Optionnel.string
URL de la musique de fond. Optionnel.
string
Police de caractères (ex :
"Inter"). Défaut : "Inter". Optionnel.array
requis
Tableau de deux couleurs
[background, text] (ex : ["#1a1a2e", "#ffffff"]).
La première couleur est le fond, la seconde la couleur du texte.boolean
requis
Active l’affichage du logo sur les séquences vidéo/image (coin supérieur
droit, 100 px). Le logo sur les intro/outro est contrôlé séparément via
sequence.data.displayLogo.string
URL du logo. Nécessaire si
displayLogo=true ou si vous souhaitez afficher le
logo sur les intros/outros. Optionnel.Séquences
array
requis
Tableau de séquences vidéo ordonnées. Chaque séquence représente un clip dans
la vidéo finale. Les séquences sont composées dans l’ordre de leur champ
order.number
requis
Ordre d’affichage de la séquence dans la vidéo (commence à 0). L’intro doit
être en premier (
0), l’outro en dernier.number
requis
Durée de la séquence en secondes. - Séquences
"video" : max 5 secondes
(plafonné automatiquement) - Séquences "intro" : 2 à 5 secondes (recommandé
: 3) - Séquences "outro" : 3 à 5 secondes (recommandé : 5) - Séquences
"image" : librestring
requis
Type de séquence : -
"intro" — Écran d’introduction (logo + texte de
présentation) - "outro" — Écran de fin (logo + coordonnées ou texte) -
"video" — Séquence vidéo animée (déclenche la génération IA) - "image" —
Séquence image statique - "beforeAfter" — Séquence avant/après (slide
comparatif statique)string
requis
Type d’animation. Valeurs possibles :Mouvements de caméra :
"CAMERA_PUSH_IN"— Zoom avant"CAMERA_PUSH_OUT"— Zoom arrière"CAMERA_MOVE_RIGHT"— Déplacement vers la droite"CAMERA_CRANE_UP"— Mouvement vers le haut"CAMERA_ORBIT_LEFT"— Rotation vers la gauche
"AUTO_EFFECTS"— Animation automatique (prompt généré par IA)"AUTO_REVERSE"— Animation automatique inversée
"REALTOR_SMILING"— Animation portrait agent immobilier
"BEFORE_AFTER_INTERIOR"— Transformation intérieur (meublage progressif)"BEFORE_AFTER_EXTERIOR"— Transformation extérieur (aménagement paysager)"BEFORE_AFTER_DECLUTTER"— Débarras (meubles qui disparaissent)"BEFORE_AFTER_RENOVATION"— Rénovation (timelapse avec équipe de rénovation)
"none"— Aucune animation"fade"— Fondu simple
Médias
array
requis
Tableau de médias pour cette séquence. Au moins un média requis pour les types
"video" et "image". Les séquences "intro" et "outro" n’ont pas besoin
de médias (tableau vide []).string
requis
URL de l’image ou de la vidéo source. Pour les effets BEFORE_AFTER, il s’agit
de l’image “avant”.
number
requis
Temps de début du média dans la séquence (en secondes). Généralement
0.number
requis
Temps de fin du média dans la séquence (en secondes). Doit correspondre à la
durée.
number
Ordre du média dans la séquence. Optionnel. Défaut :
0.boolean
Média actif dans la séquence. Mettez
true pour le média principal.
Optionnel.Données de séquence (data)
object
Données supplémentaires pour la séquence. Le contenu varie selon le type de
séquence.
Données Intro (type: "intro")
string
Texte affiché sous le logo (ex :
"vous présente", "À vendre").boolean
Afficher le logo (de
video.logoUrl) sur l’intro. Défaut : true.string
Couleur de fond personnalisée pour l’intro (ex :
"#1a1a2e"). Défaut :
première couleur de video.colors.Données Outro (type: "outro")
string
URL de la photo de profil (agent, conseiller). Affichée en cercle.
boolean
Afficher l’avatar sur l’outro. Défaut :
true.string
Nom affiché sur l’outro (ex :
"Jean Dupont").string
Email affiché sur l’outro.
string
Téléphone affiché sur l’outro.
boolean
Afficher le logo (de
video.logoUrl) sur l’outro. Défaut : true.string
Couleur de fond personnalisée pour l’outro.
Interview et Sample (générique) :
string
Titre affiché sur l’outro.
string
Description affichée sous le titre.
Données Before/After
string
Requis pour les effets BEFORE_AFTER. URL de l’image “après”
transformation. L’image “avant” est fournie via
medias[0].url.Transitions
Les transitions définissent comment une séquence entre en scène par rapport à la précédente. La transition est définie dans le champdata.transition de la séquence cible.
object
Configuration de la transition d’entrée pour cette séquence.
string
Type de transition : -
"fade" — Fondu enchaîné (défaut) - "wipe" —
Balayage horizontal - "slide" — Glissement - "flip" — Retournement -
"clock-wipe" — Balayage en horloge - "iris" — Ouverture circulaire -
"none" — Pas de transitionnumber
Durée de la transition en frames (1 à 120). À 30 fps : -
15 ≈ 0.5
seconde - 20 ≈ 0.67 seconde (défaut) - 30 ≈ 1 seconde - 60 ≈ 2 secondesLogo — Comportement détaillé
Le logo est contrôlé à deux niveaux :-
Niveau vidéo (
video.displayLogo+video.logoUrl) :- Active l’affichage du logo en coin supérieur droit (100 px) sur les séquences de type
"video"et"image".
- Active l’affichage du logo en coin supérieur droit (100 px) sur les séquences de type
-
Niveau séquence (
sequence.data.displayLogo) :- Sur les
"intro"et"outro": le logo devideo.logoUrlest affiché centré (200 px pour l’intro, 150 px pour l’outro). - Contrôlé individuellement par
sequence.data.displayLogo(défauttrue). - Pour masquer le logo sur une intro/outro spécifique, passez
"displayLogo": falsedans sondata.
- Sur les
Webhook
string
URL du webhook pour recevoir une notification lorsque la vidéo est terminée.
Optionnel.
Réponses
201 — Créé avec succès
string
Identifiant unique de la vidéo générée. À utiliser avec
GET /api/video-editor/generate/video/{id} pour suivre l’avancement.array
Liste des contenus générés (un élément par séquence de type
"video"). Chaque
élément contient : - id : Identifiant de génération - url : URL de l’image
source - effect : Type d’animation - format : Format de la vidéo -
status : Statut ("pending" | "success" | "error")number
Nombre de crédits restants
number
Nombre de crédits utilisés pour cette génération
400 — Erreur de validation
Renvoyé si le corps de requête est invalide (séquence manquante, format invalide, etc.).401 — Non autorisé
Renvoyé six-api-key est manquant ou invalide.
500 — Erreur serveur
Erreur interne du serveur.Exemples
Exemple 1 — Vidéo basique avec intro + outro + logo
Exemple 2 — Vidéo avec transitions entre séquences
Exemple 3 — Effet BEFORE_AFTER avec deux images
Exemple 4 — Logo masqué sur l’intro mais visible sur les séquences
Réponse type
Notes importantes
- Les séquences
"video"déclenchent automatiquement la génération d’une animation IA à partir de l’image fournie. Chaque séquence vidéo consomme 1 crédit. - La durée maximale d’une séquence
"video"est 5 secondes (plafonnée automatiquement). - Les séquences
"intro"et"outro"ne consomment pas de crédits (pas de génération IA). - Utilisez l’
idretourné avecGET /api/video-editor/generate/video/{id}pour suivre l’avancement. - Si un webhook est fourni, vous recevrez une notification lorsque la vidéo finale est prête.
Récapitulatif Intro / Outro
Récapitulatif Transitions
Les transitions sont optionnelles. Sans transition définie, le passage entre séquences utilise la transition par défaut du template (fondu de ~20 frames). Pour personnaliser, ajoutezdata.transition sur chaque séquence souhaitée.
