# Query a video task

Track the same task until completion or failure.

`GET /v1/videos/{video_id}`

<a id="authentication"></a>

## Authentication

Use Authorization: Bearer YOUR_API_KEY. The selected model must be enabled for that key’s group. JSON requests use Content-Type: application/json.

<a id="parameters"></a>

## Parameters



| Field | Type | Required | Description |
| --- | --- | --- | --- |
| video_id | path string | Required | The id returned by submission. |

<a id="request"></a>

## Request example



```
VIDEO_ID='YOUR_VIDEO_ID'

curl --fail-with-body --silent --show-error \
  "https://api.ohgrok.com/v1/videos/$VIDEO_ID" \
  -H "Authorization: Bearer $OHGROK_API_KEY"
```

<a id="response"></a>

## Response structure

Public status values are queued, in_progress, completed, failed or unknown. Continue polling with a delay for queued/in_progress; stop on completed/failed. Inspect unknown without resubmitting. Progress, if present, is not an ETA.

```
{"id":"YOUR_VIDEO_ID","status":"completed"}
```

<a id="errors"></a>

## Error handling

Read the HTTP status together with the returned error message. Check your key and group for authentication or model-access failures. Inspect balance and upstream limits for quota/rate errors; retain task IDs on timeouts.

- [Troubleshoot a request](/docs/errors/)

