Passer au contenu principal
POST
/
v1
/
videos
/
generations
curl --request POST \
  --url https://api.apimart.ai/v1/videos/generations \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '{
    "model": "wan2.7-r2v",
    "prompt": "This person walks down the street surrounded by heavy traffic",
    "image_with_roles": [{"url": "https://cdn.example.com/character.jpg", "role": "reference_image"}],
    "resolution": "1080P",
    "duration": 8
  }'
{
  "code": 200,
  "data": [
    {
      "status": "submitted",
      "task_id": "task_01J9HA7JPQ9A0Z6JZ3V8M9W6PZ"
    }
  ]
}

Documentation Index

Fetch the complete documentation index at: https://docs.apimart.ai/llms.txt

Use this file to discover all available pages before exploring further.

curl --request POST \
  --url https://api.apimart.ai/v1/videos/generations \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '{
    "model": "wan2.7-r2v",
    "prompt": "This person walks down the street surrounded by heavy traffic",
    "image_with_roles": [{"url": "https://cdn.example.com/character.jpg", "role": "reference_image"}],
    "resolution": "1080P",
    "duration": 8
  }'
{
  "code": 200,
  "data": [
    {
      "status": "submitted",
      "task_id": "task_01J9HA7JPQ9A0Z6JZ3V8M9W6PZ"
    }
  ]
}

Autorisation

Authorization
string
requis
Tous les endpoints API requièrent une authentification par Bearer TokenObtenez votre API Key :Visitez la page de gestion des API Keys pour obtenir votre API KeyAjoutez-la à l’en-tête de la requête :
Authorization: Bearer YOUR_API_KEY

Paramètres de la requête

model
string
requis
Nom du modèle de génération vidéo, fixé à wan2.7-r2v
prompt
string
requis
Description du contenu de la vidéo, jusqu’à 5000 caractèresPour plusieurs images/vidéos, utilisez « image 1 », « image 2 », « video 1 », etc., pour faire référence aux ressources de référence correspondantes (dans l’ordre d’entrée)Exemple : "The character in image 1 enters the scene in image 2 and looks around"
image_with_roles
array<object>
Tableau d’images avec rôles ; au moins ce champ ou video_urls doit être fourniChamps de chaque objet :
  • url (string) : URL de l’image
  • role (string) : rôle de l’image
    • reference_image — image de référence (par défaut)
    • first_frame — première trame spécifiée (lorsque fournie, size est ignoré et le rapport d’aspect suit l’image de première trame)
  • reference_voice (string, optionnel) : URL d’un échantillon audio vocal pour ce personnage de référence, utilisé pour contrôler la voix du personnage dans la vidéo générée
Exemple :
[
  {
    "url": "https://cdn.example.com/character.jpg",
    "role": "reference_image",
    "reference_voice": "https://cdn.example.com/voice_sample.mp3"
  },
  { "url": "https://cdn.example.com/start.jpg", "role": "first_frame" }
]
video_urls
array<string>
Tableau d’URLs de vidéos de référence, jusqu’à 5 vidéos (total images + vidéos ≤ 5)Au moins ce champ ou image_with_roles doit être fourni
Contraintes vidéo :
  • Format : mp4, mov
  • Durée : 1–30s
  • Résolution : largeur et hauteur dans la plage [240, 4096] pixels
  • Rapport d’aspect : 1:8 – 8:1
  • Taille de fichier : jusqu’à 100 Mo
negative_prompt
string
Prompt négatif décrivant le contenu indésirable, jusqu’à 500 caractères
resolution
string
défaut:"1080P"
Résolution de la vidéoOptions :
  • 720P — standard
  • 1080P — haute définition (par défaut)
