Brightcove Notifications API
Operations for setting up and managing notifications of changes to your video library.
Operations for setting up and managing notifications of changes to your video library.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/brightcove-notifications-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Brightcove CMS API Reference Notifications API
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: Notifications
description: Operations for setting up and managing notifications of changes to your video library.
paths:
/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
components:
parameters:
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
SubscriptionId:
description: Subscription ID.
explode: false
in: path
name: subscription_id
required: true
schema:
type: string
style: simple
AccountId:
description: Video Cloud account ID.
explode: false
in: path
name: account_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
schemas:
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
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
x-bc-implicit-head: true
x-bc-implicit-options: true
x-bc-upstream: https://backend_server