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

# Get AI Video Details

> Retrieve comprehensive information about an AI-generated video generation or extension task.

Retrieve comprehensive information about an AI-generated video task, including its current status, generation parameters, generated video URLs, and failure details.

## Endpoint

```http theme={null}
GET /api/v1/runway/recordInfo
```

## Authentication

All API requests require a Bearer Token.

```http theme={null}
Authorization: Bearer YOUR_API_KEY
```

## Request

### Query Parameters

| Parameter | Type   | Required | Description                                                                                                   |
| --------- | ------ | -------: | ------------------------------------------------------------------------------------------------------------- |
| `taskId`  | string |      Yes | Unique identifier of the video generation or extension task. Returned when creating or extending an AI video. |

<ParamField query="taskId" type="string" required>
  Unique identifier of the video generation or extension task.
</ParamField>

### Example Request

```http theme={null}
GET /api/v1/runway/recordInfo?taskId=ee603959-debb-48d1-98c4-a6d1c717eba6
Authorization: Bearer YOUR_API_KEY
```

## Usage

Use this endpoint to:

* Check the status of a video generation or extension task.
* Access video URLs when generation is complete.
* Troubleshoot failed generation attempts.

## Task Status

| State        | Description                            |
| ------------ | -------------------------------------- |
| `wait`       | Task submitted but not yet queued.     |
| `queueing`   | Task waiting in the processing queue.  |
| `generating` | Video generation is in progress.       |
| `success`    | Video has been successfully generated. |
| `fail`       | Video generation has failed.           |

## Extension Tasks

This endpoint supports both standard video generation and video extension tasks. For extension tasks, `parentTaskId` identifies the original video task. It is empty for standard generation tasks.

## Video URL Expiration

Generated video links are valid for **14 days**. The `expireFlag` field indicates availability:

| Value | Meaning                                 |
| ----: | --------------------------------------- |
|   `0` | Active — video is still available.      |
|   `1` | Expired — video is no longer available. |

## Response Fields

<ResponseField name="code" type="integer" required={false}>
  Response status code.

  Allowed values:

  | Code  | Description                                                                          |
  | ----- | ------------------------------------------------------------------------------------ |
  | `200` | Success — Request has been processed successfully                                    |
  | `401` | Unauthorized — Authentication credentials are missing or invalid                     |
  | `402` | Insufficient Credits — Account does not have enough credits to perform the operation |
  | `404` | Not Found — The requested resource or endpoint does not exist                        |
  | `422` | Validation Error — The request parameters failed validation checks                   |
  | `429` | Rate Limited — Request limit has been exceeded for this resource                     |
  | `433` | Request Limit — Sub-key usage exceeds limit                                          |
  | `455` | Service Unavailable — System is currently undergoing maintenance                     |
  | `500` | Server Error — An unexpected error occurred while processing the request             |
  | `501` | Generation Failed — Content generation task failed                                   |
  | `505` | Feature Disabled — The requested feature is currently disabled                       |
</ResponseField>

<ResponseField name="msg" type="string" required={false}>
  Response message. Contains the error description when the request fails.

  **Example:** `success`
</ResponseField>

<ResponseField name="data" type="object" required>
  The task data object containing all task information.

  <ResponseField name="taskId" type="string" required>
    Unique identifier of the AI video generation task.

    **Example:** `ee603959-debb-48d1-98c4-a6d1c717eba6`
  </ResponseField>

  <ResponseField name="parentTaskId" type="string">
    Original task ID for extension tasks; empty for standard tasks.
  </ResponseField>

  <ResponseField name="generateParam" type="object">
    Parameters used for video generation or extension.

    <ResponseField name="prompt" type="string">
      Text prompt used to guide video generation.
    </ResponseField>

    <ResponseField name="imageUrl" type="string">
      Reference image URL or frame used to start an extension.
    </ResponseField>

    <ResponseField name="expandPrompt" type="boolean">
      Whether AI-powered prompt enhancement was used.
    </ResponseField>
  </ResponseField>

  <ResponseField name="state" type="string">
    Current generation status.

    **Example:** `success`
  </ResponseField>

  <ResponseField name="generateTime" type="string">
    Current generation time status.
  </ResponseField>

  <ResponseField name="videoInfo" type="object">
    Generated video details, available when `state` is `success`.

    <ResponseField name="videoId" type="string">
      Unique identifier for the generated video file.
    </ResponseField>

    <ResponseField name="taskId" type="string">
      Task ID associated with the generated video.
    </ResponseField>

    <ResponseField name="videoUrl" type="string">
      URL to access or download the generated video. Valid for 14 days.
    </ResponseField>

    <ResponseField name="imageUrl" type="string">
      Thumbnail image URL from the generated video.
    </ResponseField>
  </ResponseField>

  <ResponseField name="failCode" type="string" default="null">
    Error code when generation fails.
  </ResponseField>

  <ResponseField name="failMsg" type="string" default="null">
    Detailed error message when generation fails.
  </ResponseField>

  <ResponseField name="expireFlag" type="integer" default="0">
    `0` when active; `1` when expired.
  </ResponseField>
</ResponseField>

## Failure Information

When `state` is `fail`, use `failCode` and `failMsg` to determine the reason. The source specification documents failure scenarios such as inappropriate content, generation limits, unsupported dimensions, upload failures, prompt moderation, excessive prompt length, NSFW content, and incorrect image format.

## Response Status Codes

|  Code | Meaning                                                  |
| ----: | -------------------------------------------------------- |
| `200` | Success.                                                 |
| `401` | Unauthorized — missing or invalid authentication.        |
| `402` | Insufficient Credits.                                    |
| `404` | Not Found.                                               |
| `408` | Upstream issue — no result returned for over 10 minutes. |
| `422` | Validation Error.                                        |
| `429` | Rate Limited.                                            |
| `451` | Unauthorized — failed to fetch the image.                |
| `455` | Service Unavailable / maintenance.                       |
| `500` | Server Error.                                            |
| `501` | Generation Failed.                                       |
| `505` | Feature Disabled.                                        |

## Error Response

```json theme={null}
{
  "code": 500,
  "msg": "Server Error - An unexpected error occurred while processing the request",
  "data": null
}
```
