curl --request POST \
--url https://api.apimart.ai/v1/videos/generations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"model": "pixverse-v6-max",
"prompt": "A blue glass marble rolls across a clean white table in morning light",
"duration": 5,
"resolution": "720p",
"aspect_ratio": "16:9",
"audio": true
}'
import requests
response = requests.post(
"https://api.apimart.ai/v1/videos/generations",
headers={"Authorization": "Bearer <token>"},
json={
"model": "pixverse-v6-max",
"prompt": "A blue glass marble rolls across a clean white table in morning light",
"duration": 5,
"resolution": "720p",
"aspect_ratio": "16:9",
"audio": True
}
)
response.raise_for_status()
print(response.json())
const response = await fetch("https://api.apimart.ai/v1/videos/generations", {
method: "POST",
headers: {
Authorization: "Bearer <token>",
"Content-Type": "application/json"
},
body: JSON.stringify({
model: "pixverse-v6-max",
prompt: "A blue glass marble rolls across a clean white table in morning light",
duration: 5,
resolution: "720p",
aspect_ratio: "16:9",
audio: true
})
});
if (!response.ok) throw new Error(await response.text());
console.log(await response.json());
PixVerse V6 Max
PixVerse V6 Max Génération de vidéos
Génération texte-vidéo et à partir d’une seule image en 360p / 540p / 720p / 1080p, de 1 à 15 secondes, avec une piste audio native en option.
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-max",
"prompt": "A blue glass marble rolls across a clean white table in morning light",
"duration": 5,
"resolution": "720p",
"aspect_ratio": "16:9",
"audio": true
}'
import requests
response = requests.post(
"https://api.apimart.ai/v1/videos/generations",
headers={"Authorization": "Bearer <token>"},
json={
"model": "pixverse-v6-max",
"prompt": "A blue glass marble rolls across a clean white table in morning light",
"duration": 5,
"resolution": "720p",
"aspect_ratio": "16:9",
"audio": True
}
)
response.raise_for_status()
print(response.json())
const response = await fetch("https://api.apimart.ai/v1/videos/generations", {
method: "POST",
headers: {
Authorization: "Bearer <token>",
"Content-Type": "application/json"
},
body: JSON.stringify({
model: "pixverse-v6-max",
prompt: "A blue glass marble rolls across a clean white table in morning light",
duration: 5,
resolution: "720p",
aspect_ratio: "16:9",
audio: true
})
});
if (!response.ok) throw new Error(await response.text());
console.log(await response.json());
Ce point de terminaison est asynchrone. Après l’envoi, utilisez le
task_id renvoyé avec GET /v1/videos/generations/{task_id} pour consulter l’état et le résultat de la tâche.curl --request POST \
--url https://api.apimart.ai/v1/videos/generations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"model": "pixverse-v6-max",
"prompt": "A blue glass marble rolls across a clean white table in morning light",
"duration": 5,
"resolution": "720p",
"aspect_ratio": "16:9",
"audio": true
}'
import requests
response = requests.post(
"https://api.apimart.ai/v1/videos/generations",
headers={"Authorization": "Bearer <token>"},
json={
"model": "pixverse-v6-max",
"prompt": "A blue glass marble rolls across a clean white table in morning light",
"duration": 5,
"resolution": "720p",
"aspect_ratio": "16:9",
"audio": True
}
)
response.raise_for_status()
print(response.json())
const response = await fetch("https://api.apimart.ai/v1/videos/generations", {
method: "POST",
headers: {
Authorization: "Bearer <token>",
"Content-Type": "application/json"
},
body: JSON.stringify({
model: "pixverse-v6-max",
prompt: "A blue glass marble rolls across a clean white table in morning light",
duration: 5,
resolution: "720p",
aspect_ratio: "16:9",
audio: true
})
});
if (!response.ok) throw new Error(await response.text());
console.log(await response.json());
Fonctionnalités du modèle
PixVerse V6 Max est la version de PixVerse V6 offrant une meilleure qualité d’image. Il prend uniquement en charge la génération texte-vidéo et à partir d’une seule image, avec le même nom de modèlepixverse-v6-max.
| Mode | Entrée | Rapport d’aspect |
|---|---|---|
| Texte-vidéo | Omettre image_urls ; prompt est obligatoire | Utilise aspect_ratio, avec 16:9 par défaut |
| Image-vidéo | Fournir 1 image dans image_urls ; prompt est facultatif | Suit l’image d’entrée ; aspect_ratio est sans effet |
En-têtes de requête
string
requis
Authentification Bearer :
Bearer <token>, où <token> est votre clé API APIMart.Paramètres de requête
string
requis
Doit être
pixverse-v6-max.string
Décrit le contenu à générer. Obligatoire en texte-vidéo, jusqu’à 5000 caractères ; facultatif en image-vidéo, jusqu’à 2048 caractères.
string[]
Liste d’URL d’images d’entrée. Le mode image-vidéo accepte exactement 1 image ; en fournir 2 ou plus renvoie HTTP 400 de façon synchrone. Omettez ce champ pour le mode texte-vidéo.Les images doivent être accessibles publiquement via HTTP(S), au format JPEG, PNG ou WebP, de moins de 20 MB, avec chaque côté limité à 10000 pixels.
integer
défaut:"5"
Durée de sortie en secondes, de
1 à 15 ; valeur par défaut : 5.string
défaut:"540p"
Résolution de sortie :
360p, 540p, 720p ou 1080p ; valeur par défaut : 540p.La sortie utilise les dimensions natives du modèle en amont ; les dimensions effectivement renvoyées font foi. Exemples observés lors des tests : 640×360 et 1108×832 (largeur × hauteur, en pixels).Le champ quality est aussi accepté. Si les deux sont fournis, resolution est prioritaire.string
Champ de compatibilité pour la résolution, avec les mêmes valeurs que
resolution. Utilisé uniquement en l’absence de resolution ; si les deux champs sont omis, 540p est utilisé.string
défaut:"16:9"
S’applique uniquement au mode texte-vidéo. Accepte
16:9, 9:16, 4:3, 3:4, 1:1, 2:3, 3:2 et 21:9 ; valeur par défaut : 16:9.Le mode image-vidéo suit toujours le rapport d’aspect de l’image d’entrée ; ce champ est sans effet.boolean
défaut:"false"
Définissez
true pour générer une piste audio native ; la sortie est muette par défaut. La génération avec audio coûte plus cher par seconde.Seul le champ audio au premier niveau du corps de requête est pris en compte. metadata.generate_audio_switch n’active ni la piste audio ni la tarification avec audio.integer
Graine aléatoire, de
0 à 2147483647.Exemple image-vidéo
{
"model": "pixverse-v6-max",
"prompt": "Make the subject walk forward slowly",
"image_urls": ["https://example.com/start.png"],
"duration": 5,
"resolution": "1080p"
}
Consulter une tâche
Remplacez l’identifiant de tâche dans la requête suivante par letask_id renvoyé à l’envoi :
curl --request GET \
--url 'https://api.apimart.ai/v1/videos/generations/<task_id>' \
--header 'Authorization: Bearer <token>'
Facturation
Le coût correspond à la durée de sortie en secondes multipliée par le tarif par seconde de la résolution et de l’option audio choisies. Les sorties avec et sans audio ont des tarifs distincts ; l’audio coûte plus cher par seconde. Sansresolution ni quality, la sortie et la facturation utilisent toutes deux 540p.
Les tarifs actuels sont fournis par le point de terminaison des prix du modèle :
| Option audio | Champ de prix |
|---|---|
| Sans audio | Prix de la résolution correspondante dans resolution_paid_prices |
| Avec audio | Niveau <resolution>-audio correspondant dans billing_tier_paid_prices |
Fonctionnalités non prises en charge et erreurs de paramètres
Les requêtes suivantes renvoient HTTP 400 de façon synchrone, sans créer de tâche ni facturer :| Requête | Message d’erreur |
|---|---|
Contient extend_from_task_id | pixverse-v6-max does not support video extend …; use pixverse-v6 instead |
Contient img_references | pixverse-v6-max does not support multi-image reference … |
Contient first_frame_image ou last_frame_image | pixverse-v6-max does not support first/last frame transition … |
Fournit 2 images ou plus dans image_urls | pixverse-v6-max image-to-video takes exactly 1 image in image_urls (got N) |
resolution ne correspond pas à l’un des 4 niveaux acceptés | invalid resolution … |
duration dépasse 15 secondes | invalid duration … |
En texte-vidéo, aspect_ratio ne correspond pas à l’un des 8 rapports acceptés | invalid aspect_ratio … |