Passer au contenu principal
POST
/
v1
/
audios
/
generations
curl --request POST \
  --url https://api.evolink.ai/v1/audios/generations \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "model": "suno-v4.5",
  "prompt": "A cheerful summer pop song about road trips and freedom"
}
'
{
  "created": 1766319090,
  "id": "task-unified-1766319089-oqs9cue4",
  "model": "suno-v5",
  "object": "audio.generation.task",
  "progress": 100,
  "result_data": [
    {
      "result_id": "555f4ea2-cfef-4622-8355-baa5f2ce6a59",
      "duration": 91.2,
      "tags": "R&B",
      "title": "Forget Me Nots",
      "image_url": "https://media.evolink.ai/xxx.jpeg",
      "audio_url": "https://media.evolink.ai/xxx.mp3",
      "stream_audio_url": "https://media.evolink.ai/xxx.mp3"
    }
  ],
  "results": [
    "https://media.evolink.ai/xxx.mp3",
    "https://media.evolink.ai/yyy.mp3"
  ],
  "status": "completed",
  "task_info": {
    "can_cancel": false
  },
  "type": "audio"
}

Autorisations

Authorization
string
header
requis

##Toutes les API nécessitent une authentification Bearer Token##

Obtenir une clé API :

Visitez la Page de gestion des clés API pour obtenir votre clé API

Ajouter à l'en-tête de requête :

Authorization: Bearer YOUR_API_KEY

Corps

application/json
model
enum<string>
requis

Nom du modèle

Options disponibles :

  • suno-v4 : Version V4, qualité vocale améliorée, jusqu'à 4 minutes, prompt max 3000 caractères, style max 200 caractères
  • suno-v4.5 : Version V4.5 (Recommandée), prompts plus intelligents, génération plus rapide, jusqu'à 8 minutes, prompt max 5000 caractères, style max 1000 caractères
  • suno-v4.5plus : Version améliorée V4.5+, tonalités plus riches, nouvelles méthodes créatives, jusqu'à 8 minutes, prompt max 5000 caractères, style max 1000 caractères
  • suno-v4.5all : Version complète V4.5, prompts plus intelligents, génération plus rapide, jusqu'à 8 minutes, prompt max 5000 caractères, style max 1000 caractères
  • suno-v5 : Dernière version V5, expression musicale supérieure, génération plus rapide, prompt max 5000 caractères, style max 1000 caractères
Options disponibles:
suno-v4,
suno-v4.5,
suno-v4.5plus,
suno-v4.5all,
suno-v5
Exemple:

"suno-v4.5"

custom_mode
boolean
requis

Activer le mode personnalisé

Description :

  • false : Mode simple, fournissez uniquement le prompt, l'IA génère automatiquement les paroles et le style
  • true : Mode personnalisé, permet un contrôle précis du style, du title, des paroles, etc.

Paramètres requis en mode personnalisé :

  • style : Requis
  • title : Requis
  • prompt : Requis lorsque instrumental=false (utilisé comme paroles)
Exemple:

false

instrumental
boolean
requis

Générer de la musique instrumentale (sans voix)

Description :

  • false : Générer de la musique avec voix
  • true : Générer de la musique instrumentale/d'ambiance sans voix

Remarque :

  • En mode non personnalisé, ce paramètre n'affecte pas les champs requis
  • En mode personnalisé, lorsqu'il est défini sur true, le prompt devient optionnel
Exemple:

false

prompt
string

Prompt décrivant le contenu musical souhaité

Mode non personnalisé (custom_mode=false) :

  • Requis, sert de description musicale, l'IA génère automatiquement les paroles et le style
  • Longueur maximale : 500 caractères

Mode personnalisé (custom_mode=true) :

  • Requis lorsque instrumental=false, utilisé comme paroles exactes
  • Optionnel lorsque instrumental=true
  • Longueur maximale : 3000 caractères pour V4, 5000 caractères pour V4.5+

Suggestions de format des paroles :

  • Utilisez des balises comme [Verse], [Chorus], [Bridge] pour organiser la structure des paroles
Exemple:

"A cheerful summer pop song about road trips and freedom"

style
string

Spécification du style musical

Description :

  • Requis en mode personnalisé (custom_mode=true)
  • Définit le genre, l'ambiance ou la direction artistique de la musique
  • Il est recommandé d'utiliser des balises séparées par des virgules en anglais

Limites de caractères :

  • V4 : Max 200 caractères
  • V4.5+ : Max 1000 caractères

