L'API MVSEP donne un accès par programmation permettant de créer une séparation, de récupérer les résultats, d'obtenir des informations sur le site et de contrôler les options de l'utilisateur.
Pour utiliser cette API vous avez besoin d'une clé d'API. Vous n’êtes pas connecté, veuillez vous connecter pour obtenir votre jeton API.
Veuillez noter que les utilisateurs Premium peuvent demander un nombre illimité de tâches simultanées, tandis que les utilisateurs non Premium ne peuvent demander qu'une seule tâche simultanée.
MVSEP exploite des endpoints API régionaux. Toutes les régions partagent une même base de données de comptes : ainsi, un même compte, une même clé API et les mêmes hash de tâche fonctionnent partout.
https://de.mvsep.com/apihttps://de2.mvsep.com/apihttps://hk.mvsep.com/apiLes requêtes vers https://mvsep.com/api sont orientées géographiquement : les appels venant d'Europe sont routés vers de, ceux venant d'Asie du Nord vers hk, et tous les autres vers de2. Pour les intégrations API, nous recommandons d'appeler explicitement un point de terminaison régional : cela maintient tout le cycle de vie de la tâche sur un même hôte, quelle que soit l'origine de vos requêtes.
Chaque séparation est traitée et stockée dans la région où elle a été créée, et les URL de téléchargement renvoyées dans les réponses pointent toujours vers l'hôte de cette région. Pour des performances optimales, choisissez le point de terminaison le plus proche de vos serveurs et utilisez le même hôte pendant tout le cycle de vie de la tâche — création, suivi du statut et téléchargement des fichiers.
Vous pouvez consulter le statut de n'importe quelle tâche depuis n'importe quelle région (la base de données est partagée), mais les fichiers de sortie sont toujours servis par la région à laquelle la tâche appartient.
Pour créer une séparation vous devez effectuer un appel POST à l'URL suivante :
https://mvsep.com/api/separation/create
| Champ | Type | Description |
|---|---|---|
| api_token | Chaîne | Votre clé API |
| audiofile | Binaire | Fichier audio à traiter. Ce paramètre n'est pas nécessaire si le paramètre url est défini ou si le modèle n'utilise pas d'entrée de fichier. Pour les modèles de correspondance, utilisez target_audiofile et reference_audiofile comme entrées à la place de audiofile. |
| url | Chaîne | Lien vers le fichier audio. Non requis si le paramètre audiofile est défini. |
| remote_type | Chaîne | (facultatif) Type de téléchargement du fichier audio. La valeur par défaut est direct. Ce paramètre n'est pas nécessaire si le paramètre audiofile est défini. Les types pris en charge sont direct (téléchargement direct), mega (MEGA), drive (Google Drive) et dropbox (Dropbox). |
| sep_type | Entier | (facultatif) Type de séparation, 20 par défaut. Il s'agit de l'identifiant du type de séparation ; consultez la section GET SEPARATION TYPES pour plus d'informations. Ignoré lorsque <code class="higlighted">preset_id</code> est fourni. |
| preset_id | Entier | (facultatif) Applique l'un de vos presets enregistrés au fichier plutôt qu'un seul algorithme. Indiquez soit sep_type, soit preset_id — un preset définit ses propres algorithmes, options et formats de sortie, si bien que sep_type, les champs add_opt et output_format sont tous ignorés lorsqu'il est utilisé. La réponse renvoie un hash que vous interrogez exactement comme une séparation ; le résultat contient une entrée par nœud de sortie du preset. Voir le tableau des presets ci-dessous pour vos identifiants. |
| add_opt1 | Chaîne | (facultatif) Premier champ supplémentaire du type de séparation |
| add_opt2 | Chaîne | (facultatif) Deuxième champ supplémentaire du type de séparation |
| add_opt3 | Chaîne | (facultatif) Troisième champ supplémentaire du type de séparation |
| output_format | Entier | (facultatif) format de sortie, 0 par défaut (mp3 (320 kbps)) |
| is_demo | Booléen | (facultatif) indique si la séparation doit être publiée sur la page de démonstration, false par défaut |
| webhook_url | Chaîne | (optional) A URL we will POST the finished result to, so you do not have to keep polling. The body is the same JSON as GET SEPARATION. This overrides the account-wide address set on the webhooks page, which is useful when several of your own users share one API token. Must be a publicly reachable http or https address. |
| Nom | Valeur | Champs supplémentaires |
|---|---|---|
| Ensemble (vocals, instrum) | 26 | Clé: add_opt1 Nom: Output files Options:
Clé: add_opt2 Nom: Model Type Options:
|
| Ensemble (vocals, instrum, bass, drums, other) | 28 | Clé: add_opt1 Nom: Output files Options:
Clé: add_opt2 Nom: Model Type Options:
|
| Ensemble All-In (vocals, bass, drums, piano, guitar, lead/back vocals, other) | 30 | Clé: add_opt1 Nom: Output files Options:
Clé: add_opt2 Nom: Model Type Options:
|
| BS Roformer SW (vocals, bass, drums, guitar, piano, other) | 63 | |
| Demucs4 HT (vocals, drums, bass, other) | 20 | Clé: add_opt1 Nom: Model type Options:
|
| BS Roformer (vocals, instrumental) | 40 | Clé: add_opt1 Nom: Vocal model type Options:
Clé: add_opt2 Nom: Overlap Options:
Clé: add_opt3 Nom: Set of stems Options:
|
| BS PolarFormer (vocals, instrumental) | 123 | Clé: add_opt1 Nom: Model type Options:
Clé: add_opt2 Nom: Overlap Options:
|
| MelBand Roformer (vocals, instrumental) | 48 | Clé: add_opt1 Nom: Vocal model type Options:
Clé: add_opt2 Nom: Overlap Options:
|
| MDX23C (vocals, instrumental) | 25 | Clé: add_opt1 Nom: Vocal model type Options:
|
| SCNet (vocals, instrumental) | 46 | Clé: add_opt1 Nom: Vocal model type Options:
|
| MDX B (vocals, instrumental) | 23 | Clé: add_opt1 Nom: Vocal model type Options:
|
| Ultimate Vocal Remover VR (vocals, music) | 9 | Clé: add_opt1 Nom: Model Type Options:
Clé: add_opt2 Nom: Agressiveness Options:
|
| Demucs4 Vocals 2023 (vocals, instrum) | 27 | |
| MVSep Karaoke (lead/back vocals) | 49 | Clé: add_opt1 Nom: Karaoke model type Options:
Clé: add_opt2 Nom: Extraction type Options:
|
| MDX-B Karaoke (lead/back vocals) | 12 | Clé: add_opt1 Nom: Karaoke model type Options:
|
| MVSep Crowd removal (crowd, other) | 34 | Clé: add_opt1 Nom: Model type Options:
|
| Medley Vox (Multi-singer separation) | 53 | Clé: add_opt1 Nom: Model type Options:
|
| MVSep Multichannel BS (vocals, instrumental) | 43 | Clé: add_opt1 Nom: Model Type Options:
Clé: add_opt2 Nom: Processing Mode Options:
|
| MVSep Male/Female separation | 57 | Clé: add_opt1 Nom: Model type Options:
Clé: add_opt2 Nom: How to extract Options:
|
| MVSep Choir (choir, other) | 112 | Clé: add_opt2 Nom: How to extract Options:
|
| MVSep SATB Choir (soprano, alto, tenor, bass) | 111 | Clé: add_opt1 Nom: Model type Options:
Clé: add_opt2 Nom: How to extract Options:
|
| MVSep Drums (drums, other) | 44 | Clé: add_opt1 Nom: Drums model type Options:
Clé: add_opt2 Nom: How to extract Options:
Clé: add_opt3 Nom: Output files Options:
|
| MVSep Bass (bass, other) | 41 | Clé: add_opt1 Nom: Bass model type Options:
Clé: add_opt2 Nom: How to extract Options:
Clé: add_opt3 Nom: Output files Options:
|
| MVSep Synth (synth, other) | 88 | Clé: add_opt1 Nom: How to extract Options:
|
| DrumSep (4-6 stems: kick, snare, cymbals, toms, ride, hh, crash) | 37 | Clé: add_opt1 Nom: Model Type Options:
Clé: add_opt2 Nom: Preprocess Options:
|
| MVSep Piano (piano, other) | 29 | Clé: add_opt1 Nom: Piano model type Options:
|
| MVSep Digital Piano (digital-piano, other) | 79 | Clé: add_opt2 Nom: How to extract Options:
|
| MVSep Keys (keys, other) | 106 | |
| MVSep Organ (organ, other) | 58 | Clé: add_opt1 Nom: Organ model type Options:
|
| MVSep Harpsichord (harpsichord, other) | 91 | |
| MVSep Accordion (accordion, other) | 99 | |
| MVSep Vibraphone | 129 | |
| MVSep Metal Bars | 130 | |
| MVSep Rhodes | 131 | |
| MVSep Clavinet | 135 | |
| MVSep Mellotron | 136 | |
| MVSep Guitar (guitar, other) | 31 | Clé: add_opt1 Nom: Guitar model type Options:
|
| MVSep Acoustic Guitar (acoustic-guitar, other) | 66 | Clé: add_opt2 Nom: How to extract Options:
|
| MVSep Electric Guitar (electric-guitar, other) | 81 | Clé: add_opt2 Nom: How to extract Options:
|
| MVSep Lead/Rhythm Guitar (lead-guitar, rhythm-guitar) | 101 | Clé: add_opt1 Nom: Model type Options:
|
| MVSep Pedal Steel Guitar | 124 | |
| MVSep Plucked Strings (plucked-strings, other) | 102 | |
| MVSep Harp (harp, other) | 72 | |
| MVSep Mandolin (mandolin, other) | 74 | |
| MVSep Banjo (banjo, other) | 83 | |
| MVSep Sitar (sitar, other) | 90 | |
| MVSep Ukulele (ukulele, other) | 96 | |
| MVSep Dobro (dobro, other) | 97 | |
| MVSep Bowed Strings (strings, other) | 52 | Clé: add_opt1 Nom: String model type Options:
Clé: add_opt2 Nom: How to extract Options:
|
| MVSep Violin (violin, other) | 65 | |
| MVSep Viola (viola, other) | 69 | Clé: add_opt2 Nom: How to extract Options:
|
| MVSep Cello (cello, other) | 70 | Clé: add_opt2 Nom: How to extract Options:
|
| MVSep Double Bass (double-bass, other) | 73 | Clé: add_opt2 Nom: How to extract Options:
|
| MVSep Wind (wind, other) | 54 | Clé: add_opt1 Nom: Wind model type Options:
Clé: add_opt2 Nom: How to extract Options:
Clé: add_opt3 Nom: Output files Options:
|
| MVSep Brass (brass, other) | 107 | Clé: add_opt1 Nom: How to extract Options:
|
| MVSep Woodwind (woodwind, other) | 108 | Clé: add_opt1 Nom: How to extract Options:
|
| MVSep Saxophone (saxophone, other) | 61 | Clé: add_opt1 Nom: Model type Options:
|
| MVSep Flute (flute, other) | 67 | Clé: add_opt1 Nom: Flute model type Options:
Clé: add_opt2 Nom: How to extract Options:
|
| MVSep Trumpet (trumpet, other) | 71 | Clé: add_opt2 Nom: How to extract Options:
|
| MVSep Trombone (trombone, other) | 75 | Clé: add_opt2 Nom: How to extract Options:
|
| MVSep Oboe (oboe, other) | 77 | Clé: add_opt2 Nom: How to extract Options:
|
| MVSep Clarinet (clarinet, other) | 78 | Clé: add_opt2 Nom: How to extract Options:
|
| MVSep French Horn (french-horn, other) | 82 | Clé: add_opt2 Nom: How to extract Options:
|
| MVSep Harmonica (harmonica, other) | 87 | Clé: add_opt2 Nom: How to extract Options:
|
| MVSep Tuba (tuba, other) | 92 | |
| MVSep Bassoon (bassoon, other) | 93 | |
| MVSep Bagpipes (bagpipes , other) | 116 | Clé: add_opt2 Nom: How to extract Options:
|
| MVSep Whistle | 132 | |
| MVSep Percussion (percussion, other) | 105 | |
| MVSep Tambourine (tambourine, other) | 76 | |
| MVSep Marimba (marimba, other) | 84 | |
| MVSep Glockenspiel (glockenspiel, other) | 85 | |
| MVSep Timpani (timpani, other) | 86 | |
| MVSep Triangle (triangle, other) | 89 | |
| MVSep Congas (congas , other) | 94 | |
| MVSep Bells (bells, other) | 95 | |
| MVSep Wind Chimes (wind-chimes, other) | 98 | |
| MVSep Xylophone (xylophone, other) | 109 | Clé: add_opt2 Nom: How to extract Options:
|
| MVSep Celesta (celesta, other) | 110 | Clé: add_opt2 Nom: How to extract Options:
|
| MVSep Clap | 133 | |
| MVSep Cowbell | 128 | |
| MVSep Demucs4HT DNR (speech, music, effects) | 24 | Clé: add_opt1 Nom: Model type Options:
|
| BandIt Plus (speech, music, effects) | 36 | |
| BandIt v2 (speech, music, effects) | 45 | Clé: add_opt1 Nom: Model Type Options:
|
| MVSep DnR v3 (speech, music, effects) | 56 | Clé: add_opt1 Nom: Model type Options:
Clé: add_opt2 Nom: How to extract Options:
Clé: add_opt3 Nom: Output files Options:
|
| MVSep Braam | 117 | |
| MVSep Risers | 125 | |
| MVSep FX | 122 | |
| Apollo Enhancers (by JusperLee, Lew, baicai1145) | 51 | Clé: add_opt1 Nom: Model type Options:
Clé: add_opt2 Nom: Cutoff (Hz) Options:
|
| Reverb Removal (noreverb) | 22 | Clé: add_opt1 Nom: Model Type Options:
Clé: add_opt2 Nom: Preprocess Options:
|
| DeNoise by aufr33 and gabox | 47 | Clé: add_opt1 Nom: Model type Options:
|
| AudioSR (Super Resolution) | 59 | Clé: add_opt1 Nom: Cutoff (Hz) Options:
|
| FlashSR (Super Resolution) | 60 | |
| Stable Audio Open Gen | 62 | Clé: add_opt1 Nom: Text prompt Options: Clé: add_opt2 Nom: Length (in seconds) Options:
|
| Whisper (extract text from audio) | 39 | Clé: add_opt1 Nom: Model type Options:
Clé: add_opt2 Nom: Transcription type Options:
|
| Parakeet (extract text from audio) | 64 | Clé: add_opt1 Nom: Model type Options:
Clé: add_opt2 Nom: Version Options:
|
| VibeVoice (Voice Cloning) | 103 | Clé: add_opt1 Nom: Model type Options:
Clé: add_opt2 Nom: Text prompt Options: Clé: add_opt3 Nom: Extract vocals first Options:
|
| VibeVoice (TTS) | 104 | Clé: add_opt1 Nom: Model type Options:
Clé: add_opt2 Nom: Text prompt Options: |
| Qwen3-TTS (Custom Voice) | 118 | Clé: add_opt1 Nom: Text prompt Options: Clé: add_opt2 Nom: Speaker Options:
Clé: add_opt3 Nom: Language Options:
Clé: add_opt4 Nom: Voice description Options: |
| Qwen3-TTS (Voice Design) | 119 | Clé: add_opt1 Nom: Text prompt Options: Clé: add_opt2 Nom: Voice description Options: Clé: add_opt3 Nom: Language Options:
|
| Qwen3-TTS (Voice Cloning) | 120 | Clé: add_opt1 Nom: Text prompt Options: Clé: add_opt2 Nom: Reference text in audio (optional) Options: Clé: add_opt3 Nom: Language Options:
Clé: add_opt4 Nom: Extract vocals first Options:
|
| Mega 53-stem Model | 126 | |
| Upmixing by Jazzpear | 137 | |
| DeEffect vocals by gilliaan | 138 | |
| Bark (Speech Gen) | 115 | Clé: add_opt1 Nom: Text prompt Options: Clé: add_opt2 Nom: Speaker Options:
|
| MVSep MultiSpeaker (MDX23C) | 42 | Clé: add_opt1 Nom: Model Type Options:
|
| Aspiration (by Sucial) | 50 | Clé: add_opt1 Nom: Model type Options:
|
| Phantom Centre extraction | 55 | Clé: add_opt1 Nom: Model type Options:
|
| Matchering (by sergree) | 68 | |
| SOME (Singing-Oriented MIDI Extractor) | 80 | Clé: add_opt1 Nom: How to use Options:
|
| Transkun (Piano -> MIDI) | 113 | Clé: add_opt1 Nom: How to extract Options:
|
| Basic Pitch (MIDI Extraction) | 114 | |
| ADTOF Plus (Drums -> MIDI) | 127 | Clé: add_opt1 Nom: How to extract Options:
|
| HeartMuLa (Song Gen) | 121 | Clé: add_opt1 Nom: Lyrics Options: Clé: add_opt10 Nom: Topic Options:
Clé: add_opt2 Nom: Tags (optional) Options: Clé: add_opt3 Nom: Genre Options:
Clé: add_opt4 Nom: Timbre Options:
Clé: add_opt5 Nom: Gender Options:
Clé: add_opt6 Nom: Mood Options:
Clé: add_opt7 Nom: Instrument Options:
Clé: add_opt8 Nom: Scene Options:
Clé: add_opt9 Nom: Region Options:
|
| Demucs3 Model (vocals, drums, bass, other) | 10 | Clé: add_opt1 Nom: Model type Options:
|
| MDX A/B (vocals, drums, bass, other) | 7 | Clé: add_opt1 Nom: Vocal model type Options:
|
| Vit Large 23 (vocals, instrum) | 33 | Clé: add_opt1 Nom: Model type Options:
|
| UVRv5 Demucs (vocals, music) | 17 | Clé: add_opt1 Nom: Model Type Options:
|
| MVSep DNR (music, sfx, speech) | 18 | |
| MVSep Old Vocal Model (vocals, music) | 19 | |
| Demucs2 (vocals, drums, bass, other) | 13 | |
| Danna Sep (vocals, drums, bass, other) | 15 | |
| Byte Dance (vocals, drums, bass, other) | 16 | |
| MVSep MelBand Roformer (vocals, instrum) | 35 | |
| spleeter | 0 | Clé: add_opt1 Nom: Model type Options:
|
| UnMix | 3 | Clé: add_opt1 Nom: Model type Options:
|
| Zero Shot (Query Based) (Low quality) | 14 | Clé: add_opt1 Nom: Model Type Options:
|
| LarsNet (kick, snare, cymbals, toms, hihat) | 38 | Clé: add_opt1 Nom: Model type Options:
|
Les presets sont privés au compte qui les a créés : ce tableau affiche vos presets ainsi que ceux sélectionnés par MVSEP. Créez-les et modifiez-les dans l'éditeur de presets.
Vous n'avez pas encore de presets. Connectez-vous et créez-en un dans l'éditeur de presets : son identifiant apparaîtra ici.
| Nom | Valeur |
|---|---|
| mp3 (320 kbps) | 0 |
| wav (uncompressed, 16 bit) | 1 |
| flac (lossless, 16 bit) | 2 |
| m4a (lossy) | 3 |
| wav (uncompressed, 32 bit) | 4 |
| flac (lossless, 24 bit) | 5 |
curl --location --request POST 'https://mvsep.com/api/separation/create'
--form 'audiofile=@"/path/to/file.mp3"'
--form 'api_token="<Votre jeton API>"'
--form 'sep_type="9"'
--form 'add_opt1="0"'
--form 'add_opt2="1"'
--form 'output_format="1"'
--form 'is_demo="1"'
| Clé | Valeur |
|---|---|
| success |
|
| data | Contient des informations supplémentaires en fonction de la clé success |
| data -> link | Affiche le lien vers l’URL « GET RESULT » de la tâche créée (affiché uniquement lorsque success est true) |
| data -> hash | Affiche le hachage de la tâche créée (affiché uniquement lorsque success est true) |
| data -> message | Affiche la description d’une erreur (uniquement lorsque success est false) |
MVSEP API utilise les codes d'erreur suivants :
| Code d'erreur | Signification |
|---|---|
| 400 | Certains paramètres sont manquants ou invalides. Cette erreur apparaît lorsque vous ne transmettez pas tous les paramètres obligatoires ou que vous transmettez des paramètres non valides. |
| 401 |
api_token est inconnu ou non valide. Cette erreur se produit si l'on utilise une clé API inconnue
|
Pour obtenir le résultat de la séparation, vous devez effectuer un appel GET à l'url suivante :
https://mvsep.com/api/separation/get
Ce même point de terminaison renvoie les exécutions de preset : interrogez le hash renvoyé par preset_id exactement comme vous le feriez pour une séparation. L'enveloppe est identique — status passe par waiting et processing jusqu'à done — et data.type vaut preset_run. Chaque entrée de data.files correspond à un nœud de sortie du preset, nommé d'après son libellé plutôt que d'après un stem. Une exécution n'est visible que par le compte qui l'a créée.
| Champ | Type | Description |
|---|---|---|
| hash | Chaîne | Hash de la séparation |
| mirror | Entier | (facultatif) Utilise un autre miroir s'il est défini sur 1, la valeur par défaut est 0. Nécessite api_token et 1 crédit s'il est défini sur 1. |
| api_token | Chaîne | (facultatif) Clé API de l'utilisateur. Obligatoire si le paramètre miroir est défini sur 1. |
curl --location --request GET 'https://mvsep.com/api/separation/get?hash=20230327071601-0e3e5c6c85-13-dimensions.mp3'
| Clé | Valeur |
|---|---|
| success |
|
| status |
|
| data | Contient des informations supplémentaires en fonction de la clé status |
| data -> queue_count | Affiche le nombre de tâches non traitées dans la priorité de l'utilisateur (affiché uniquement lorsque status vaut waiting ou distributing) |
| data -> current_order | Affiche le rang de la tâche de l'utilisateur (affiché uniquement lorsque status vaut waiting ou distributing) |
| data -> message | Affiche la description du statut (affiché pour tous les statuts ; affiche à la place la cause de l'erreur lorsque status vaut failed) |
| data -> algorithm | Affiche l’algorithme utilisé sur le travail (affiché uniquement lorsque status est done) |
| data -> algorithm_description | Affiche les détails de l’algorithme utilisé sur le travail (uniquement lorsque status est done) |
| data -> output_format | Affiche le format de sortie de la tâche (affiché uniquement lorsque status est done) |
| data -> tags | Affiche les balises méta audio (uniquement affichées lorsque status est done) |
| data -> input_file | Affiche les détails du téléchargement de l’audio d’entrée (uniquement lorsque status est done) |
| data -> files | Affiche les détails de téléchargement des audios de sortie (uniquement lorsque status est done) |
| data -> date | Affiche la date de traitement de la tâche (affichée uniquement lorsque status est done) |
| data -> finished_chunks | Affiche le nombre de pièces terminées d’un travail volumineux (uniquement lorsque status est distributing) |
| data -> all_chunks | Affiche le nombre de toutes les parties d’une tâche volumineuse (uniquement lorsque status est distributing) |
Supprime l'une de vos propres séparations — une tâche ordinaire ou une exécution de preset. Cette action supprime l'enregistrement et ses fichiers de sortie. Une séparation encore en cours de traitement doit d'abord être annulée. La suppression n'entraîne aucun remboursement de crédits, car le travail a déjà été effectué.
POST https://mvsep.com/api/separation/delete
Vous pouvez consulter le statut de n'importe quelle tâche depuis n'importe quelle région (la base de données est partagée), mais les fichiers de sortie sont toujours servis par la région à laquelle la tâche appartient.
| Champ | Type | Description |
|---|---|---|
| hash | Chaîne | Hash de la séparation |
| api_token | Chaîne | Clé API de l'utilisateur. Obligatoire. |
curl --location --request POST 'https://mvsep.com/api/separation/delete'
--form 'api_token="<Votre jeton API>"'
--form 'hash="20230327071601-0e3e5c6c85-13-dimensions.mp3"'
| Clé | Valeur |
|---|---|
| success |
|
| data -> message | Affiche la description du statut (affiché pour tous les statuts ; affiche à la place la cause de l'erreur lorsque status vaut failed) |
Pour obtenir le résultat d'une tâche à distance, vous devez effectuer une requête GET vers l'URL suivante :
https://mvsep.com/api/separation/get-remote
| Champ | Type | Description |
|---|---|---|
| hash | Chaîne | Hash de la séparation |
curl --location --request GET 'https://mvsep.com/api/separation/get-remote?hash=n2AwBjy4KsFZfqqR'
| Clé | Valeur |
|---|---|
| success |
|
| status |
|
| data | Contient des informations supplémentaires en fonction de la clé status |
| data -> queue_count | Affiche le nombre de tâches non traitées dans la file d'attente prioritaire de l'utilisateur (affiché uniquement lorsque status est waiting). |
| data -> current_order | Affiche l'ordre de la tâche de l'utilisateur (affiché uniquement lorsque status est waiting). |
| data -> message | Affiche la description de l'état (uniquement lorsque status est failed). |
| data -> link | Affiche le lien vers l'URL « GET RESULT » de la tâche créée (affiché uniquement lorsque status est done). |
| data -> hash | Hachage de la séparation (affiché uniquement lorsque status est done). |
Pour annuler la séparation et obtenir le remboursement des crédits utilisés (si la séparation n'est pas encore en cours de traitement), vous devez effectuer un appel POST vers l'URL suivante :
https://mvsep.com/api/separation/cancel
| Champ | Type | Description |
|---|---|---|
| api_token | Chaîne | Clé API de l'utilisateur |
| hash | Chaîne | Hash de la séparation |
curl --location --request POST 'https://mvsep.com/api/separation/cancel' --form 'api_token="<Votre jeton API>"' --form 'hash="<hash>"'
| Clé | Valeur |
|---|---|
| success |
|
Pour obtenir les données détaillées sur les types de séparation, vous devez effectuer un appel GET à l’URL suivante :
https://mvsep.com/api/app/algorithms
| Champ | Type | Description |
|---|---|---|
| scopes | Chaîne | Indique s'il faut inclure les modèles qui utilisent différentes formes d'entrée.
single_upload. Pour obtenir tous les modèles, définissez scopes=single_upload,no_upload,matchering_upload.
|
curl --location --request GET 'https://mvsep.com/api/app/algorithms'
Renvoie les données sous forme de tableau:
| Clé | Valeur |
|---|---|
| render_id | Valeur du type de séparation (ID) |
| name | Le nom du type de séparation |
| algorithm_group_id | Le groupe auquel appartient le type de séparation : |
| algorithm_group | Contient des informations sur le groupe d'algorithmes auquel appartient l'algorithme. |
| algorithm_group -> name | Nom du groupe d'algorithmes. |
| audio_widget |
Le type de widget audio à utiliser pour l'algorithme. Cela permet de déterminer comment afficher le lecteur audio de l'algorithme dans l'interface utilisateur. Les valeurs possibles sont :
|
| orientation |
À qui s'adresse ce type de séparation :
|
| order_id | L'ordre du type de séparation |
| price_coefficient |
Utilisé pour calculer combien de crédits le travail prend à l'utilisateur premium. Utilise cette formule : floor(<durée du fichier audio en secondes> * price_coefficient / 60)?:1
|
| usage | Affiche le nombre mensuel d'utilisations par type de séparation |
| rating | Affiche les taux d'utilisation mensuels par type de séparation sous forme de tableau :
|
| algorithm_fields | Contient des informations sur les champs supplémentaires du type de séparation |
| algorithm_fields -> name |
Affiche le champ supplémentaire du type de séparation :
|
| algorithm_fields -> text | Nom d'affichage du champ supplémentaire du type de séparation. |
| algorithm_fields -> options | Chaînes clé-valeur codées JSON de champs supplémentaires |
| algorithm_fields -> default_key | Valeur par défaut du champ supplémentaire. Une des clés de <code>algorithm_fields -> options</code> |
| algorithm_descriptions | Contient des informations sur les descriptions du type de séparation |
| algorithm_descriptions -> short_description | Petite description du type de séparation qui n'utilise pas HTML. |
| algorithm_descriptions -> long_description | Description détaillée du type de séparation qui utilise HTML. |
| algorithm_descriptions -> lang | Code de langue spécifié de la description. |
Pour obtenir des informations sur les dernières nouvelles concernant MVSEP, vous devez effectuer un appel GET à l’URL suivante :
https://mvsep.com/api/app/news
| Champ | Type | Description |
|---|---|---|
| lang | Chaîne | (facultatif) Code de langue à 2 lettres (en, ru) |
| start | Entier | (facultatif) Décalage du point de départ, par défaut 0 (c'est-à-dire démarrer à partir du plus récent) |
| limit | Entier | (facultatif) Quantité maximale de résultats renvoyés, la valeur par défaut est 10, le maximum est 20. |
curl --location --request GET 'https://mvsep.com/api/app/news?lang=en&start=2&limit=1'
Renvoie les données sous forme de tableau:
| Clé | Valeur |
|---|---|
| title | Titre de la nouvelle |
| lang | Titre de la nouvelle |
| text | Description complète de l'actualité |
| created_at | Date de la nouvelle |
Pour obtenir des informations sur la file d'attente du site, vous devez effectuer une requête GET vers l'URL suivante :
https://mvsep.com/api/app/queue
| Champ | Type | Description |
|---|---|---|
| api_token | Chaîne | (facultatif) Clé API de l'utilisateur |
curl --location --request GET 'https://mvsep.com/api/app/queue'
| Clé | Valeur |
|---|---|
| queue |
Contient un tableau des files d'attente actuelles pour les différents forfaits :
|
| plan |
Contient la file d'attente actuelle pour le forfait en cours (ajoutez api_token à la requête pour les forfaits « Registered » ou « Premium ») :
|
Pour obtenir des informations sur les séparations de démonstration, vous devez effectuer un appel GET à l'URL suivante :
https://mvsep.com/api/app/demo
| Champ | Type | Description |
|---|---|---|
| start | Entier | (facultatif) Décalage du point de départ, par défaut 0 (c'est-à-dire démarrer à partir du plus récent) |
| limit | Entier | (facultatif) Quantité maximale de résultats renvoyés, la valeur par défaut est 10, le maximum est 20. |
| algorithm_id | Entier | Identifiant facultatif du type de séparation. Utilisez-le pour renvoyer uniquement les séparations de démonstration créées par un algorithme donné. Les valeurs correspondent à render_id de l'interface GET SEPARATION TYPES. |
| options[FIELD] | Chaîne / Entier | Filtre facultatif pour les valeurs des options d'algorithme. Remplacez FIELD par une clé de champ supplémentaire issue de algorithm_fields -> name dans la réponse GET SEPARATION TYPES, puis transmettez l'une des clés options de ce champ comme valeur. Exemple : options[vocals]=1. |
| additional_options | Chaîne | Filtre facultatif de type « contient », appliqué directement aux données d'options enregistrées de la tâche. Pour les nouvelles intégrations, préférez options[FIELD], plus explicite et plus facile à composer. |
curl --location --request GET 'https://mvsep.com/api/app/demo?start=0&limit=2'
curl --location --request GET 'https://mvsep.com/api/app/demo?algorithm_id=20&options[vocals]=1&start=0&limit=10'
Pour créer des filtres d'options, commencez par appeler https://mvsep.com/api/app/algorithms et examinez la liste algorithm_fields de chaque algorithme. Utilisez le champ name à l'intérieur de options[FIELD] et attribuez-lui comme valeur l'une des clés d'option JSON.
Renvoie les données sous forme de tableau:
| Clé | Valeur |
|---|---|
| hash | Hash de la séparation |
| date | Date de séparation |
| input_audio | URL d'entrée audio |
| size | Taille audio d'entrée |
| algorithm | Contient des informations de base sur le type de séparation utilisé (reportez-vous à l'onglet OBTENIR LES TYPES DE SÉPARATION pour plus d'informations sur les paramètres renvoyés) |
Pour inscrire l’utilisateur sur le site MVSEP, vous devez effectuer un appel POST à l’url suivante :
https://mvsep.com/api/app/register
| Champ | Type | Description |
|---|---|---|
| name | Chaîne | Nom de l'utilisateur |
| Chaîne | Email de l'utilisateur | |
| password | Chaîne | Mot de passe de l'utilisateur |
| password_confirmation | Chaîne | Répéter le mot de passe de l'utilisateur |
curl --location --request GET 'https://mvsep.com/api/app/register' --form 'name="user"'
--form 'email="asdf@example.com"'
--form 'password="ASDFQWEr123"'
--form 'password_confirmation="ASDFQWEr123"'
| Clé | Valeur |
|---|---|
| success |
|
| message | Se produit lorsque le formulaire est valide |
MVSEP API utilise les codes d'erreur suivants :
| Code d'erreur | Signification |
|---|---|
| 400 | Le formulaire n'est pas valide |
Pour authentifier l'utilisateur et obtenir sa clé API, vous devez effectuer un appel POST à l'URL suivante :
https://mvsep.com/api/app/login
| Champ | Type | Description |
|---|---|---|
| Chaîne | Email de l'utilisateur | |
| password | Chaîne | Mot de passe de l'utilisateur |
curl --location --request POST 'https://mvsep.com/api/app/login' --form 'email="<Email de l'utilisateur>"' --form 'password="<Mot de passe de l'utilisateur>"'
| Clé | Valeur |
|---|---|
| success |
|
| data | Contient des informations lorsque les informations d'identification sont valides |
| data -> name | Nom de l'utilisateur |
| data -> email | Email de l'utilisateur |
| data -> api_token | La clé API de l'utilisateur. Assurez-vous de la stocker dans un espace de stockage sécurisé et de l'utiliser pour les opérations ultérieures. |
| data -> premium_minutes | Crédits laissés à l'utilisateur |
| data -> premium_enabled |
Si l'utilisateur a autorisé la dépense de crédits.
|
| data -> long_filenames_enabled |
Si l'utilisateur souhaite des informations supplémentaires dans les noms de fichiers :
|
MVSEP API utilise les codes d'erreur suivants :
| Code d'erreur | Signification |
|---|---|
| 400 | Informations d'identification incorrectes spécifiées |
Pour obtenir des informations sur l'utilisateur, vous devez effectuer un appel GET à l'URL suivante :
https://mvsep.com/api/app/user
| Champ | Type | Description |
|---|---|---|
| api_token | Chaîne | Clé API de l'utilisateur |
curl --location --request GET 'https://mvsep.com/api/app/user?api_token=<Votre jeton API>'
| Clé | Valeur |
|---|---|
| success |
|
| data | Contient des informations lorsque les informations d'identification sont valides |
| data -> name | Nom de l'utilisateur |
| data -> email | Email de l'utilisateur |
| data -> api_token | La clé API de l'utilisateur. Assurez-vous de la stocker dans un espace de stockage sécurisé et de l'utiliser pour les opérations ultérieures. |
| data -> premium_minutes | Crédits laissés à l'utilisateur |
| data -> premium_enabled |
Si l'utilisateur a autorisé la dépense de crédits.
|
| data -> long_filenames_enabled |
Si l'utilisateur souhaite des informations supplémentaires dans les noms de fichiers :
|
| data -> current_queue | Affiche les séparations en cours pour l'utilisateur |
MVSEP API utilise les codes d'erreur suivants :
| Code d'erreur | Signification |
|---|---|
| 400 | Clé API non valide |
Pour obtenir des informations de base sur l'historique de séparation de l'utilisateur, vous devez effectuer un appel GET à l'URL suivante :
https://mvsep.com/api/app/separation_history
| Champ | Type | Description |
|---|---|---|
| api_token | Chaîne | Clé API de l'utilisateur |
| start | Entier | (facultatif) Décalage du point de départ, par défaut 0 (c'est-à-dire démarrer à partir du plus récent) |
| limit | Entier | (facultatif) Quantité maximale de résultats renvoyés, la valeur par défaut est 10, le maximum est 20. |
curl --location --request GET 'https://mvsep.com/api/app/separation_history?api_token=<Votre jeton API>&start=1&limit=2'
| Clé | Valeur |
|---|---|
| success |
|
| data | Contient un tableau d'informations de base sur les séparations précédentes |
| data -> hash | Hash de la séparation |
| data -> job_exists | Contient un tableau d'informations de base sur les séparations précédentes |
| data -> credits | Combien de crédits ont été utilisés pour la tâche ; null si la séparation n'existe pas |
| data -> time_left | Temps approximatif restant avant la suppression du travail |
| data -> algorithm | Contient des informations de base sur le type de séparation utilisé (reportez-vous à l'onglet OBTENIR LES TYPES DE SÉPARATION pour plus d'informations sur les paramètres renvoyés) |
MVSEP API utilise les codes d'erreur suivants :
| Code d'erreur | Signification |
|---|---|
| 400 | Clé API non valide |
Pour obtenir les achats de crédits de ce compte, du plus récent au plus ancien, effectuez un appel GET à l'URL suivante :
https://mvsep.com/api/purchases
| Champ | Type | Description |
|---|---|---|
| api_token | Chaîne | Clé API de l'utilisateur |
| limit | Entier | (facultatif) Nombre d'achats à afficher, de 1 à 100. Par défaut : 20. |
| offset | Entier | (facultatif) Nombre d'achats à ignorer lors de la navigation dans l'historique. Par défaut : 0. |
| status | Chaîne | (facultatif) Ne renvoie que les achats dans cet état, par exemple succeeded. Omettez-le (ou indiquez all) pour obtenir tout ce qui s'affiche sur la page d'historique du site web, y compris les paniers qui ont été commencés mais jamais finalisés — ceux-ci ont le statut unpaid et n'ont donné lieu à aucun crédit. |
curl --location --request GET 'https://mvsep.com/api/purchases?api_token=<Votre jeton API>&status=succeeded&limit=20'
| Clé | Valeur |
|---|---|
| purchases | Une entrée par achat : payment_id, status, amount, credits accordés, payment_method (stripe, paddle, yookassa, google_play ou app_store) et date. |
| total | Nombre total d'achats correspondants, sans tenir compte de limit ni de offset — utilisez-le pour paginer. |
| credits | Le solde créditeur actuel du compte. |
MVSEP vous envoie un e-mail lorsque votre solde créditeur atteint le seuil que vous avez défini, afin d'éviter toute interruption inopinée d'une intégration en cours. La requête GET renvoie le paramètre actuel ; la requête POST permet de le modifier. L'alerte est envoyée une seule fois et ne se répète pas tant que le solde n'a pas dépassé à nouveau le seuil défini.
GET https://mvsep.com/api/credit_alert
POST https://mvsep.com/api/credit_alert
| Champ | Type | Description |
|---|---|---|
| api_token | Chaîne | Clé API de l'utilisateur |
| credit_threshold | Entier | (POST uniquement, obligatoire) Envoyer l'alerte dès que le solde atteint ou descend en dessous de ce nombre de crédits. 0 désactive l'alerte. La modification du seuil réactive une alerte qui a déjà été envoyée. |
curl --location --request GET 'https://mvsep.com/api/credit_alert?api_token=<Votre jeton API>'
curl --location --request POST 'https://mvsep.com/api/credit_alert' --form 'api_token=<Votre jeton API>' --form 'credit_threshold=100'
| Clé | Valeur |
|---|---|
| credit_threshold | Le seuil actuellement fixé, en crédits. |
| enabled | <code>true</code> lorsqu'un seuil supérieur à zéro est défini, sinon <code>false</code>. |
| credits | Le solde créditeur actuel du compte. |
| notified | <code>true</code> une fois que l'alerte a été envoyée pour la baisse actuelle ; s'efface automatiquement lorsque le solde repasse au-dessus du seuil. |
| L'adresse à laquelle l'alerte est envoyée. |
Pour activer l'utilisation premium pour l'utilisateur, vous devez effectuer un appel POST vers l'URL suivante :
https://mvsep.com/api/app/enable_premium
| Champ | Type | Description |
|---|---|---|
| api_token | Chaîne | Clé API de l'utilisateur |
curl --location --request POST 'https://mvsep.com/api/app/enable_premium' --form 'api_token="<Votre jeton API>"'
| Clé | Valeur |
|---|---|
| success |
|
| message | Informe sur l'état de l'opération |
MVSEP API utilise les codes d'erreur suivants :
| Code d'erreur | Signification |
|---|---|
| 400 | Clé API non valide |
Pour désactiver l'utilisation premium pour l'utilisateur, vous devez effectuer un appel POST vers l'URL suivante :
https://mvsep.com/api/app/disable_premium
| Champ | Type | Description |
|---|---|---|
| api_token | Chaîne | Clé API de l'utilisateur |
curl --location --request POST 'https://mvsep.com/api/app/disable_premium' --form 'api_token="<Votre jeton API>"'
| Clé | Valeur |
|---|---|
| success |
|
| message | Informe sur l'état de l'opération |
MVSEP API utilise les codes d'erreur suivants :
| Code d'erreur | Signification |
|---|---|
| 400 | Clé API non valide |
Pour activer les noms de fichiers longs pour l'utilisateur, vous devez effectuer un appel POST vers l'URL suivante :
https://mvsep.com/api/app/enable_long_filenames
| Champ | Type | Description |
|---|---|---|
| api_token | Chaîne | Clé API de l'utilisateur |
curl --location --request POST 'https://mvsep.com/api/app/enable_long_filenames' --form 'api_token="<Votre jeton API>"'
| Clé | Valeur |
|---|---|
| success |
|
| message | Informe sur l'état de l'opération |
MVSEP API utilise les codes d'erreur suivants :
| Code d'erreur | Signification |
|---|---|
| 400 | Clé API non valide |
Pour désactiver les noms de fichiers longs pour l'utilisateur, vous devez effectuer un appel POST vers l'URL suivante :
https://mvsep.com/api/app/disable_long_filenames
| Champ | Type | Description |
|---|---|---|
| api_token | Chaîne | Clé API de l'utilisateur |
curl --location --request POST 'https://mvsep.com/api/app/disable_long_filenames' --form 'api_token="<Votre jeton API>"'
| Clé | Valeur |
|---|---|
| success |
|
| message | Informe sur l'état de l'opération |
MVSEP API utilise les codes d'erreur suivants :
| Code d'erreur | Signification |
|---|---|
| 400 | Clé API non valide |
Pour obtenir des informations sur les entrées de la file d'attente de Quality Checker, vous devez effectuer une requête GET vers l'URL suivante :
https://mvsep.com/api/quality_checker/queue
| Champ | Type | Description |
|---|---|---|
| start | Entier | (facultatif) Décalage du point de départ, par défaut 0 (c'est-à-dire démarrer à partir du plus récent) |
| limit | Entier | (facultatif) Quantité maximale de résultats renvoyés, la valeur par défaut est 10, le maximum est 20. |
curl --location --request GET 'https://mvsep.com/api/quality_checker/queue?&start=1&limit=2'
Renvoie les données sous forme de tableau:
| Clé | Valeur |
|---|---|
| id | Numéro d'identification de l'entrée |
| dataset_type | Type de jeu de données sélectionné lors de l'ajout de l'entrée / type de classement
|
| date | Date de création de l'entrée |
| algo_name | Nom du type de séparation/de l'algorithme utilisé |
| main_text | Description du type/algorithme de séparation utilisé |
| proc | État d'avancement du traitement
|
| proc_remote_date | Horodatage de la date de traitement |
| msg | Renvoie « OK » en cas de réussite, sinon affiche un message d'erreur |
| metrics | Informations sur les indicateurs d'entrée |
| sdr_* (wildcard) | SDR des stems correspondants |
| dataset_name | Nom de l'ensemble de données |
Pour obtenir des informations sur les classements de Quality Checker, vous devez effectuer une requête GET vers l'URL suivante :
https://mvsep.com/api/quality_checker/leaderboard
| Champ | Type | Description |
|---|---|---|
| dataset_type | Chaîne | Type de jeu de données ; la valeur par défaut est 0 si elle n'est pas spécifiée.
|
| start | Entier | (facultatif) Décalage du point de départ, par défaut 0 (c'est-à-dire démarrer à partir du plus récent) |
| limit | Entier | (facultatif) Quantité maximale de résultats renvoyés, la valeur par défaut est 10, le maximum est 20. |
| algo_name_filter | Chaîne | Filtre les noms de types de séparation ou d'algorithmes en fonction du texte saisi |
| sort | Chaîne | Trie selon le SDR du stem indiqué. Vous pouvez obtenir la liste des valeurs de tri disponibles pour un type de jeu de données donné à partir de la clé sortables de la réponse. |
curl --location --request GET 'https://mvsep.com/api/quality_checker/leaderboard?&start=1&limit=2&algo_name_filter=MVSep'
| Clé | Valeur |
|---|---|
| data | Contient un tableau d'entrées du Quality Checker. Pour plus d'informations, consultez la section « Réponse GET QUEUE du Quality Checker ». |
| dataset_type | Clé de type d'ensemble de données utilisé |
| sortables | Clés permettant de trier le type de jeu de données utilisé par stem donné, dans l'ordre séquentiel. |
| sort | Clé de tri utilisée, parmi les valeurs de sortables. |
Pour créer une entrée dans Quality Checker, vous devez effectuer un appel POST vers l'URL suivante :
https://mvsep.com/api/quality_checker/add
| Champ | Type | Description |
|---|---|---|
| api_token | Chaîne | (obligatoire) Votre clé API |
| zipfile | Binaire | (obligatoire) Fichier ZIP à traiter |
| algo_name | Chaîne | (obligatoire) Nom de l'algorithme |
| main_text | Chaîne | (obligatoire) Description de l'algorithme |
| dataset_type | Chaîne | Type de jeu de données. La valeur par défaut est 0.
|
| password | Chaîne | (obligatoire) Mot de passe permettant de supprimer l'algorithme |
| ensemble | Entier | 0 - L'algorithme n'est pas un ensemble. 1 - L'algorithme est un ensemble. |
curl --location 'https://mvsep.com/api/quality_checker/add' --form 'zipfile=@"/path/to/zipfile"' --form 'algo_name="Test Algorithm Name"' --form 'main_text="Test Algorithm Description"' --form 'dataset_type="2"' --form 'ensemble="1"' --form 'password="test"'
| Clé | Valeur |
|---|---|
| success |
|
| data | Contient des informations sur l'entrée |
| data -> id | Identifiant de l'entrée |
| data -> link | Lien vers l'entrée |
MVSEP API utilise les codes d'erreur suivants :
| Code d'erreur | Signification |
|---|---|
| 400 | Le formulaire n'est pas valide |
| 401 |
api_token est inconnu ou non valide. Cette erreur se produit si l'on utilise une clé API inconnue
|
Pour obtenir des informations sur une entrée de la file d'attente de Quality Checker à l'aide de son identifiant, vous devez effectuer une requête GET vers l'URL suivante :
https://mvsep.com/api/quality_checker/entry
| Champ | Type | Description |
|---|---|---|
| id | Entier | (obligatoire) Identifiant de l'entrée |
curl --location --request GET 'https://mvsep.com/api/quality_checker/entry?id=7675'
Pour supprimer une entrée de la file d'attente de Quality Checker à l'aide de son identifiant et de son mot de passe, vous devez effectuer une requête GET vers l'URL suivante :
https://mvsep.com/api/quality_checker/delete
| Champ | Type | Description |
|---|---|---|
| id | Entier | (obligatoire) Identifiant de l'entrée |
| password | Chaîne | (obligatoire) Mot de passe utilisé pour l'entrée |
curl --location 'https://mvsep.com/api/quality_checker/delete' --form 'id="7720"' --form 'password="test"'
| Clé | Valeur |
|---|---|
| success |
|
| data->message | Indique si l'entrée a été supprimée |
Bibliothèques, applications et intégrations construites sur cette API. Sauf indication contraire, il s'agit de projets communautaires: ils ne sont pas maintenus par MVSEP et nous ne pouvons en garantir la qualité.
Ce module est distribué sur PyPI sous le nom mvsep-cli et mentionne MVSEP comme auteur, ce qui peut lui donner une apparence officielle. Il est publié et maintenu par un tiers, et non par MVSEP, et le dépôt source auquel il renvoie n'existe pas. Il requiert votre token d'API ; consultez donc son code source avant d'y appliquer un token.
mvsep-cli: pypi.org/project/mvsep-cli