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": "pixverse-v6",
    "prompt": "A cinematic shot of a corgi running through a sunflower field at golden hour",
    "size": "16:9",
    "resolution": "540p",
    "duration": 5
  }'
{
  "code": 200,
  "data": [
    {
      "status": "submitted",
      "task_id": "task_01JWXXXXXXXXXXXX"
    }
  ]
}

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": "pixverse-v6",
    "prompt": "A cinematic shot of a corgi running through a sunflower field at golden hour",
    "size": "16:9",
    "resolution": "540p",
    "duration": 5
  }'
{
  "code": 200,
  "data": [
    {
      "status": "submitted",
      "task_id": "task_01JWXXXXXXXXXXXX"
    }
  ]
}

Authentification

Authorization
string
requis
Tous les endpoints nécessitent une authentification par Bearer Token.Obtenir une clé API :Visitez la page de gestion des clés API pour obtenir votre clé API.Ajoutez l’en-tête suivant à votre requête :
Authorization: Bearer YOUR_API_KEY

Paramètres de requête

model
string
requis
Nom du modèle de génération vidéo. Fixé à pixverse-v6.
prompt
string
requis
Description du contenu de la vidéo, jusqu’à 5000 caractères. Obligatoire dans tous les modes.
resolution
string
défaut:"540p"
Niveau de résolution vidéo. Influence directement la facturation.
  • 360p : SD
  • 540p : Standard (par défaut)
  • 720p : HD
  • 1080p : Full HD
Toute autre valeur de résolution renverra une erreur de paramètre.
duration
integer
défaut:"5"
Durée de la vidéo en secondes, plage 1–15.
Le mode transition premier/dernier frame ne prend en charge que 5 ou 8 secondes.
size
string
défaut:"16:9"
Rapport hauteur/largeur de la vidéo. Effectif uniquement en mode texte vers vidéo et fusion multi-références.
  • 16:9 : Paysage écran large (par défaut)
  • 4:3 : Paysage 4:3
  • 1:1 : Carré
  • 3:4 : Portrait 3:4
  • 9:16 : Portrait vertical
  • 2:3 : Portrait 2:3
  • 3:2 : Paysage 3:2
  • 21:9 : Cinémascope
seed
integer
défaut:"0"
Graine aléatoire, plage 0–2147483647. Le même prompt et la même seed reproduisent des résultats similaires.
negative_prompt
string
Prompt négatif pour exclure les contenus indésirables. Jusqu’à 2048 caractères.
audio
boolean
défaut:"false"
Indique si une piste audio est générée.
  • true : Générer une piste audio (augmente le tarif)
  • false : Sans audio (par défaut)
watermark
boolean
défaut:"false"
Indique si un filigrane est ajouté en bas à droite de la vidéo.
  • true : Ajouter un filigrane
  • false : Sans filigrane (par défaut)
motion_mode
string
Mode de mouvement.
  • normal : Mode standard (pixverse-v6 ne prend en charge que cette valeur)
fast est réservé aux anciens modèles et sera rejeté par l’amont pour pixverse-v6.
generate_multi_clip_switch
boolean
défaut:"false"
Indique s’il faut générer une vidéo multi-clips continue. Pris en charge uniquement en mode texte vers vidéo et image vers vidéo.
  • true : Générer une vidéo multi-clips continue
  • false : Clip unique (par défaut)
image_urls
array<url>
Tableau d’URL d’images d’entrée pour image vers vidéo. Seule la première image est utilisée.Les images doivent être des URL HTTP/HTTPS publiques.
first_frame_image
url
URL du premier frame en mode transition. Doit être fourni avec last_frame_image.
last_frame_image
url
URL du dernier frame en mode transition. Doit être fourni avec first_frame_image.
img_references
array<url>
Tableau d’URL d’images de référence pour le mode fusion multi-références. Prend en charge 1–7 images.Fournir ce champ déclenche le mode fusion multi-références.
extend_from_task_id
string
ID de la tâche source pour l’extension vidéo. Fournir ce champ déclenche le mode extension.La tâche source doit appartenir à l’utilisateur courant, utiliser le modèle pixverse-v6 et avoir le statut completed.

Modes de génération

L’adaptateur dispatch automatiquement vers le mode de génération correspondant selon les champs de la requête. La correspondance se fait par ordre de priorité, le premier qui correspond gagne.
ModeCondition de déclenchementDescription
Texte vers vidéoAucun champ d’image ou d’extensionGénère la vidéo à partir du prompt
Image vers vidéoimage_urls avec une imageUtilise la première image en entrée
Transition premier/dernier framefirst_frame_image et last_frame_image ensembleGénère une transition fluide entre deux frames
Fusion multi-référencesTableau img_references fourniFusionne 1–7 images de référence en une vidéo
Extension vidéoextend_from_task_id fourniContinue à partir d’une tâche Pixverse terminée
Toutes les entrées d’image acceptent uniquement des URL HTTP/HTTPS publiques. base64 et Data URI ne sont pas pris en charge. Si vous n’avez que des images locales, téléversez-les d’abord vers un stockage objet et passez l’URL.

