자르기 API
인터페이스 설명
자르기는 기존 곡의 지정한 시간 구간만 남기고 잘라낸 새 버전을 만듭니다.
엔드포인트: POST /api/music/crop
과금: 유료. 요청한 모델에 따라 과금되며, 실제 청구 금액은 백오피스 가격 설정을 따릅니다.
권장 모델: suno-v6. suno-v6, suno-v6-wild, suno-v6-mini를 사용할 수 있습니다.
대기 시간과 타임아웃(중요): 이 엔드포인트는 동기 방식이며, 응답이 돌아온 시점에야 주문이 접수되어 생성에 넘겨집니다. 실측 기준 대부분의 요청은 1~3초에 반환되고, 약 10%는 30초를 넘기며, 최장 약 230초가 걸립니다. 클라이언트 타임아웃을 300초 이상으로 설정하세요. 응답이 없다고 해서 생성되지 않은 것이 아니며, 타임아웃 직후 재시도하면 주문이 중복되고 요금이 두 번 청구됩니다. 연결이 끊겼다면 잠시 후
GET /api/music/songs로 확인할 수 있습니다. 자세한 내용은 새 API 개요의 "대기 시간과 타임아웃 설정"을 참고하세요.
인증
| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| Authorization | string | 예 | Bearer YOUR_API_KEY |
| Content-Type | string | 예 | application/json |
요청 파라미터
| 파라미터 | 타입 | 필수 | 기본값 | 설명 |
|---|---|---|---|---|
| model | string | 예 | - | 대고객 모델명: suno-v6, suno-v6-wild, suno-v6-mini |
| source_clip_id | string | 예 | - | 소스 곡의 실제 song_id. 완료 상태여야 하고 현재 API Key로 접근할 수 있어야 합니다 |
| crop_start_s | number | 예 | - | 남길 구간의 시작 초. 0 이상이어야 합니다 |
| crop_end_s | number | 예 | - | 남길 구간의 끝 초. crop_start_s보다 커야 합니다 |
| song_title | string | 아니오 | - | 결과 제목 |
요청 예시
curl -X POST https://www.suno-api.io/api/music/crop \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "suno-v6",
"source_clip_id": "source_song_id",
"crop_start_s": 10,
"crop_end_s": 48,
"song_title": "자른 버전"
}'
응답 결과
{
"code": 200,
"message": "success",
"data": {
"clips": [
{
"song_id": "result_song_id",
"song_title": "자른 버전",
"status": "processing"
}
]
}
}
한 번 호출에 1건만 반환됩니다(편집 계열 작업은 2곡을 만들지 않습니다). clips[].song_id를 저장하고 곡 조회 API로 completed가 될 때까지 폴링하세요. 첫 응답에서 조회 가능한 song_id가 아직 등록되지 않았을 수 있으며, 잠시 후 다시 조회하면 됩니다.
주의 사항
- 남길 구간은
0 <= crop_start_s < crop_end_s를 만족하고 소스 곡 길이 안에 있어야 합니다. - 자르기와 달리 구간을 삭제하려면 구간 삭제 API를 사용하세요.