Skip to main content
POST
Référencer les pistes source : mashup nécessite exactement 2 pistes source — spécifiez-les via task_ids (un tableau de exactement 2 de vos task_id), avec audio_indexes optionnel (un tableau parallèle indiquant quel élément du music[] de chaque tâche, indexé à partir de 1, 1 par défaut).
custom détermine les champs utilisés. Toute valeur envoyée doit respecter les contraintes de type, de plage et de longueur, même si le champ n’est pas utilisé dans le mode sélectionné. Avec custom=true, prompt contient les paroles et peut être obligatoire lorsque instrumental=false, selon les conditions ci-dessous. Avec custom=false, gpt_description est obligatoire. Si custom est omis, le backend déduit le mode à partir de prompt, gpt_description, tags et title.

Authorizations

string
requis
Toutes les interfaces nécessitent une authentification via Bearer TokenObtenir la clé API :Rendez-vous sur la page de gestion des clés API pour obtenir votre clé APILors de l’utilisation, ajoutez dans l’en-tête de la requête :

Body

string
défaut:"suno"
Modèle audio. Actuellement, passez suno (par défaut suno si non fourni).
string[]
requis
Tableau de vos task_id pour les 2 pistes source (doit être exactement 2 ; tout autre nombre renvoie directement un 400 dès la soumission).
integer[]
Tableau parallèle à task_ids sélectionnant une piste dans data.result.music[] de chaque tâche (indexé à partir de 1 ; défaut de chaque élément : 1).
boolean
défaut:"false"
Purement instrumental ou non (true=sans voix) ; si non fourni, par défaut false (avec voix).
string
défaut:"v6"
Version publique : v6 / v6-wild / v6-mini. Valeur par défaut v6 ; omettez-la avec custom_model_id.
string
UUID complet renvoyé par la tâche de création du modèle. Incompatible avec version et persona_id.
boolean
true=mode personnalisé (prompt utilisé comme paroles) ; false=mode inspiration (utilise gpt_description) ; si omis, déduit du contenu (voir l’avertissement ci-dessus).
string
Obligatoire sous condition : fournissez les paroles lorsque custom=true && instrumental=false. Ce champ n’est pas utilisé en mode inspiration, mais toute valeur envoyée doit respecter la limite de longueur.
string
Prompt d’inspiration. Obligatoire lorsque custom=false — s’il manque, la requête échoue avec 400 dès la soumission (rien n’est facturé).
string
Titre. Ne prend effet que lorsque custom=true.
string
Tags de style. Ne prend effet que lorsque custom=true.
string
Tags de style à exclure. Ne prend effet que lorsque custom=true.
boolean
true=réécrit les paroles fournies de façon créative. Ne prend effet que lorsque custom=true.
number
Poids du style, 0.001.00 (les valeurs hors plage renvoient directement un 400 dès la soumission). Ne prend effet que lorsque custom=true.
number
Pondération de créativité, de 0.00 à 1.00. weirdness_constraint est un alias de compatibilité ; utilisez weirdness pour les nouvelles requêtes.
number
Poids audio, 0.001.00. Ne prend effet que lorsque custom=true.
string
Genre de voix : Male / Female. Fonctionne dans les deux modes.
string
ID de style Persona. S’applique uniquement avec custom=true et est incompatible avec custom_model_id.
string
Variation de style : off / normal / high / extra / max. Facultatif.
boolean
défaut:"false"
Active le mode Max. Nécessite le mode personnalisé et est facturé deux fois le prix standard.
string
Format audio de sortie : mp3 / m4a / wav. Cet endpoint ne prend pas en charge de durée cible.
Obtenir le résultat : interrogez la tâche asynchrone jusqu’à sa fin. La génération prend généralement 30 à 120 secondes et la progression n’évolue pas forcément à intervalles fixes. Une fois terminée, lisez audio_url dans data.result.music[]. En cas d’échec, le montant débité est remboursé automatiquement.

Response

integer
Code de statut de la réponse
array
Tableau de données renvoyées