> ## Documentation Index
> Fetch the complete documentation index at: https://docs.api.box/llms.txt
> Use this file to discover all available pages before exploring further.

# Get Audio Separation Details

> Retrieve detailed information about vocal and instrument separation tasks, including status and download links.

### Status Descriptions

* PENDING: Task is waiting to be processed
* SUCCESS: Vocal separation completed successfully
* CREATE\_TASK\_FAILED: Failed to create the separation task
* GENERATE\_AUDIO\_FAILED: Failed to perform vocal separation
* CALLBACK\_EXCEPTION: Error occurred during callback

### Separation Type Description

Based on the `type` parameter specified when submitting the task, the query details return different fields:

#### separate\_vocal Type Results

When using `separate_vocal` type for separation, the response contains the following fields:

1. `originUrl`: Original mixed track
2. `instrumentalUrl`: Instrumental track without vocals
3. `vocalUrl`: Isolated vocals only track
4. Other instrument fields are `null`

#### split\_stem Type Results

When using `split_stem` type for separation, the response contains the following fields:

1. `originUrl`: Original mixed track
2. `vocalUrl`: Isolated vocals only track
3. `backingVocalsUrl`: Isolated backing vocals track
4. `drumsUrl`: Isolated drums track
5. `bassUrl`: Isolated bass track
6. `guitarUrl`: Isolated guitar track
7. `keyboardUrl`: Isolated keyboard track
8. `percussionUrl`: Isolated percussion instruments track
9. `stringsUrl`: Isolated string instruments track
10. `synthUrl`: Isolated synthesizer track
11. `fxUrl`: Isolated sound effects track
12. `brassUrl`: Isolated brass instruments track
13. `woodwindsUrl`: Isolated woodwind instruments track
14. `instrumentalUrl`: Instrumental track (is null in split\_stem type)

### Developer Notes

* Use this endpoint to check separation status instead of waiting for callbacks
* When status is SUCCESS, the response includes multiple download URLs
* Different separation types return different numbers of audio files
* `separate_vocal` type returns `instrumentalUrl` and `vocalUrl` fields, other instrument fields are null
* `split_stem` type returns detailed instrument separation fields, `instrumentalUrl` is null
* Task creation and completion times are included in the response
* All audio file URLs are retained for 14 days, download and save them promptly


## OpenAPI

````yaml suno-api/suno-api.json GET /api/v1/vocal-removal/record-info
openapi: 3.0.0
info:
  title: intro
  description: API documentation for audio generation services
  version: 1.0.0
  contact:
    name: Technical Support
    email: support@api.box
servers:
  - url: https://apibox.erweima.ai
    description: API Server
security:
  - BearerAuth: []
tags:
  - name: Music Generation
    description: Endpoints for creating and managing music generation tasks
  - name: Lyrics Generation
    description: Endpoints for lyrics generation and management
  - name: WAV Conversion
    description: Endpoints for converting music to WAV format
  - name: Vocal Removal
    description: Endpoints for vocal removal from music tracks
  - name: Music Video Generation
    description: Endpoints for generating MP4 videos from music tracks
  - name: Account Management
    description: Endpoints for account and credits management
