---
title: "Get Videos"
method: GET
path: "/v1/accounts/{{account_id}}/videos"
tags: ["Videos"]
---

# Get Videos

`GET /v1/accounts/{{account_id}}/videos`

Gets a page of video objects

## Path parameters

- `account_id` string, required

## Query parameters

- `limit` integer
- `offset` integer
- `sort` 'name' | '-name' | 'reference_id' | '-reference_id' | 'created_at' | '-created_at' | 'published_at' | '-published_at' | 'updated_at' | '-updated_at' | 'schedule.starts_at' | '-schedule.ends_at' | 'state' | '-state' | 'plays_total' | '-plays_total' | 'plays_trailing_week' | '-plays_trailing_week'
- `q` string
- `query` string

## Headers

- `Content-Type` string, required
- `Authorization` string, required

## Response `200`

200

- Video[]
  - `ad_keys` string, nullable — string representing the ad key/value pairs assigned to the video. Key/value pairs are formatted as key=value and are separated by ampersands - can only be added on update, not creation
  - `clip_source_video_id` string — The ID of the source video that was clipped to produce this video or null if this video is not a clip of another video
  - `complete` boolean — whether the video has at least one rendition -Note: when you create a new video, the complete property is automatically set to false. As soon as one rendition exists for the video, the complete property will be automatically set to true. This does **not mean that all renditions are created and images and captions processed**. For the full status of ingestion, see [Dynamic Ingest API Notifications](/dynamic-ingest/general/notifications-dynamic-delivery-video-cloud.html)
  - `created_at` string — when the video was created
  - `created_by` User — information about who created or modified a video, if available
    - `email` string — the user's email address in Video Cloud
    - `id` string — Video Cloud system id of the user
    - `type` 'user' | 'api_key' | 'internal' — The type of the updater, either: - `user` a user in Studio - `api-key` a user via the APIs - `internal` a Brightcove system or user
  - `cue_points` CuePoint[] — array of cue points - can be added on creation or update
    - `force_stop` boolean — Whether playback should be stopped when the cuepoint is reached
    - `metadata` string — optional metadata string (512 single-byte characters maximum)
    - `name` string — cue point name
    - `time` number, required — time of the cue point in seconds
    - `type` 'AD' | 'DATA', required — cue point type
  - `custom_fields` object
  - `delivery_type` 'remote' | 'dynamic_origin' | 'live_origin' | 'unknown' — video delivery type: - `remote`: a remote asset - `dynamic_origin`: processed using the Dynamic Delivery ingest system - `live_origin`: a live stream from Brightcove Live - `unknown`: the delivery type could not be determined (may mean there are no playable renditions)
  - `description` string — video short description
  - `digital_master_id` string — asset id of the digital master
  - `drm_disabled` boolean — if true, the video is not DRM-packaged - applies to accounts that are enabled for DRM only
  - `duration` integer — video duration in milliseconds
  - `economics` 'AD_SUPPORTED' | 'FREE' — whether video is `AD_SUPPORTED`
  - `folder_id` string — id of the folder that contains the video
  - `forensic_watermarking` 'ACTIVE' | 'UNAVAILABLE' — Indicates whether the video has forensic watermarking possible values: - `ACTIVE` - the video was transcoded with forensic watermarking and should be used during delivery - `UNAVAILABLE` - the video was not transcoded with forensic watermarking support and can’t be delivered using it - `null` - the value is for forensic watermarking is not available for the account; in this case the field is not returned in API responses if the video was not ingested with forensic watermarking, this field will be set to `UNAVAILABLE` automatically; if the video was ingested or retranscoded with forensic watermarking, this field will be set to `ACTIVE` automatically
  - `geo` Geo — map of geo-filtering properties
    - `countries` string[], required — array of ISO 3166 list of 2-letter codes(https://www.iso.org/obp/ui/#home) (search for "country codes")
    - `exclude_countries` boolean, required — if true, country array is treated as a list of countries excluded from viewing
    - `restricted` boolean, required — whether geo-restriction is enabled for this video
  - `has_digital_master` boolean — whether video has an archived master than can be used for retranscoding
  - `id` string — video id
  - `images` VideoImages — map of image maps - the map name is in the form `label.language` where the label is one of `poster`, `thumbnail`, `portrait`, `square`, `wide` or `ultra-wide`, and the `language` is a language identifier such as 'en', 'de', or `ko`
  - `labels` string[] — Array of labels assigned to the video. See [Working with Labels](/cms/managing-videos/working-with-labels.html) for more information.
  - `link` Link — map of related link properties - can only be added on update, not creation
    - `text` string — text for the link
    - `url` string — URL for the link
  - `long_description` string — video long description - can only be added on update, not creation
  - `name` string — video title
  - `offline_enabled` boolean — whether video is enabled for offline viewing
  - `original_filename` string — the original file name for the uploaded video
  - `playback_rights_id` string — Associates specified EPA playback rights with video.
  - `projection` 'equirectangular', nullable — used for 360 videos
  - `published_at` string — start date-time of first activation in ISO-8601(https://www.ecma-international.org/ecma-262/5.1/#sec-15.9.1.15) format
  - `reference_id` string, nullable — video reference-id (must be unique within the account)
  - `schedule` Schedule — map of scheduling properties
    - `ends_at` string, nullable — 'End date-time of availability in ISO-8601(https://www.ecma-international.org/ecma-262/5.1/#sec-15.9.1.15) format. Note that you can input a date-time stamp with a time zone, such as `2021-05-01T18:00:00.000+08`, but it will be converted to and stored as a UTC data-time stamp: `2021-05-01T10:00:00.000Z`'
    - `starts_at` string, nullable — 'Start date-time of availability in ISO-8601(https://www.ecma-international.org/ecma-262/5.1/#sec-15.9.1.15) format. Note that you can input a date-time stamp with a time zone, such as `2021-05-01T18:00:00.000+08`, but it will be converted to and stored as a UTC data-time stamp: `2021-05-01T10:00:00.000Z`'
  - `sharing` Sharing — map of the sharing properties for the video
    - `by_external_acct` boolean — whether the video was shared from another account
    - `by_id` string — id of the account that shared the video; note that this field is populated only for the shared copy, not for the original video
    - `by_reference` boolean — whether the video is shared by reference
    - `source_id` string — id of the video in its original account; note that this field is populated only for the shared copy, not for the original video
    - `to_external_acct` boolean — whether the video is shared to another account
  - `state` 'ACTIVE' | 'INACTIVE' | 'PENDING' | 'DELETED' — The state of the video: - ACTIVE: the video is playable - INACTIVE: the video is not playable - PENDING: - DELETED: the video has been deleted (within the past 10 days; after that, the API won't return the video)
  - `tags` string[] — array of tags - maximum characters per tag is 1000
  - `text_tracks` TextTrack[] — array of text tracks - can only be added on update, not creation
    - `default` boolean — whether this is the default track - should only be true for one text track
    - `id` string — System id for the text track
    - `kind` 'subtitles' | 'captions' | 'descriptions' | 'chapters' | 'metadata' | 'transcripts' — How the track is meant to be used: `subtitles`, `captions`, `descriptions`, `chapters`, `metadata`.
    - `label` string — label for the track
    - `mime_type` string — mime-type for the track
    - `src` string — URL for the .vtt file
    - `srclang` string — 2-letter language code, such as "en" or "ko"
    - `status` unknown
  - `transcripts` Transcript[] — array of transcription objects - can only be added on update, not creation
    - `id` string — System id for the text track
    - `account_id` string — The account id
    - `default` boolean — Whether the transcript is the default - note that if there are multi-language transcripts, there can be a default per language
    - `label` string — label for the track
    - `sources` string[] — sources for a client to retrieve the transcription
    - `src` string, required — URL for the transcription file
    - `srclang` string, required — 2-letter or 4-letter language code, such as `es` or `es-MX`
    - `status` 'draft' | 'published' — Either `draft` (unavailable to viewers) or `published`
  - `updated_at` string — when the video was last modified
  - `updated_by` User — information about who created or modified a video, if available
    - `email` string — the user's email address in Video Cloud
    - `id` string — Video Cloud system id of the user
    - `type` 'user' | 'api_key' | 'internal' — The type of the updater, either: - `user` a user in Studio - `api-key` a user via the APIs - `internal` a Brightcove system or user
  - `variants` unknown[] — Array of video variants
    - unknown

## Other responses

- `400` — INVALID_SORT: sort parameter specified and invalid field ILLEGAL_QUERY: The search string syntax was invalid - example
- `401` — UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token
- `403` — NOT_AVAILABLE: The resource you are requesting is unavailable - this may be a temporary condition while some kind of processing of the video is in progress, but if the message persists, contact
- `404` — RESOURCE_NOT_FOUND: Resource not found
- `429` — TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second
- `500` — UNKNOWN: Issue in Brightcove system; try again later. TIMEOUT: Server likely too busy; try again later.

---

[API](https://skmtc.net/brightcovelearning/apis/brightcove-cms-api-reference.md) · [All operations](https://skmtc.net/brightcovelearning/apis/brightcove-cms-api-reference/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/brightcovelearning/brightcove-cms-api-reference/versions/1b6182a4560a/schema)