duration
integer
défaut:"5"
Durée de la vidéo (secondes)Plage prise en charge : 2 ~ 15 secondesPar défaut : 5
Lorsque les ressources de référence incluent une vidéo : un entier entre [2, 10].Lorsque les ressources de référence n’incluent pas de vidéo : un entier entre [2, 15].
size
string
défaut:"16:9"
Rapport d’aspectFormats pris en charge :
  • 16:9 — écran large paysage (par défaut)
  • 9:16 — portrait
  • 1:1 — carré
  • 4:3 — paysage
  • 3:4 — portrait
Lorsque first_frame est fourni via image_with_roles, ce paramètre est ignoré et le rapport d’aspect suit l’image de première trame
prompt_extend
boolean
défaut:"true"
Activer la réécriture intelligente du promptAméliore significativement les résultats pour les prompts courts, mais augmente le temps de traitementPar défaut : true
watermark
boolean
défaut:"false"
Ajouter un filigrane « AI Generated » à la vidéo générée
  • true : ajouter un filigrane
  • false : sans filigrane (par défaut)
seed
integer
Entier servant de graine pour contrôler le caractère aléatoire du contenu généréPlage de valeurs : entier ≥ 0
  • Pour des requêtes identiques, le modèle génère des résultats différents lorsqu’il reçoit des valeurs de graine différentes (par exemple, omettre la graine)
  • Pour des requêtes identiques, le modèle génère des résultats similaires lorsqu’il reçoit la même valeur de graine, mais une cohérence exacte n’est pas garantie

Réponse

code
integer
Code de statut de la réponse, 200 en cas de succès
data
array
Tableau de données de la réponse

Cas d’utilisation

Cas 1 : Image de référence unique (le plus simple)

{
  "model": "wan2.7-r2v",
  "prompt": "This person walks down the street surrounded by heavy traffic",
  "image_with_roles": [
    { "url": "https://cdn.example.com/character.jpg", "role": "reference_image" }
  ]
}

Cas 2 : Plusieurs images de référence

{
  "model": "wan2.7-r2v",
  "prompt": "The character in image 1 enters the scene in image 2 and mimics the pose in image 3",
  "image_with_roles": [
    { "url": "https://cdn.example.com/person.jpg", "role": "reference_image" },
    { "url": "https://cdn.example.com/background.jpg", "role": "reference_image" },
    { "url": "https://cdn.example.com/pose.jpg", "role": "reference_image" }
  ],
  "resolution": "1080P",
  "duration": 8,
  "size": "16:9"
}

Cas 3 : Génération basée sur une vidéo de référence

{
  "model": "wan2.7-r2v",
  "prompt": "Generate a beach sunset scene in the style of the reference video",
  "video_urls": ["https://cdn.example.com/style_reference.mp4"],
  "resolution": "720P",
  "duration": 8
}

Cas 4 : Première trame spécifiée + image de référence

{
  "model": "wan2.7-r2v",
  "prompt": "The reference character starts from this position and walks forward",
  "image_with_roles": [
    { "url": "https://cdn.example.com/character.jpg", "role": "reference_image" },
    { "url": "https://cdn.example.com/start.jpg", "role": "first_frame" }
  ],
  "resolution": "1080P",
  "duration": 8
}

Cas 5 : Image de référence + voix de référence (précis)

{
  "model": "wan2.7-r2v",
  "prompt": "This person walks down the street while speaking",
  "image_with_roles": [
    {
      "url": "https://cdn.example.com/character.jpg",
      "role": "reference_image",
      "reference_voice": "https://cdn.example.com/voice_sample.mp3"
    }
  ],
  "resolution": "1080P",
  "duration": 10
}

Règles de référence aux images

Avec plusieurs images de référence, utilisez des indices numériques dans le prompt pour y faire référence :
  • 1re image → « image 1 » ou « the first image »
  • 1re vidéo → « video 1 » ou « the first video »
Interroger les résultats de la tâcheLa génération vidéo est une tâche asynchrone qui renvoie un task_id lors de la soumission. Utilisez l’endpoint Obtenir le statut de la tâche pour interroger la progression et les résultats de la génération.