Règles des paramètres

LimiteDescription
Durée vidéo1 ≤ duration ≤ 15 secondes ; mode transition uniquement 5 ou 8 secondes
RésolutionSeules 360p, 540p, 720p, 1080p sont prises en charge
Rapport hauteur/largeursize n’est effectif qu’en mode texte vers vidéo et fusion multi-références
Longueur de promptprompt jusqu’à 5000 caractères, negative_prompt jusqu’à 2048 caractères
Image vers vidéoimage_urls n’utilise que la première image
Transitionfirst_frame_image et last_frame_image doivent être fournis ensemble
Mode de mouvementpixverse-v6 ne prend en charge que normal
Fusion multi-référencesimg_references prend en charge 1–7 images
Extension vidéoextend_from_task_id doit pointer vers une tâche pixverse-v6 completed de l’utilisateur courant

Réponse

code
integer
Code de statut de la réponse. 200 en cas de succès.
data
array
Tableau de tâches retourné.

Récupération du résultat de la tâche

La génération vidéo est une tâche asynchrone. Après soumission, un task_id est retourné. Utilisez l’endpoint Obtenir le statut de la tâche pour interroger la progression et le résultat.
cURL
curl --request GET \
  --url https://api.apimart.ai/v1/tasks/task_01JWXXXXXXXXXXXX \
  --header 'Authorization: Bearer <token>'
Il est recommandé d’interroger toutes les 5 secondes jusqu’à ce que le statut devienne completed ou failed.

Exemple : succès

{
  "code": 200,
  "data": {
    "id": "task_01KSPX48B8V1M6C2ZN0D0T4BKB",
    "status": "completed",
    "progress": 100,
    "cost": 0.2,
    "created": 1779958948,
    "completed": 1779958999,
    "estimated_time": 100,
    "actual_time": 51,
    "result": {
      "videos": [
        {
          "url": ["https://upload.apimart.ai/f/video/xxxx.mp4"],
          "expires_at": 1780045399
        }
      ]
    }
  }
}
L’URL de la vidéo se trouve à data.result.videos[0].url[0]. Le champ url est lui-même un tableau. Les liens vidéo expirent généralement après 24 heures — téléchargez ou transférez-les rapidement.

Exemple : échec

{
  "code": 200,
  "data": {
    "id": "task_01KSPX48B8V1M6C2ZN0D0T4BKB",
    "status": "failed",
    "progress": 100,
    "cost": 0,
    "created": 1779958948,
    "completed": 1779958960,
    "error": {
      "code": "task_failed",
      "message": "pixverse error 400063: moderation failed",
      "type": "task_failed"
    }
  }
}
En cas d’échec, cost vaut généralement 0. La cause de l’erreur se trouve dans data.error.message.

Cas d’utilisation

Cas 1 : Texte vers vidéo

{
  "model": "pixverse-v6",
  "prompt": "A neon-lit alley in Tokyo at night, light rain, anamorphic lens flare",
  "size": "21:9",
  "resolution": "720p",
  "duration": 8,
  "seed": 42,
  "audio": true
}

Cas 2 : Image vers vidéo

{
  "model": "pixverse-v6",
  "prompt": "Camera slowly zooms in, gentle wind moves the leaves",
  "image_urls": ["https://example.com/first-frame.jpg"],
  "resolution": "540p",
  "duration": 5
}

Cas 3 : Transition premier/dernier frame

{
  "model": "pixverse-v6",
  "prompt": "transform smoothly from a puppy to a cat",
  "first_frame_image": "https://example.com/puppy.jpg",
  "last_frame_image": "https://example.com/cat.jpg",
  "resolution": "540p",
  "duration": 5,
  "motion_mode": "normal"
}

Cas 4 : Fusion multi-références

{
  "model": "pixverse-v6",
  "prompt": "A girl wearing the outfit from image 2, holding the cat from image 3",
  "img_references": [
    "https://example.com/character.jpg",
    "https://example.com/outfit.jpg",
    "https://example.com/cat.jpg"
  ],
  "size": "9:16",
  "resolution": "720p",
  "duration": 5
}

Cas 5 : Extension vidéo

{
  "model": "pixverse-v6",
  "prompt": "the character now walks into a forest",
  "extend_from_task_id": "task_01JWXXXXXXXXXXXX",
  "resolution": "540p",
  "duration": 5
}