v1

latestOpenAPI 3.0.02026-07-24622596.0 KB
Projects

List Videos

Returns videos captured at the specified project.

Important: Until a video's status is processed, the playback_url field returns the raw upload URL (the pending_uri) and format returns the file extension of that URL — not the HLS playback URL or m3u8. Subscribe to the video.updated webhook or poll GET /videos/{id} until status: processed before consuming playback_url/format.

get/projects/{project_id}/videos

Path parameters

project_idstring id required

ID of the Project

Query parameters

pageinteger
per_pageinteger
start_datestring

A unix timestamp to return videos captured on or after the provided value

end_datestring

A unix timestamp to return videos captured on or before the provided value

user_idsinteger[]

Filter results to include videos captured by one of these user IDs

group_idsinteger[]

Filter results to include videos captured by one of these group IDs

tag_idsinteger[]

Filter results to include videos tagged with one of these tag IDs

Response

List of videos sorted by capture date, most recent first

idstring required

The unique ID for the video

company_idstring

A unique identifier for the Company the Video belongs to

creator_idstring

The id of the entity that created the Video

creator_typestring

The type of the entity that created the Video

creator_namestring

The display name of the entity that created the Video

project_idstring

The unique ID of the project the Video was captured at

status'pending' | 'processing' | 'processed' | 'processing_error'

The video's processing status. Until status is processed, playback_url and format reflect the raw upload — not the HLS playback URL.

internalboolean

Indicates whether the video is for internal use only and should not be used in marketing or other public materials

captured_atinteger

Unix timestamp when the Video was captured

created_atinteger

Unix timestamp when the video record was created on the server. May differ from captured_at.

updated_atinteger

Unix timestamp when the video was last updated

playback_urlstring nullable

Once status is processed, this is the HLS manifest URL (.m3u8) used to play the video. Before processing completes, this is the raw upload URL (the pending_uri).

formatstring nullable

The video format. "m3u8" once the video has been processed; otherwise the file extension of the pending upload (e.g. "mov", "mp4").

durationinteger

Length of the video in seconds

Example response

[
  {
    "id": "1138023",
    "company_id": "8292212",
    "creator_id": "2789583992",
    "creator_type": "User",
    "creator_name": "Shawn Spencer",
    "project_id": "94772883",
    "coordinates": {
      "lat": 28.425852468018288,
      "lon": -81.47155671113255
    },
    "status": "processed",
    "captured_at": 1721918461,
    "created_at": 1721918473,
    "updated_at": 1721918492,
    "playback_url": "https://stream.mux.com/abc123.m3u8",
    "format": "m3u8",
    "thumbnail_urls": {
      "large": "https://imgproxy.companycam.com/.../large.jpg",
      "medium": "https://imgproxy.companycam.com/.../medium.jpg",
      "small": "https://imgproxy.companycam.com/.../small.jpg"
    },
    "duration": 42
  }
]