문서
Mubert AI 음악 API
버전 3.0
Mubert AI Music API v3에 오신 것을 환영합니다!
이 API를 사용하면 앱, 게임 또는 서비스에 트랙 생성 및 음악 스트리밍 기능을 통합할 수 있습니다. API를 사용하려면 Mubert 팀([email protected])으로 API 키를 요청해 주세요.
REST API는 SSL(HTTPS) 위에서 JSON으로만 통신합니다. 모든 엔드포인트 URL은 https://music-api.mubert.com/api/v3/로 시작합니다(스트리밍 url은 제외하며, 해당 URL은 https://stream.mubert.com/b2b/v3/로 시작합니다)
매개변수는 JSON으로 직렬화되어 요청 본문에 전달되어야 합니다.
다음의 미디어 타입 지정자를 사용해야 합니다 application/json.
API에는 두 개의 주요 디렉터리가 있습니다:
서비스 —
https://music-api.mubert.com/api/v3/service/— 회사가 라이선스와 고객을 관리하는 데 사용됩니다.공개 —
https://music-api.mubert.com/api/v3/public/— 고객이 스트리밍 기능과 트랙을 받는 데 사용됩니다.
인증
REST API는 API 키 기반 인증을 허용합니다.
기업용
고객용
REST API는 SSL(HTTPS) 위에서 JSON으로만 통신합니다. 모든 엔드포인트 URL은 https://music-api.mubert.com/api/v3/로 시작합니다(스트리밍 url은 제외하며, 해당 URL은 https://stream.mubert.com/b2b/v3/로 시작합니다)
서비스 디렉터리에는 COMPANY_ID와 LICENSE_TOKEN 쌍을 사용하고, 공개 디렉터리에는 CUSTOMER_ID와 ACCESS_TOKEN 쌍을 사용하세요.
다음 값을 실제 토큰으로 바꿔야 합니다: COMPANY_ID / LICENSE_TOKEN / CUSTOMER_ID / CUSTOMER_TOKEN.
라이센스
편의를 위해 회사가 각기 다른 기능과 제한을 가진 여러 개의 라이선스를 보유할 수 있도록 했습니다. 이를 통해 사용자를 서로 다른 라이선스로 구분할 수 있습니다. 기본적으로 회사에는 하나의 라이선스가 제공되며, 대부분의 경우 이것으로 충분합니다.
라이선스와 제한에 대한 정보를 확인할 수 있습니다.
라이선스를 GET 요청과 함께 사용하세요
특정 라이선스에 대한 정보도 확인할 수 있습니다
응답
200 OK
이것은 라이선스 모델입니다. 여기에서 라이선스 기능, 기본 매개변수, 제한 및 통계를 확인할 수 있습니다.
일부 제한 값에서 -1을 볼 수 있는데, 이는 제한이 설정되지 않았음을 의미합니다(무제한).
웹훅
이 API 버전에서는 라이선스에 웹훅을 추가할 수 있으며, 이를 통해 트랙 생성 프로세스의 상태에 대한 알림을 받을 수 있습니다.
웹훅을 설정하려면 PUT 메서드를 사용하세요
업데이트된 라이선스 모델을 받게 됩니다.
웹훅을 추가한 후에는 트랙 모델이 포함된 메시지를 받기 시작합니다. 예를 들면 다음과 같습니다:
섹션 트랙 생성에서 track 모델에 대해 더 자세히 알아볼 수 있습니다.
사용자 등록
귀하의 제품(서비스)의 각 최종 사용자는 고유한 토큰 쌍으로 식별됩니다: customer-id와 access-token. 이 토큰은 콘텐츠와 기능에 액세스하는 데 필요합니다.
음악을 제공받고자 하는 사용자 수만큼 많은 고객을 확보하세요.
이를 만들려면 아래에 설명된 POST 요청과 함께 customers 모델을 사용하세요.
입력 매개변수
custom_id — 귀하의 내부 고유 고객 ID이며, 라틴 문자, 숫자 및 허용된 특수 문자: ".", "_", "@", "-"'로 구성될 수 있고 255자보다 길면 안 됩니다.
company-id 및 license-token — Mubert 팀에서 제공
성공하면 200 OK 응답과 JSON 응답을 반환합니다.
고객 모델이 있습니다
여기:
고객 ID =
data->access->customer_id(CUSTOMER_ID)액세스 토큰 =
data->access->access_token(ACCESS_TOKEN)daily_reset_at, monthly_reset_at — 널 허용 날짜
또한 개인 고객 한도와 통계를 볼 수 있습니다.
사용자 관리
사용자 정보
페이지네이션으로 모든 사용자에 대한 정보를 가져올 수 있습니다.
GET 요청을 customers 모델과 함께 사용하세요
응답에는 고객 모델 목록이 포함되어 있습니다.
모든 데이터를 보려면 페이지네이션을 사용하세요.
또한 사용자 지정 ID 또는 고객 식별자를 사용하여 특정 고객에 대한 정보를 가져올 수도 있습니다. 예를 들면 다음과 같습니다:
또는
답변에는 고객 모델도 포함되어 있습니다.
사용자 삭제
DELETE 요청을 customers 모델과 함께 사용하세요
성공하면 204 No Content 응답을 반환합니다.
채널 목록
사용자 정보
스트리밍과 트랙 생성 모두 음악 채널을 선택해야 합니다.
모델 playlists에서 GET을 사용하여 사용 가능한 모든 카테고리, 그룹, 채널 및 해당 재생목록 인덱스 목록을 가져옵니다.
응답 200 OK
여기에서는 BPM 범위와 키 목록도 확인할 수 있습니다. 이러한 값은 트랙 생성에 사용할 수 있습니다.
참고해 주세요. bpm 매개변수에는 특정 카테고리에서 생성할 수 있는 사용 가능한 범위가 있습니다.
gt는 greater than을 의미하고, lt는 less than을 의미합니다.
음악 스트리밍
스트리밍 기능을 사용하기 전에 계약서에서 해당 기능이 활성화되어 있는지 확인하세요. 또한 라이선스 정보에서도 확인할 수 있습니다. 스트리밍 링크를 얻으려면 아래 요청을 사용하세요
요청
응답 200 정상
매개변수
playlist_index(필수) — 채널 인덱스bitrate(선택 사항) — kbps로 측정한 음질intensity(선택 사항) — 편곡의 복잡도, 동시에 연주되는 악기의 수가 더 적거나 더 많음type(선택 사항) — 스트리밍 프로토콜 유형
bitrate의 가능한 값: 32, 96, 128, 192, 256, 320
intensity에 대한 가능한 값: low, medium, high
type의 가능한 값: http, webrtc
선택적 매개변수가 생략되거나 잘못된 값을 포함하면 다음 기본 매개변수가 적용됩니다: bitrate=128, intensity=high 및 type=http.
gt는 greater than을 의미하고, lt는 less than을 의미합니다.
루프 모드
음악 작곡의 가장 최근 부분을 반복하려면(또는 루프 모드를 끄려면) set-loop-state URL을 사용하세요.
매개변수
loop(필수) — 가능한 값:off,ontime(선택 사항) — UX를 개선하기 위해 현재 스트림 재생 시간을 초 단위로 설정합니다(세션 시작 이후)
요청
응답
성공하면 204 콘텐츠 없음으로 응답합니다.
강도
set-intensity URL은 편곡의 복잡도를 변경할 수 있게 해줍니다. 서로 다른 프리셋은 동시에 연주되는 악기의 수가 더 적거나 더 많습니다. 강도는 스트림을 끊지 않고 매끄럽게 변경됩니다.
강도의 가능한 값: low, medium, high
요청
응답
성공하면 204 콘텐츠 없음으로 응답합니다.
세대 재시작
스트림을 다시 시작하려면, 동일한 url로 다른 트랙(멜로디)이 재생되도록 하려면 POST 메서드와 streaming/restart를 사용하세요.
요청
응답
성공하면 204 콘텐츠 없음으로 응답합니다.
트랙 생성
트랙 생성 기능을 사용하기 전에 계약서의 계약 조건에서 활성화되어 있는지 확인하세요. 또한 라이선스 정보에서 확인할 수 있습니다.
이 API를 사용하면 요청에 따라 맞춤형 트랙을 만들 수 있습니다. 각 트랙은 전용 음악 작품이며, 특별 링크를 통해 다운로드할 수 있습니다.
트랙과 상호작용하려면 tracks 모델을 사용하세요.
트랙 생성
선택한 특성 집합으로 트랙을 만들려면 POST를 사용하세요.
요청
매개변수
playlist_index(필수) - 채널 인덱스duration(필수) - 트랙 길이(초)format(선택) - mp3 또는 wavbitrate(선택) - kbps로 측정한 음질intensity(선택) - 편곡의 복잡도, 동시에 연주되는 악기의 수가 더 적거나 더 많음mode(선택) — 구성 유형 (track,loop,jingle,mix)
bitrate의 가능한 값: 32, 96, 128, 192, 256, 320
intensity에 대한 가능한 값: low, medium, high
선택적 매개변수가 생략되거나 잘못된 값을 포함하면 기본 매개변수가 적용됩니다. format=mp3, bitrate=128 , intensity=high, mode=track
track - 인트로, 드롭, 브레이크, 아웃트로로 구성된 공통 구조의 트랙을 의미합니다
loop - 반복 재생할 수 있는 트랙을 뜻합니다
jingle - 최대 40초 길이의 음악 콘텐츠에 가장 적합합니다 – 고정되고 논리적인 구조를 가진 짧은 완성형 트랙입니다
mix - DJ의 작업을 모방하여 트랙이 하나씩 이어지며 조화롭게 섞입니다
playlist_index는 “0.0.0” 형식의 범용 채널 인덱스로, category_id.group_id.channel_id로 구성됩니다. 여러 채널을 섞으려면 뒤의 숫자는 생략하세요.
예를 들어: playlist=0.0은 “Calm” 그룹 내의 모든 채널을 재생하며; playlist=0은 전체 “Moods” 카테고리를 재생합니다.
응답
여기:
prompt,key,bpm,url— nullable 문자열generated_at,expired_at— nullable 날짜
트랙이 생성되었는지 확인하려면 tracks 모델을 TRACK_ID와 함께 사용하세요. 예를 들면 다음과 같습니다:
요청
또는 라이선스에 웹훅을 추가하고 완료되면 메시지를 받아보세요.
텍스트-투-뮤직
텍스트 프롬프트와 선택한 특성 집합으로 트랙을 만들 수 있습니다. 이 방법은 이전 방법과 비슷하지만, 채널을 선택하는 대신 텍스트 메시지를 보내면 됩니다. 그러면 태그 기반의 트랜스포머 신경망으로 전달되고, 이에 맞는 사운드 집합이 자동으로 선택됩니다. 그다음 우리의 작곡 엔진이 트랙을 생성하여 파일을 돌려드립니다.
사용하기 전에 계약서에 따라 활성화되어 있는지 확인하세요.
요청
매개변수
prompt(필수) — 영어로 된 텍스트 프롬프트, 최대 200자duration(필수) — 트랙 길이(초)format(선택 사항) —mp3또는wavbitrate(선택 사항) — kbps로 측정한 음질intensity(선택 사항) — 편곡의 복잡도, 동시에 연주되는 악기 수가 적거나 많음mode(선택 사항) — 작곡 유형(track,loop)
bitrate의 가능한 값: 32, 96, 128, 192, 256, 320
intensity에 대한 가능한 값: low, medium, high
prompt — 사용자 입력이나 다른 연결된 입력(언어 모델, 이미지-텍스트, 게임 메커니즘 등)에서 받을 수 있는 텍스트 프롬프트
track — 인트로, 드롭, 브레이크, 아웃트로로 이루어진 일반적인 구조를 가진 트랙을 의미함
loop — 반복 재생할 수 있는 트랙을 뜻함
선택적 매개변수가 생략되거나 잘못된 값을 포함하면 기본 매개변수가 format=mp3, bitrate=128 , intensity=high, mode=track로 적용됩니다
응답
성공하면 204 콘텐츠 없음으로 응답합니다.
강도
set-intensity URL은 편곡의 복잡도를 변경할 수 있게 해줍니다. 서로 다른 프리셋은 동시에 연주되는 악기의 수가 더 적거나 더 많습니다. 강도는 스트림을 끊지 않고 매끄럽게 변경됩니다.
강도의 가능한 값: low, medium, high
요청
응답
성공하면 204 콘텐츠 없음으로 응답합니다.
세대 재시작
스트림을 다시 시작하려면, 동일한 url로 다른 트랙(멜로디)이 재생되도록 하려면 POST 메서드와 streaming/restart를 사용하세요.
요청
응답
성공하면 204 콘텐츠 없음으로 응답합니다.
이미지-2-음악
이미지가 포함된 트랙을 만들 수 있습니다. 사용하기 전에 계약서에 따라 활성화되어 있는지 확인하세요.
요청
매개변수
image(필수) — jpeg/png 형식의 이미지, 최대 10MBduration(필수) — 트랙 길이(초)format(선택 사항) — mp3 또는 wavbitrate(선택 사항) — kbps로 측정되는 음질intensity(선택 사항) — 편곡의 복잡도, 동시에 연주되는 악기 수가 적거나 많음mode(선택 사항) — 작곡 유형 (track,loop)
bitrate의 가능한 값: 32, 96, 128, 192, 256, 320
intensity에 대한 가능한 값: low, medium, high
track — intro, drops, breaks, outro로 이루어진 공통 구조를 가진 트랙을 의미합니다
loop — 반복할 수 있는 트랙을 의미합니다
선택적 매개변수가 생략되거나 잘못된 값을 포함하면 기본 매개변수는 format=mp3, bitrate=128 , intensity=high, mode=track로 적용됩니다
BPM/키 생성
playlist_index 생성 매개변수에 bpm과 key를 추가할 수 있습니다.
요청
응답
성공 시 track 모델과 함께 200 OK로 응답합니다.
유사 항목 생성
기존 트랙과 비슷한 트랙을 생성할 수 있습니다. 완전히 같은 트랙은 아니지만, 비슷한 트랙이 만들어집니다.
POST와 https://music-api.mubert.com/api/v3/public/tracks/TRACK_ID/similar를 사용하세요
요청
트랙 편집
기존 트랙의 일부 매개변수를 변경할 수 있습니다.
요청
응답 200 OK
또한 트랙의 일부를 교체할 수 있습니다. 각 트랙은 악기로 구성됩니다. 트랙에는 다음과 같은 악기가 포함될 수 있습니다:
드럼, 퍼커션, 하이햇, 클랩, 베이스, 미드, 리드, 이펙트, 보컬, 패드, 라이저, 임팩트
이러한 악기들은 다음과 같은 스템으로 결합될 수 있습니다
그러면, 이러한 스템에는 다음 악기들이 포함됩니다:
DRUMS에는DRUMS,PERCS,HATS,CLAPS가 포함됩니다BASS에는BASS가 포함됩니다LEADS에는MIDS,LEADS,PADS가 포함됩니다VOCALS에는VOCALS가 포함됩니다FX에는FX,RISER,IMPACT가 포함됩니다
기구와 스템 모두를 교체할 수 있습니다. 기구(들) 교체:
계측기(들) 교체:
줄기 교체:
악기 삭제:
줄기 삭제:
이러한 모든 요청은 트랙 모델을 받습니다.
트랙 목록
트랙 목록을 얻으려면 GET을 tracks 모델과 함께 사용하세요.
응답에는 트랙 모델 목록이 포함되어 있습니다.
모든 데이터를 보려면 페이지네이션을 사용하세요.
특정 트랙에 대한 정보도 확인할 수 있습니다.
응답에는 추적 모델이 포함되어 있습니다.
매장 추적
트랙 저장소 기능을 사용하면 미리 생성된 트랙으로 버퍼를 만들 수 있습니다. 정확한 길이, 모드, 형식의 고유한 트랙을 긴 응답 없이 얻고 싶을 때 매우 유용합니다. 파일 수신 속도를 높이기 위해 클라우드 버킷을 만들고 전용 생성기를 설정합니다. Mubert는 하나의 파라미터 세트로 여러 개의 트랙을 생성해 버킷에 넣습니다. 이 파일 중 하나를 사용하면 비슷한 트랙 생성이 시작되어 버퍼를 채웁니다. 버킷에 들어 있는 파일 수는 서비스의 평균 부하에 따라 달라집니다. 이를 계산하려면 다음 파라미터 목록을 보내주셔야 합니다: 모드, 길이, 비트레이트, 강도, 형식. 버킷 생성을 계속하려면 이 파라미터들의 값을 선택한 다음 담당자에게 이메일을 보내 주세요. 또한 미리 생성할 재생목록을 선택할 수 있으며, 기본적으로는 모든 채널을 사용합니다.
트랙 요청 매개변수가 저장소 매개변수와 일치하면 트랙 저장소에서 트랙이 자동으로 제공됩니다. 트랙 저장소를 사용하기 전에 계약서에서 해당 기능이 활성화되어 있는지 확인하세요.
Mubert 음악 라이브러리
우리는 Mubert 인공지능을 사용해 제작되고 우리의 음악 편집자들이 선별한 12,000개 이상의 트랙 라이브러리를 준비했습니다.
매개변수
GET 메서드를 사용하여 음악 라이브러리 통계와 트랙을 필터링할 수 있는 매개변수를 확인하세요.
요청
응답
특정 매개변수에 대한 정보도 얻을 수 있습니다. 예를 들어: BPM 120
응답
이는 BPM 120이 포함된 315개의 트랙을 "Сorporate" 테마에서, "Podcast" 테마에서 12개의 트랙을, "Nu Disco" 장르에서 138개의 트랙을, 그리고 "Folk" 장르에서 27개의 트랙을 찾을 수 있음을 의미합니다.
여러 매개변수를 지정할 수 있으며, 그러면 논리적 AND가 그것들에 적용됩니다.
요청
응답
응답에서 BPM 120 AND Genre Nu Disco 요청에 해당하는 각 재생 시간별 트랙 수도 확인할 수 있습니다.
트랙
트랙 목록을 받으려면 GET 메서드를 사용하세요.
요청
응답
응답에는 트랙 모델 목록이 포함되어 있습니다. 모든 데이터를 보려면 페이지네이션을 사용하세요. 또한 하나 이상의 매개변수를 사용하여 트랙을 필터링하고 가장 적합한 항목을 찾을 수 있습니다. 예를 들어: BPM 120 AND Genre Nu Disco AND Duraton 180
요청
응답
응답에는 트랙 모델 목록도 포함하세요. 모든 데이터를 보려면 페이지네이션을 사용하세요.
스웨거
보다 자세한 기술 정보는 swagger를 사용할 수 있습니다: https://music-api.mubert.com/api/v3/swagger
가격
월 $49부터 시작해 보세요
지금 라이브 중 — 동영상에 사운드트랙을 입히세요