openapi: 3.0.3 x-bc-implicit-head: true x-bc-implicit-options: true x-bc-upstream: 'https://backend_server' info: title: Brightcove CMS API Reference description: |- Reference for the Brightcove CMS API, used to access and manage your media library. To test API requests, you can use our [API Testing Tools](/getting-started/concepts-testing-tools-brightcove-apis.html). For permissions needed for OAuth credentials, see [API Operations](/oauth/guides/api-operations-client-credentials-requests.html). For information on authenticating API requests, see the [OAuth Overview](/oauth/getting-started/overview-oauth-api-v4.html). For additional in-depth guides to features of the API, see the **[general documentation](/cms/index.html)**. **Base URL**: https://cms.api.brightcove.com version: 1.0.0 x-bc-access: public servers: - url: 'https://cms.api.brightcove.com' variables: {} tags: - name: Videos description: 'Operations for managing videos, video metadata, audio tracks, and more.' - name: Media Sharing description: >- Operations for creating and managing hierarchical labels that can be associated with videos. - name: Clear-Sources description: |- Clear_sources endpoints expose unencrypted sources to the preview players in the studio for customers who are using [Playback Rights](/playback-restrictions/references/index.html) to protect DRM and HLSe video content. This endpoint is also useful for customers who want to make their protected source files available to 3rd parties or internal users who have access to their API credentials. **Important Notes:** 1. Once the unprotected URL is made available, Brightcove and the client have no control over who has access to the content or how it is used. 2. There will be egress bandwidth charges made to your account when the sources are accessed. - name: Custom Fields description: Operations for creating and managing custom fields. - name: Playlists description: Operations for managing video playlists. - name: Folders description: Operations for managing folders to organize your videos. - name: Labels description: Operations for managing folders to organize your videos. See [Working with Labels](/cms/managing-videos/working-with-labels.html) for more information. - name: Notifications description: >- Operations for setting up and managing notifications of changes to your video library. - name: Media Assets description: >- Operations for managing renditions, manifests, and other media assets. These operations are used mainly for remote assets. paths: '/v1/accounts/{{account_id}}/videos': get: tags: - Videos summary: Get Videos description: 'Gets a page of video objects ' operationId: GetVideos parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' - $ref: '#/components/parameters/Limit' - $ref: '#/components/parameters/Offset' - $ref: '#/components/parameters/VideoSort' - $ref: '#/components/parameters/Search' - $ref: '#/components/parameters/Query' responses: '200': description: '200' content: application/json: schema: type: array items: $ref: '#/components/schemas/Video' '400': description: |- INVALID_SORT: sort parameter specified and invalid field ILLEGAL_QUERY: The search string syntax was invalid - example '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '403': description: >- 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': description: 'RESOURCE_NOT_FOUND: Resource not found ' '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second '500': description: |- UNKNOWN: Issue in Brightcove system; try again later. TIMEOUT: Server likely too busy; try again later. deprecated: false security: - BC_OAuth2: - video-cloud/video/read x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false post: tags: - Videos summary: Create Video description: >- Create a new video object in the account. Note: this does not ingest a video file - use the Dynamic Ingest API for ingestion operationId: CreateVideo parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' requestBody: description: >- Create a new video object in the account. Note: this does not ingest a video file - use the Dynamic Ingest API for ingestion content: application/json: schema: $ref: '#/components/schemas/CreateVideoRequestBodyFields' required: true responses: '201': description: Video created content: application/json: schema: $ref: '#/components/schemas/Video' '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '403': description: 'BAD_VALUE: Spelling error or other use of non-existent field ' '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '409': description: >- REFERENCE_ID_IN_USE: You attempted to create a video with a reference id that is already in use, or add a reference id to a video which is already used by another video '422': description: 'ILLEGAL_FIELD: Spelling error or other use of non-existent field ' '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second deprecated: false security: - BC_OAuth2: - video-cloud/video/create x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false '/v1/accounts/{{account_id}}/counts/videos': get: tags: - Videos summary: Get Video Count description: 'Gets count of videos for the account or a search ' operationId: GetVideoCount parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' - $ref: '#/components/parameters/Search' responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/VideoCount' '400': description: 'INVALID_SORT: sort parameter specified and invalid field ' '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '403': description: >- NOT_AVAILABLE: The resource you are requesting is temporarily unavailable '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second '500': description: |- UNKNOWN: Issue in Brightcove system; try again later. TIMEOUT: Server likely too busy; try again later. deprecated: false security: - BC_OAuth2: - video-cloud/video/read x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false '/v1/accounts/{{account_id}}/videos{video_ids}}': get: tags: - Videos summary: 'Get Videos by ID/Reference ID' description: |- Gets a video object - you can include **up to 10** video ids separated by commas. operationId: GetVideoByIdOrReferenceId parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/VideoIds' - $ref: '#/components/parameters/include_variants' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/Video' '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second deprecated: false security: - BC_OAuth2: - video-cloud/video/read x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false delete: tags: - Videos summary: Delete Video description: >- 'Deletes one or more videos - note that for this operation you can specify a comma-delimited list of video ids to delete. A maximum of 10 videos can be deleted with one request. You can also delete a video by its reference id using `ref:video_reference_id` but only one at a time.' operationId: DeleteVideo parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/VideoIds' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' responses: '204': description: 'NO_CONTENT' '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '409': description: 'REFERENCES_EXIST: The video is in one or more manual playlists ' '412': description: >- PRE_CONDITION_FAILED: usually this means the caller provided an ETag that didn't match the version of the video '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second '500': description: 'INTERNAL_ERROR: Error in the backend ' deprecated: false security: - BC_OAuth2: - video-cloud/video/delete x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false '/v1/accounts/{{account_id}}/videos/{{video_id}}': patch: tags: - Videos summary: Update Video description: >- Update video metadata - note that this API does not ingest any media files - use the Dynamic Ingest API for ingestion. Also note that replacing WebVTT text tracks is a two-step operation - see Add WebVTT Captions for details. operationId: UpdateVideo parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/VideoId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' requestBody: description: >- Update video metadata - note that this API does not ingest any media files - use the Dynamic Ingest API for ingestion. Also note that replacing WebVTT text tracks is a two-step operation - see Add WebVTT Captions for details. content: application/json: schema: $ref: '#/components/schemas/Video' required: true responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/Video' '202': description: >- 202 is returned as a success response in cases where text tracks are updated, because that is performed by a separate system. '400': description: >- AD_CONFIG_INACTIVE: Ad configuration specified in an SSAI request is inactive AD_CONFIG_NOT_FOUND: Ad configuration specified in an SSAI request was not found '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '403': description: 'BAD_VALUE: Spelling error or other use of non-existent field ' '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '409': description: >- REFERENCE_ID_IN_USE: You attempted to create a video with a reference id that is already in use, or add a reference id to a video which is already used by another video '422': description: >- ILLEGAL_FIELD: Spelling error or other use of non-existent field VALIDATION_ERROR: the JSON data was not valid - error messages vary depending on the problem '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second '500': description: >- UNKNOWN: an unknown internal error occurred - this might be a temporary system issue, but if the problem persists, it is likely an uncaught error in the request - contact Support '503': description: 'TIMEOUT: Server likely too busy - try again later ' deprecated: false security: - BC_OAuth2: - video-cloud/video/update x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false '/v1/accounts/{{account_id}}/videos/{{video_id}}/sources': get: tags: - Videos summary: Get Video Sources description: 'Gets an array of sources (renditions) for a video' operationId: GetVideoSources parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/VideoId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/VideoSources' '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second deprecated: false security: - BC_OAuth2: - video-cloud/video/read x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false '/v1/accounts/{{account_id}}/videos/{{video_id}}/images': get: tags: - Videos summary: Get Video Images description: 'Gets the images for a video ' operationId: GetVideoImages parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/VideoId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/VideoImages' '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second deprecated: false security: - BC_OAuth2: - video-cloud/video/read x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false '/v1/accounts/{{account_id}}/videos/{{video_id}}/image_sources{label}}': delete: tags: - Videos summary: Delete video image description: >- Delete video image source by label. The label can be one of `poster`, `thumbnail`, `wide`, `ultra-wide`, `portrait`, `square`. operationId: DeleteVideoImage parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/VideoId' - $ref: '#/components/parameters/Label' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' responses: '204': description: >- NO CONTENT: image source was deleted successfully. '400': description: >- AD_CONFIG_INACTIVE: Ad configuration specified in an SSAI request is inactive AD_CONFIG_NOT_FOUND: Ad configuration specified in an SSAI request was not found '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second '500': description: >- UNKNOWN: an unknown internal error occurred - this might be a temporary system issue, but if the problem persists, it is likely an uncaught error in the request - contact Support '503': description: 'TIMEOUT: Server likely too busy - try again later ' deprecated: false security: - BC_OAuth2: - video-cloud/video/update x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false '/v1/accounts/{{account_id}}/videos/{{video_id}}/variants': get: tags: - Videos summary: Get All Video Variants description: 'Gets the language variants for the video metadata' operationId: GetVideoVariants parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/VideoId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/VideoVariants' '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second deprecated: false security: - BC_OAuth2: - video-cloud/video/read x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false post: tags: - Videos summary: Create a Video Variant description: 'Creates a language variant for a video metadata' operationId: createVideoVariant parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/VideoId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' requestBody: description: >- Request body for a video variant content: application/json: schema: $ref: '#/components/schemas/VideoVariant' responses: '201': description: '201' content: application/json: schema: $ref: '#/components/schemas/VideoVariant' '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second deprecated: false security: - BC_OAuth2: - video-cloud/video/read x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false '/v1/accounts/{{account_id}}/videos/{{video_id}}/variants{language}}': get: tags: - Videos summary: Get a Video Variant description: 'Gets the variant for the video metadata for the specified language' operationId: GetVideoVariant parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/VideoId' - $ref: '#/components/parameters/Language' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/VideoVariant' '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second deprecated: false security: - BC_OAuth2: - video-cloud/video/read x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false patch: tags: - Videos summary: Update a Video Variant description: 'Updates a language variant for a video metadata' operationId: updateVideoVariant parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/VideoId' - $ref: '#/components/parameters/Language' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' requestBody: description: Request body for a video variant content: application/json: schema: $ref: '#/components/schemas/VideoVariant' responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/VideoVariant' '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second deprecated: false security: - BC_OAuth2: - video-cloud/video/read x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false delete: tags: - Videos summary: Delete a Video Variant description: 'Delete a language variant for a video metadata' operationId: deleteVideoVariant parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/VideoId' - $ref: '#/components/parameters/Language' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' responses: '204': description: '204 NO CONTENT' '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second deprecated: false security: - BC_OAuth2: - video-cloud/video/read x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false '/v1/accounts/{{account_id}}/videos/{{video_id}}/audio_tracks': get: tags: - Videos summary: Get Video Audio Tracks description: 'Gets the audio tracks for a video Dynamic Delivery only ' operationId: GetVideoAudioTracks parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/VideoId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/AudioTracks' examples: audio_track: summary: Sample audio track object value: [{ "duration": 86053, "encoding_rates": [ 64000, 96000, 127000, 192000 ], "id": "en_alternate", "is_default": true, "language": "en", "variant": "main" }] '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second deprecated: false security: - BC_OAuth2: - video-cloud/video/read x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false '/v1/accounts/{{account_id}}/videos/{{video_id}}/audio_tracks{audio_track_id}}': get: tags: - Videos summary: Get Video Audio Track description: 'Gets one audio track for a video by its ID Dynamic Delivery only ' operationId: GetVideoAudioTrack parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/VideoId' - $ref: '#/components/parameters/AudioTrackId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/AudioTrack' '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second deprecated: false security: - BC_OAuth2: - video-cloud/video/read x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false patch: tags: - Videos summary: Update Video Audio Track description: 'Updates audio track metadata for a video Dynamic Delivery only ' operationId: UpdateVideoAudioTrack parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/VideoId' - $ref: '#/components/parameters/AudioTrackId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' requestBody: description: Updates audio track metadata for a video Dynamic Delivery only content: application/json: schema: $ref: '#/components/schemas/AudioTrack' required: true responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/AudioTrack' '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second deprecated: false security: - BC_OAuth2: - video-cloud/video/update x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false delete: tags: - Videos summary: Delete Video Audio Track description: 'Deletes one audio track for a video by its ID Dynamic Delivery only ' operationId: DeleteVideoAudioTrack parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/VideoId' - $ref: '#/components/parameters/AudioTrackId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' responses: '204': description: Item was deleted '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second deprecated: false security: - BC_OAuth2: - video-cloud/video/update x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false '/v1/accounts/{{account_id}}/videos/{{video_id}}/digital_master': get: tags: - Videos summary: Get Digital Master Info description: 'Gets the stored digital master for a video, if any ' operationId: GetDigitalMasterInfo parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/VideoId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/DigitalMaster' '204': description: >- The video does not have a digital master '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second deprecated: false security: - BC_OAuth2: - video-cloud/video/read x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false delete: tags: - Videos summary: Delete Digital Master description: >- Deletes the archived digital master for a video. Be sure to read Digital Master Delete API before using this operation to understand the implications. operationId: DeleteDigitalMaster parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/VideoId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' responses: '204': description: Item was deleted '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '403': description: >- NOT_AVAILABLE: The resource you are requesting is temporarily unavailable '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second '500': description: |- UNKNOWN: Issue in Brightcove system; try again later. TIMEOUT: Server likely too busy; try again later. deprecated: false security: - BC_OAuth2: - video-cloud/asset/delete x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false '/v1/accounts/{{account_id}}/videos/{{video_id}}/references': get: tags: - Videos summary: Get Playlists for Video description: >- Gets an array of Manual (EXPLICIT) playlists that contain a video object for the account operationId: GetPlaylistsForVideo parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/VideoId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/PlaylistReferences' '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second deprecated: false security: - BC_OAuth2: - video-cloud/video/read x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false delete: tags: - Videos summary: Remove Video from all Playlists description: 'Removes the video from all EXPLICIT playlists for the account ' operationId: RemoveVideoFromAllPlaylists parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/VideoId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' responses: '204': description: Item was deleted '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second deprecated: false security: - BC_OAuth2: - video-cloud/video/delete x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false '/v1/accounts/{{account_id}}/videos/{{video_id}}/ingest_jobs': get: tags: - Videos summary: Get Status of Ingest Jobs description: |- Get the status of all ingest jobs associated with a video (including the original ingestion, replacing and retranscoding the video). NOTE: this operation only works for videos that were ingested using **Dynamic Delivery** profiles. Possible states of jobs are: * `processing` processing is underway, but no playable renditions have been created yet * `publishing` at least one playable rendition has been created and is being published * `published` at least one rendition is available for playback * `finished` processing is complete * `failed` processing failed - if you cannot figure what went wrong, contact Support operationId: GetStatusOfIngestJobs parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/GetStatusVideoId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' responses: '200': description: '200' content: application/json: schema: type: array items: $ref: '#/components/schemas/IngestJobStatus' '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second '500': description: 'INTERNAL_ERROR: Error in the backend ' deprecated: false security: - BC_OAuth2: - video-cloud/video/read x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false '/v1/accounts/{{account_id}}/videos/{{video_id}}/ingest_jobs{job_id}}': get: tags: - Videos summary: Get Status of Ingest Job description: |- Get the status of an ingest job associated with a video (including the original ingestion, replacing and retranscoding the video). NOTE: this operation only works for videos that were ingested using **Dynamic Delivery** profiles. Possible states of jobs are: * `processing` processing is underway, but no playable renditions have been created yet * `publishing` at least one playable rendition has been created and is being published * `published` at least one rendition is available for playback * `finished` processing is complete * `failed` processing failed - if you cannot figure what went wrong, contact Support operationId: GetStatusOfIngestJob parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/VideoId' - $ref: '#/components/parameters/JobId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/IngestJobStatus' '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second '500': description: 'INTERNAL_ERROR: Error in the backend ' deprecated: false security: - BC_OAuth2: - video-cloud/video/read x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false '/v1/accounts/{{account_id}}/clear_videos/{{video_id}}': get: tags: - Clear-Sources summary: Get Video with Clear Sources description: |- Get the video object along with unencrypted clear sources, including all associated metadata. **Notes** - Once the unprotected URL is made available, Brightcove and the client have no control over who has access to the content or how it is used. - There will be egress bandwidth charges made to the customer when the sources are accessed. operationId: GetClearVideo parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/VideoId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/Video' '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '403': description: >- NOT_AVAILABLE: The resource you are requesting is temporarily unavailable '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second '500': description: |- UNKNOWN: Issue in Brightcove system; try again later. TIMEOUT: Server likely too busy; try again later. deprecated: false security: - BC_OAuth2: - video-cloud/video/read x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false '/v1/accounts/{{account_id}}/videos/{{video_id}}/clear_sources': get: tags: - Clear-Sources summary: Get Video Clear Sources description: |- Get only unencrypted clear sources for a video, without any additional metadata. **Notes** - Once the unprotected URL is made available, Brightcove and the client have no control over who has access to the content or how it is used. - There will be egress bandwidth charges made to the customer when the sources are accessed. - This endpoint requires the special permission `video-cloud/video/clear-sources` which is not available in the Studio UI. To generate credentials to get clear sources, this permission must be enabled for the account, and you must use the [OAuth API](/oauth/getting-started/overview-oauth-api-v4.html) operationId: GetClearVideoSources parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/VideoId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/VideoSources' '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '403': description: >- NOT_AVAILABLE: The resource you are requesting is temporarily unavailable '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second '500': description: |- UNKNOWN: Issue in Brightcove system; try again later. TIMEOUT: Server likely too busy; try again later. deprecated: false security: - BC_OAuth2: - video-cloud/video/clear-sources x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false '/v1/accounts/{{account_id}}/video_fields': get: tags: - Custom Fields summary: Get Video Fields description: 'Gets a list of custom fields for the account (note that this operation may later return standard fields as well - current it returns an empty array for `standard_fields`)' operationId: GetVideoFields parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/VideoFields' '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '403': description: >- NOT_AVAILABLE: The resource you are requesting is temporarily unavailable '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second '500': description: |- UNKNOWN: Issue in Brightcove system; try again later. TIMEOUT: Server likely too busy; try again later. deprecated: false security: - BC_OAuth2: - video-cloud/video/read x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false '/v1/accounts/{{account_id}}/video_fields/custom_fields': get: tags: - Custom Fields summary: Get Custom Fields description: 'Gets a list of custom fields for the account' operationId: GetCustomFields parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/CustomFields' '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '403': description: >- NOT_AVAILABLE: The resource you are requesting is temporarily unavailable '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second '500': description: |- UNKNOWN: Issue in Brightcove system; try again later. TIMEOUT: Server likely too busy; try again later. deprecated: false security: - BC_OAuth2: - video-cloud/video/read x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false post: tags: - Custom Fields summary: Create a Custom Field description: 'Create a new custom field for the account' operationId: CreateCustomField parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' requestBody: description: Properties for a new custom field content: application/json: schema: $ref: '#/components/schemas/customField' required: true responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/customField' '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '403': description: >- NOT_AVAILABLE: The resource you are requesting is temporarily unavailable '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second '500': description: |- UNKNOWN: Issue in Brightcove system; try again later. TIMEOUT: Server likely too busy; try again later. deprecated: false security: - BC_OAuth2: - video-cloud/video/read x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false '/v1/accounts/{{account_id}}/video_fields/custom_fields/{{custom_field_id}}': get: tags: - Custom Fields summary: Get a Custom Field description: 'Gets a list of custom fields for the account' operationId: GetCustomField parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' - $ref: '#/components/parameters/custom_field_id' responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/customField' '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '403': description: >- NOT_AVAILABLE: The resource you are requesting is temporarily unavailable '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second '500': description: |- UNKNOWN: Issue in Brightcove system; try again later. TIMEOUT: Server likely too busy; try again later. deprecated: false security: - BC_OAuth2: - video-cloud/video/read x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false patch: tags: - Custom Fields summary: Update a Custom Field description: 'Update a new custom field for the account' operationId: UpdateCustomField parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' - $ref: '#/components/parameters/custom_field_id' requestBody: description: Update properties for a new custom field content: application/json: schema: $ref: '#/components/schemas/customFieldUpdate' required: true responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/customFieldUpdate' '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '403': description: >- NOT_AVAILABLE: The resource you are requesting is temporarily unavailable '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second '500': description: |- UNKNOWN: Issue in Brightcove system; try again later. TIMEOUT: Server likely too busy; try again later. deprecated: false security: - BC_OAuth2: - video-cloud/video/read x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false delete: tags: - Custom Fields summary: Delete a Custom Field description: 'Delete a new custom field for the account' operationId: DeleteCustomField parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' - $ref: '#/components/parameters/custom_field_id' responses: '204': description: '204 No Content' '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '403': description: >- NOT_AVAILABLE: The resource you are requesting is temporarily unavailable '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second '500': description: |- UNKNOWN: Issue in Brightcove system; try again later. TIMEOUT: Server likely too busy; try again later. deprecated: false security: - BC_OAuth2: - video-cloud/video/read x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false '/v1/accounts/{{account_id}}/channels': get: tags: - Media Sharing summary: List Channels description: >- Gets a list of channels (currently there is only one default channel) - this is a Master account operation operationId: ListChannels parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' responses: '200': description: '200' content: application/json: schema: type: array items: $ref: '#/components/schemas/Channel' '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '403': description: >- 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 Support '404': description: 'RESOURCE_NOT_FOUND: Resource not found ' '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second '500': description: |- UNKNOWN: Issue in Brightcove system; try again later. TIMEOUT: Server likely too busy; try again later. deprecated: false security: - BC_OAuth2: - video-cloud/sharing-relationships/read x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false '/v1/accounts/{{account_id}}/channels{channel_name}}': get: tags: - Media Sharing summary: Get Channel Details description: >- Gets settings for a sharing channel (currently there is only one default channel) - this is a Master account operation operationId: GetChannelDetails parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/ChannelName' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/Channel' '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '403': description: >- 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 Support '404': description: 'RESOURCE_NOT_FOUND: Resource not found ' '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second '500': description: |- UNKNOWN: Issue in Brightcove system; try again later. TIMEOUT: Server likely too busy; try again later. deprecated: false security: - BC_OAuth2: - video-cloud/sharing-relationships/read x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false patch: tags: - Media Sharing summary: Update Channel description: >- Updates settings for a sharing channel (currently there is only one default channel) - this is a Master account operation operationId: UpdateChannel parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/ChannelName' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' requestBody: description: >- Updates settings for a sharing channel (currently there is only one default channel) - this is a Master account operation content: application/json: schema: $ref: '#/components/schemas/Channel' required: true responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/Channel' '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '403': description: >- 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': description: 'RESOURCE_NOT_FOUND: Resource not found ' '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second '500': description: |- UNKNOWN: Issue in Brightcove system; try again later. TIMEOUT: Server likely too busy; try again later. deprecated: false security: - BC_OAuth2: - video-cloud/sharing-relationships/update x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false '/v1/accounts/{{account_id}}/channels{channel_name}}/members': get: tags: - Media Sharing summary: List Channel Affiliates description: >- Gets a list of affiliates for a channel - this is a Master account operation operationId: ListChannelAffiliates parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/ChannelName' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' responses: '200': description: '200' content: application/json: schema: type: array items: $ref: '#/components/schemas/ChannelAffiliate' '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '403': description: >- 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': description: 'RESOURCE_NOT_FOUND: Resource not found ' '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second '500': description: |- UNKNOWN: Issue in Brightcove system; try again later. TIMEOUT: Server likely too busy; try again later. deprecated: false security: - BC_OAuth2: - video-cloud/sharing-relationships/read x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false '/v1/accounts/{{account_id}}/channels{channel_name}}/members/{{affiliate_account_id}}': put: tags: - Media Sharing summary: Add Affiliate description: 'Adds an affiliate to a channel - this is a Master account operation ' operationId: AddAffiliate parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/ChannelName' - $ref: '#/components/parameters/AffiliateAccountId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' requestBody: description: Adds an affiliate to a channel - this is a Master account operation content: application/json: schema: $ref: '#/components/schemas/AddAffiliate' required: true responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/AddAffiliate' '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '403': description: >- 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': description: 'RESOURCE_NOT_FOUND: Resource not found ' '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second '500': description: |- UNKNOWN: Issue in Brightcove system; try again later. TIMEOUT: Server likely too busy; try again later. deprecated: false security: - BC_OAuth2: - video-cloud/sharing-relationships/update x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false delete: tags: - Media Sharing summary: Remove Affiliate description: >- Removes an affiliate from a channel - this is a Master account operation operationId: RemoveAffiliate parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/ChannelName' - $ref: '#/components/parameters/AffiliateAccountId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' responses: '204': description: Item was deleted '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '403': description: >- 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': description: 'RESOURCE_NOT_FOUND: Resource not found ' '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second '500': description: |- UNKNOWN: Issue in Brightcove system; try again later. TIMEOUT: Server likely too busy; try again later. deprecated: false security: - BC_OAuth2: - video-cloud/sharing-relationships/delete x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false '/v1/accounts/{{account_id}}/contracts': get: tags: - Media Sharing summary: List Contracts description: >- Gets a list of available sharing contracts - this is an Affiliate account operation operationId: ListContracts parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/Contract' '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '403': description: >- 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': description: 'RESOURCE_NOT_FOUND: Resource not found ' '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second '500': description: |- UNKNOWN: Issue in Brightcove system; try again later. TIMEOUT: Server likely too busy; try again later. deprecated: false security: - BC_OAuth2: - video-cloud/sharing-relationships/update x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false '/v1/accounts/{{account_id}}/contracts/{{master_account_id}}': get: tags: - Media Sharing summary: Get Contract description: >- Gets a list of available sharing contracts - this is an Affiliate account operation operationId: GetContract parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/MasterAccountId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/Contract' '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '403': description: >- 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': description: 'RESOURCE_NOT_FOUND: Resource not found ' '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second '500': description: |- UNKNOWN: Issue in Brightcove system; try again later. TIMEOUT: Server likely too busy; try again later. deprecated: false security: - BC_OAuth2: - video-cloud/sharing-relationships/update x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false patch: tags: - Media Sharing summary: Approve Contract description: 'Approve a contract - this is an Affiliate account operation ' operationId: ApproveContract parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/MasterAccountId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' requestBody: description: >- Gets a list of available sharing contracts - this is an Affiliate account operation content: application/json: schema: $ref: '#/components/schemas/Contract' required: true responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/Contract' '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '403': description: >- 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': description: 'RESOURCE_NOT_FOUND: Resource not found ' '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second '500': description: |- UNKNOWN: Issue in Brightcove system; try again later. TIMEOUT: Server likely too busy; try again later. deprecated: false security: - BC_OAuth2: - video-cloud/sharing-relationships/update x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false '/v1/accounts/{{account_id}}/videos/{{video_id}}/shares': get: tags: - Media Sharing summary: List Shares description: >- Lists the existing shares for an account - this is a Master account operation - do this before sharing to insure that you are not re-sharing to an affiliate, which would overwrite any affiliate metadata changes operationId: ListShares parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/VideoId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' responses: '200': description: '200' content: application/json: schema: type: array items: $ref: '#/components/schemas/VideoShare' '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '403': description: >- 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': description: 'RESOURCE_NOT_FOUND: Resource not found ' '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second '500': description: |- UNKNOWN: Issue in Brightcove system; try again later. TIMEOUT: Server likely too busy; try again later. deprecated: false security: - BC_OAuth2: - video-cloud/video/read x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false post: tags: - Media Sharing summary: Share Video description: >- Shares a video to one or more affiliates - this is an Master account operation - if the video has already been shared to an affiliate, this operation will re-share it and overwrite any affiliate metadata changes operationId: ShareVideo parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/VideoId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' requestBody: description: >- Shares a video to one or more affiliates - this is an Master account operation - if the video has already been shared to an affiliate, this operation will re-share it and overwrite any affiliate metadata changes content: application/json: schema: type: array items: $ref: '#/components/schemas/ShareVideoRequest' description: >- Shares a video to one or more affiliates - this is an Master account operation - if the video has already been shared to an affiliate, this operation will re-share it and overwrite any affiliate metadata changes required: true responses: '202': description: Share request accepted content: application/json: schema: type: array items: $ref: '#/components/schemas/VideoShare' description: Share request accepted '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '403': description: >- 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': description: 'RESOURCE_NOT_FOUND: Resource not found ' '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second '500': description: |- UNKNOWN: Issue in Brightcove system; try again later. TIMEOUT: Server likely too busy; try again later. deprecated: false security: - BC_OAuth2: - video-cloud/video/create x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false '/v1/accounts/{{account_id}}/videos/{{video_id}}/shares/{{affiliate_account_id}}': get: tags: - Media Sharing summary: Get Share description: >- Lists the existing shares for an account - this is a Master account operation - do this before sharing to insure that you are not re-sharing to an affiliate, which would overwrite any affiliate metadata changes operationId: GetShare parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/VideoId' - $ref: '#/components/parameters/AffiliateAccountId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/VideoShare' '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '403': description: >- 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': description: 'RESOURCE_NOT_FOUND: Resource not found ' '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second '500': description: |- UNKNOWN: Issue in Brightcove system; try again later. TIMEOUT: Server likely too busy; try again later. deprecated: false security: - BC_OAuth2: - video-cloud/video/read x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false delete: tags: - Media Sharing summary: Unshare Video description: >- Un-shares a video with a specific affiliate - this is an Master account operation - do this before sharing to insure that you are not re-sharing to an affiliate, which would overwrite any affiliate metadata changes operationId: UnshareVideo parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/VideoId' - $ref: '#/components/parameters/AffiliateAccountId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' responses: '204': description: Item was deleted '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '403': description: >- 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': description: 'RESOURCE_NOT_FOUND: Resource not found ' '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second '500': description: |- UNKNOWN: Issue in Brightcove system; try again later. TIMEOUT: Server likely too busy; try again later. deprecated: false security: - BC_OAuth2: - video-cloud/video/delete x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false '/v1/accounts/{{account_id}}/playlists': get: tags: - Playlists summary: Get Playlists description: 'Gets a page of playlist objects for the account ' operationId: GetPlaylists parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' - $ref: '#/components/parameters/Limit' - $ref: '#/components/parameters/Offset' - $ref: '#/components/parameters/SearchPlaylists' - $ref: '#/components/parameters/PlaylistSort' responses: '200': description: '200' content: application/json: schema: type: array items: $ref: '#/components/schemas/Playlist' '400': description: >- 'INVALID_SORT: sort parameter specified and invalid field INVALID_SEARCH: search string invalid (may not have been URI-encoded)' '401': description: >- UNAUTHORIZED: Authentication failed - check to make sure your client credentials were correct for the access token '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second deprecated: false security: - BC_OAuth2: - video-cloud/playlist/read x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false post: tags: - Playlists summary: Create Playlist description: |- Creates a new playlist. **A maximum of 1000 videos can be added to a playlist** (both Manual and Smart). There is no limit to the number of playlists that can be created. The videos that are initially loaded into a playlist in the player is determined by the type of playlist. operationId: CreatePlaylist parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' requestBody: description: Creates a new playlist content: application/json: schema: $ref: '#/components/schemas/PlaylistInputFields' required: true responses: '201': description: Playlist created content: application/json: schema: $ref: '#/components/schemas/Playlist' '400': description: 'BAD_VALUE: The JSON could not be parsed ' '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '409': description: 'REFERENCE_ID_IN_USE: The specified reference id is already in use ' '422': description: 'ILLEGAL_FIELD: Spelling error or use of non-existent field ' '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second deprecated: false security: - BC_OAuth2: - video-cloud/playlist/create x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false '/v1/accounts/{{account_id}}/counts/playlists': get: tags: - Playlists summary: Get Playlist Count description: 'Gets a count of playlists in the account for the account ' operationId: GetPlaylistCount parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' - $ref: '#/components/parameters/Search' responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/PlaylistCount' '400': description: >- 'INVALID_SORT: sort parameter specified and invalid field INVALID_SEARCH: search string invalid (may not have been URI-encoded)' '401': description: >- UNAUTHORIZED: Authentication failed - check to make sure your client credentials were correct for the access token '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second deprecated: false security: - BC_OAuth2: - video-cloud/playlist/read x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false '/v1/accounts/{{account_id}}/playlists/{{playlist_id}}': get: tags: - Playlists summary: Get Playlists by ID description: 'Gets one or more playlist objects for the account ' operationId: GetPlaylistById parameters: - $ref: '#/components/parameters/AccountId' - name: playlist_id in: path description: >- Video Cloud playlist ID, or multiple playlist ids separated by commas. required: true style: simple explode: false schema: type: string - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/Playlist' '400': description: >- 'INVALID_SORT: sort parameter specified and invalid field INVALID_SEARCH: search string invalid (may not have been URI-encoded)' '401': description: >- UNAUTHORIZED: Authentication failed - check to make sure your client credentials were correct for the access token '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second deprecated: false security: - BC_OAuth2: - video-cloud/playlist/read x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false patch: tags: - Playlists summary: Update Playlist description: 'Updates a playlist for the account ' operationId: UpdatePlaylist parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/PlaylistId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' requestBody: description: Updates a playlist for the account content: application/json: schema: $ref: '#/components/schemas/PlaylistInputFields' required: true responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/Playlist' '400': description: 'BAD_VALUE: The JSON could not be parsed ' '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '409': description: 'REFERENCE_ID_IN_USE: The specified reference id is already in use ' '422': description: 'ILLEGAL_FIELD: Spelling error or use of non-existent field ' '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second deprecated: false security: - BC_OAuth2: - video-cloud/playlist/update x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false delete: tags: - Playlists summary: Delete Playlist description: 'Deletes a playlist ' operationId: DeletePlaylists parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/PlaylistId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' responses: '204': description: 'NO_CONTENT' '400': description: >- 'INVALID_SORT: sort parameter specified and invalid field INVALID_SEARCH: search string invalid (may not have been URI-encoded)' '401': description: >- UNAUTHORIZED: Authentication failed - check to make sure your client credentials were correct for the access token '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second deprecated: false security: - BC_OAuth2: - video-cloud/playlist/delete x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false '/v1/accounts/{{account_id}}/playlists/{{playlist_id}}/videos': get: tags: - Playlists summary: Get Videos in Playlist description: 'Gets the video objects for videos in a playlist for the account ' operationId: GetVideosInPlaylist parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/PlaylistId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' - $ref: '#/components/parameters/include_details' - $ref: '#/components/parameters/Limit_Playlist_Videos' - $ref: '#/components/parameters/Offset' responses: '200': description: '200' content: application/json: schema: type: array items: $ref: '#/components/schemas/Video' '400': description: >- 'INVALID_SORT: sort parameter specified and invalid field INVALID_SEARCH: search string invalid (may not have been URI-encoded)' '401': description: >- UNAUTHORIZED: Authentication failed - check to make sure your client credentials were correct for the access token '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second deprecated: false security: - BC_OAuth2: - video-cloud/playlist/read x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false '/v1/accounts/{{account_id}}/counts/playlists/{{playlist_id}}/videos': get: tags: - Playlists summary: Get Video Count in Playlist description: 'Gets a count of the videos in a playlist for the account ' operationId: GetVideoCountInPlaylist parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/PlaylistId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/VideoCountInPlaylist' '400': description: >- 'INVALID_SORT: sort parameter specified and invalid field INVALID_SEARCH: search string invalid (may not have been URI-encoded)' '401': description: >- UNAUTHORIZED: Authentication failed - check to make sure your client credentials were correct for the access token '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second deprecated: false security: - BC_OAuth2: - video-cloud/playlist/read x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false '/v1/accounts/{{account_id}}/folders': get: tags: - Folders summary: Get Folders description: 'Gets list of folders for the account ' operationId: GetFolders parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/Folder' '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '403': description: >- NOT_AVAILABLE: The resource you are requesting is temporarily unavailable '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second '500': description: |- UNKNOWN: Issue in Brightcove system; try again later. TIMEOUT: Server likely too busy; try again later. deprecated: false security: - BC_OAuth2: - video-cloud/video/read x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false post: tags: - Folders summary: Create Folder description: 'Create a new folder for the account - **note** that there is a limit of 1000 folders per account' operationId: CreateFolder parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' requestBody: description: Create a new folder for the account content: application/json: schema: $ref: '#/components/schemas/Folder' required: true responses: '201': description: Folder created content: application/json: schema: $ref: '#/components/schemas/Folder' '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '403': description: >- NOT_AVAILABLE: The resource you are requesting is temporarily unavailable '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '409': description: >- MAXIMUM_FOLDER_COUNT_REACHED: You have exceeded the maximum number of folders '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second '500': description: |- UNKNOWN: Issue in Brightcove system; try again later. TIMEOUT: Server likely too busy; try again later. deprecated: false security: - BC_OAuth2: - video-cloud/video/create x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false '/v1/accounts/{{account_id}}/folders/{{folder_id}}': get: tags: - Folders summary: Get Folder Information description: 'Gets information about a folder ' operationId: GetFolderInformation parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/FolderId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' responses: '200': description: '200' content: application/json: schema: type: array items: $ref: '#/components/schemas/Folder' '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '403': description: >- NOT_AVAILABLE: The resource you are requesting is temporarily unavailable '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second '500': description: |- UNKNOWN: Issue in Brightcove system; try again later. TIMEOUT: Server likely too busy; try again later. deprecated: false security: - BC_OAuth2: - video-cloud/video/read x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false patch: tags: - Folders summary: Update Folder Name description: 'Update the folder name ' operationId: UpdateFolderName parameters: - $ref: '#/components/parameters/AccountId' - name: folder_id in: path description: the folder ID required: true style: simple explode: false schema: type: string - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' requestBody: description: Update the folder name content: application/json: schema: $ref: '#/components/schemas/Folder' required: true responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/Folder' '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '403': description: >- NOT_AVAILABLE: The resource you are requesting is temporarily unavailable '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second '500': description: |- UNKNOWN: Issue in Brightcove system; try again later. TIMEOUT: Server likely too busy; try again later. deprecated: false security: - BC_OAuth2: - video-cloud/video/update x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false delete: tags: - Folders summary: Delete Folder description: 'Delete a folder ' operationId: DeleteFolder parameters: - $ref: '#/components/parameters/AccountId' - name: folder_id in: path description: the folder ID required: true style: simple explode: false schema: type: string - name: name in: query description: 'name of the folder (must be unique in the account)' required: true style: form explode: true schema: type: string - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' responses: '201': description: '201' '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '403': description: >- NOT_AVAILABLE: The resource you are requesting is temporarily unavailable '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second '500': description: |- UNKNOWN: Issue in Brightcove system; try again later. TIMEOUT: Server likely too busy; try again later. deprecated: false security: - BC_OAuth2: - video-cloud/video/delete x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false '/v1/accounts/{{account_id}}/folders/{{folder_id}}/videos': get: tags: - Folders summary: Get Videos in Folder description: 'Gets list of video objects in a folder ' operationId: GetVideosInFolder parameters: - $ref: '#/components/parameters/AccountId' - name: folder_id in: path description: the folder ID. required: true style: simple explode: false schema: type: string - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' - $ref: '#/components/parameters/Limit' - $ref: '#/components/parameters/Offset' - $ref: '#/components/parameters/VideoSort' responses: '200': description: Videos in the folder content: application/json: schema: type: array items: $ref: '#/components/schemas/Video' description: Videos in the folder '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '403': description: >- NOT_AVAILABLE: The resource you are requesting is temporarily unavailable '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second '500': description: |- UNKNOWN: Issue in Brightcove system; try again later. TIMEOUT: Server likely too busy; try again later. deprecated: false security: - BC_OAuth2: - video-cloud/video/read x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false '/v1/accounts/{{account_id}}/folders/{{folder_id}}/videos/{{video_id}}': put: tags: - Folders summary: Add Video to Folder description: 'Add a video to a folder ' operationId: AddVideoToFolder parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/FolderId' - $ref: '#/components/parameters/VideoId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' responses: '204': description: 'NO_CONTENT' '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '403': description: >- NOT_AVAILABLE: The resource you are requesting is temporarily unavailable '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second '500': description: |- UNKNOWN: Issue in Brightcove system; try again later. TIMEOUT: Server likely too busy; try again later. deprecated: false security: - BC_OAuth2: - video-cloud/video/update x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false delete: tags: - Folders summary: Remove Video from Folder description: 'Remove a video from a folder ' operationId: RemoveVideoFromFolder parameters: - $ref: '#/components/parameters/AccountId' - name: folder_id in: path description: the folder ID required: true style: simple explode: false schema: type: string - name: video_id in: path description: the video ID required: true style: simple explode: false schema: type: string - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' responses: '201': description: Video successfully removed from the folder '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '403': description: >- NOT_AVAILABLE: The resource you are requesting is temporarily unavailable '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second '500': description: |- UNKNOWN: Issue in Brightcove system; try again later. TIMEOUT: Server likely too busy; try again later. deprecated: false security: - BC_OAuth2: - video-cloud/video/update x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false '/v1/accounts/{{account_id}}/labels': post: tags: - Labels summary: Create a Label description: 'Create a new label for the account ' operationId: CreateLabel parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' requestBody: description: Create a new label for the account content: application/json: schema: $ref: '#/components/schemas/LabelPath' required: true responses: '201': description: Label created content: application/json: schema: $ref: '#/components/schemas/LabelPath' '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '403': description: >- NOT_AVAILABLE: The resource you are requesting is temporarily unavailable '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second '500': description: |- UNKNOWN: Issue in Brightcove system; try again later. TIMEOUT: Server likely too busy; try again later. deprecated: false security: - BC_OAuth2: - video-cloud/video/create x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false get: tags: - Labels summary: Get Labels description: 'Gets list of labels for the account ' operationId: GetLabels parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/Authorization' responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/LabelsList' '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '403': description: >- NOT_AVAILABLE: The resource you are requesting is temporarily unavailable '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second '500': description: |- UNKNOWN: Issue in Brightcove system; try again later. TIMEOUT: Server likely too busy; try again later. deprecated: false security: - BC_OAuth2: - video-cloud/video/read x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false '/v1/accounts/{{account_id}}/labels/by_path/{{label_path}}': patch: tags: - Labels summary: Update a Label description: 'Update a label for the account' operationId: UpdateLabel parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' - $ref: '#/components/parameters/label_path' requestBody: description: Update a label for the account content: application/json: schema: $ref: '#/components/schemas/LabelUpdate' required: true responses: '201': description: Label updated content: application/json: schema: $ref: '#/components/schemas/LabelPath' '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '403': description: >- NOT_AVAILABLE: The resource you are requesting is temporarily unavailable '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second '500': description: |- UNKNOWN: Issue in Brightcove system; try again later. TIMEOUT: Server likely too busy; try again later. deprecated: false security: - BC_OAuth2: - video-cloud/video/create x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false delete: tags: - Labels summary: Delete Label description: 'Delete a label' operationId: deleteLabel parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/Authorization' - $ref: '#/components/parameters/label_path' responses: '204': description: '204 No Content' '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '403': description: >- NOT_AVAILABLE: The resource you are requesting is temporarily unavailable '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second '500': description: |- UNKNOWN: Issue in Brightcove system; try again later. TIMEOUT: Server likely too busy; try again later. deprecated: false security: - BC_OAuth2: - video-cloud/video/read x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false '/v1/accounts/{{account_id}}/subscriptions': get: tags: - Notifications summary: Get Subscriptions List description: 'Get a list of all notification subscriptions for the account ' operationId: GetSubscriptionsList parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' responses: '200': description: '200' content: application/json: schema: type: array items: $ref: '#/components/schemas/Subscription' '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '403': description: >- NOT_AVAILABLE: The resource you are requesting is temporarily unavailable '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second '500': description: |- UNKNOWN: Issue in Brightcove system; try again later. TIMEOUT: Server likely too busy; try again later. deprecated: false security: - BC_OAuth2: - video-cloud/notifications/all x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false post: tags: - Notifications summary: Create Subscription description: >- Establishes up to 10 endpoints that video changes should be sent to. Any change in video metadata will trigger a video change event and a notification - changes to assets used by the video will not trigger change events. operationId: CreateSubscription parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' requestBody: description: >- Establishes up to 10 endpoints that video changes should be sent to. Any change in video metadata will trigger a video change event and a notification - changes to assets used by the video will not trigger change events. content: application/json: schema: $ref: '#/components/schemas/Subscription' required: true responses: '201': description: Subscription created content: application/json: schema: $ref: '#/components/schemas/Subscription' '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '403': description: >- NOT_AVAILABLE: The resource you are requesting is temporarily unavailable '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '422': description: >- Unprocessable_Entity: 1) You already have a subscription for the video-change event that delivers to that address; 2) the endpoint or events field is missing from the request; 3) you already have 10 subscriptions to this event '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second '500': description: |- UNKNOWN: Issue in Brightcove system; try again later. TIMEOUT: Server likely too busy; try again later. deprecated: false security: - BC_OAuth2: - video-cloud/notifications/all x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false '/v1/accounts/{{account_id}}/subscriptions/{{subscription_id}}': get: tags: - Notifications summary: Get Subscription description: 'Get a notification subscription for the account ' operationId: GetSubscription parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/SubscriptionId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/Subscription' '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '403': description: >- NOT_AVAILABLE: The resource you are requesting is temporarily unavailable '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second '500': description: |- UNKNOWN: Issue in Brightcove system; try again later. TIMEOUT: Server likely too busy; try again later. deprecated: false security: - BC_OAuth2: - video-cloud/notifications/all x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false delete: tags: - Notifications summary: Delete Subscription description: 'Delete a notification subscription for the account ' operationId: DeleteSubscription parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/SubscriptionId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' responses: '204': description: Item was deleted '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '403': description: >- NOT_AVAILABLE: The resource you are requesting is temporarily unavailable '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second '500': description: |- UNKNOWN: Issue in Brightcove system; try again later. TIMEOUT: Server likely too busy; try again later. deprecated: false security: - BC_OAuth2: - video-cloud/notifications/all x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false '/v1/accounts/{{account_id}}/videos/{{video_id}}/assets': get: tags: - Media Assets summary: Get Assets description: >- Gets assets for a given video. Note: you can use `/videos/ref:reference_id` instead of `/videos/video_id` operationId: GetAssets parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/VideoId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' responses: '200': description: '200' content: application/json: schema: type: array items: $ref: '#/components/schemas/VideoAsset' '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '403': description: >- NOT_AVAILABLE: The resource you are requesting is temporarily unavailable '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second '500': description: |- UNKNOWN: Issue in Brightcove system; try again later. TIMEOUT: Server likely too busy; try again later. deprecated: false security: - BC_OAuth2: - video-cloud/video/read x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false '/v1/accounts/{{account_id}}/videos/{{video_id}}/assets/dynamic_renditions': get: tags: - Media Assets summary: 'Get Dynamic Renditions (renditions for Dynamic Delivery videos)' description: >- Gets a list of dynamic renditions for a Dynamic Delivery video. Note: you can use `/videos/ref:reference_id` instead of `/videos/video_id` operationId: GetDynamicRenditions parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/VideoId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' responses: '200': description: '200' content: application/json: schema: type: array items: $ref: '#/components/schemas/DynamicRendition' '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '403': description: >- NOT_AVAILABLE: The resource you are requesting is temporarily unavailable '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second '500': description: |- UNKNOWN: Issue in Brightcove system; try again later. TIMEOUT: Server likely too busy; try again later. deprecated: false security: - BC_OAuth2: - video-cloud/video/read x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false '/v1/accounts/{{account_id}}/videos/{{video_id}}/assets/renditions': post: tags: - Media Assets summary: Add Rendition description: >- Add a remote rendition to the given video. Note: you can use `/videos/ref:reference_id` instead of `/videos/video_id` operationId: AddRendition parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/VideoId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' requestBody: description: >- Add a remote rendition to the given video. Note: you can use `/videos/ref:reference_id` instead of `/videos/video_id` content: application/json: schema: $ref: '#/components/schemas/VideoAsset' required: true responses: '201': description: Rendition asset created content: application/json: schema: $ref: '#/components/schemas/VideoAsset' '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '403': description: >- NOT_AVAILABLE: The resource you are requesting is temporarily unavailable MIXED_REMOTE_NOT_ALLOWED: Remote renditions may not be added to ingested videos '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '409': description: 'REFERENCE_ID_IN_USE: The specified reference id is already in use ' '422': description: 'VALIDATION_ERROR: remote_url' '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second '500': description: |- UNKNOWN: Issue in Brightcove system; try again later. TIMEOUT: Server likely too busy; try again later. deprecated: false security: - BC_OAuth2: - video-cloud/video/update x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false '/v1/accounts/{{account_id}}/videos/{{video_id}}/assets/renditions/{{asset_id}}': get: tags: - Media Assets summary: Get Rendition description: >- Gets a specified rendition for a video. Note: you can use `/videos/ref:reference_id` instead of `/videos/video_id` operationId: GetRendition parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/VideoId' - $ref: '#/components/parameters/AssetId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/VideoAsset' '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '403': description: >- NOT_AVAILABLE: The resource you are requesting is temporarily unavailable '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second '500': description: |- UNKNOWN: Issue in Brightcove system; try again later. TIMEOUT: Server likely too busy; try again later. deprecated: false security: - BC_OAuth2: - video-cloud/video/read x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false patch: tags: - Media Assets summary: Update Rendition description: >- Update the location for a remote rendition. Note: you can use `/videos/ref:reference_id` instead of `/videos/video_id` operationId: UpdateRendition parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/VideoId' - $ref: '#/components/parameters/AssetId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' requestBody: description: >- Update the location for a remote rendition. Note: you can use `/videos/ref:reference_id` instead of `/videos/video_id` content: application/json: schema: $ref: '#/components/schemas/VideoAsset' required: true responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/VideoAsset' '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '403': description: >- NOT_AVAILABLE: The resource you are requesting is temporarily unavailable MIXED_REMOTE_NOT_ALLOWED: Remote renditions may not be added to ingested videos '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '409': description: 'REFERENCE_ID_IN_USE: The specified reference id is already in use ' '422': description: 'VALIDATION_ERROR: remote_url' '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second '500': description: |- UNKNOWN: Issue in Brightcove system; try again later. TIMEOUT: Server likely too busy; try again later. deprecated: false security: - BC_OAuth2: - video-cloud/video/update x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false delete: tags: - Media Assets summary: Delete Rendition description: >- Deletes a remote rendition for the given video. Note: this operation is **only for remote renditions for remote asset videos** do *not* use it for renditions created by Video Cloud for ingested videos! operationId: DeleteRendition parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/VideoId' - $ref: '#/components/parameters/AssetId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' responses: '204': description: Item was deleted '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '403': description: >- NOT_AVAILABLE: The resource you are requesting is temporarily unavailable '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second '500': description: |- UNKNOWN: Issue in Brightcove system; try again later. TIMEOUT: Server likely too busy; try again later. deprecated: false security: - BC_OAuth2: - video-cloud/video/update x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false '/v1/accounts/{{account_id}}/videos/{{video_id}}/assets/hls_manifest': get: tags: - Media Assets summary: Get HLS Manifest List description: >- Gets the `hls_manifest` for a given video. Notes: 1) you can use `/videos/ref:reference_id` instead of `/videos/video_id` 2) this method only returns a remote asset HLS manifest, not manifests for ingested videos operationId: GetHlsManifestList parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/VideoId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' responses: '200': description: '200' content: application/json: schema: type: array items: $ref: '#/components/schemas/Manifest' '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '403': description: >- NOT_AVAILABLE: The resource you are requesting is temporarily unavailable '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second '500': description: |- UNKNOWN: Issue in Brightcove system; try again later. TIMEOUT: Server likely too busy; try again later. deprecated: false security: - BC_OAuth2: - video-cloud/video/read x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false post: tags: - Media Assets summary: Add HLS Manifest description: >- Adds the location of an hls_manifest file for a remote asset. Note: you can use `/videos/ref:reference_id` instead of `/videos/video_id` operationId: AddHlsManifest parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/VideoId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' requestBody: description: >- Adds the location of an hls_manifest file for a remote asset. Note: you can use `/videos/ref:reference_id` instead of `/videos/video_id` content: application/json: schema: $ref: '#/components/schemas/Manifest' required: true responses: '201': description: Manifest asset created content: application/json: schema: $ref: '#/components/schemas/Manifest' '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '403': description: >- NOT_AVAILABLE: The resource you are requesting is temporarily unavailable '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '422': description: 'VALIDATION_ERROR: remote_url' '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second '500': description: |- UNKNOWN: Issue in Brightcove system; try again later. TIMEOUT: Server likely too busy; try again later. deprecated: false security: - BC_OAuth2: - video-cloud/video/update x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false '/v1/accounts/{{account_id}}/videos/{{video_id}}/assets/hls_manifest/{{asset_id}}': get: tags: - Media Assets summary: Get HLS Manifest description: >- Gets an hls_manifest for a given video. Note: you can use `/videos/ref:reference_id` instead of `/videos/video_id` operationId: GetHlsManifest parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/VideoId' - $ref: '#/components/parameters/AssetId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/Manifest' '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '403': description: >- NOT_AVAILABLE: The resource you are requesting is temporarily unavailable '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second '500': description: |- UNKNOWN: Issue in Brightcove system; try again later. TIMEOUT: Server likely too busy; try again later. deprecated: false security: - BC_OAuth2: - video-cloud/video/read x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false patch: tags: - Media Assets summary: Update HLS Manifest description: >- Updates the location of a remote hls_manifest file for a remote asset. Note: you can use `/videos/ref:reference_id` instead of `/videos/video_id` operationId: UpdateHlsManifest parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/VideoId' - $ref: '#/components/parameters/AssetId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' requestBody: description: >- Updates the location of a remote hls_manifest file for a remote asset. Note: you can use `/videos/ref:reference_id` instead of `/videos/video_id` content: application/json: schema: $ref: '#/components/schemas/Manifest' required: true responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/Manifest' '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '403': description: >- NOT_AVAILABLE: The resource you are requesting is temporarily unavailable '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '409': description: 'REFERENCE_ID_IN_USE: The specified reference id is already in use ' '422': description: 'VALIDATION_ERROR: remote_url' '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second '500': description: |- UNKNOWN: Issue in Brightcove system; try again later. TIMEOUT: Server likely too busy; try again later. deprecated: false security: - BC_OAuth2: - video-cloud/video/update x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false delete: tags: - Media Assets summary: Delete HLS Manifest description: >- Deletes an hls_manifest file for a remote asset. Note: you can use `/videos/ref:reference_id` instead of `/videos/video_id` operationId: DeleteHlsManifest parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/VideoId' - $ref: '#/components/parameters/AssetId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' responses: '204': description: Item was deleted '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '403': description: >- NOT_AVAILABLE: The resource you are requesting is temporarily unavailable '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second '500': description: |- UNKNOWN: Issue in Brightcove system; try again later. TIMEOUT: Server likely too busy; try again later. deprecated: false security: - BC_OAuth2: - video-cloud/video/update x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false '/v1/accounts/{{account_id}}/videos/{{video_id}}/assets/dash_manifests': get: tags: - Media Assets summary: Get DASH Manifest List description: >- Gets the dash_manifests for a given video. Notes: 1. you can have multiple dash manifests with profiles; you can have only one dash manifest without a profile, but one manifest without a profile can be combined with multiple manifests with profiles; 2. all manifests intended to be used with the CMS API should include a profile - only DASH manifests with profiles will be returned by the CMS API - only a single DASH manifest without a profile will be returned by the Media API 3. you can use /videos/ref:reference_id instead of /videos/video_id operationId: GetDashManifestList parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/VideoId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' responses: '200': description: '200' content: application/json: schema: type: array items: $ref: '#/components/schemas/Manifest' '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '403': description: >- NOT_AVAILABLE: The resource you are requesting is temporarily unavailable '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second '500': description: |- UNKNOWN: Issue in Brightcove system; try again later. TIMEOUT: Server likely too busy; try again later. deprecated: false security: - BC_OAuth2: - video-cloud/video/read x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false post: tags: - Media Assets summary: Add DASH Manifest description: >- Adds a location for a remote DASH manifest Notes: 1. you can have multiple dash manifests with profiles; you can have only one dash manifest without a profile, but one manifest without a profile can be combined with multiple manifests with profiles; 2. all manifests intended to be used with the CMS API should include a profile - only DASH manifests with profiles will be returned by the CMS API - only a single DASH manifest without a profile will be returned by the Media API 3. you can use /videos/ref:reference_id instead of /videos/video_id operationId: AddDashManifest parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/VideoId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' requestBody: description: >- Adds a location for a remote DASH manifest Notes: 1. you can have multiple dash manifests with profiles; you can have only one dash manifest without a profile, but one manifest without a profile can be combined with multiple manifests with profiles; 2. all manifests intended to be used with the CMS API should include a profile - only DASH manifests with profiles will be returned by the CMS API - only a single DASH manifest without a profile will be returned by the Media API 3. you can use /videos/ref:reference_id instead of /videos/video_id content: application/json: schema: $ref: '#/components/schemas/Manifest' required: true responses: '201': description: Manifest asset created content: application/json: schema: $ref: '#/components/schemas/Manifest' '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '403': description: >- NOT_AVAILABLE: The resource you are requesting is temporarily unavailable '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '422': description: 'VALIDATION_ERROR: remote_url' '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second '500': description: |- UNKNOWN: Issue in Brightcove system; try again later. TIMEOUT: Server likely too busy; try again later. deprecated: false security: - BC_OAuth2: - video-cloud/video/update x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false '/v1/accounts/{{account_id}}/videos/{{video_id}}/assets/dash_manifests/{{asset_id}}': get: tags: - Media Assets summary: Get DASH Manifest description: >- Gets a dash_manifest for a given video. Note: you can use `/videos/ref:reference_id` instead of `/videos/video_id` operationId: GetDashManifest parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/VideoId' - $ref: '#/components/parameters/AssetId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/Manifest' '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '403': description: >- NOT_AVAILABLE: The resource you are requesting is temporarily unavailable '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second '500': description: |- UNKNOWN: Issue in Brightcove system; try again later. TIMEOUT: Server likely too busy; try again later. deprecated: false security: - BC_OAuth2: - video-cloud/video/read x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false patch: tags: - Media Assets summary: Update DASH Manifest description: >- Updates the location of a remote dash_manifest file for a remote asset. Note: you can use `/videos/ref:reference_id` instead of `/videos/video_id` operationId: UpdateDashManifest parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/VideoId' - $ref: '#/components/parameters/AssetId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' requestBody: description: >- Updates the location of a remote dash_manifest file for a remote asset. Note: you can use /videos/ref:reference_id instead of /videos/video_id content: application/json: schema: $ref: '#/components/schemas/Manifest' required: true responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/Manifest' '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '403': description: >- NOT_AVAILABLE: The resource you are requesting is temporarily unavailable '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '409': description: 'REFERENCE_ID_IN_USE: The specified reference id is already in use ' '422': description: 'VALIDATION_ERROR: remote_url' '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second '500': description: |- UNKNOWN: Issue in Brightcove system; try again later. TIMEOUT: Server likely too busy; try again later. deprecated: false security: - BC_OAuth2: - video-cloud/video/update x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false delete: tags: - Media Assets summary: Delete DASH Manifest description: >- Deletes an dash_manifest file for a remote asset. Note: you can use `/videos/ref:reference_id` instead of `/videos/video_id` operationId: DeleteDashManifest parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/VideoId' - $ref: '#/components/parameters/AssetId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' responses: '204': description: Item was deleted '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '403': description: >- NOT_AVAILABLE: The resource you are requesting is temporarily unavailable '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second '500': description: |- UNKNOWN: Issue in Brightcove system; try again later. TIMEOUT: Server likely too busy; try again later. deprecated: false security: - BC_OAuth2: - video-cloud/video/update x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false '/v1/accounts/{{account_id}}/videos/{{video_id}}/assets/hds_manifest': get: tags: - Media Assets summary: Get HDS Manifest List description: >- Gets the hds_manifest file for a given video. Note: you can use `/videos/ref:reference_id` instead of `/videos/video_id` operationId: GetHdsManifestList parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/VideoId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' responses: '200': description: '200' content: application/json: schema: type: array items: $ref: '#/components/schemas/Manifest' '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '403': description: >- NOT_AVAILABLE: The resource you are requesting is temporarily unavailable '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second '500': description: |- UNKNOWN: Issue in Brightcove system; try again later. TIMEOUT: Server likely too busy; try again later. deprecated: false security: - BC_OAuth2: - video-cloud/video/read x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false post: tags: - Media Assets summary: Add HDS Manifest description: >- Adds the location of an hds_manifest file for a remote asset. Note: you can use `/videos/ref:reference_id` instead of `/videos/video_id` operationId: AddHdsManifest parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/VideoId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' requestBody: description: >- Adds the location of an hds_manifest file for a remote asset. Note: you can use `/videos/ref:reference_id` instead of `/videos/video_id` content: application/json: schema: $ref: '#/components/schemas/Manifest' required: true responses: '201': description: Manifest asset created content: application/json: schema: $ref: '#/components/schemas/Manifest' '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '403': description: >- NOT_AVAILABLE: The resource you are requesting is temporarily unavailable '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '422': description: 'VALIDATION_ERROR: remote_url' '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second '500': description: |- UNKNOWN: Issue in Brightcove system; try again later. TIMEOUT: Server likely too busy; try again later. deprecated: false security: - BC_OAuth2: - video-cloud/video/update x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false '/v1/accounts/{{account_id}}/videos/{{video_id}}/assets/hds_manifest/{{asset_id}}': get: tags: - Media Assets summary: Get HDS Manifest description: >- Gets the hds_manifest file for a given video. Note: you can use `/videos/ref:reference_id` instead of `/videos/video_id` operationId: GetHdsManifest parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/VideoId' - $ref: '#/components/parameters/AssetId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/Manifest' '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '403': description: >- NOT_AVAILABLE: The resource you are requesting is temporarily unavailable '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second '500': description: |- UNKNOWN: Issue in Brightcove system; try again later. TIMEOUT: Server likely too busy; try again later. deprecated: false security: - BC_OAuth2: - video-cloud/video/read x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false patch: tags: - Media Assets summary: Update HDS Manifest description: >- Updates the location of a remote hds_manifest file for a remote asset. Note: you can use `/videos/ref:reference_id` instead of `/videos/video_id` operationId: UpdateHdsManifest parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/VideoId' - $ref: '#/components/parameters/AssetId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' requestBody: description: >- Updates the location of a remote hds_manifest file for a remote asset. Note: you can use `/videos/ref:reference_id` instead of `/videos/video_id` content: application/json: schema: $ref: '#/components/schemas/Manifest' required: true responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/Manifest' '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '403': description: >- NOT_AVAILABLE: The resource you are requesting is temporarily unavailable '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '409': description: 'REFERENCE_ID_IN_USE: The specified reference id is already in use ' '422': description: 'VALIDATION_ERROR: remote_url' '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second '500': description: |- UNKNOWN: Issue in Brightcove system; try again later. TIMEOUT: Server likely too busy; try again later. deprecated: false security: - BC_OAuth2: - video-cloud/video/update x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false delete: tags: - Media Assets summary: Delete HDS Manifest description: >- Deletes an hds_manifest file for a remote asset. Note: you can use `/videos/ref:reference_id` instead of `/videos/video_id` operationId: DeleteHdsManifest parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/VideoId' - $ref: '#/components/parameters/AssetId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' responses: '204': description: Item was deleted '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '403': description: >- NOT_AVAILABLE: The resource you are requesting is temporarily unavailable '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second '500': description: |- UNKNOWN: Issue in Brightcove system; try again later. TIMEOUT: Server likely too busy; try again later. deprecated: false security: - BC_OAuth2: - video-cloud/video/update x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false '/v1/accounts/{{account_id}}/videos/{{video_id}}/assets/ism_manifest': get: tags: - Media Assets summary: Get ISM Manifest List description: >- Gets the ism_manifest for a given video. Note: you can use `/videos/ref:reference_id` instead of `/videos/video_id` operationId: GetIsmManifestList parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/VideoId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' responses: '200': description: '200' content: application/json: schema: type: array items: $ref: '#/components/schemas/Manifest' '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '403': description: >- NOT_AVAILABLE: The resource you are requesting is temporarily unavailable '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second '500': description: |- UNKNOWN: Issue in Brightcove system; try again later. TIMEOUT: Server likely too busy; try again later. deprecated: false security: - BC_OAuth2: - video-cloud/video/read x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false post: tags: - Media Assets summary: Add ISM Manifest description: >- Adds the location of an ism_manifest file for a remote asset. Note: you can use `/videos/ref:reference_id` instead of `/videos/video_id` operationId: AddIsmManifest parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/VideoId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' requestBody: description: >- Adds the location of an ism_manifest file for a remote asset. Note: you can use `/videos/ref:reference_id` instead of `/videos/video_id` content: application/json: schema: $ref: '#/components/schemas/Manifest' required: true responses: '201': description: Manifest asset created content: application/json: schema: $ref: '#/components/schemas/Manifest' '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '403': description: >- NOT_AVAILABLE: The resource you are requesting is temporarily unavailable '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '422': description: 'VALIDATION_ERROR: remote_url' '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second '500': description: |- UNKNOWN: Issue in Brightcove system; try again later. TIMEOUT: Server likely too busy; try again later. deprecated: false security: - BC_OAuth2: - video-cloud/video/update x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false '/v1/accounts/{{account_id}}/videos/{{video_id}}/assets/ism_manifest/{{asset_id}}': get: tags: - Media Assets summary: Get ISM Manifest description: >- Gets an ism_manifest for a given video. Note: you can use `/videos/ref:reference_id` instead of `/videos/video_id` operationId: GetIsmManifest parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/VideoId' - $ref: '#/components/parameters/AssetId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/Manifest' '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '403': description: >- NOT_AVAILABLE: The resource you are requesting is temporarily unavailable '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second '500': description: |- UNKNOWN: Issue in Brightcove system; try again later. TIMEOUT: Server likely too busy; try again later. deprecated: false security: - BC_OAuth2: - video-cloud/video/read x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false patch: tags: - Media Assets summary: Update ISM Manifest description: >- Updates the location of a remote ism_manifest file for a remote asset. Note: you can use `/videos/ref:reference_id` instead of `/videos/video_id` operationId: UpdateIsmManifest parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/VideoId' - $ref: '#/components/parameters/AssetId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' requestBody: description: >- Updates the location of a remote ism_manifest file for a remote asset. Note: you can use `/videos/ref:reference_id` instead of `/videos/video_id` content: application/json: schema: $ref: '#/components/schemas/Manifest' required: true responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/Manifest' '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '403': description: >- NOT_AVAILABLE: The resource you are requesting is temporarily unavailable '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '409': description: 'REFERENCE_ID_IN_USE: The specified reference id is already in use ' '422': description: 'VALIDATION_ERROR: remote_url' '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second '500': description: |- UNKNOWN: Issue in Brightcove system; try again later. TIMEOUT: Server likely too busy; try again later. deprecated: false security: - BC_OAuth2: - video-cloud/video/update x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false delete: tags: - Media Assets summary: Delete ISM Manifest description: >- Deletes an ism_manifest file for a remote asset. Note: you can use `/videos/ref:reference_id` instead of `/videos/video_id` operationId: DeleteIsmManifest parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/VideoId' - $ref: '#/components/parameters/AssetId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' responses: '204': description: Item was deleted '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '403': description: >- NOT_AVAILABLE: The resource you are requesting is temporarily unavailable '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second '500': description: |- UNKNOWN: Issue in Brightcove system; try again later. TIMEOUT: Server likely too busy; try again later. deprecated: false security: - BC_OAuth2: - video-cloud/video/update x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false '/v1/accounts/{{account_id}}/videos/{{video_id}}/assets/ismc_manifest': get: tags: - Media Assets summary: Get ISMC Manifest List description: >- Gets the ismc_manifest files for a given video. Note: you can use `/videos/ref:reference_id` instead of `/videos/video_id` operationId: GetIsmcManifestList parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/VideoId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' responses: '200': description: '200' content: application/json: schema: type: array items: $ref: '#/components/schemas/Manifest' '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '403': description: >- NOT_AVAILABLE: The resource you are requesting is temporarily unavailable '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second '500': description: |- UNKNOWN: Issue in Brightcove system; try again later. TIMEOUT: Server likely too busy; try again later. deprecated: false security: - BC_OAuth2: - video-cloud/video/read x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false post: tags: - Media Assets summary: Add ISMC Manifest description: >- Adds the location of an ismc_manifest file for a remote asset. Note: you can use `/videos/ref:reference_id` instead of `/videos/video_id` operationId: AddIsmcManifest parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/VideoId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' requestBody: description: >- Adds the location of an ismc_manifest file for a remote asset. Note: you can use `/videos/ref:reference_id` instead of `/videos/video_id` content: application/json: schema: $ref: '#/components/schemas/Manifest' required: true responses: '201': description: Manifest asset created content: application/json: schema: $ref: '#/components/schemas/Manifest' '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '403': description: >- NOT_AVAILABLE: The resource you are requesting is temporarily unavailable '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '422': description: 'VALIDATION_ERROR: remote_url' '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second '500': description: |- UNKNOWN: Issue in Brightcove system; try again later. TIMEOUT: Server likely too busy; try again later. deprecated: false security: - BC_OAuth2: - video-cloud/video/update x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false '/v1/accounts/{{account_id}}/videos/{{video_id}}/assets/ismc_manifest/{{asset_id}}': get: tags: - Media Assets summary: Get ISMC Manifest description: >- Gets the ismc_manifest file for a given video. Note: you can use `/videos/ref:reference_id` instead of `/videos/video_id` operationId: GetIsmcManifest parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/VideoId' - $ref: '#/components/parameters/AssetId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/Manifest' '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '403': description: >- NOT_AVAILABLE: The resource you are requesting is temporarily unavailable '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second '500': description: |- UNKNOWN: Issue in Brightcove system; try again later. TIMEOUT: Server likely too busy; try again later. deprecated: false security: - BC_OAuth2: - video-cloud/video/read x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false patch: tags: - Media Assets summary: Update ISMC Manifest description: >- Updates the location of a remote ismc_manifest file for a remote asset. Note: you can use `/videos/ref:reference_id` instead of `/videos/video_id` operationId: UpdateIsmcManifest parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/VideoId' - $ref: '#/components/parameters/AssetId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' requestBody: description: >- Updates the location of a remote ismc_manifest file for a remote asset. Note: you can use /videos/ref:reference_id instead of /videos/video_id content: application/json: schema: $ref: '#/components/schemas/Manifest' required: true responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/Manifest' '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '403': description: >- NOT_AVAILABLE: The resource you are requesting is temporarily unavailable '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '409': description: 'REFERENCE_ID_IN_USE: The specified reference id is already in use ' '422': description: 'VALIDATION_ERROR: remote_url' '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second '500': description: |- UNKNOWN: Issue in Brightcove system; try again later. TIMEOUT: Server likely too busy; try again later. deprecated: false security: - BC_OAuth2: - video-cloud/video/update x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false delete: tags: - Media Assets summary: Delete ISMC Manifest description: >- Deletes an ismc_manifest file for a remote asset. Note: you can use `/videos/ref:reference_id` instead of `/videos/video_id` operationId: DeleteIsmcManifest parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/VideoId' - $ref: '#/components/parameters/AssetId' - $ref: '#/components/parameters/ContentType' - $ref: '#/components/parameters/Authorization' responses: '204': description: Item was deleted '401': description: >- UNAUTHORIZED: Authentication failed; check to make sure your client credentials were correct for the access token '403': description: >- NOT_AVAILABLE: The resource you are requesting is temporarily unavailable '404': description: >- RESOURCE_NOT_FOUND: The api could not find the resource you requested '405': description: >- METHOD_NOT_ALLOWED: The HTTP method specified is not allowed for this endpoint '429': description: >- TOO_MANY_REQUESTS: You are submitting too many simultaneous requests or too many requests per second '500': description: |- UNKNOWN: Issue in Brightcove system; try again later. TIMEOUT: Server likely too busy; try again later. deprecated: false security: - BC_OAuth2: - video-cloud/video/update x-operation-settings: CollectParameters: false AllowDynamicQueryParameters: false AllowDynamicFormParameters: false IsMultiContentStreaming: false components: parameters: AccountId: description: Video Cloud account ID. explode: false in: path name: account_id required: true schema: type: string style: simple AffiliateAccountId: description: Video Cloud affiliate account ID for media sharing relationships explode: false in: path name: affiliate_account_id required: true schema: type: string style: simple AssetId: description: The asset ID explode: false in: path name: asset_id required: true schema: type: string style: simple AudioTrackId: description: 'the id for the audio track, formed as `language_variant`' explode: false in: path name: audio_track_id required: true schema: type: string style: simple Authorization: description: 'Authorization: Bearer {access_token} - see [Getting Access Tokens](/oauth/code-samples/oauth-api-sample-get-access-token.html)' explode: false in: header name: Authorization required: true schema: type: string style: simple ChannelName: description: The name of the channel - usually `default` explode: false in: path name: channel_name required: true schema: type: string style: simple ContentType: description: 'Content-Type: application/json' example: application/json explode: false in: header name: Content-Type required: true schema: default: application/json type: string style: simple FolderId: description: Folder ID. explode: false in: path name: folder_id required: true schema: type: string style: simple custom_field_id: description: Custom Field ID. explode: false in: path name: custom_field_id required: true schema: type: string style: simple GetStatusVideoId: description: |- Video ID. For example: - https://cms.api.brightcove.com/v1/accounts/{{account_id}}/videos/9827342837937 explode: false in: path name: video_id required: true schema: type: string style: simple include_variants: description: 'Whether to include the language variants in the response' explode: true in: query name: include_variants schema: default: true type: boolean style: form JobId: description: The Job ID for the ingest job (returned in the response to an ingest request) explode: false in: path name: job_id required: true schema: type: string style: simple label_path: description: >- 'The path for a label to update or delete. Note that the operation performed is on the last item in the path, so for example, if you specify the path `/nature/birds/seabirds`, only the `seabirds` label will be updated/deleted, but if you specify the path as `/nature/birds`, `birds` and any sub-labels of `birds` will be updated/deleted.' explode: false in: path name: label_path required: true schema: type: string style: simple Language: description: 'The language for the variant in the language-country code format (examples: en-US, es-ES)' explode: false in: path name: language required: true schema: type: string style: simple Limit: description: 'Number of items to return - see [Paging Search Results](/cms/searching/using-cms-api-page-search-results.html) for more information' explode: true in: query name: limit schema: default: 20 example: 20 format: int32 maximum: 100 minimum: 1 type: integer style: form Limit_Playlist_Videos: description: 'Number of items to return - see [Get videos in a playlist](/cms/managing-videos/managing-playlists-using-cms-api.html#get_count_of_videos) for more information' explode: true in: query name: limit schema: default: 100 example: 20 format: int32 maximum: 100 minimum: 1 type: integer style: form MasterAccountId: description: Video Cloud master account ID for media sharing relationships explode: false in: path name: master_account_id required: true schema: type: string style: simple Offset: description: 'Number of items to skip - see [Paging Search Results](/cms/searching/using-cms-api-page-search-results.html) for more information' explode: true in: query name: offset schema: default: 0 example: 20 format: int32 type: integer style: form PlaylistId: description: Playlist ID. explode: false in: path name: playlist_id required: true schema: type: string style: simple PlaylistSort: description: 'Field to sort results by - if absent and there is a search string, results are sorted by relevance or if there is no search string, results are sorted by `-updated_at` - note: to sort in descending order, preface the field name with a minus(`-`) sign. If the `q=` param is missing, the sort param will be ignored. Also if sort is set to an unsupported field, the quest will fail with an error' explode: true in: query name: sort schema: default: '-updated_at' enum: - name - -name - updated_at - -updated_at example: name type: string x-enum-elements: - description: The playlist name name: name - description: Date playlist was last updated (by a user or the system) name: updated_at style: form Search: description: 'Search string - see [search guide](/cms/searching/cmsplayback-api-videos-search.html) for details' explode: true in: query name: q schema: example: '+name:Birds' type: string style: form Query: description: 'Search string - see [search guide](/cms/searching/cms-and-playback-apis-video-search-v2.html) for details' explode: true in: query name: query schema: example: '+name:Birds' type: string style: form SearchPlaylists: description: 'Search string - see [playlist search guide](/cms/searching/cms-api-playlists-search.html) for details' explode: true in: query name: q schema: example: 'name:%28Really%20Short%20Videos%29%20type:EXPLICIT' type: string style: form SubscriptionId: description: Subscription ID. explode: false in: path name: subscription_id required: true schema: type: string style: simple Label: description: 'Image type' explode: false in: path name: label required: true schema: type: string enum: - poster - thumbnail - wide - ultra-wide - portrait - square style: simple VideoId: description: 'Video ID (specified as `{video_id}}`).' explode: false in: path name: video_id required: true schema: type: string style: simple VideoIds: description: |- One or more video ids or one reference id. If reference ids, the syntax is `ref:my_ref_id`. Note that you may include multiple video ids, but only one reference id. For example: - https://cms.api.brightcove.com/v1/accounts/{{account_id}}/videos/9827342837937 - https://cms.api.brightcove.com/v1/accounts/{{account_id}}/videos/9827342837937,47584736360 - https://cms.api.brightcove.com/v1/accounts/{{account_id}}/videos/ref:my_ref_id explode: false in: path name: video_ids required: true schema: type: string style: simple VideoSort: description: |- Field to sort results by - if absent and there is a search string, results are sorted by relevance or if there is no search string, results are sorted by `-updated_at`. Notes: - to sort in descending order, preface the field name with a minus (`-`) sign - this parameter can be used to sort results both for a get videos request and for a get videos in folder request explode: true in: query name: sort schema: default: '-updated_at' enum: - 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 example: created_at type: string x-enum-elements: - description: The video name name: name - description: The video reference id name: reference_id - description: Date video was created in the Video Cloud name: created_at - description: Date video was activated name: published_at - description: Date video was last updated (by a user or the system) name: updated_at - description: Date video scheduled to become available name: schedule.starts_at - description: Date video scheduled to become unavailable name: schedule.ends_at - description: Whether the video is playable (`ACTIVE` or `INACTIVE`) name: state - description: All time video views (this field can only be sorted on - it is not returned) name: plays_total - description: Trailing week video views (this field can only be sorted on - it is not returned) name: plays_trailing_week style: form include_details: description: When it's false, api call response won't include caption info in [text_tracks] at all and it makes the response returns quicker. explode: true in: query name: include_details schema: default: true type: boolean style: form schemas: AddAffiliate: example: account_id: '1937897674001' properties: account_id: description: affiliate account id type: string title: AddAffiliate type: object AudioTrack: properties: duration: description: URL the duration of the audio track in milliseconds example: 86053 readOnly: true type: integer encoding_rates: description: array of encoding rates for the audio track renditions in KBPS readOnly: true example: - 64000 - 96000 - 127000 - 192000 items: type: integer type: array id: description: ID for the audio track formed as language_variant example: en_alternate readOnly: true type: string is_default: description: Whether this is the default audio track example: true type: boolean language: description: language code for the audio track example: en-US type: string variant: description: the type of audio track (default can be set for the account by contacting Brightcove Support) enum: - main - alternate - commentary - dub - descriptive example: main type: string title: AudioTrack type: object AudioTracks: description: Audio tracks for the video items: $ref: '#/components/schemas/AudioTrack' title: Audio Tracks type: array Channel: description: the channel this contract belongs to example: - account_id: '1486906377' account_name: Brightcove Training created_at: '2017-09-27T13:54:08.661Z' enforce_custom_fields: false enforce_geo: true name: default updated_at: '2017-09-27T13:54:08.661Z' properties: account_id: description: master account id type: string account_name: description: master account name type: string created_at: description: when the channel was created readOnly: true type: string enforce_custom_fields: description: 'if true, will allow sharing only if the affiliate account has all custom fields that have values for the video to be shared' type: boolean enforce_geo: description: 'if true, and master account is enabled for geo-filtering' type: boolean name: description: channel name type: string updated_at: description: when the channel was last updated type: string title: Channel type: object ChannelAffiliate: example: - account_id: '57838016001' account_name: BrightcoveLearning approved: true - account_id: '1481353044001' account_name: BC - Samples approved: true - account_id: '301925175' account_name: BC Home Page Player approved: true properties: account_id: description: affiliate account id type: string account_name: description: affiliate account name type: string approved: description: whether the affiliate has approved the relationship type: boolean required: - account_id - account_name - approved title: ChannelAffiliate type: object Contract: example: - account_id: '1485884786001' approved: true approved_at: '2017-08-27T12:27:21.582Z' auto_accept: true channel: account_id: '57838016001' name: default channel_account_name: BrightcoveLearning created_at: '2017-08-23T17:45:41.556Z' updated_at: '2017-12-27T19:29:49.498Z' properties: account_id: description: affiliate account id type: string approved: description: whether the contract is approved type: boolean approved_at: description: when the contract was approved type: string auto_accept: description: whether shared videos will be automatically accepted type: boolean channel: $ref: '#/components/schemas/Channel' created_at: description: when the contract was created readOnly: true type: string updated_at: description: when the contract was last updated readOnly: true type: string title: Contract type: object CreateVideoRequestBodyFields: description: 'Only certain video metadata fields can be set when you initially create the video, and are listed here. Other fields must be set through an update (`PATCH`) request type: object' properties: cue_points: description: Array of cuepoint objects items: $ref: '#/components/schemas/CuePoint' type: array custom_fields: description: 'map of `fieldname: value` pairs; values have a maximum length of 1024 single-byte characters Note: be sure to use the **internal** name for the field, not the display name' example: subject: birds type: object description: description: Video short description maxLength: 250 example: Laughing Gull type: string drm_disabled: description: Use to disable DRM packaging for this video - applies only to DRM-enabled accounts example: true type: boolean economics: description: whether the video supports ads enum: - AD_SUPPORTED - FREE example: AD_SUPPORTED type: string geo: $ref: '#/components/schemas/Geo' long_description: description: A longer description of the video example: 'Herring Gull near Fort Point Channel in Boston, MA, USA. 2019-04-25.' maxLength: 5000 type: string name: description: Title of the video video example: A happy herring gull maxLength: 250 minLength: 1 type: string offline_enabled: default: false description: whether video is enabled for offline viewing example: true type: boolean reference_id: description: Reference id for the clip - must be unique within the account example: laughing_gull_2019_04_25 type: string schedule: $ref: '#/components/schemas/Schedule' state: description: Whether the video should be active or inactive enum: - ACTIVE - INACTIVE example: ACTIVE type: string tags: description: >- Array of tags for the video - note that tags are string that may not contain a comma or more than 128 characters example: - birds - sea items: type: string maxLength: 128 type: array required: - name title: Create Video Request Body Fields CuePoint: properties: force_stop: description: Whether playback should be stopped when the cuepoint is reached type: boolean metadata: description: optional metadata string (512 single-byte characters maximum) maxLength: 512 type: string name: description: cue point name type: string time: description: time of the cue point in seconds example: 10.527 type: number type: description: cue point type enum: - AD - DATA type: string required: - time - type title: cue_point type: object DigitalMaster: properties: created_at: description: date/time created example: 2019-04-30T10:09:12.548Z readOnly: true type: string duration: description: duration in milliseconds example: 31431 type: integer encoding_rate: description: encoding rate in bps example: 23152000 readOnly: true type: integer height: description: frame height in pixels example: 1080 readOnly: true type: integer id: description: the system id for the digital master example: a0a2e032-4de4-4495-a59e-a806d52989 readOnly: true type: string size: description: file size in bytes example: 90990884 readOnly: true type: integer updated_at: description: date/time last modified example: 2019-04-30T10:09:12.548Z readOnly: true type: string width: description: frame width in pixels example: 1920 readOnly: true type: integer title: DigitalMaster type: object Drm: description: DRM packaging details (not applicable to remote assets or Dynamic Delivery accounts) nullable: true properties: metadata_cdn_origin_id: type: string metadata_sharded_directory: type: string packager_version: type: string state: type: string readOnly: true title: Drm type: object DynamicRendition: example: - audio_configuration: L_R created_at: '2016-11-14T15:05:56.209Z' duration: 31488 encoding_rate: 125000 frame_height: null frame_width: null language: en media_type: audio rendition_id: default/audio128 size: 506818 updated_at: '2016-11-14T15:05:56.209Z' variant: main - created_at: '2016-11-14T15:06:17.295Z' duration: 31465 encoding_rate: 902000 frame_height: 360 frame_width: 640 media_type: video rendition_id: default/video900 size: 3561912 updated_at: '2016-11-14T15:06:17.295Z' variant: main properties: audio_configuration: description: The audio configuration of the audio track readOnly: true type: string duration: description: duration in milliseconds readOnly: true type: integer encoding_rate: description: average encoding rate in kbps readOnly: true type: integer frame_height: description: frame height in pixels readOnly: true type: integer frame_width: description: frame width in pixels readOnly: true type: integer media_type: description: media type for the rendition (audio or video) enum: - audio - video readOnly: true type: string rendition_id: description: the rendition id readOnly: true type: string size: description: the size of the asset in bytes (integer) readOnly: true type: integer updated_at: description: when the video was last modified readOnly: true type: string uploaded_at: description: when the asset was added to the video in Video Cloud readOnly: true type: string variant: description: 'The variant of the HLS profile (baseline, main, or high)' enum: - baseline - main - high readOnly: true type: string title: DynamicRendition type: object Folder: properties: account_id: description: Video Cloud account id example: 57838016001 readOnly: true type: string created_at: description: date/time folder created example: 2017-11-23T19:53:59.687Z readOnly: true type: string id: description: system id for the folder example: 5a17275782aca45b631295f9 readOnly: true type: string name: description: folder name example: birds type: string updated_at: description: date/time folder last modified example: 2017-11-23T20:06:24.537Z readOnly: true type: string video_count: description: number of videos in the folder example: 5 readOnly: true type: string title: Folder type: object Geo: description: map of geo-filtering properties properties: countries: description: 'array of ISO 3166 list of 2-letter codes(https://www.iso.org/obp/ui/#home) (search for "country codes")' example: - us - ca - fr items: type: string type: array exclude_countries: description: 'if true, country array is treated as a list of countries excluded from viewing' type: boolean restricted: description: whether geo-restriction is enabled for this video type: boolean required: - countries - exclude_countries - restricted title: geo type: object Image: description: map of image properties properties: asset_id: description: asset id for the image readOnly: true type: string sources: description: array of image source maps items: $ref: '#/components/schemas/Image.sources' type: array src: description: URL for the default image source image readOnly: true type: string readOnly: true required: - sources - src title: image type: object Image.sources: properties: src: description: URL for a image source image type: string required: - src title: image.sources type: object ImageAsset: example: account_id: '1752604059001' audio_only: false cdn_origin_id: '5602' complete: true controller_type: DEFAULT current_filename: 1752604059001_5510492050001_5510487311001-vs.jpg frame_height: 720 frame_width: 1280 id: '5510492050001' key_systems: [] name: Lightning-over-mosque-Utrecht.m4v Video Still progressive_download: false reference_id: '' remote_stream_name: '' remote_url: '' size: 41742 type: VIDEO_STILL updated_at: '2017-07-26T07:02:42.077Z' uploaded_at: '2017-07-17T17:46:17.295Z' properties: audio_only: description: not applicable to posters type: boolean cdn_origin_id: description: an internally used id (not applicable to remote assets) type: string complete: description: whether processing is complete for the asset (will be true for remote assets if a remote_url is supplied) type: boolean controller_type: description: the controller type for ingested renditions (not applicable to remote renditions or other types of assets) type: string current_filename: description: the filename for an ingested asset in the Video Cloud system (not applicable to remote assets) type: string id: description: the asset id readOnly: true type: string name: description: asset name type: string progressive_download: description: whether ingested rendition is available by progressive download (not applicable to other asset types or remote renditions) type: boolean reference_id: description: the asset reference id (must be unique within the account); this is **not** the same as the video reference id type: string remote_stream_name: description: name for remote streams (not applicable to asset types other than rendition) type: string remote_url: description: the url for a remote asset (not applicable to ingested assets); **`remote_url` is required when adding an asset (POST)** maxLength: 250 type: string size: description: the size of the asset in bytes (integer) type: integer type: description: the type of the asset type: string updated_at: description: when the video was last modified type: string uploaded_at: description: when the asset was added to the video in Video Cloud type: string title: ImageAsset type: object IngestJobStatus: properties: account_id: description: the Video Cloud account id example: 57838016001 readOnly: true type: string error_code: description: the error code if the job failed example: UnableToResolveHostError readOnly: true type: string error_message: description: the error message if the job failed example: 'There was a problem resolving the host at https://some.site.comm/videos/mp4/IMG_0544.MOV. Please check that it is correct.' readOnly: true type: string id: description: the ingest job id returned when you submit the Dynamic Ingest API request example: 879a3301-5c1a-4b1b-a368-58e200a6e64b readOnly: true type: string priority: description: priority of the job (normal or low) example: normal readOnly: true type: string started_at: description: when processing started example: 2018-11-14T19:30:36.265Z readOnly: true type: string state: description: |- the current state of the ingest job - status: - `processing` - video processing in progress - the video is not currently playable - `publishing` - video processing in progress - publishing a playable rendition - `published` - that at least one playable rendition is available for the video - `finished` - that all processing is complete - `failed` - video processing failed to complete enum: - processing - publishing - published - finished - failed example: failed readOnly: true type: string x-enum-elements: - description: video processing in progress - the video is not currently playable name: processing - description: video processing in progress - publishing a playable rendition name: publishing - description: there is at least one playable rendition available for the video name: published - description: video processing is complete name: finished - description: video processing failed to complete name: failed submitted_at: description: when the job was submitted example: 2018-11-14T19:30:36.196Z readOnly: true type: string updated_at: description: when the status was last updated example: 2018-11-14T19:43:08.641Z readOnly: true type: string video_id: description: the video id example: 5966995221001 readOnly: true type: string title: Ingest Job Status type: object LabelsList: description: A list of labels for the account type: object properties: account_id: type: string description: The Video Cloud account id example: "57838016001" labels: type: array description: Array of labels that exist for the account items: type: string description: a full label path example: [ "/nature/birds", "/nature/birds/shorebirds", "/nature/birds/forestbirds", "/nature/mammals/seamammals" ] version: type: integer description: An internal version tracker LabelPath: description: 'The full path for a label that can be assigned to videos' title: label type: object properties: path: type: string example: { "path": "/nature/mammals/seamammals" } LabelUpdate: description: 'Update Label request body' title: label type: object properties: new_label: type: string description: The new label which will replace **the last item in the label path** example: { "new_label": "forest_birds", } Link: description: 'map of related link properties - can only be added on update, not creation' properties: text: description: text for the link maxLength: 255 type: string url: description: URL for the link maxLength: 255 type: string title: link type: object # Live: # description: Properties for a live stream created by the Live Module or Live API # properties: # clip_ended_at: # description: the ending point for a VOD clip # example: 2018-08-12T15:34:30.047Z # readOnly: true # type: string # clip_started_at: # description: the starting point for a VOD clip # example: 2018-08-12T15:24:30.047Z # readOnly: true # type: string # ended_at: # description: the date-time that the live stream ended # example: 2018-08-12T15:34:30.047Z # readOnly: true # type: string # job_id: # description: the live job id # example: 935808e9a3bb47ea825fe9276835a01e # readOnly: true # type: string # job_state: # description: the current state of the job # enum: # - error # - standby # - waiting # - processing # - disconnected # - cancelling # - finishing # - cancelled # - finished # - failed # example: finished # readOnly: true # type: string # name: # description: the name of the live job # readOnly: true # type: string # type: # description: the live stream type # enum: # - EVENT # example: EVENT # readOnly: true # type: string # updated_at: # description: the date-time the live job was last updated # example: 2018-08-12T15:34:30.047Z # readOnly: true # type: string # title: live # type: object Manifest: example: account_id: '57838016001' audio_only: false cdn_origin_id: '8801' complete: true controller_type: DEFAULT current_filename: 57838016001_5819043232001_5819044609001.m3u8 id: '5819043232001' key_systems: [] name: greatblueheron.mp4 progressive_download: false reference_id: '' remote_stream_name: '' remote_url: '' size: 0 type: HLS_MANIFEST updated_at: '2018-08-07T14:06:52.489Z' uploaded_at: '2018-08-07T14:05:57.105Z' video_duration: 0 properties: audio_only: description: not applicable to ism_manifests type: boolean cdn_origin_id: description: an internally used id (not applicable to remote assets) type: string complete: description: whether processing is complete for the asset (will be true for remote assets if a remote_url is supplied) type: boolean controller_type: description: the controller type for ingested renditions (not applicable to remote renditions or other types of assets) type: string current_filename: description: the filename for an ingested asset in the Video Cloud system (not applicable to remote assets) type: string id: description: the asset id readOnly: true type: string name: description: asset name type: string progressive_download: description: whether ingested rendition is available by progressive download (not applicable to other asset types or remote renditions) type: boolean reference_id: description: the asset reference id (must be unique within the account); this is **not** the same as the video reference id type: string remote_stream_name: description: name for remote streams (not applicable to asset types other than rendition) type: string remote_url: description: the url for a remote asset (not applicable to ingested assets); **`remote_url` is required when adding an asset (POST)** maxLength: 250 type: string size: description: the size of the asset in bytes (integer) type: integer type: description: the type of the asset type: string updated_at: description: when the video was last modified type: string uploaded_at: description: when the asset was added to the video in Video Cloud type: string video_duration: description: video duration in seconds (present if you included it when you created the asset) type: integer title: Manifest type: object Playlist: properties: account_id: description: Video Cloud account id example: 57838016001 readOnly: true type: string created_at: description: date/time created example: 2018-11-14T19:30:36.196Z format: date-time readOnly: true type: string description: description: playlist description example: Sea bird playlist maxLength: 255 type: string favorite: default: false description: whether playlist is in favorites list example: false type: boolean id: description: the playlist id example: 1403635561001 readOnly: true type: string name: description: the playlist name example: Sea Birds maxLength: 255 type: string reference_id: description: the playlist reference id (must be unique within the account) example: sea_birds_playlist type: string search: description: search string to retrieve the videos (smart playlists only) example: '+tags:captions,training' type: string state: description: >- Applies to EXPLICIT (manual) playlists only; `UPDATING` means the list is updating its video members and `READY` means that all videos have been added type: string enum: - READY - UPDATING readOnly: true type: description: 'the playlist type: EXPLICIT or smart playlist type' enum: - EXPLICIT - ACTIVATED_OLDEST_TO_NEWEST - ACTIVATED_NEWEST_TO_OLDEST - ALPHABETICAL - PLAYS_TOTAL - PLAYS_TRAILING_WEEK - START_DATE_OLDEST_TO_NEWEST - START_DATE_NEWEST_TO_OLDEST example: ACTIVATED_NEWEST_TO_OLDEST type: string updated_at: description: date/time last modified example: 2018-11-14T19:30:36.196Z format: date-time readOnly: true type: string video_ids: description: array of video ids (EXPLICIT playlists only) example: - '4084164751001' - '1532562858001' - '734484322001' - '1532530235001' - '734462570001' - '734462569001' - '734451481001' - '734445537001' items: type: string type: array title: Playlist type: object example: { "id": "5716873476001", "account_id": "57838016001", "created_at": "2018-01-23T12:55:29.674Z", "description": "My new sea playlist", "favorite": false, "name": "Sea Videos", "reference_id": null, "type": "ACTIVATED_NEWEST_TO_OLDEST", "updated_at": "2018-01-23T12:55:29.677Z", "limit": 20, "search": "+tags:\"birds\"" } PlaylistCount: example: count: 84 properties: count: description: count of videos type: integer title: Get_Playlist_CountResponse type: object PlaylistInputFields: properties: description: description: playlist description example: Playlist of Birds that Live by the Sea maxLength: 255 type: string favorite: default: false description: whether playlist is in favorites list example: true type: boolean name: description: the playlist name example: Sea Bird Playlist maxLength: 255 type: string reference_id: description: the playlist reference id (must be unique within the account) example: sea_bird_playlist type: string search: description: search string to retrieve the videos (smart playlists only) example: '+tags:birds,sea' type: string search_syntax: description: the search syntax used for the search string; see [Managing Playlists](/cms/managing-videos/managing-playlists-using-cms-api.html) type: string default: v1 enum: - v1 - v2 type: description: 'the playlist type: EXPLICIT or smart playlist type' enum: - EXPLICIT - ACTIVATED_OLDEST_TO_NEWEST - ACTIVATED_NEWEST_TO_OLDEST - ALPHABETICAL - PLAYS_TOTAL - PLAYS_TRAILING_WEEK - START_DATE_OLDEST_TO_NEWEST - START_DATE_NEWEST_TO_OLDEST example: START_DATE_NEWEST_TO_OLDEST type: string video_ids: description: >- array of video ids (EXPLICIT playlists only) - maximum length: 1000 example: - '4084164751001' - '1532562858001' - '734484322001' - '1532530235001' - '734462570001' - '734462569001' - '734451481001' - '734445537001' items: type: string type: array title: Create/Update Playlist Fields type: object example: { "description": "My new sea playlist", "name": "Sea Videos", "type": "ACTIVATED_NEWEST_TO_OLDEST", "limit": 20, "search": "tags:birds" } PlaylistReferences: properties: playlists: description: array of EXPLICIT playlist ids that contain the video example: 749117323001 items: type: string type: array title: PlaylistReferences type: object Schedule: description: map of scheduling properties properties: ends_at: description: |- '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`' example: 2020-05-20T20:41:07.689Z nullable: true type: string starts_at: description: |- '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`' example: 2019-05-20T20:41:07.689Z nullable: true type: string title: schedule type: object ShareVideoRequest: example: - id: '47509719001' properties: id: description: affiliate account id to share to type: string required: - id title: ShareVideoRequest type: object Sharing: description: map of the sharing properties for the video properties: by_external_acct: description: whether the video was shared from another account example: true readOnly: true type: boolean by_id: description: 'id of the account that shared the video; note that this field is populated only for the shared copy, not for the original video' example: 57838016001 readOnly: true type: string by_reference: description: whether the video is shared by reference example: true readOnly: true type: boolean source_id: description: 'id of the video in its original account; note that this field is populated only for the shared copy, not for the original video' example: 239487239487 readOnly: true type: string to_external_acct: description: whether the video is shared to another account example: true readOnly: true type: boolean readOnly: true title: sharing type: object Subscription: properties: endpoint: description: the notifications endpoint example: 'https://solutions.brightcove.com/bcls/di-api/cms-callbacks.php' type: string events: description: list of events subscribed to example: ["video-change"] type: array items: type: string enum: - video-change id: description: system id for the subscription example: a0847083-79f4-4315-8a2c-403465a3d9bc readOnly: true type: string service_account: description: the Video Cloud account id example: "57838016001" readOnly: true type: string title: Subscription type: object TextTrack: properties: default: default: false description: whether this is the default track - should only be true for one text track type: boolean id: description: System id for the text track readOnly: true type: string kind: default: captions description: >- How the track is meant to be used: `subtitles`, `captions`, `descriptions`, `chapters`, `metadata`. enum: - subtitles - captions - descriptions - chapters - metadata - transcripts type: string label: description: label for the track type: string mime_type: description: mime-type for the track type: string src: description: URL for the .vtt file type: string srclang: description: '2-letter language code, such as "en" or "ko"' type: string status: description: Indicates the actual situation of the track, if it is `published`, `draft`, or `null` for pre-existing text tracks. Draft tracks will not be displayed in the player. Transcript: properties: id: description: System id for the text track readOnly: true type: string account_id: description: The account id readOnly: true type: string default: description: Whether the transcript is the default - note that if there are multi-language transcripts, there can be a default per language readOnly: true type: boolean label: description: label for the track type: string sources: description: sources for a client to retrieve the transcription type: array items: type: string description: URLs where the transcript can be retrieved - there will an http and https URL for each transcript src: description: URL for the transcription file type: string srclang: description: '2-letter or 4-letter language code, such as `es` or `es-MX`' type: string status: description: 'Either `draft` (unavailable to viewers) or `published`' type: string enum: - draft - published required: - src - srclang title: transcription type: object User: description: 'information about who created or modified a video, if available' properties: email: description: the user's email address in Video Cloud type: string id: description: Video Cloud system id of the user type: string type: description: |- The type of the updater, either: - `user` a user in Studio - `api-key` a user via the APIs - `internal` a Brightcove system or user enum: - user - api_key - internal type: string readOnly: true title: User type: object VideoVariant: description: Object containing language-specific metadata for a video properties: language: type: string description: 'The language for this variant in the language-country code format (examples: en-US, es-ES) **Note that `language` is only included when you create a variant - you must NOT include it when updating the variant**' example: es-ES name: type: string description: The title of the video in this language description: type: string description: The video short description in this language long_description: type: string description: The video long description in this language custom_fields: type: object description: 'map of `fieldname: value` pairs, where values are for this language; values have a maximum length of 1024 single-byte characters. Note: be sure to use the **internal** name for the field, not the display name' VideoVariant2: description: Object containing language-specific metadata for a video properties: language: type: string description: 'The language for this variant in the language-country code format (examples: en-US, es-ES) **Note that `language` is only included when you create a variant - you must NOT include it when updating the variant**' example: de-DE name: type: string description: The title of the video in this language description: type: string description: The video short description in this language long_description: type: string description: The video long description in this language custom_fields: type: object description: 'map of `fieldname: value` pairs, where values are for this language; values have a maximum length of 1024 single-byte characters. Note: be sure to use the **internal** name for the field, not the display name' VideoVariant3: description: Object containing language-specific metadata for a video properties: language: type: string description: 'The language for this variant in the language-country code format (examples: en-US, es-ES) **Note that `language` is only included when you create a variant - you must NOT include it when updating the variant**' example: ja-JA name: type: string description: The title of the video in this language description: type: string description: The video short description in this language long_description: type: string description: The video long description in this language custom_fields: type: object description: 'map of `fieldname: value` pairs, where values are for this language; values have a maximum length of 1024 single-byte characters. Note: be sure to use the **internal** name for the field, not the display name' VideoVariants: description: Array of video variants type: array items: - $ref: '#/components/schemas/VideoVariant' - $ref: '#/components/schemas/VideoVariant2' - $ref: '#/components/schemas/VideoVariant3' Video: description: Object containing metadata for a video properties: ad_keys: description: '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' example: ' "adKeys": "category=sports&live=true"' nullable: true type: string clip_source_video_id: description: 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 example: 4723947979 readOnly: true type: string complete: description: >- 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) example: true readOnly: true type: boolean created_at: description: when the video was created example: '2015-09-17T16:08:37.108Z' readOnly: true type: string created_by: $ref: '#/components/schemas/User' cue_points: description: 'array of cue points - can be added on creation or update' items: $ref: '#/components/schemas/CuePoint' type: array custom_fields: additionalProperties: description: 'map of fieldname-value pairs; values have a maximum length of 1024 single-byte characters Note: be sure to use the internal name for the field, not the display name' type: string type: object delivery_type: description: |- 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) enum: - remote - dynamic_origin - live_origin - unknown example: dynamic_origin readOnly: true type: string description: description: video short description example: Herring gull on a wharf in Boston maxLength: 248 type: string digital_master_id: description: asset id of the digital master example: 734462494001 readOnly: true type: string drm_disabled: description: 'if true, the video is not DRM-packaged - applies to accounts that are enabled for DRM only' example: true type: boolean duration: description: video duration in milliseconds example: 18160 readOnly: true type: integer economics: default: AD_SUPPORTED description: whether video is `AD_SUPPORTED` enum: - AD_SUPPORTED - FREE example: AD_SUPPORTED type: string folder_id: description: id of the folder that contains the video example: 560039e5e4b0e69e4b01cacd readOnly: true type: string forensic_watermarking: description: |- 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 example: ACTIVE readOnly: true type: string enum: - ACTIVE - UNAVAILABLE # - null geo: $ref: '#/components/schemas/Geo' has_digital_master: description: whether video has an archived master than can be used for retranscoding example: true readOnly: true type: boolean id: description: video id example: 734462567001 readOnly: true type: string images: $ref: '#/components/schemas/VideoImages' labels: type: array description: |- Array of labels assigned to the video. See [Working with Labels](/cms/managing-videos/working-with-labels.html) for more information. items: type: string description: full hierarchical path for a label. link: $ref: '#/components/schemas/Link' # live: # $ref: '#/components/schemas/Live' long_description: description: 'video long description - can only be added on update, not creation' example: 'Herring Gull near Fort Point Channel in Boston, MA, USA. 2019-04-25.' maxLength: 5000 type: string name: description: video title example: Laughing Gull maxLength: 255 minLength: 1 type: string offline_enabled: default: false description: whether video is enabled for offline viewing example: true type: boolean original_filename: description: the original file name for the uploaded video example: gull-boston.mov readOnly: true type: string playback_rights_id: type: string description: >- Associates specified EPA playback rights with video. projection: description: used for 360 videos enum: - equirectangular example: equirectangular nullable: true type: string published_at: description: 'start date-time of first activation in ISO-8601(https://www.ecma-international.org/ecma-262/5.1/#sec-15.9.1.15) format' example: 2019-04-30T23:27:22.507Z type: string reference_id: description: video reference-id (must be unique within the account) example: laughing_gull_2019_04_25 maxLength: 150 nullable: true type: string schedule: $ref: '#/components/schemas/Schedule' sharing: $ref: '#/components/schemas/Sharing' state: description: |- 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) enum: - ACTIVE - INACTIVE - PENDING - DELETED example: ACTIVE type: string tags: description: array of tags - maximum characters per tag is 1000 example: - birds - sea items: type: string maxLength: 128 type: array text_tracks: description: 'array of text tracks - can only be added on update, not creation' items: $ref: '#/components/schemas/TextTrack' type: array transcripts: description: 'array of transcription objects - can only be added on update, not creation' items: $ref: '#/components/schemas/Transcript' type: array updated_at: description: when the video was last modified example: 2018-02-27T19:09:20.401Z readOnly: true type: string updated_by: $ref: '#/components/schemas/User' variants: $ref: '#/components/schemas/VideoVariants' title: Video type: object VideoAsset: example: - account_id: '57838016001' audio_only: false cdn_origin_id: '8801' complete: true controller_type: DEFAULT current_filename: 57838016001_5819042450001_5819044609001.zip drm: null encoding_rate: 512000 frame_height: 270 frame_width: 480 hds: null hls: null id: '5819042450001' key_systems: [] name: greatblueheron.mp4 progressive_download: true reference_id: '' remote_stream_name: '' remote_url: '' size: 2112932 type: FULL_LENGTH updated_at: '2018-08-07T14:05:47.045Z' uploaded_at: '2018-08-07T14:05:44.835Z' video_codec: H264 video_container: M2TS video_duration: 31398 - account_id: '57838016001' audio_only: false cdn_origin_id: '6101' complete: true controller_type: DEFAULT current_filename: 57838016001_5819042821001_5819044609001-th.jpg frame_height: 90 frame_width: 160 id: '5819042821001' key_systems: [] name: greatblueheron.mp4 Thumbnail progressive_download: false reference_id: '' remote_stream_name: '' remote_url: '' size: 5430 type: THUMBNAIL updated_at: '2018-08-15T06:03:41.209Z' uploaded_at: '2018-08-07T14:05:33.672Z' - account_id: '57838016001' audio_only: false cdn_origin_id: '' complete: true controller_type: DEFAULT current_filename: 57838016001_5819043030001_5819044609001.mp4 drm: null encoding_rate: 23152000 frame_height: 1080 frame_width: 1920 hds: null hls: null id: '5819043030001' key_systems: [] name: greatblueheron.mp4 progressive_download: true reference_id: '' remote_stream_name: '' remote_url: '' size: 90990884 type: DIGITAL_MASTER updated_at: '2018-08-07T14:05:33.714Z' uploaded_at: '2018-08-07T14:05:31.234Z' video_codec: H264 video_container: MP4 video_duration: 31431 - account_id: '57838016001' audio_only: false cdn_origin_id: '8801' complete: true controller_type: DEFAULT current_filename: 57838016001_5819043232001_5819044609001.m3u8 id: '5819043232001' key_systems: [] name: greatblueheron.mp4 progressive_download: false reference_id: '' remote_stream_name: '' remote_url: '' size: 0 type: HLS_MANIFEST updated_at: '2018-08-07T14:06:52.489Z' uploaded_at: '2018-08-07T14:05:57.105Z' video_duration: 0 - account_id: '57838016001' audio_only: false cdn_origin_id: '6101' complete: true controller_type: DEFAULT current_filename: 57838016001_5819043394001_5819044609001-vs.jpg frame_height: 720 frame_width: 1280 id: '5819043394001' key_systems: [] name: greatblueheron.mp4 Video Still progressive_download: false reference_id: '' remote_stream_name: '' remote_url: '' size: 139316 type: VIDEO_STILL updated_at: '2018-08-15T06:03:41.210Z' uploaded_at: '2018-08-07T14:05:35.253Z' - account_id: '57838016001' audio_only: false cdn_origin_id: '' complete: true controller_type: DEFAULT current_filename: '' id: '5819491822001' key_systems: [] name: '' profiles: null progressive_download: false reference_id: '' remote_stream_name: '' remote_url: 'https://some.site.com/videos/hls/greatblueheron/greatblueheron.mpd' size: 0 type: MPD_MANIFEST updated_at: '2018-08-08T12:02:03.059Z' uploaded_at: '2018-08-08T12:02:03.059Z' video_duration: 31 properties: account_id: description: the Video Cloud account id type: string audio_only: description: 'this rendition contains only an audio track, no video track (a rendition for low bandwidth devices)' type: boolean cdn_origin_id: description: an internally used id (not applicable to remote assets) type: string complete: description: whether processing is complete for the asset (will be true for remote assets if a remote_url is supplied) type: boolean controller_type: description: the controller type for ingested renditions (not applicable to remote renditions or other types of assets) type: string current_filename: description: the filename for an ingested asset in the Video Cloud system (not applicable to remote assets) type: string drm: $ref: '#/components/schemas/Drm' encoding_rate: description: average encoding rate in kbps type: integer frame_height: description: frame height in pixels type: integer frame_width: description: frame width in pixels type: integer id: description: the asset id readOnly: true type: string key_systems: description: array of strings that denote the kind of encryption used for DRM packaged renditions items: type: string type: array name: description: asset name type: string progressive_download: description: whether ingested rendition is available by progressive download (not applicable to other asset types or remote renditions) type: boolean reference_id: description: the media asset reference id (must be unique within the account) - this is **not** the same as the video reference id type: string remote_stream_name: description: name for remote streams (not applicable to asset types other than rendition) type: string remote_url: description: the url for a remote asset (not applicable to ingested assets); **`remote_url` is required when adding an asset (POST)** maxLength: 250 type: string size: description: the size of the asset in bytes (integer) type: integer type: description: the type of the asset type: string updated_at: description: when the video was last modified type: string uploaded_at: description: when the asset was added to the video in Video Cloud type: string video_codec: description: not applicable to remote assets type: string video_container: description: not applicable to remote assets type: string video_duration: description: duration in milliseconds type: integer title: VideoAsset type: object VideoCount: example: count: 7650 properties: count: description: count of videos type: integer title: Get_Video_CountResponse type: object VideoCountInPlaylist: example: count: 5 properties: count: description: count of videos type: integer title: Get_Video_Count_in_PlaylistResponse type: object VideoFields: example: custom_fields: - description: Add a topic display_name: Subject enum_values: - Reptiles - Mammals - Other - wildlife - Fish - Birds - Insects id: subject required: false type: enum - description: null display_name: Uploader UserID id: uploader-userid required: false type: string - description: null display_name: Rating id: rating required: false type: string - description: null display_name: Duration id: duration required: false type: string - description: null display_name: Associatedtopics id: associated-topics required: false type: string - description: null display_name: Custom Theme Path enum_values: - 'https://files.brightcove.com/BCL_customLabelTheme2.css' - 'https://files.brightcove.com/BCL_customLabelTheme.css' id: customthemepath required: false type: enum - description: null display_name: Text Color enum_values: - '#4C4D4F' - '#CF0050' - '#F4901E' - '#619FA8' id: textcolor required: false type: enum - description: null display_name: Captions File URL id: dfxppath required: false type: string - description: null display_name: Purpose enum_values: - Training - Demo - Sample - Solution id: purpose required: false type: enum - description: null display_name: Downloadable enum_values: - 'yes' - 'no' id: downloadable required: false type: enum max_custom_fields: 10 standard_fields: - description: null id: description required: false - description: null id: tags required: false properties: custom_fields: description: array of standard field maps items: $ref: '#/components/schemas/Videofields.customField' type: array max_custom_fields: description: maximum number of custom fields for the account type: string standard_fields: description: array of standard field maps items: $ref: '#/components/schemas/Videofields.standardField' type: array title: VideoFields type: object CustomFields: description: array of standard field maps items: $ref: '#/components/schemas/customField' type: array customField: properties: description: description: description (instruction for user) type: string display_name: description: display name type: string enum_values: description: |- Array of string values for select type fields (by default the maximum is 100 values; this can be increased up to 1000 by submitting a [request to Support](https://supportportal.brightcove.com/)). This field is **required** for `enum` types, and **not allowed** for `string` types. items: type: string maxLength: 100 type: array id: description: |- Data name for the field (used to access it in searches, etc.) Note the following **requirements** for the custom field `id`: - all lowercase - no spaces (use underscore [_] instead) - max length: 128 single-byte characters - must be unique among all custom fields for the account - must not be one of the [Reserved names](https://studio.support.brightcove.com/admin/creating-custom-metadata-fields.html#reserved) Note that updating it will trigger an internal process to update the `id` in any videos that have the custom field. type: string required: description: whether field must have a value before video can be active type: boolean default: false type: description: custom field type (enum or string) type: string title: custom_field type: object customFieldUpdate: properties: description: description: description (instruction for user) type: string display_name: description: display name type: string enum_values: description: |- Array of string values for select type fields (by default the maximum is 100 values; this can be increased up to 1000 by submitting a [request to Support](https://supportportal.brightcove.com/)). This field is **required** for `enum` types, and **not allowed** for `string` types. items: type: string maxLength: 100 type: array id: description: |- Data name for the field (used to access it in searches, etc.) Note the following **requirements** for the custom field `id`: - all lowercase - no spaces (use underscore [_] instead) - max length: 128 single-byte characters - must be unique among all custom fields for the account - must not be one of the [Reserved names](https://studio.support.brightcove.com/admin/creating-custom-metadata-fields.html#reserved) Note that updating the `id` will trigger an internal process to update the `id` in any videos that have the custom field. type: string required: description: whether field must have a value before video can be active type: boolean default: false type: description: custom field type (enum or string) type: string readOnly: true title: custom_field type: object VideoImages: description: |- 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` example: { "thumbnail": { "src": "https://cf-images.us-east-1.prod.boltdns.net/v1/jit/57838016001/ee705e97-3fb5-409c-99d8-703e9f57bd0a/main/160x90/20s629ms/match/image.jpg", "sources": [ { "src": "https://cf-images.us-east-1.prod.boltdns.net/v1/jit/57838016001/ee705e97-3fb5-409c-99d8-703e9f57bd0a/main/160x90/20s629ms/match/image.jpg", "height": 90, "width": 160 } ] }, "poster": { "src": "https://cf-images.us-east-1.prod.boltdns.net/v1/jit/57838016001/ee705e97-3fb5-409c-99d8-703e9f57bd0a/main/1280x720/20s629ms/match/image.jpg", "sources": [ { "src": "https://cf-images.us-east-1.prod.boltdns.net/v1/jit/57838016001/ee705e97-3fb5-409c-99d8-703e9f57bd0a/main/1280x720/20s629ms/match/image.jpg", "height": 720, "width": 1280 } ] }, "portrait.es": { "src": "https://cf-images.us-east-1.prod.boltdns.net/v1/static/57838016001/ee705e97-3fb5-409c-99d8-703e9f57bd0a/bac8717a-43db-4fa8-a6f0-189c80ee4c4e/800x1200/match/image.jpg", "sources": [ { "src": "https://cf-images.us-east-1.prod.boltdns.net/v1/static/57838016001/ee705e97-3fb5-409c-99d8-703e9f57bd0a/bac8717a-43db-4fa8-a6f0-189c80ee4c4e/800x1200/match/image.jpg", "height": 1200, "width": 800 } ] }, "thumbnail.en": { "src": "https://cf-images.us-east-1.prod.boltdns.net/v1/static/57838016001/ee705e97-3fb5-409c-99d8-703e9f57bd0a/0ce2da4d-ca36-469b-9024-0273d79feeeb/292x108/match/image.jpg", "sources": [ { "src": "https://cf-images.us-east-1.prod.boltdns.net/v1/static/57838016001/ee705e97-3fb5-409c-99d8-703e9f57bd0a/0ce2da4d-ca36-469b-9024-0273d79feeeb/292x108/match/image.jpg", "height": 108, "width": 292 } ] }, "poster.en": { "src": "https://cf-images.us-east-1.prod.boltdns.net/v1/static/57838016001/ee705e97-3fb5-409c-99d8-703e9f57bd0a/a7cb150d-c84a-48e0-9469-5b4ce80fba53/1920x1080/match/image.jpg", "sources": [ { "src": "https://cf-images.us-east-1.prod.boltdns.net/v1/static/57838016001/ee705e97-3fb5-409c-99d8-703e9f57bd0a/a7cb150d-c84a-48e0-9469-5b4ce80fba53/1920x1080/match/image.jpg", "height": 1080, "width": 1920 } ] }, "square.de": { "src": "https://cf-images.us-east-1.prod.boltdns.net/v1/static/57838016001/ee705e97-3fb5-409c-99d8-703e9f57bd0a/22209955-e136-4f17-914c-e19ec4c58886/570x570/match/image.jpg", "sources": [ { "src": "https://cf-images.us-east-1.prod.boltdns.net/v1/static/57838016001/ee705e97-3fb5-409c-99d8-703e9f57bd0a/22209955-e136-4f17-914c-e19ec4c58886/570x570/match/image.jpg", "height": 570, "width": 570 } ] }, "ultra-wide.hi": { "src": "https://cf-images.us-east-1.prod.boltdns.net/v1/static/57838016001/ee705e97-3fb5-409c-99d8-703e9f57bd0a/72fd489f-d978-44ba-8d04-1e33c7c36cef/3840x1646/match/image.jpg", "sources": [ { "src": "https://cf-images.us-east-1.prod.boltdns.net/v1/static/57838016001/ee705e97-3fb5-409c-99d8-703e9f57bd0a/72fd489f-d978-44ba-8d04-1e33c7c36cef/3840x1646/match/image.jpg", "height": 1646, "width": 3840 } ] }, "wide.fr": { "src": "https://cf-images.us-east-1.prod.boltdns.net/v1/static/57838016001/ee705e97-3fb5-409c-99d8-703e9f57bd0a/4405a5d5-8b9e-4c2b-be71-cf4e2c153e87/2560x1440/match/image.jpg", "sources": [ { "src": "https://cf-images.us-east-1.prod.boltdns.net/v1/static/57838016001/ee705e97-3fb5-409c-99d8-703e9f57bd0a/4405a5d5-8b9e-4c2b-be71-cf4e2c153e87/2560x1440/match/image.jpg", "height": 1440, "width": 2560 } ] } } readOnly: true title: VideoImages type: object VideoShare: example: - affiliate_id: '47509719001' affiliate_video_id: '5766941108001' error_message: null shared_at: '2018-04-09T13:43:04.284Z' status: COMPLETE updated_at: '2018-04-09T13:43:13.687Z' video_id: '5341769699001' properties: affiliate_id: description: the id of the affiliate account the video is shared to type: string affiliate_video_id: description: the id of the shared video in the affiliate account type: string shared_at: description: when the video was shared type: string status: description: 'the status of the sharing - either PROCESSING, COMPLETE, or FAILED' type: string updated_at: description: the video was last updated in the affiliate account type: string video_id: description: the video id type: string required: - video_id - affiliate_id - affiliate_video_id title: VideoShare type: object VideoSources: example: - ext_x_version: '4' src: 'https://manifest.prod.boltdns.net/manifest/v1/hls/v4/clear/57838016001/853641cb-d66b-4f08-bb02-8489b5fba897/10s/master.m3u8?fastly_token=NWJiMmIyNmNfMWM3YmVhZTA5OTc4YjM4ZjZiZjU1OTk0ZTkzZTUyMzhhNGU5Zjc5YTNkZGYwYWQyNWZkMTcyMGM1MzlmMWVmZg%3D%3D' type: application/x-mpegURL uploaded_at: '2017-06-05T11:20:53.731Z' - ext_x_version: '5' src: 'https://manifest.prod.boltdns.net/manifest/v1/hls/v5/clear/57838016001/853641cb-d66b-4f08-bb02-8489b5fba897/10s/master.m3u8?fastly_token=NWJiMmIyNmNfNDc4YjJiNTM1YzkwYzcwNzliNmY3MDVjMzJmZjJhZjdmNjAxMzM0NWEzMTk3MzY2MGIwYWZhNzVhYjMyMzNhYg%3D%3D' type: application/x-mpegURL uploaded_at: '2017-06-05T11:20:53.731Z' - profiles: 'urn:mpeg:dash:profile:isoff-live:2011' src: 'https://manifest.prod.boltdns.net/manifest/v1/dash/live-baseurl/clear/57838016001/853641cb-d66b-4f08-bb02-8489b5fba897/2s/manifest.mpd?fastly_token=NWJiMmIyNmNfYjM3YTFiZjU5MmJjNzQzZjFkZTVlZmY0NTVhNmYxMzU3N2M2ODk5MmU1YjkyNDg5ZWRlNWRmMGNlODdjYjg5YQ%3D%3D' type: application/dash+xml uploaded_at: '2017-06-05T11:20:53.731Z' - codec: H264 container: MP4 duration: 49690 encoding_rate: 2129000 height: 720 remote: false size: 13242064 src: 'https://bcbolt446c5271-a.akamaihd.net/media/v1/pmp4/static/clear/57838016001/853641cb-d66b-4f08-bb02-8489b5fba897/high.mp4?akamai_token=exp=1538437740~acl=/media/v1/pmp4/static/clear/57838016001/853641cb-d66b-4f08-bb02-8489b5fba897/high.mp4*~hmac=619d67d75397e01c0bb9bd88ea047ace80bd03b56261337233b5d53f2632c690' uploaded_at: '2017-06-05T11:20:53.731Z' width: 1280 - codec: H264 container: MP4 duration: 49690 encoding_rate: 574000 height: 270 remote: false size: 3586929 src: 'https://bcbolt446c5271-a.akamaihd.net/media/v1/pmp4/static/clear/57838016001/853641cb-d66b-4f08-bb02-8489b5fba897/mid.mp4?akamai_token=exp=1538437740~acl=/media/v1/pmp4/static/clear/57838016001/853641cb-d66b-4f08-bb02-8489b5fba897/mid.mp4*~hmac=fde050eac8c8d3bb5b6c9141639a3dc770b8b8a3a3f88f5436c803b133d940fc' uploaded_at: '2017-06-05T11:20:53.731Z' width: 480 properties: app_name: description: address for RTMP stream readOnly: true type: string asset_id: description: system id for the rendition readOnly: true type: string codec: description: the video codec for the rendition type: string container: description: the video container for the rendition type: string duration: description: duration in milliseconds type: integer encoding_rate: description: encoding rate in bps type: integer height: description: frame height in pixels readOnly: true type: integer remote: description: whether the source is a remote asset type: boolean size: description: file size in bytes type: integer src: description: URL for HTTP rendition readOnly: true type: string stream_name: description: the stream name on the CDN readOnly: true type: string type: description: the type for segmented streams readOnly: true type: string uploaded_at: description: date/time when the video was uploaded readOnly: true type: string width: description: frame width in pixels readOnly: true type: integer title: VideoSources type: object Videofields.customField: properties: description: description: description (instruction for user) type: string display_name: description: display name type: string enum_values: description: array of string values for select type fields items: type: string type: array id: description: 'data name for the field (used to access it in searches, etc.)' type: string required: description: whether field must have a value before video can be active type: boolean default: false type: description: custom field type (enum or string) type: string readOnly: true title: VideoFields.custom_field type: object Videofields.standardField: properties: description: description: description (instruction for user) type: string id: description: 'data name for the field (used to access it in searches, etc.)' type: string required: description: whether field must have a value before video can be active type: boolean title: VideoFields.standard_field type: object securitySchemes: BC_OAuth2: type: oauth2 description: >- Brightcove OAuth API. See the [support documentation](/oauth/index.html) or [Getting Access Tokens](/oauth/code-samples/oauth-api-sample-get-access-token.html) to learn more flows: clientCredentials: tokenUrl: 'https://oauth.brightcove.com/v4/access_token' scopes: video-cloud/video/read: Video Read video-cloud/video/create: Video Create video-cloud/video/update: Video Update video-cloud/video/delete: Video Delete video-cloud/video/all: Video ALL video-cloud/asset/delete: Digital Master Delete video-cloud/playlist/read: Playlist Read video-cloud/playlist/create: Playlist Create video-cloud/playlist/update: Playlist Update video-cloud/playlist/delete: Playlist Delete video-cloud/playlist/all: Playlist All video-cloud/sharing-relationships/read: Sharing Relationships Read video-cloud/sharing-relationships/create: Sharing Relationships Create video-cloud/sharing-relationships/update: Sharing Relationships Update video-cloud/sharing-relationships/delete: Sharing Relationships Delete video-cloud/sharing-relationships/all: Sharing Relationships All video-cloud/notifications/all: Notifications All video-cloud/video/clear-sources: Read clear sources