# Get video by ID
`GET https://octopus.livepush.io/streams/{stream_id}/videos/{video_id}`
Returns one video. Snapshot URLs are rewritten from raw bucket hosts to the Livepush CDN before being returned.

Requires a token with the `streams.videos.write` scope.
- **Tag:** Videos
- **Operation ID:** `getVideoById`
- **Authentication:** Bearer token required
- **Docs:** https://developers.livepush.io/videos/get-video-by-id/

### Path parameters

| Name | Type | Required | Description |
| --- | --- | --- | --- |
| `stream_id` | string | yes | Stream identifier. These handlers resolve the video by videoid scoped to the authenticated account and never read this value, which is why the dashboard passes the literal me. Any value routes correctly. |
| `video_id` | string | yes | Unique identifier of the video. |


### Example request

```bash
curl -X GET 'https://octopus.livepush.io/streams/me/videos/vd_xxxxxxxxxxxx' \
  -H 'Authorization: Bearer YOUR_API_TOKEN'
```


### Responses


#### 200 — Get video by ID.

- `id` (string)
- `label` (string)
- `uploadName` (string)
- `size` (number)
- `mediaInfo` (VideoItemMediaInfo)
  - `hasAudioTrack` (boolean)
  - `duration` (number)
  - `width` (integer)
  - `height` (integer)
  - `fps` (number)
  - `codecs` (VideoItemMediaInfoCodec[])
    - `type` (VideoCodecType)
    - `codec` (string)
  - `tracks` (object[])
- `resourceGroup` (string) — ID of the video folder this video sits in, or absent when it is at the top level of the library. Named resourceGroup for compatibility — see VideoFolder.
- `zone` (string)
- `description` (string)
- `createdAt` (string<date-time>)
- `isDisabled` (boolean)
- `tags` (string[])
- `mediaInfoEncoded` (VideoItemMediaInfo)
  - `hasAudioTrack` (boolean)
  - `duration` (number)
  - `width` (integer)
  - `height` (integer)
  - `fps` (number)
  - `codecs` (VideoItemMediaInfoCodec[])
    - `type` (VideoCodecType)
    - `codec` (string)
  - `tracks` (object[])


```json
{
  "id": "vd_xxxxxxxxx",
  "label": "string",
  "uploadName": "string",
  "size": 0,
  "mediaInfo": {
    "hasAudioTrack": false,
    "duration": 0,
    "width": 0,
    "height": 0,
    "fps": 0,
    "codecs": [
      {
        "type": "video",
        "codec": "string"
      }
    ],
    "tracks": [
      {}
    ]
  },
  "resourceGroup": "grp_xxxxxxxxxxxx",
  "zone": "string",
  "description": "string",
  "createdAt": "2026-01-31T09:00:00.000Z",
  "isDisabled": false,
  "tags": [
    "string"
  ],
  "mediaInfoEncoded": {
    "hasAudioTrack": false,
    "duration": 0,
    "width": 0,
    "height": 0,
    "fps": 0,
    "codecs": [
      {
        "type": "video",
        "codec": "string"
      }
    ],
    "tracks": [
      {}
    ]
  }
}
```


#### 401 — Response


#### 404 — Not found for this account.

