---
title: "List clips"
method: GET
path: "/v1/clips/list"
tags: ["clips"]
---

# List clips

`GET /v1/clips/list`

## Request

- Base URL: `https://api.comma.ai`
- URL: `https://api.comma.ai/v1/clips/list`
- Auth: HTTP bearer

List clips created for the specified device.

## Request body

- object
  - `dongle_id` string: A unique 16-character hexadecimal string. Can represent a device or a user.

## Response `200`

JSON array of clip objects

- union
  - object
    - `id` integer, required: Unique identifier for a clip
    - `create_time` integer, required: Unix timestamp when clip was created, in milliseconds
    - `dongle_id` string, required: A unique 16-character hexadecimal string. Can represent a device or a user.
    - `route_name` string, required: Contains a dongle ID and timestamp of the beginning of the route
    - `start_time` integer, required: Unix timestamp when clip starts, in milliseconds
    - `end_time` integer, required: Unix timestamp when clip ends, in milliseconds
    - `title` string, nullable, required: Optional title for clip
    - `video_type` 'q' | 'f' | 'e' | 'd' | '360', required: - `q` = QCamera - `f` = Road camera - `e` = Wide road camera - `d` = Driver camera - `360` = 360 video
    - `is_public` boolean, required: Clip is publicly accessible
    - `status` 'pending', required
    - `pending_status` 'waiting_jobs' | 'processing': Pending clip status
    - `pending_progress` number: Processing progress, from 0 to 1
  - object
    - `id` integer, required: Unique identifier for a clip
    - `create_time` integer, required: Unix timestamp when clip was created, in milliseconds
    - `dongle_id` string, required: A unique 16-character hexadecimal string. Can represent a device or a user.
    - `route_name` string, required: Contains a dongle ID and timestamp of the beginning of the route
    - `start_time` integer, required: Unix timestamp when clip starts, in milliseconds
    - `end_time` integer, required: Unix timestamp when clip ends, in milliseconds
    - `title` string, nullable, required: Optional title for clip
    - `video_type` 'q' | 'f' | 'e' | 'd' | '360', required: - `q` = QCamera - `f` = Road camera - `e` = Wide road camera - `d` = Driver camera - `360` = 360 video
    - `is_public` boolean, required: Clip is publicly accessible
    - `status` 'done', required
    - `url` string: URL to clip
    - `thumbnail` string: URL to clip thumbnail
  - object
    - `id` integer, required: Unique identifier for a clip
    - `create_time` integer, required: Unix timestamp when clip was created, in milliseconds
    - `dongle_id` string, required: A unique 16-character hexadecimal string. Can represent a device or a user.
    - `route_name` string, required: Contains a dongle ID and timestamp of the beginning of the route
    - `start_time` integer, required: Unix timestamp when clip starts, in milliseconds
    - `end_time` integer, required: Unix timestamp when clip ends, in milliseconds
    - `title` string, nullable, required: Optional title for clip
    - `video_type` 'q' | 'f' | 'e' | 'd' | '360', required: - `q` = QCamera - `f` = Road camera - `e` = Wide road camera - `d` = Driver camera - `360` = 360 video
    - `is_public` boolean, required: Clip is publicly accessible
    - `status` 'failed', required
    - `error_status` 'upload_failed_request' | 'upload_failed' | 'upload_failed_dcam' | 'upload_timed_out' | 'export_failed': Error message

## Changes

- **2022-12-04** `7d0e2f46b81a`: 1 breaking, 7 warning, 7 info
  - the `oneOf[subschema #1: Pending Clip]/allOf[subschema #2]/pending_progress` response's property type changed from `string` to `number` for status `200`
  - added the new `export_failed` enum value to the `oneOf[subschema #3: Failed Clip]/allOf[subschema #2]/error_status` response property for the response status `200`
  - added the new `processing` enum value to the `oneOf[subschema #1: Pending Clip]/allOf[subschema #2]/pending_status` response property for the response status `200`
  - added the new `upload_failed` enum value to the `oneOf[subschema #3: Failed Clip]/allOf[subschema #2]/error_status` response property for the response status `200`
  - …11 more
- **2022-12-03** `d13c9189b880`: 3 breaking, 27 warning, 6 info
  - the `status` response property const value `"done"` was removed for the status `200`
  - the `status` response property const value `"failed"` was removed for the status `200`
  - the `status` response property const value `"pending"` was removed for the status `200`
  - added the new `360` enum value to the `oneOf[subschema #1: Pending Clip]/allOf[subschema #1: Clip]/video_type` response property for the response status `200`
  - …32 more
- **2022-11-27** `5b1478ce801f`: 1 info
  - api tag `clips` added
- **2022-11-27** `04af598547de`: 1 info
  - the endpoint scheme security `AuthUser` was added to the API

[Operation history](https://skmtc.dev/comma/apis/comma-api/changes/v1/clips/list/get.md)

---

[API](https://skmtc.dev/comma/apis/comma-api.md) - [All operations](https://skmtc.dev/comma/apis/comma-api/llms.txt) - [OpenAPI document](https://skmtc.dev/comma/apis/comma-api/revisions/24f7dbc922ad?raw)