paths:
  /api/v1/vocal-removal/record-info:
    get:
      summary: Get Vocal Separation Details
      operationId: get-vocal-separation-details
      parameters:
        - in: query
          name: taskId
          description: >-
            The task ID returned from the Separate Vocals from Music endpoint.
            Used to retrieve detailed information about a specific vocal
            separation task, including download URLs for all audio components
            (original, vocals, instrumental, drums, bass, guitar, piano).
          required: true
          example: 5e72****97c7
          schema:
            type: string
      responses:
        '200':
          description: Request successful
          content:
            application/json:
              schema:
                allOf:
                  - $ref: '#/components/schemas/ApiResponse'
                  - type: object
                    properties:
                      data:
                        type: object
                        properties:
                          taskId:
                            type: string
                            description: Task ID
                          musicId:
                            type: string
                            description: >-
                              The ID of the source music track that was
                              processed for vocal separation
                          musicIndex:
                            type: integer
                            description: Song index 0 or 1
                            example: 0
                          callbackUrl:
                            type: string
                            description: >-
                              The callback URL that was provided in the vocal
                              separation request
                          completeTime:
                            type: string
                            description: The timestamp when the separation was completed
                            format: date-time
                          response:
                            type: object
                            description: >-
                              Vocal separation results, fields vary based on the
                              requested type parameter
                            properties:
                              id:
                                type: string
                                nullable: true
                                description: Response ID
                              originUrl:
                                type: string
                                description: Original audio URL
                              originData:
                                type: array
                                description: Array of separated audio track information
                                items:
                                  type: object
                                  properties:
                                    duration:
                                      type: number
                                      description: Audio duration in seconds
                                      example: 339.8
                                    audio_url:
                                      type: string
                                      format: uri
                                      description: URL of the separated audio track
                                      example: https://example.mp3
                                    stem_type_group_name:
                                      type: string
                                      description: >-
                                        Name of the stem type group (e.g.,
                                        Vocals, Instrumental, Drums, Bass, etc.)
                                      example: Vocals
                                    id:
                                      type: string
                                      description: >-
                                        Unique identifier for the audio track.
                                        This ID can be used as audioId parameter
                                        in MIDI generation.
                                      example: 8ca376e7-2693-48d2-875d-08aaf2c6dd27
                              instrumentalUrl:
                                type: string
                                description: >-
                                  Instrumental part audio URL (separate_vocal
                                  type)
                              vocalUrl:
                                type: string
                                description: Vocal part audio URL
                              backingVocalsUrl:
                                type: string
                                description: Backing vocals audio URL (split_stem type)
                              drumsUrl:
                                type: string
                                description: Drums part audio URL (split_stem type)
                              bassUrl:
                                type: string
                                description: Bass part audio URL (split_stem type)
                              guitarUrl:
                                type: string
                                description: Guitar part audio URL (split_stem type)
                              keyboardUrl:
                                type: string
                                description: Keyboard part audio URL (split_stem type)
                              percussionUrl:
                                type: string
                                description: >-
                                  Percussion instruments audio URL (split_stem
                                  type)
                              stringsUrl:
                                type: string
                                description: String instruments audio URL (split_stem type)
                              synthUrl:
                                type: string
                                description: Synthesizer audio URL (split_stem type)
                              fxUrl:
                                type: string
                                description: Sound effects audio URL (split_stem type)
                              brassUrl:
                                type: string
                                description: Brass instruments audio URL (split_stem type)
                              woodwindsUrl:
                                type: string
                                description: >-
                                  Woodwind instruments audio URL (split_stem
                                  type)
                          successFlag:
                            type: string
                            description: The current status of the vocal separation task
                            enum:
                              - PENDING
                              - SUCCESS
                              - CREATE_TASK_FAILED
                              - GENERATE_AUDIO_FAILED
                              - CALLBACK_EXCEPTION
                          createTime:
                            type: string
                            description: Creation time
                            format: date-time
                          errorCode:
                            type: number
                            description: Error code, valid when task fails
                          errorMessage:
                            type: string
                            description: Error message, valid when task fails
              examples:
                separate_vocal_response:
                  summary: separate_vocal type query details example
                  value:
                    code: 200
                    msg: success
                    data:
                      taskId: 3e63b4cc88d52611159371f6af5571e7
                      musicId: 376c687e-d439-42c1-b1e4-bcb43b095ec2
                      musicIndex: 0
                      callbackUrl: >-
                        https://57312fc2e366.ngrok-free.app/api/v1/vocal-removal/test
                      completeTime: 1753782937000
                      response:
                        id: null
                        originUrl: null
                        originData:
                          - duration: 245.6
                            audio_url: https://example001.mp3
                            stem_type_group_name: Vocals
                            id: 3d7021c9-fa8b-4eda-91d1-3b9297ddb172
                          - duration: 245.6
                            audio_url: https://example002.mp3
                            stem_type_group_name: Instrumental
                            id: d92a13bf-c6f4-4ade-bb47-f69738435528
                        instrumentalUrl: >-
                          https://file.aiquickdraw.com/s/d92a13bf-c6f4-4ade-bb47-f69738435528_Instrumental.mp3
                        vocalUrl: >-
                          https://file.aiquickdraw.com/s/3d7021c9-fa8b-4eda-91d1-3b9297ddb172_Vocals.mp3
                        backingVocalsUrl: null
                        drumsUrl: null
                        bassUrl: null
                        guitarUrl: null
                        keyboardUrl: null
                        percussionUrl: null
                        stringsUrl: null
                        synthUrl: null
                        fxUrl: null
                        brassUrl: null
                        woodwindsUrl: null
                      successFlag: SUCCESS
                      createTime: 1753782854000
                      errorCode: null
                      errorMessage: null
                split_stem_response:
                  summary: split_stem type query details example
                  value:
                    code: 200
                    msg: success
                    data:
                      taskId: e649edb7abfd759285bd41a47a634b10
                      musicId: 376c687e-d439-42c1-b1e4-bcb43b095ec2
                      musicIndex: 0
                      callbackUrl: >-
                        https://57312fc2e366.ngrok-free.app/api/v1/vocal-removal/test
                      completeTime: 1753782459000
                      response:
                        id: null
                        originUrl: null
                        originData:
                          - duration: 312.4
                            audio_url: https://example001.mp3
                            stem_type_group_name: Keyboard
                            id: adc934e0-fa7d-45da-da20-1dba160d74e0
                          - duration: 312.4
                            audio_url: https://example002.mp3
                            stem_type_group_name: Percussion
                            id: 0f70884d-047c-41f1-a6d0-7023js8b7dc6
                          - duration: 312.4
                            audio_url: https://example003.mp3
                            stem_type_group_name: Strings
                            id: 49829425-a5b0-424e-857a-75d4233a426b
                          - duration: 312.4
                            audio_url: https://example004.mp3
                            stem_type_group_name: Synth
                            id: 56b2d94a-eb92-4d21-bc43-346024we8348
                        instrumentalUrl: null
                        vocalUrl: >-
                          https://file.aiquickdraw.com/s/07420749-29a2-4054-9b62-e6a6f8b90ccb_Vocals.mp3
                        backingVocalsUrl: >-
                          https://file.aiquickdraw.com/s/aadc51a3-4c88-4c8e-a4c8-e867c539673d_Backing_Vocals.mp3
                        drumsUrl: >-
                          https://file.aiquickdraw.com/s/ac75c5ea-ac77-4ad2-b7d9-66e140b78e44_Drums.mp3
                        bassUrl: >-
                          https://file.aiquickdraw.com/s/a3c2da5a-b364-4422-adb5-2692b9c26d33_Bass.mp3
                        guitarUrl: >-
                          https://file.aiquickdraw.com/s/064dd08e-d5d2-4201-9058-c5c40fb695b4_Guitar.mp3
                        keyboardUrl: >-
                          https://file.aiquickdraw.com/s/adc934e0-df7d-45da-8220-1dba160d74e0_Keyboard.mp3
                        percussionUrl: >-
                          https://file.aiquickdraw.com/s/0f70884d-047c-41f1-a6d0-7044618b7dc6_Percussion.mp3
                        stringsUrl: >-
                          https://file.aiquickdraw.com/s/49829425-a5b0-424e-857a-75d4c63a426b_Strings.mp3
                        synthUrl: >-
                          https://file.aiquickdraw.com/s/56b2d94a-eb92-4d21-bc43-3460de0c8348_Synth.mp3
                        fxUrl: >-
                          https://file.aiquickdraw.com/s/a8822c73-6629-4089-8f2a-d19f41f0007d_FX.mp3
                        brassUrl: >-
                          https://file.aiquickdraw.com/s/334b2d23-0c65-4a04-92c7-22f828afdd44_Brass.mp3
                        woodwindsUrl: >-
                          https://file.aiquickdraw.com/s/d81545b1-6f94-4388-9785-1aaa6ecabb02_Woodwinds.mp3
                      successFlag: SUCCESS
                      createTime: 1753782327000
                      errorCode: null
                      errorMessage: null
        '500':
          $ref: '#/components/responses/Error'
