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

# Query Music Detail

> Query detailed results of music generation tasks

## Usage Guide

* All POST submission requests in the Music Series can query their results through this endpoint. Different models will return different [response fields](#response-fields-files-data).

## Parameter Details

* `task_id` (required): The unique task identifier returned from the music generation submission endpoint

## Developer Notes

* Poll this endpoint to check task completion status
* The `files` array will be empty until the task status is `finished`
* When a task fails, check the `error_message` field for details
* Multiple audio files may be returned for a single task as variations are generated

## Response Fields (files data)

The `files` array content varies depending on which model created the task.

| Model                                                                                                                                      | Field               | Type          | Description                                                                            |
| ------------------------------------------------------------------------------------------------------------------------------------------ | ------------------- | ------------- | -------------------------------------------------------------------------------------- |
| `generate-music`, `extend-music`, `upload-and-cover-audio`, `upload-and-extend-audio`, `add-instrumental`, `add-vocals`, `replace-section` | `audio_id`          | string        | Unique identifier for the audio file                                                   |
| ↑                                                                                                                                          | `audio_url`         | string        | Direct download URL for the audio file                                                 |
| ↑                                                                                                                                          | `image_url`         | string        | Cover image URL                                                                        |
| ↑                                                                                                                                          | `title`             | string        | Track title                                                                            |
| ↑                                                                                                                                          | `tags`              | string        | Style tags                                                                             |
| ↑                                                                                                                                          | `duration`          | number        | Audio duration in seconds                                                              |
| ↑                                                                                                                                          | `prompt`            | string        | Generation prompt used                                                                 |
| `get-timestamped-lyrics`                                                                                                                   | `timestampe_lyrics` | string        | Lyrics with timestamps                                                                 |
| `generate-lyrics`                                                                                                                          | `title`             | string        | Lyrics title                                                                           |
| ↑                                                                                                                                          | `text`              | string        | Complete lyrics content                                                                |
| `boost-music-style`                                                                                                                        | `style`             | string        | Enhanced music style                                                                   |
| `convert-to-wav`                                                                                                                           | `wav_url`           | string        | URL to converted WAV file                                                              |
| `separate-vocals`                                                                                                                          | `separate_vocals`   | string (JSON) | JSON string containing separated audio URLs. [See details](#separate-vocals)           |
| `upload-and-separate-vocals`                                                                                                               | `vocal_removal`     | string (JSON) | JSON string containing separated stem URLs. [See details](#upload-and-separate-vocals) |
| `stem-split`                                                                                                                               | `stem_split`        | string (JSON) | JSON string containing full stem separation URLs. [See details](#stem-split)           |
| `generate-music-cover`                                                                                                                     | `generate_cover`    | string (JSON) | JSON string containing generated cover images. [See details](#generate-music-cover)    |
| `generate-persona`                                                                                                                         | `persona_id`        | string        | Generated persona identifier                                                           |
| `create-music-video`                                                                                                                       | `video_url`         | string        | Generated video URL                                                                    |

### JSON Field Details

#### separate-vocals

`separate_vocals` fields:

* `vocal_url` - URL to the extracted vocal track
* `instrumental_url` - URL to the instrumental track

#### upload-and-separate-vocals

`vocal_removal` fields:

* `bass` - URL to the bass track
* `drums` - URL to the drums track
* `piano` - URL to the piano track
* `guitar` - URL to the guitar track
* `vocals` - URL to the vocals track
* `other` - URL to other audio elements

#### stem-split

`stem_split` fields:

* `backing_vocals_url` - URL to backing vocals
* `bass_url` - URL to bass track
* `brass_url` - URL to brass instruments
* `drums_url` - URL to drums track
* `fx_url` - URL to sound effects
* `guitar_url` - URL to guitar track
* `keyboard_url` - URL to keyboard track
* `percussion_url` - URL to percussion track
* `strings_url` - URL to strings track
* `synth_url` - URL to synthesizer track
* `vocal_url` - URL to main vocals
* `woodwinds_url` - URL to woodwinds track

#### generate-music-cover

`generate_cover` is a JSON array containing cover image objects:

* `file_url` - URL to the generated cover image
* `file_type` - File type (e.g., "image")


## OpenAPI

````yaml /api-manual/music-series/query-music-detail.json GET /api/generate/detail/music
openapi: 3.0.0
info:
  title: Vidgo API - Query Music Detail API
  description: Query detailed results of music generation tasks
  version: 1.0.0
servers:
  - url: https://api.vidgo.ai
    description: Production server
security:
  - BearerAuth: []
paths:
  /api/generate/detail/music:
    get:
      tags:
        - Music Generation
      summary: Query Music Generation Detail
      description: Retrieve detailed results and status of a music generation task
      operationId: queryMusicDetail
      parameters:
        - name: task_id
          in: query
          required: true
          schema:
            type: string
          description: >-
            Unique task identifier returned from the music generation submission
            endpoint.
          example: 8FDN1I7M7Q68DDG8
      responses:
        '200':
          description: Task detail retrieved successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DetailResponse'
              examples:
                generate-music:
                  summary: Music Generation (generate-music, extend-music, etc.)
                  value:
                    code: 200
                    data:
                      task_id: 8FDN1I7M7Q68DDG8
                      status: finished
                      files:
                        - audio_id: 62e4542a-73be-44e1-b397-7716ee7505c6
                          audio_url: >-
                            https://storage.vidgo.ai/audio/8FDN1I7M7Q68DDG8/20251125113627_QIivN2_tmphb8rgpeb_audio_62e4542a-73be-44e1-b397-7716ee7505c6.mp3
                          image_url: >-
                            https://storage.vidgo.ai/audio/8FDN1I7M7Q68DDG8/20251125113628_4DfWp6_tmpz72j05o5_cover_62e4542a-73be-44e1-b397-7716ee7505c6.jpeg
                          title: Peaceful Piano Meditation
                          tags: Classical
                          duration: 240
                          prompt: ''
                        - audio_id: 8e755734-a840-4c13-beac-b9f1044979ca
                          audio_url: >-
                            https://storage.vidgo.ai/audio/8FDN1I7M7Q68DDG8/20251125113630_x7VTpV_tmpvsijwxa6_audio_8e755734-a840-4c13-beac-b9f1044979ca.mp3
                          image_url: >-
                            https://storage.vidgo.ai/audio/8FDN1I7M7Q68DDG8/20251125113631_3MTe5V_tmp98wzcx2m_cover_8e755734-a840-4c13-beac-b9f1044979ca.jpeg
                          title: Peaceful Piano Meditation
                          tags: Classical
                          duration: 130
                          prompt: ''
                      created_time: '2025-11-25T08:50:13'
                      error_message: null
                get-timestamped-lyrics:
                  summary: Timestamped Lyrics
                  value:
                    code: 200
                    data:
                      task_id: 8FDN1I7M7Q68DDG8
                      status: finished
                      files:
                        - timestampe_lyrics: |-
                            [00:00.00] First line of lyrics
                            [00:05.23] Second line of lyrics
                      created_time: '2025-11-25T08:50:13'
                      error_message: null
                generate-lyrics:
                  summary: Generated Lyrics
                  value:
                    code: 200
                    data:
                      task_id: 8FDN1I7M7Q68DDG8
                      status: finished
                      files:
                        - title: Peaceful Piano Meditation
                          text: Peaceful Piano Meditation lyrics content...
                      created_time: '2025-11-25T08:50:13'
                      error_message: null
                boost-music-style:
                  summary: Music Style Enhancement
                  value:
                    code: 200
                    data:
                      task_id: 8FDN1I7M7Q68DDG8
                      status: finished
                      files:
                        - style: Enhanced music style result
                      created_time: '2025-11-25T08:50:13'
                      error_message: null
                generate-music-cover:
                  summary: Music Cover Image
                  value:
                    code: 200
                    data:
                      task_id: 8FDN1I7M7Q68DDG8
                      status: finished
                      files:
                        - generate_cover: >-
                            [{"file_url":
                            "https://storage.vidgo.ai/audio/0JQHD119NP7B5KLE/20250825120409_4L9H4h_tmp1_taa0e1_cover_1.png",
                            "file_type": "image"}, {"file_url":
                            "https://storage.vidgo.ai/audio/0JQHD119NP7B5KLE/20250825120412_8v52pC_tmpwirqh4m6_cover_2.png",
                            "file_type": "image"}]
                      created_time: '2025-11-25T08:50:13'
                      error_message: null
                generate-persona:
                  summary: Generated Persona
                  value:
                    code: 200
                    data:
                      task_id: 8FDN1I7M7Q68DDG8
                      status: finished
                      files:
                        - persona_id: persona_abc123
                      created_time: '2025-11-25T08:50:13'
                      error_message: null
                convert-to-wav:
                  summary: WAV Conversion
                  value:
                    code: 200
                    data:
                      task_id: 8FDN1I7M7Q68DDG8
                      status: finished
                      files:
                        - wav_url: >-
                            https://storage.vidgo.ai/audio/8FDN1I7M7Q68DDG8/output.wav
                      created_time: '2025-11-25T08:50:13'
                      error_message: null
                separate-vocals:
                  summary: Vocal Separation
                  value:
                    code: 200
                    data:
                      task_id: 8FDN1I7M7Q68DDG8
                      status: finished
                      files:
                        - separate_vocals: '{"vocal_url": "xx", "instrumental_url": "yy"}'
                      created_time: '2025-11-25T08:50:13'
                      error_message: null
                upload-and-separate-vocals:
                  summary: Upload & Separate Vocals
                  value:
                    code: 200
                    data:
                      task_id: 8FDN1I7M7Q68DDG8
                      status: finished
                      files:
                        - vocal_removal: >-
                            {"bass": "https://storage.vidgo.ai/audio/bass.mp3",
                            "drums": "https://storage.vidgo.ai/audio/drums.mp3",
                            "piano": "https://storage.vidgo.ai/audio/piano.mp3",
                            "guitar":
                            "https://storage.vidgo.ai/audio/guitar.mp3",
                            "vocals":
                            "https://storage.vidgo.ai/audio/vocals.mp3",
                            "other": "https://storage.vidgo.ai/audio/other.mp3"}
                      created_time: '2025-11-25T08:50:13'
                      error_message: null
                stem-split:
                  summary: Stem Split (Full Separation)
                  value:
                    code: 200
                    data:
                      task_id: 8FDN1I7M7Q68DDG8
                      status: finished
                      files:
                        - stem_split: >-
                            {"backing_vocals_url": "", "bass_url": "",
                            "brass_url": "", "drums_url": "", "fx_url": "",
                            "guitar_url": "", "keyboard_url": "",
                            "percussion_url": "", "strings_url": "",
                            "synth_url": "", "vocal_url": "", "woodwinds_url":
                            ""}
                      created_time: '2025-11-25T08:50:13'
                      error_message: null
                create-music-video:
                  summary: Music Video Generation
                  value:
                    code: 200
                    data:
                      task_id: 8FDN1I7M7Q68DDG8
                      status: finished
                      files:
                        - video_url: >-
                            https://storage.vidgo.ai/video/8FDN1I7M7Q68DDG8/music_video.mp4
                      created_time: '2025-11-25T08:50:13'
                      error_message: null
                failed:
                  summary: Failed Task
                  value:
                    code: 200
                    data:
                      task_id: task-unified-1757165031-uyujaw3d
                      status: failed
                      files: []
                      created_time: '2025-11-12T10:30:00'
                      error_message: The prompt violates our content policy
components:
  schemas:
    DetailResponse:
      type: object
      required:
        - code
        - data
      properties:
        code:
          type: integer
          example: 200
          description: HTTP status code
        data:
          type: object
          required:
            - task_id
            - status
            - files
            - created_time
          properties:
            task_id:
              type: string
              example: 8FDN1I7M7Q68DDG8
              description: Unique task identifier
            status:
              type: string
              enum:
                - not_started
                - running
                - finished
                - failed
              example: finished
              description: |-
                Current status of the task.

                - `not_started`: Task is queued but not yet processing
                - `running`: Task is currently being processed
                - `finished`: Task completed successfully
                - `failed`: Task failed due to an error
            files:
              type: array
              description: >-
                Array of generated files.


                The response fields vary depending on which model created the
                task. See [Response Fields (files
                data)](#response-fields-files-data) for details.


                Empty array when task is not finished or has failed.
              items:
                $ref: '#/components/schemas/AudioFile'
            created_time:
              type: string
              format: date-time
              example: '2025-11-25T08:50:13'
              description: ISO 8601 timestamp when the task was created
            error_message:
              type: string
              nullable: true
              example: null
              description: |-
                Error message if the task failed.

                `null` when task is successful or still processing.
    AudioFile:
      type: object
      required:
        - audio_id
        - audio_url
        - image_url
        - title
        - tags
        - duration
      properties:
        audio_id:
          type: string
          example: 62e4542a-73be-44e1-b397-7716ee7505c6
          description: Unique identifier for this audio file
        audio_url:
          type: string
          format: uri
          example: >-
            https://storage.vidgo.ai/audio/8FDN1I7M7Q68DDG8/20251125113627_QIivN2_tmphb8rgpeb_audio_62e4542a-73be-44e1-b397-7716ee7505c6.mp3
          description: Direct URL to download the generated audio file
        image_url:
          type: string
          format: uri
          example: >-
            https://storage.vidgo.ai/audio/8FDN1I7M7Q68DDG8/20251125113628_4DfWp6_tmpz72j05o5_cover_62e4542a-73be-44e1-b397-7716ee7505c6.jpeg
          description: Direct URL to the cover image for this audio file
        title:
          type: string
          example: Peaceful Piano Meditation
          description: Title of the generated track
        tags:
          type: string
          example: Classical
          description: Style tags associated with the generated track
        duration:
          type: number
          example: 240
          description: Duration of the audio file in seconds
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      bearerFormat: API Key
      description: >-
        All API endpoints require Bearer Token authentication


        Get your API Key:


        Visit the [API Key Management
        Page](https://vidgo.ai/apis/dashboard/api-key) to get your API Key


        Add it to the request header:


        ```

        Authorization: Bearer VIDGO_API_KEY

        ```

````