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

# Get Seedance Video Task

> <ul><li>Query the status of a Seedance video generation task.</li><li>After completion, the video URL is available in result_url.</li></ul>

<RequestExample>
  ```bash cURL theme={null} theme={null}
  curl --request GET \
    --url 'https://api.elkapi.com/v1/video/generations/task_abc123' \
    --header 'Authorization: Bearer <token>'
  ```

  ```python Python theme={null} theme={null}
  import requests

  url = "https://api.elkapi.com/v1/video/generations/task_abc123"
  headers = {
      "Authorization": "Bearer <token>"
  }

  response = requests.get(url, headers=headers)
  print(response.json())
  ```

  ```javascript JavaScript theme={null} theme={null}
  const response = await fetch("https://api.elkapi.com/v1/video/generations/task_abc123", {
    method: "GET",
    headers: {
      "Authorization": "Bearer <token>"
    }
  });

  console.log(await response.json());
  ```
</RequestExample>

<ResponseExample>
  ```json 200 theme={null} theme={null}
  {
    "code": "success",
    "message": "",
    "data": {
      "task_id": "task_abc123",
      "platform": "doubao-video",
      "action": "generate",
      "status": "SUCCESS",
      "progress": "100%",
      "result_url": "https://example.com/video.mp4",
      "created_at": 1760000000,
      "updated_at": 1760000060,
      "data": {
        "id": "upstream_task_id",
        "status": "succeeded",
        "content": {
          "video_url": "https://example.com/video.mp4"
        },
        "usage": {
          "completion_tokens": 123456,
          "total_tokens": 123456
        }
      }
    }
  }
  ```

  ```json 404 theme={null} theme={null}
  {
    "error": {
      "message": "task_not_exist",
      "type": "new_api_error",
      "param": "",
      "code": "task_not_exist"
    }
  }
  ```
</ResponseExample>

## Authorizations

<ParamField header="Authorization" type="string" required>
  All endpoints require Bearer Token authentication.

  ```
  Authorization: Bearer YOUR_API_KEY
  ```
</ParamField>

## Path Parameters

<ParamField path="task_id" type="string" required>
  The `id` or `task_id` returned by the create task endpoint.
</ParamField>

## Response

<ResponseField name="code" type="string">
  Response status. `success` indicates success.
</ResponseField>

<ResponseField name="data.task_id" type="string">
  ElkAPI public task ID.
</ResponseField>

<ResponseField name="data.platform" type="string">
  Task platform. Seedance is usually `doubao-video`.
</ResponseField>

<ResponseField name="data.status" type="string">
  Internal task status.

  Common values: `SUBMITTED`, `QUEUED`, `IN_PROGRESS`, `SUCCESS`, `FAILURE`
</ResponseField>

<ResponseField name="data.progress" type="string">
  Task progress.

  Example: `10%`, `50%`, `100%`
</ResponseField>

<ResponseField name="data.result_url" type="string">
  Result video URL after the task succeeds.
</ResponseField>

<ResponseField name="data.data" type="object">
  Raw upstream task data, which may contain fields such as `content.video_url` and `usage.total_tokens`.
</ResponseField>
