API MVSEP предоставляет программный доступ для создания разделения, возврата результатов, получения информации о сайте и управления возможностями пользователя.
Чтобы использовать этот API, вам нужен ключ API. Вы не вошли в систему. Пожалуйста, войдите, чтобы получить свой API-токен.
Обратите внимание, что пользователи с Premium-подпиской могут запрашивать неограниченное количество одновременных задач, тогда как обычные пользователи могут запросить только 1 одновременную задачу.
MVSEP использует региональные API-эндпоинты. Все регионы используют единую базу аккаунтов, поэтому один и тот же аккаунт, API-ключ и хеши задач работают везде:
https://de.mvsep.com/apihttps://de2.mvsep.com/apihttps://hk.mvsep.com/apiЗапросы к https://mvsep.com/api маршрутизируются по географии: из Европы — в de, из Северной Азии — в hk, все остальные — в de2. Для интеграций мы рекомендуем явно обращаться к региональной конечной точке — так весь жизненный цикл задачи останется на одном хосте, откуда бы ни приходили ваши запросы.
Каждое разделение обрабатывается и хранится в регионе, где оно было создано, а URL-адреса для скачивания, возвращаемые в ответах, всегда указывают на хост этого региона. Для достижения наилучшей производительности выбирайте конечную точку, ближайшую к вашим серверам, и используйте один и тот же хост на протяжении всего жизненного цикла задачи — создание, опрос статуса и загрузка файлов.
Вы можете запрашивать статус любой задачи из любого региона (база данных является общей), но выходные файлы всегда обслуживаются тем регионом, которому принадлежит задача.
Чтобы создать разделение, вам нужно сделать POST-вызов по следующему URL-адресу:
https://mvsep.com/api/separation/create
| Поле | Тип | Описание |
|---|---|---|
| api_token | Строка | Ваш ключ API |
| audiofile | Двоичное значение | Аудиофайл для обработки. Не обязателен, если задан параметр url или модель не использует файловый ввод. Для моделей matchering используйте для ввода target_audiofile и reference_audiofile вместо audiofile. |
| url | Строка | Ссылка на аудиофайл. Не обязательна, если задан параметр audiofile. |
| remote_type | Строка | (необязательно) Тип удаленного хранения аудиофайла. По умолчанию — direct. Не обязателен, если задан параметр audiofile. Поддерживаемые типы: direct (прямая загрузка), mega (MEGA), drive (Google Диск), dropbox (Dropbox). |
| sep_type | Целое число | (необязательно) Тип разделения, по умолчанию 20. Это идентификатор типа разделения, подробнее см. в разделе GET SEPARATION TYPES. Игнорируется, если задан <code class="higlighted">preset_id</code>. |
| preset_id | Целое число | (необязательно) Вместо одного алгоритма примените к файлу один из сохраненных пресетов. Укажите либо sep_type, либо preset_id — пресет определяет собственные алгоритмы, параметры и форматы вывода, поэтому sep_type, поля add_opt и output_format игнорируются. В ответ вы получите хэш, который нужно обработать так же, как и результат разделения. В результате будет по одной записи для каждого выходного узла пресета. Идентификаторы пресетов приведены в таблице ниже. |
| add_opt1 | Строка | (необязательно) Тип разделения первое дополнительное поле |
| add_opt2 | Строка | (необязательно) Тип разделения второе дополнительное поле |
| add_opt3 | Строка | (необязательно) Третье дополнительное поле типа разделения |
| output_format | Целое число | (необязательно) выходной формат, по умолчанию 0 (mp3 (320kbps)) |
| is_demo | Логическое значение | (необязательно) публиковать ли разделение на демонстрационной странице, по умолчанию false |
| webhook_url | Строка | (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. |
| Наименование | Значение | Дополнительные поля |
|---|---|---|
| Ensemble (vocals, instrum) | 26 | Ключ: add_opt1 Наименование: Output files Опции:
Ключ: add_opt2 Наименование: Model Type Опции:
|
| Ensemble (vocals, instrum, bass, drums, other) | 28 | Ключ: add_opt1 Наименование: Output files Опции:
Ключ: add_opt2 Наименование: Model Type Опции:
|
| Ensemble All-In (vocals, bass, drums, piano, guitar, lead/back vocals, other) | 30 | Ключ: add_opt1 Наименование: Output files Опции:
Ключ: add_opt2 Наименование: Model Type Опции:
|
| BS Roformer SW (vocals, bass, drums, guitar, piano, other) | 63 | |
| Demucs4 HT (vocals, drums, bass, other) | 20 | Ключ: add_opt1 Наименование: Model type Опции:
|
| BS Roformer (vocals, instrumental) | 40 | Ключ: add_opt1 Наименование: Vocal model type Опции:
Ключ: add_opt2 Наименование: Overlap Опции:
Ключ: add_opt3 Наименование: Set of stems Опции:
|
| BS PolarFormer (vocals, instrumental) | 123 | Ключ: add_opt1 Наименование: Model type Опции:
Ключ: add_opt2 Наименование: Overlap Опции:
|
| MelBand Roformer (vocals, instrumental) | 48 | Ключ: add_opt1 Наименование: Vocal model type Опции:
Ключ: add_opt2 Наименование: Overlap Опции:
|
| MDX23C (vocals, instrumental) | 25 | Ключ: add_opt1 Наименование: Vocal model type Опции:
|
| SCNet (vocals, instrumental) | 46 | Ключ: add_opt1 Наименование: Vocal model type Опции:
|
| MDX B (vocals, instrumental) | 23 | Ключ: add_opt1 Наименование: Vocal model type Опции:
|
| Ultimate Vocal Remover VR (vocals, music) | 9 | Ключ: add_opt1 Наименование: Model Type Опции:
Ключ: add_opt2 Наименование: Agressiveness Опции:
|
| Demucs4 Vocals 2023 (vocals, instrum) | 27 | |
| MVSep Karaoke (lead/back vocals) | 49 | Ключ: add_opt1 Наименование: Karaoke model type Опции:
Ключ: add_opt2 Наименование: Extraction type Опции:
|
| MDX-B Karaoke (lead/back vocals) | 12 | Ключ: add_opt1 Наименование: Karaoke model type Опции:
|
| MVSep Crowd removal (crowd, other) | 34 | Ключ: add_opt1 Наименование: Model type Опции:
|
| Medley Vox (Multi-singer separation) | 53 | Ключ: add_opt1 Наименование: Model type Опции:
|
| MVSep Multichannel BS (vocals, instrumental) | 43 | Ключ: add_opt1 Наименование: Model Type Опции:
Ключ: add_opt2 Наименование: Processing Mode Опции:
|
| MVSep Male/Female separation | 57 | Ключ: add_opt1 Наименование: Model type Опции:
Ключ: add_opt2 Наименование: How to extract Опции:
|
| MVSep Choir (choir, other) | 112 | Ключ: add_opt2 Наименование: How to extract Опции:
|
| MVSep SATB Choir (soprano, alto, tenor, bass) | 111 | Ключ: add_opt1 Наименование: Model type Опции:
Ключ: add_opt2 Наименование: How to extract Опции:
|
| MVSep Drums (drums, other) | 44 | Ключ: add_opt1 Наименование: Drums model type Опции:
Ключ: add_opt2 Наименование: How to extract Опции:
Ключ: add_opt3 Наименование: Output files Опции:
|
| MVSep Bass (bass, other) | 41 | Ключ: add_opt1 Наименование: Bass model type Опции:
Ключ: add_opt2 Наименование: How to extract Опции:
Ключ: add_opt3 Наименование: Output files Опции:
|
| MVSep Synth (synth, other) | 88 | Ключ: add_opt1 Наименование: How to extract Опции:
|
| DrumSep (4-6 stems: kick, snare, cymbals, toms, ride, hh, crash) | 37 | Ключ: add_opt1 Наименование: Model Type Опции:
Ключ: add_opt2 Наименование: Preprocess Опции:
|
| MVSep Piano (piano, other) | 29 | Ключ: add_opt1 Наименование: Piano model type Опции:
|
| MVSep Digital Piano (digital-piano, other) | 79 | Ключ: add_opt2 Наименование: How to extract Опции:
|
| MVSep Keys (keys, other) | 106 | |
| MVSep Organ (organ, other) | 58 | Ключ: add_opt1 Наименование: Organ model type Опции:
|
| 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 | Ключ: add_opt1 Наименование: Guitar model type Опции:
|
| MVSep Acoustic Guitar (acoustic-guitar, other) | 66 | Ключ: add_opt2 Наименование: How to extract Опции:
|
| MVSep Electric Guitar (electric-guitar, other) | 81 | Ключ: add_opt2 Наименование: How to extract Опции:
|
| MVSep Lead/Rhythm Guitar (lead-guitar, rhythm-guitar) | 101 | Ключ: add_opt1 Наименование: Model type Опции:
|
| 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 | Ключ: add_opt1 Наименование: String model type Опции:
Ключ: add_opt2 Наименование: How to extract Опции:
|
| MVSep Violin (violin, other) | 65 | |
| MVSep Viola (viola, other) | 69 | Ключ: add_opt2 Наименование: How to extract Опции:
|
| MVSep Cello (cello, other) | 70 | Ключ: add_opt2 Наименование: How to extract Опции:
|
| MVSep Double Bass (double-bass, other) | 73 | Ключ: add_opt2 Наименование: How to extract Опции:
|
| MVSep Wind (wind, other) | 54 | Ключ: add_opt1 Наименование: Wind model type Опции:
Ключ: add_opt2 Наименование: How to extract Опции:
Ключ: add_opt3 Наименование: Output files Опции:
|
| MVSep Brass (brass, other) | 107 | Ключ: add_opt1 Наименование: How to extract Опции:
|
| MVSep Woodwind (woodwind, other) | 108 | Ключ: add_opt1 Наименование: How to extract Опции:
|
| MVSep Saxophone (saxophone, other) | 61 | Ключ: add_opt1 Наименование: Model type Опции:
|
| MVSep Flute (flute, other) | 67 | Ключ: add_opt1 Наименование: Flute model type Опции:
Ключ: add_opt2 Наименование: How to extract Опции:
|
| MVSep Trumpet (trumpet, other) | 71 | Ключ: add_opt2 Наименование: How to extract Опции:
|
| MVSep Trombone (trombone, other) | 75 | Ключ: add_opt2 Наименование: How to extract Опции:
|
| MVSep Oboe (oboe, other) | 77 | Ключ: add_opt2 Наименование: How to extract Опции:
|
| MVSep Clarinet (clarinet, other) | 78 | Ключ: add_opt2 Наименование: How to extract Опции:
|
| MVSep French Horn (french-horn, other) | 82 | Ключ: add_opt2 Наименование: How to extract Опции:
|
| MVSep Harmonica (harmonica, other) | 87 | Ключ: add_opt2 Наименование: How to extract Опции:
|
| MVSep Tuba (tuba, other) | 92 | |
| MVSep Bassoon (bassoon, other) | 93 | |
| MVSep Bagpipes (bagpipes , other) | 116 | Ключ: add_opt2 Наименование: How to extract Опции:
|
| 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 | Ключ: add_opt2 Наименование: How to extract Опции:
|
| MVSep Celesta (celesta, other) | 110 | Ключ: add_opt2 Наименование: How to extract Опции:
|
| MVSep Clap | 133 | |
| MVSep Cowbell | 128 | |
| MVSep Demucs4HT DNR (speech, music, effects) | 24 | Ключ: add_opt1 Наименование: Model type Опции:
|
| BandIt Plus (speech, music, effects) | 36 | |
| BandIt v2 (speech, music, effects) | 45 | Ключ: add_opt1 Наименование: Model Type Опции:
|
| MVSep DnR v3 (speech, music, effects) | 56 | Ключ: add_opt1 Наименование: Model type Опции:
Ключ: add_opt2 Наименование: How to extract Опции:
Ключ: add_opt3 Наименование: Output files Опции:
|
| MVSep Braam | 117 | |
| MVSep Risers | 125 | |
| MVSep FX | 122 | |
| Apollo Enhancers (by JusperLee, Lew, baicai1145) | 51 | Ключ: add_opt1 Наименование: Model type Опции:
Ключ: add_opt2 Наименование: Cutoff (Hz) Опции:
|
| Reverb Removal (noreverb) | 22 | Ключ: add_opt1 Наименование: Model Type Опции:
Ключ: add_opt2 Наименование: Preprocess Опции:
|
| DeNoise by aufr33 and gabox | 47 | Ключ: add_opt1 Наименование: Model type Опции:
|
| AudioSR (Super Resolution) | 59 | Ключ: add_opt1 Наименование: Cutoff (Hz) Опции:
|
| FlashSR (Super Resolution) | 60 | |
| Stable Audio Open Gen | 62 | Ключ: add_opt1 Наименование: Text prompt Опции: Ключ: add_opt2 Наименование: Length (in seconds) Опции:
|
| Whisper (extract text from audio) | 39 | Ключ: add_opt1 Наименование: Model type Опции:
Ключ: add_opt2 Наименование: Transcription type Опции:
|
| Parakeet (extract text from audio) | 64 | Ключ: add_opt1 Наименование: Model type Опции:
Ключ: add_opt2 Наименование: Version Опции:
|
| VibeVoice (Voice Cloning) | 103 | Ключ: add_opt1 Наименование: Model type Опции:
Ключ: add_opt2 Наименование: Text prompt Опции: Ключ: add_opt3 Наименование: Extract vocals first Опции:
|
| VibeVoice (TTS) | 104 | Ключ: add_opt1 Наименование: Model type Опции:
Ключ: add_opt2 Наименование: Text prompt Опции: |
| Qwen3-TTS (Custom Voice) | 118 | Ключ: add_opt1 Наименование: Text prompt Опции: Ключ: add_opt2 Наименование: Speaker Опции:
Ключ: add_opt3 Наименование: Language Опции:
Ключ: add_opt4 Наименование: Voice description Опции: |
| Qwen3-TTS (Voice Design) | 119 | Ключ: add_opt1 Наименование: Text prompt Опции: Ключ: add_opt2 Наименование: Voice description Опции: Ключ: add_opt3 Наименование: Language Опции:
|
| Qwen3-TTS (Voice Cloning) | 120 | Ключ: add_opt1 Наименование: Text prompt Опции: Ключ: add_opt2 Наименование: Reference text in audio (optional) Опции: Ключ: add_opt3 Наименование: Language Опции:
Ключ: add_opt4 Наименование: Extract vocals first Опции:
|
| Mega 53-stem Model | 126 | |
| Upmixing by Jazzpear | 137 | |
| DeEffect vocals by gilliaan | 138 | |
| Bark (Speech Gen) | 115 | Ключ: add_opt1 Наименование: Text prompt Опции: Ключ: add_opt2 Наименование: Speaker Опции:
|
| MVSep MultiSpeaker (MDX23C) | 42 | Ключ: add_opt1 Наименование: Model Type Опции:
|
| Aspiration (by Sucial) | 50 | Ключ: add_opt1 Наименование: Model type Опции:
|
| Phantom Centre extraction | 55 | Ключ: add_opt1 Наименование: Model type Опции:
|
| Matchering (by sergree) | 68 | |
| SOME (Singing-Oriented MIDI Extractor) | 80 | Ключ: add_opt1 Наименование: How to use Опции:
|
| Transkun (Piano -> MIDI) | 113 | Ключ: add_opt1 Наименование: How to extract Опции:
|
| Basic Pitch (MIDI Extraction) | 114 | |
| ADTOF Plus (Drums -> MIDI) | 127 | Ключ: add_opt1 Наименование: How to extract Опции:
|
| HeartMuLa (Song Gen) | 121 | Ключ: add_opt1 Наименование: Lyrics Опции: Ключ: add_opt10 Наименование: Topic Опции:
Ключ: add_opt2 Наименование: Tags (optional) Опции: Ключ: add_opt3 Наименование: Genre Опции:
Ключ: add_opt4 Наименование: Timbre Опции:
Ключ: add_opt5 Наименование: Gender Опции:
Ключ: add_opt6 Наименование: Mood Опции:
Ключ: add_opt7 Наименование: Instrument Опции:
Ключ: add_opt8 Наименование: Scene Опции:
Ключ: add_opt9 Наименование: Region Опции:
|
| Demucs3 Model (vocals, drums, bass, other) | 10 | Ключ: add_opt1 Наименование: Model type Опции:
|
| MDX A/B (vocals, drums, bass, other) | 7 | Ключ: add_opt1 Наименование: Vocal model type Опции:
|
| Vit Large 23 (vocals, instrum) | 33 | Ключ: add_opt1 Наименование: Model type Опции:
|
| UVRv5 Demucs (vocals, music) | 17 | Ключ: add_opt1 Наименование: Model Type Опции:
|
| 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 | Ключ: add_opt1 Наименование: Model type Опции:
|
| UnMix | 3 | Ключ: add_opt1 Наименование: Model type Опции:
|
| Zero Shot (Query Based) (Low quality) | 14 | Ключ: add_opt1 Наименование: Model Type Опции:
|
| LarsNet (kick, snare, cymbals, toms, hihat) | 38 | Ключ: add_opt1 Наименование: Model type Опции:
|
Пресеты доступны только для аккаунта, который их создал, поэтому в этой таблице показаны ваши пресеты и пресеты из подборки. Создавайте и редактируйте их в редакторе пресетов.
У вас пока нет пресетов. Войдите и создайте один в редакторе пресетов, и его ID появится здесь.
| Наименование | Значение |
|---|---|
| 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="<Ваш токен API>"'
--form 'sep_type="9"'
--form 'add_opt1="0"'
--form 'add_opt2="1"'
--form 'output_format="1"'
--form 'is_demo="1"'
| Ключ | Значение |
|---|---|
| success |
|
| data | Содержит дополнительную информацию в зависимости от ключа success |
| data -> link | Показывает ссылку на URL "ПОЛУЧИТЬ РЕЗУЛЬТАТ" созданной задачи (показывается только когда success равно true) |
| data -> hash | Показывает хэш созданной задачи (показывается только когда success равно true) |
| data -> message | Показывает описание ошибки (показывается только когда success равно false) |
API MVSEP использует следующие коды ошибок:
| Код ошибки | Значение |
|---|---|
| 400 | Некоторые параметры отсутствуют или недействительны. Эта ошибка появляется, когда вы не передаете все обязательные параметры или передаете недопустимые параметры. |
| 401 |
Неизвестный или недопустимый api_token. Эта ошибка появляется, если вы используете неизвестный ключ API
|
Чтобы получить результат разделения, вам нужно сделать вызов GET по следующему URL-адресу:
https://mvsep.com/api/separation/get
Та же конечная точка возвращает результаты выполнения пресета: опрашивайте хэш, полученный от preset_id, точно так же, как при разделении. Структура ответа идентична: status проходит путь от waiting и processing до done, а data.type — preset_run. Каждая запись в data.files — это один выходной узел пресета, названный по метке, а не по стему. Результаты выполнения пресета видны только создавшей его учетной записи.
| Поле | Тип | Описание |
|---|---|---|
| hash | Строка | Хэш разделения |
| mirror | Целое число | (необязательно) Используется другое зеркало, если установлено значение 1, по умолчанию 0. Требуется api_token и 1 кредит, если установлено значение 1. |
| api_token | Строка | (необязательно) API-ключ пользователя. Требуется, если параметр зеркала установлен на 1. |
curl --location --request GET 'https://mvsep.com/api/separation/get?hash=20230327071601-0e3e5c6c85-13-dimensions.mp3'
| Ключ | Значение |
|---|---|
| success |
|
| status |
|
| data | Содержит дополнительную информацию в зависимости от ключа status. |
| data -> queue_count | Показывает количество необработанных задач в приоритете пользователя (показывается только когда status равно waiting или distributing) |
| data -> current_order | Показывает порядок задачи пользователя (показывается только когда status равно waiting или distributing) |
| data -> message | Показывает описание статуса (показывается для всех статусов, показывает причину ошибки вместо этого, когда status равно failed) |
| data -> algorithm | Показывает использованный алгоритм для задачи (показывается только когда status равно done) |
| data -> algorithm_description | Показывает детали использованного алгоритма для задачи (показывается только когда status равно done) |
| data -> output_format | Показывает формат вывода задачи (показывается только когда status равно done) |
| data -> tags | Показывает мета-теги аудио (показывается только когда status равно done) |
| data -> input_file | Показывает детали загрузки входного аудио (показывается только когда status равно done) |
| data -> files | Показывает детали загрузки выходного аудио (показывается только когда status равно done) |
| data -> date | Показывает дату обработки задачи (показывается только когда status равно done) |
| data -> finished_chunks | Показывает количество завершённых частей большой задачи (показывается только когда status равно distributing) |
| data -> all_chunks | Показывает общее количество частей большой задачи (показывается только когда status равно distributing) |
Удаление одного из ваших разделений — обычного задания или запуска пресета. Удаляются и запись, и выходные файлы. Разделение, которое ещё обрабатывается, нужно сначала отменить. Кредиты при удалении не возвращаются, так как работа уже выполнена.
POST https://mvsep.com/api/separation/delete
Вы можете запрашивать статус любой задачи из любого региона (база данных является общей), но выходные файлы всегда обслуживаются тем регионом, которому принадлежит задача.
| Поле | Тип | Описание |
|---|---|---|
| hash | Строка | Хэш разделения |
| api_token | Строка | Ключ API пользователя. Обязательный. |
curl --location --request POST 'https://mvsep.com/api/separation/delete'
--form 'api_token="<Ваш токен API>"'
--form 'hash="20230327071601-0e3e5c6c85-13-dimensions.mp3"'
| Ключ | Значение |
|---|---|
| success |
|
| data -> message | Показывает описание статуса (показывается для всех статусов, показывает причину ошибки вместо этого, когда status равно failed) |
Чтобы получить результат удаленной задачи, необходимо выполнить GET-запрос по следующему адресу:
https://mvsep.com/api/separation/get-remote
| Поле | Тип | Описание |
|---|---|---|
| hash | Строка | Хэш разделения |
curl --location --request GET 'https://mvsep.com/api/separation/get-remote?hash=n2AwBjy4KsFZfqqR'
| Ключ | Значение |
|---|---|
| success |
|
| status |
|
| data | Содержит дополнительную информацию в зависимости от ключа status. |
| data -> queue_count | Показывает количество необработанных задач в очереди пользователя (отображается только когда status имеет значение waiting). |
| data -> current_order | Показывает порядковый номер задачи пользователя (отображается только когда status имеет значение waiting). |
| data -> message | Показывает описание статуса (только когда status имеет значение failed). |
| data -> link | Показывает ссылку на URL для получения результата созданной задачи (отображается только когда status имеет значение done). |
| data -> hash | Хеш разделения (отображается только когда status имеет значение done). |
Чтобы отменить разделение и вернуть потраченные кредиты (если разделение еще не обрабатывается), необходимо выполнить POST-запрос по следующему адресу:
https://mvsep.com/api/separation/cancel
| Поле | Тип | Описание |
|---|---|---|
| api_token | Строка | API-ключ пользователя |
| hash | Строка | Хэш разделения |
curl --location --request POST 'https://mvsep.com/api/separation/cancel' --form 'api_token="<Ваш токен API>"' --form 'hash="<hash>"'
| Ключ | Значение |
|---|---|
| success |
|
Чтобы получить подробные данные о типах разделения, необходимо выполнить GET-вызов по следующему url:
https://mvsep.com/api/app/algorithms
| Поле | Тип | Описание |
|---|---|---|
| scopes | Строка | Определяет, включать ли модели, использующие разные способы ввода.
single_upload, если не указано иное. Чтобы получить все модели, установите scopes=single_upload,no_upload,matchering_upload.
|
curl --location --request GET 'https://mvsep.com/api/app/algorithms'
Возвращает данные в виде массива:
| Ключ | Значение |
|---|---|
| render_id | Значение типа разделения (ID) |
| name | Имя типа разделения |
| algorithm_group_id | Группа, к которой принадлежит тип разделения: |
| algorithm_group | Содержит информацию о группе алгоритмов, к которой принадлежит алгоритм. |
| algorithm_group -> name | Название группы алгоритмов. |
| audio_widget |
Тип аудио-виджета, используемого для алгоритма. Это можно использовать для определения того, как отображать аудиоплеер для алгоритма на фронтенде. Возможные значения:
|
| orientation |
Для кого предназначен этот тип разделения:
|
| order_id | Порядок сортировки типа разделения |
| price_coefficient |
Используется для расчёта того, сколько кредитов списывается за задание у премиум-пользователя. Используется эта формула : floor(<продолжительность аудиофайла в секундах> * price_coefficient / 60)?:1
|
| usage | Показывает количество использований типа разделения за месяц |
| rating | Показывает рейтинг использования типа разделения за месяц в виде массива:
|
| algorithm_fields | Содержит информацию о дополнительных полях типа разделения |
| algorithm_fields -> name |
Показывает, какое это дополнительное поле типа разделения:
|
| algorithm_fields -> text | Отображаемое имя дополнительного поля типа разделения. |
| algorithm_fields -> options | JSON-кодированные пары ключ-значение дополнительных полей |
| algorithm_fields -> default_key | Значение по умолчанию для дополнительного поля. Один из ключей <code>algorithm_fields -> options</code> |
| algorithm_descriptions | Содержит информацию об описаниях типа разделения |
| algorithm_descriptions -> short_description | Небольшое описание типа разделения, не использующее HTML. |
| algorithm_descriptions -> long_description | Подробное описание типа разделения, использующее HTML. |
| algorithm_descriptions -> lang | Заданный код языка описания. |
Чтобы получить информацию о последних новостях MVSEP, вам нужно сделать GET-запрос по следующему url:
https://mvsep.com/api/app/news
| Поле | Тип | Описание |
|---|---|---|
| lang | Строка | (Необязательно) 2-ух буквенный языковой код (en, ru) |
| start | Целое число | (Необязательно) Смещение начальной точки, по умолчанию 0 (т.е. начало с самой последней) |
| limit | Целое число | (Необязательно) Максимальное количество возвращаемых результатов, по умолчанию 10, максимум 20. |
curl --location --request GET 'https://mvsep.com/api/app/news?lang=en&start=2&limit=1'
Возвращает данные в виде массива:
| Ключ | Значение |
|---|---|
| title | Заголовок новостей |
| lang | Заголовок новостей |
| text | Полное описание новостей |
| created_at | Дата новостей |
Чтобы получить информацию об очереди сайта, необходимо выполнить GET-запрос по следующему адресу:
https://mvsep.com/api/app/queue
| Поле | Тип | Описание |
|---|---|---|
| api_token | Строка | (необязательно) API-ключ пользователя |
curl --location --request GET 'https://mvsep.com/api/app/queue'
| Ключ | Значение |
|---|---|
| queue |
Содержит массив текущих очередей для разных тарифов:
|
| plan |
Содержит текущую очередь для вашего тарифа (добавьте api_token в запрос для зарегистрированных / премиум-тарифа):
|
Чтобы получить информацию о демо разделениях, вам нужно сделать GET-вызов по следующему url:
https://mvsep.com/api/app/demo
| Поле | Тип | Описание |
|---|---|---|
| start | Целое число | (Необязательно) Смещение начальной точки, по умолчанию 0 (т.е. начало с самой последней) |
| limit | Целое число | (Необязательно) Максимальное количество возвращаемых результатов, по умолчанию 10, максимум 20. |
| algorithm_id | Целое число | Необязательный ID типа разделения. Используйте это, чтобы возвращать демо-разделения, созданные только одним алгоритмом. Значения соответствуют render_id из эндпоинта GET SEPARATION TYPES. |
| options[FIELD] | Строка / Целое число | Необязательный фильтр по значениям опций алгоритма. Замените FIELD на ключ дополнительного поля из algorithm_fields -> name в ответе GET SEPARATION TYPES, затем передайте один из ключей options этого поля в качестве значения. Пример: options[vocals]=1. |
| additional_options | Строка | Необязательный фильтр по вхождению подстроки в сохранённые данные опций задачи. Для новых интеграций лучше использовать options[FIELD]: так нагляднее и удобнее составлять запрос. |
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'
Чтобы построить фильтры опций, сначала вызовите https://mvsep.com/api/app/algorithms и просмотрите список algorithm_fields каждого алгоритма. Используйте поле name внутри options[FIELD] и используйте один из ключей JSON-опций в качестве значения.
Возвращает данные в виде массива:
| Ключ | Значение |
|---|---|
| hash | Хэш разделения |
| date | Дата разделения |
| input_audio | URL-адрес входного аудио |
| size | Размер входного аудио |
| algorithm | Содержит основную информацию об используемом типе разделения (информацию о возвращаемых параметрах см. на вкладке GET SEPARATION TYPES). |
Чтобы зарегистрировать пользователя на сайте MVSEP, необходимо выполнить POST-вызов по следующему адресу:
https://mvsep.com/api/app/register
| Поле | Тип | Описание |
|---|---|---|
| name | Строка | Имя пользователя |
| Строка | E-mail пользователя | |
| password | Строка | Пароль пользователя |
| password_confirmation | Строка | Повторите пароль пользователя |
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"'
| Ключ | Значение |
|---|---|
| success |
|
| message | Происходит, когда форма действительна |
API MVSEP использует следующие коды ошибок:
| Код ошибки | Значение |
|---|---|
| 400 | Форма недействительна |
Чтобы аутентифицировать пользователя и получить его API-ключ, необходимо выполнить POST-вызов по следующему url:
https://mvsep.com/api/app/login
| Поле | Тип | Описание |
|---|---|---|
| Строка | E-mail пользователя | |
| password | Строка | Пароль пользователя |
curl --location --request POST 'https://mvsep.com/api/app/login' --form 'email="<E-mail пользователя>"' --form 'password="<Пароль пользователя>"'
| Ключ | Значение |
|---|---|
| success |
|
| data | Содержит информацию, если учётные данные действительны. |
| data -> name | Имя пользователя |
| data -> email | E-mail пользователя |
| data -> api_token | API-ключ пользователя. Обязательно сохраните его в надёжном хранилище и используйте для последующих операций. |
| data -> premium_minutes | Оставшиеся кредиты пользователя |
| data -> premium_enabled |
Разрешено ли пользователю расходовать кредиты.
|
| data -> long_filenames_enabled |
Хочет ли пользователь получить дополнительную информацию в именах файлов:
|
API MVSEP использует следующие коды ошибок:
| Код ошибки | Значение |
|---|---|
| 400 | Указаны неверные учетные данные |
Чтобы получить информацию о пользователе, необходимо выполнить GET-вызов по следующему url:
https://mvsep.com/api/app/user
| Поле | Тип | Описание |
|---|---|---|
| api_token | Строка | API-ключ пользователя |
curl --location --request GET 'https://mvsep.com/api/app/user?api_token=<Ваш токен API>'
| Ключ | Значение |
|---|---|
| success |
|
| data | Содержит информацию, если учётные данные действительны. |
| data -> name | Имя пользователя |
| data -> email | E-mail пользователя |
| data -> api_token | API-ключ пользователя. Обязательно сохраните его в надёжном хранилище и используйте для последующих операций. |
| data -> premium_minutes | Оставшиеся кредиты пользователя |
| data -> premium_enabled |
Разрешено ли пользователю расходовать кредиты.
|
| data -> long_filenames_enabled |
Хочет ли пользователь получить дополнительную информацию в именах файлов:
|
| data -> current_queue | Показывает текущие разделения для пользователя |
API MVSEP использует следующие коды ошибок:
| Код ошибки | Значение |
|---|---|
| 400 | Неверный ключ API |
Чтобы получить основную информацию об истории разделений пользователя, вам необходимо сделать GET-вызов по следующему URL-адресу:
https://mvsep.com/api/app/separation_history
| Поле | Тип | Описание |
|---|---|---|
| api_token | Строка | API-ключ пользователя |
| start | Целое число | (Необязательно) Смещение начальной точки, по умолчанию 0 (т.е. начало с самой последней) |
| limit | Целое число | (Необязательно) Максимальное количество возвращаемых результатов, по умолчанию 10, максимум 20. |
curl --location --request GET 'https://mvsep.com/api/app/separation_history?api_token=<Ваш токен API>&start=1&limit=2'
| Ключ | Значение |
|---|---|
| success |
|
| data | Содержит основной массив информации о предыдущих разделениях |
| data -> hash | Хэш разделения |
| data -> job_exists | Содержит основной массив информации о предыдущих разделениях |
| data -> credits | Сколько кредитов было использовано для выполнения задания; null, если разделения не существует |
| data -> time_left | Примерное время, оставшееся до удаления задания |
| data -> algorithm | Содержит основную информацию об используемом типе разделения (информацию о возвращаемых параметрах см. на вкладке GET SEPARATION TYPES). |
API MVSEP использует следующие коды ошибок:
| Код ошибки | Значение |
|---|---|
| 400 | Неверный ключ API |
Чтобы получить данные о покупках кредитов для этого аккаунта (в порядке от самых последних к самым ранним), необходимо выполнить GET-вызов по следующему URL-адресу:
https://mvsep.com/api/purchases
| Поле | Тип | Описание |
|---|---|---|
| api_token | Строка | API-ключ пользователя |
| limit | Целое число | (необязательно) Количество покупок для возврата: от 1 до 100. По умолчанию — 20. |
| offset | Целое число | (необязательно) Количество записей о покупках, которые следует пропустить при пролистывании истории. По умолчанию — 0. |
| status | Строка | (необязательно) Возвращать только покупки в этом состоянии, например succeeded. Если не указывать этот параметр (или указать all), будут возвращены все данные со страницы истории покупок на сайте, включая незавершенные покупки со статусом unpaid, по которым не начислялись кредиты. |
curl --location --request GET 'https://mvsep.com/api/purchases?api_token=<Ваш токен API>&status=succeeded&limit=20'
| Ключ | Значение |
|---|---|
| purchases | По одной записи на каждую покупку: payment_id, status, amount, начисленные credits, payment_method (stripe, paddle, yookassa, google_play или app_store) и date. |
| total | Общее число подходящих покупок без учёта limit и offset — по нему удобно листать страницы. |
| credits | Текущий баланс кредитов аккаунта. |
MVSEP отправляет вам электронное письмо, когда ваш баланс кредитов опускается до выбранного вами порогового значения, чтобы работающая интеграция не прервалась неожиданно. Команда GET возвращает текущие настройки; команда POST изменяет их. Уведомление отправляется один раз и не повторяется до тех пор, пока баланс снова не превысит пороговое значение.
GET https://mvsep.com/api/credit_alert
POST https://mvsep.com/api/credit_alert
| Поле | Тип | Описание |
|---|---|---|
| api_token | Строка | API-ключ пользователя |
| credit_threshold | Целое число | (Только POST, обязательно) Отправить уведомление, когда баланс достигнет или опустится ниже указанного количества кредитов. 0 отключает уведомление. Изменение порогового значения приводит к повторной активации уже отправленного уведомления. |
curl --location --request GET 'https://mvsep.com/api/credit_alert?api_token=<Ваш токен API>'
curl --location --request POST 'https://mvsep.com/api/credit_alert' --form 'api_token=<Ваш токен API>' --form 'credit_threshold=100'
| Ключ | Значение |
|---|---|
| credit_threshold | Текущий установленный порог в кредитах. |
| enabled | <code>true</code>, если установлен порог выше нуля, в противном случае <code>false</code>. |
| credits | Текущий баланс кредитов аккаунта. |
| notified | <code>true</code> после отправки оповещения о текущем падении; сбрасывается, когда баланс снова поднимается выше порогового значения. |
| Адрес, на который отправляется оповещение. |
Чтобы включить использование премиума для пользователя, вам необходимо сделать POST-вызов по следующему URL-адресу:
https://mvsep.com/api/app/enable_premium
| Поле | Тип | Описание |
|---|---|---|
| api_token | Строка | API-ключ пользователя |
curl --location --request POST 'https://mvsep.com/api/app/enable_premium' --form 'api_token="<Ваш токен API>"'
| Ключ | Значение |
|---|---|
| success |
|
| message | Информирует о состоянии операции |
API MVSEP использует следующие коды ошибок:
| Код ошибки | Значение |
|---|---|
| 400 | Неверный ключ API |
Чтобы отключить использование премиума для пользователя, вам необходимо сделать POST-вызов по следующему URL-адресу:
https://mvsep.com/api/app/disable_premium
| Поле | Тип | Описание |
|---|---|---|
| api_token | Строка | API-ключ пользователя |
curl --location --request POST 'https://mvsep.com/api/app/disable_premium' --form 'api_token="<Ваш токен API>"'
| Ключ | Значение |
|---|---|
| success |
|
| message | Информирует о состоянии операции |
API MVSEP использует следующие коды ошибок:
| Код ошибки | Значение |
|---|---|
| 400 | Неверный ключ API |
Чтобы включить длинные имена файлов для пользователя, вам необходимо сделать POST-вызов по следующему URL-адресу:
https://mvsep.com/api/app/enable_long_filenames
| Поле | Тип | Описание |
|---|---|---|
| api_token | Строка | API-ключ пользователя |
curl --location --request POST 'https://mvsep.com/api/app/enable_long_filenames' --form 'api_token="<Ваш токен API>"'
| Ключ | Значение |
|---|---|
| success |
|
| message | Информирует о состоянии операции |
API MVSEP использует следующие коды ошибок:
| Код ошибки | Значение |
|---|---|
| 400 | Неверный ключ API |
Чтобы отключить длинные имена файлов для пользователя, вам необходимо сделать POST-вызов по следующему URL-адресу:
https://mvsep.com/api/app/disable_long_filenames
| Поле | Тип | Описание |
|---|---|---|
| api_token | Строка | API-ключ пользователя |
curl --location --request POST 'https://mvsep.com/api/app/disable_long_filenames' --form 'api_token="<Ваш токен API>"'
| Ключ | Значение |
|---|---|
| success |
|
| message | Информирует о состоянии операции |
API MVSEP использует следующие коды ошибок:
| Код ошибки | Значение |
|---|---|
| 400 | Неверный ключ API |
Чтобы получить информацию о записях в очереди Quality Checker, необходимо выполнить GET-запрос по следующему адресу:
https://mvsep.com/api/quality_checker/queue
| Поле | Тип | Описание |
|---|---|---|
| start | Целое число | (Необязательно) Смещение начальной точки, по умолчанию 0 (т.е. начало с самой последней) |
| limit | Целое число | (Необязательно) Максимальное количество возвращаемых результатов, по умолчанию 10, максимум 20. |
curl --location --request GET 'https://mvsep.com/api/quality_checker/queue?&start=1&limit=2'
Возвращает данные в виде массива:
| Ключ | Значение |
|---|---|
| id | Идентификационный номер записи |
| dataset_type | Тип набора данных, выбранный при добавлении записи / тип таблицы лидеров
|
| date | Дата создания записи |
| algo_name | Имя выбранного типа/алгоритма разделения |
| main_text | Описание выбранного типа/алгоритма разделения |
| proc | Статус обработки
|
| proc_remote_date | Временная метка даты обработки |
| msg | В случае успеха возвращает "OK", иначе показывает сообщение об ошибке |
| metrics | Информация о метриках записи |
| sdr_* (wildcard) | SDR соответствующих стемов |
| dataset_name | Название набора данных |
Чтобы получить информацию о таблицах лидеров Quality Checker, необходимо выполнить GET-запрос по следующему адресу:
https://mvsep.com/api/quality_checker/leaderboard
| Поле | Тип | Описание |
|---|---|---|
| dataset_type | Строка | Тип набора данных, по умолчанию 0, если не указан.
|
| start | Целое число | (Необязательно) Смещение начальной точки, по умолчанию 0 (т.е. начало с самой последней) |
| limit | Целое число | (Необязательно) Максимальное количество возвращаемых результатов, по умолчанию 10, максимум 20. |
| algo_name_filter | Строка | Фильтрует типы разделения / названия алгоритмов по указанному тексту |
| sort | Строка | Сортировка по указанному SDR стема. Список доступных для сортировки значений для данного типа набора данных можно получить из ключа sortables в ответе. |
curl --location --request GET 'https://mvsep.com/api/quality_checker/leaderboard?&start=1&limit=2&algo_name_filter=MVSep'
| Ключ | Значение |
|---|---|
| data | Содержит массив записей Quality Checker. Дополнительную информацию см. в ответе GET QUEUE в разделе Quality Checker. |
| dataset_type | Используемый ключ типа набора данных |
| sortables | Ключи, которые можно использовать для сортировки используемого типа набора данных по указанному стему в последовательном порядке. |
| sort | Используемый ключ сортировки из sortable. |
Чтобы создать запись Quality Checker, необходимо выполнить POST-запрос по следующему адресу:
https://mvsep.com/api/quality_checker/add
| Поле | Тип | Описание |
|---|---|---|
| api_token | Строка | (обязательно) Ваш ключ API |
| zipfile | Двоичное значение | (обязательно) Zip-файл для обработки |
| algo_name | Строка | (обязательно) Название алгоритма |
| main_text | Строка | (обязательно) Описание алгоритма |
| dataset_type | Строка | Тип набора данных. По умолчанию — 0.
|
| password | Строка | (обязательно) Пароль для удаления алгоритма |
| ensemble | Целое число | 0 — алгоритм не является ансамблевым. 1 — алгоритм является ансамблевым. |
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"'
| Ключ | Значение |
|---|---|
| success |
|
| data | Содержит информацию о записи |
| data -> id | ID записи |
| data -> link | Ссылка на запись |
API MVSEP использует следующие коды ошибок:
| Код ошибки | Значение |
|---|---|
| 400 | Форма недействительна |
| 401 |
Неизвестный или недопустимый api_token. Эта ошибка появляется, если вы используете неизвестный ключ API
|
Чтобы получить информацию о записи в очереди Quality Checker по её ID, необходимо выполнить GET-запрос по следующему адресу:
https://mvsep.com/api/quality_checker/entry
| Поле | Тип | Описание |
|---|---|---|
| id | Целое число | (обязательно) ID записи |
curl --location --request GET 'https://mvsep.com/api/quality_checker/entry?id=7675'
Чтобы удалить запись очереди Quality Checker по ID и паролю, необходимо выполнить GET-запрос по следующему адресу:
https://mvsep.com/api/quality_checker/delete
| Поле | Тип | Описание |
|---|---|---|
| id | Целое число | (обязательно) ID записи |
| password | Строка | (обязательно) Используемый пароль для записи |
curl --location 'https://mvsep.com/api/quality_checker/delete' --form 'id="7720"' --form 'password="test"'
| Ключ | Значение |
|---|---|
| success |
|
| data->message | Показывает, была ли запись удалена |
Библиотеки, приложения и интеграции, созданные на основе этого API. Если не указано иное, это проекты сообщества: они не поддерживаются MVSEP, и мы не можем за них ручаться.
Этот дистрибутив распространяется на PyPI под названием mvsep-cli, а в качестве автора указан MVSEP, что может создать впечатление, будто он официальный. Он опубликован и поддерживается третьей стороной, а не MVSEP, и репозиторий с исходным кодом, на который он ссылается, не существует. Он запрашивает ваш токен API, поэтому изучите исходный код, прежде чем вводить токен.
mvsep-cli: pypi.org/project/mvsep-cli