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

# Query Task Result

The "Query Task Result API" is used to retrieve image, audio, or video results returned by asynchronous tasks.

## Request Headers

<ParamField header="Content-Type" type="string" required={true}>
  Enum: `application/json`
</ParamField>

<ParamField header="Authorization" type="string" required={true}>
  Bearer authentication format: Bearer \{\{API Key}}.
</ParamField>

## Query Parameters

<ParamField query="task_id" type="string" required={true}>
  The task\_id value returned in the 200 response of the async API.
</ParamField>

## Response Parameters

<ResponseField name="extra" type="object" required={false}>
  <Expandable title="properties" defaultOpen={false}>
    <ResponseField name="seed" type="string" required={false} />

    <ResponseField name="debug_info" type="object" required={false}>
      Debug information.

      <Expandable title="properties" defaultOpen={false}>
        <ResponseField name="request_info" type="string" required={false}>
          Records request parameters for debugging purposes.
        </ResponseField>

        <ResponseField name="submit_time_ms" type="string" required={false}>
          Timestamp when the task was submitted (in milliseconds).
        </ResponseField>

        <ResponseField name="execute_time_ms" type="string" required={false}>
          Timestamp when the task started executing (in milliseconds).
        </ResponseField>

        <ResponseField name="complete_time_ms" type="string" required={false}>
          Timestamp when the task completed (in milliseconds).
        </ResponseField>
      </Expandable>
    </ResponseField>
  </Expandable>
</ResponseField>

<ResponseField name="task" type="object" required={true}>
  Task details.

  <Expandable title="properties" defaultOpen={true}>
    <ResponseField name="task_id" type="string" required={true}>
      Task ID.
    </ResponseField>

    <ResponseField name="status" type="string" required={true}>
      Current task status. Enum:

      * `TASK_STATUS_QUEUED`: Task is queued, waiting to be processed;
      * `TASK_STATUS_SUCCEED`: Task completed successfully;
      * `TASK_STATUS_FAILED`: Task failed;
      * `TASK_STATUS_PROCESSING`: Task is being processed;
    </ResponseField>

    <ResponseField name="reason" type="string" required={false}>
      Reason for task failure. This field is only valid when the task has failed.
    </ResponseField>

    <ResponseField name="task_type" type="string" required={true}>
      The type of the task.
    </ResponseField>

    <ResponseField name="eta" type="number" required={false}>
      Estimated time for task completion, in seconds. This field is only valid for certain APIs.
    </ResponseField>

    <ResponseField name="progress_percent" type="number" required={false}>
      Progress percentage of task completion. This feature is currently only available for: <br /> 1. Video Generation API; <br /> 2. Text-to-Image API and Image-to-Image API.
    </ResponseField>
  </Expandable>
</ResponseField>

<ResponseField name="images" type="object[]" required={false}>
  Returns the output image results for image-type tasks.

  <Expandable title="properties" defaultOpen={false}>
    <ResponseField name="image_url" type="string" required={false}>
      Image URL.
    </ResponseField>

    <ResponseField name="image_url_ttl" type="integer" required={false}>
      Image URL expiration time (in seconds). Default: 3600 seconds.
    </ResponseField>

    <ResponseField name="image_type" type="string" required={false}>
      Image type. Enum: `jpeg, png, webp`
    </ResponseField>
  </Expandable>
</ResponseField>

<ResponseField name="videos" type="object[]" required={false}>
  Returns the output video results for video-type tasks.

  <Expandable title="properties" defaultOpen={false}>
    <ResponseField name="video_url" type="string" required={false}>
      Video URL.
    </ResponseField>

    <ResponseField name="video_url_ttl" type="string" required={false}>
      Video URL expiration time (in seconds). Default: 3600 seconds.
    </ResponseField>

    <ResponseField name="video_type" type="string" required={false}>
      Video type. Enum: `mp4, gif`
    </ResponseField>
  </Expandable>
</ResponseField>

<ResponseField name="audios" type="object[]" required={false}>
  Returns the output audio results for audio-type tasks.

  <Expandable title="properties" defaultOpen={false}>
    <ResponseField name="audio_url" type="string" required={false}>
      Audio URL.
    </ResponseField>

    <ResponseField name="audio_url_ttl" type="string" required={false}>
      Audio URL expiration time (in seconds). Default: 3600 seconds.
    </ResponseField>

    <ResponseField name="audio_type" type="string" required={false}>
      Audio type. Enum: `wav`
    </ResponseField>

    <ResponseField name="audio_metadata" type="object" required={false}>
      Detailed metadata information of the generated audio file.

      <Expandable title="properties" defaultOpen={false}>
        <ResponseField name="text" type="string" required={false}>
          Text content contained in the audio.
        </ResponseField>

        <ResponseField name="start_time" type="number" required={false}>
          Start time of the text (in seconds).
        </ResponseField>

        <ResponseField name="end_time" type="number" required={false}>
          End time of the text (in seconds).
        </ResponseField>
      </Expandable>
    </ResponseField>
  </Expandable>
</ResponseField>