Balises de style courantes :

  • Genres : pop, rock, jazz, classical, electronic, hip-hop, r&b, country, folk
  • Ambiances : happy, sad, energetic, calm, romantic, dark, uplifting
  • Instruments : piano, guitar, drums, bass, violin, saxophone, synthesizer
  • Voix : male vocals, female vocals, choir, harmonies
  • Tempo : slow, fast, upbeat, groovy, 120bpm
Exemple:

"pop, electronic, upbeat, female vocals"

title
string

Titre de la chanson

Description :

  • Requis en mode personnalisé (custom_mode=true)
  • Sera affiché dans l'interface du lecteur et le nom du fichier
  • Longueur maximale : 80 caractères
Maximum string length: 80
Exemple:

"Summer Dreams"

negative_tags
string

Styles exclus, spécifiez les styles musicaux ou caractéristiques à éviter

Exemples :

  • heavy metal, screaming, sad
  • rap, fast tempo
Exemple:

"heavy metal, screaming"

vocal_gender
enum<string>

Préférence de genre vocal

Options :

  • m : Voix masculine
  • f : Voix féminine

Remarque :

  • Effectif uniquement lorsque custom_mode=true
  • Ce paramètre augmente seulement la probabilité, il ne peut pas garantir que le genre spécifié sera respecté
Options disponibles:
m,
f
Exemple:

"f"

style_weight
number

Poids du style, contrôle le respect du style spécifié

Plage : 0.0 ~ 1.0, une décimale

Description :

  • Des valeurs plus élevées entraînent un respect plus strict du style spécifié
  • La valeur 0 est considérée comme non définie
Plage requise: 0 <= x <= 1
Exemple:

0.7

weirdness_constraint
number

Contrainte d'originalité, contrôle le degré de créativité/expérimentation de la sortie

Plage : 0.0 ~ 1.0, une décimale

Description :

  • Des valeurs plus élevées produisent une sortie plus créative et expérimentale
  • Des valeurs plus basses produisent une sortie plus traditionnelle et conservatrice
  • La valeur 0 est considérée comme non définie
Plage requise: 0 <= x <= 1
Exemple:

0.3

audio_weight
number

Poids audio, contrôle le poids des caractéristiques audio

Plage : 0.0 ~ 1.0, une décimale

Description :

  • La valeur 0 est considérée comme non définie
Plage requise: 0 <= x <= 1
Exemple:

0.5

callback_url
string<uri>

URL de rappel HTTPS pour la notification d'achèvement de tâche

Étapes du rappel :

  • Le processus de rappel comporte trois étapes : text (génération de texte), first (première piste terminée), complete (tout terminé)
  • Dans certains cas, les étapes text et first peuvent être ignorées, renvoyant directement complete

Restrictions de sécurité :

  • Seul le protocole HTTPS est pris en charge
  • Les rappels vers les adresses IP internes sont interdits
  • La longueur de l'URL ne doit pas dépasser 2048 caractères

Mécanisme de rappel :

  • Délai d'expiration : 10 secondes
  • Maximum 3 tentatives en cas d'échec
  • Un code de statut 2xx renvoyé par l'URL de rappel est considéré comme un succès
Exemple:

"https://your-domain.com/webhooks/suno-callback"

Réponse

Tâche musicale créée avec succès

created
integer

Horodatage de création de la tâche

Exemple:

1766319090

id
string

ID de tâche, utilisé pour interroger le statut et les résultats de la tâche

Exemple:

"task-unified-1766319089-oqs9cue4"

model
string

Nom du modèle réellement utilisé

Exemple:

"suno-v5"

object
enum<string>

Type de tâche

Options disponibles:
audio.generation.task
progress
integer

Pourcentage de progression de la tâche (0-100)

Plage requise: 0 <= x <= 100
Exemple:

100

result_data
object[]

Tableau des détails de la musique générée, retourné lorsque la tâche est terminée

results
string<uri>[]

Tableau des URL audio générées, retourné lorsque la tâche est terminée

Exemple:
[
"https://media.evolink.ai/xxx.mp3",
"https://media.evolink.ai/yyy.mp3"
]
status
enum<string>

Statut de la tâche

Options disponibles:
pending,
processing,
completed,
failed
Exemple:

"completed"

task_info
object

Détails de la tâche audio

type
enum<string>

Type de sortie de la tâche

Options disponibles:
audio
Exemple:

"audio"