components:
  schemas:
    ApiResponse:
      type: object
      properties:
        code:
          type: integer
          description: |-
            # Status Codes

            - ✅ 200 - Request successful
            - ⚠️ 400 - Invalid parameters
            - ⚠️ 401 - Unauthorized access
            - ⚠️ 404 - Invalid request method or path
            - ⚠️ 405 - Rate limit exceeded
            - ⚠️ 413 - Theme or prompt too long
            - ⚠️ 429 - Insufficient credits
            - ⚠️ 430 - Your call frequency is too high. Please try again later.
            - ⚠️ 455 - System maintenance
            - ❌ 500 - Server error
          example: 200
          enum:
            - 200
            - 400
            - 401
            - 404
            - 405
            - 413
            - 429
            - 430
            - 455
            - 500
        msg:
          type: string
          description: Error message when code != 200
          example: success
  responses:
    Error:
      description: Server error
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      bearerFormat: API Key
      description: >-
        # 🔑 API Authentication


        All endpoints require authentication using Bearer Token.


        ## Get API Key


        1. Visit the [API Key Management Page](https://api.box/api-key) to
        obtain your API Key


        ## Usage


        Add to request headers:


        ```

        Authorization: Bearer YOUR_API_KEY

        ```


        > **⚠️ Note:**

        > - Keep your API Key secure and do not share it with others

        > - If you suspect your API Key has been compromised, reset it
        immediately from the management page

````