Brightcove Credentials API
Operations for creating and managing credentials for secure destinations.
Operations for creating and managing credentials for secure destinations.
openapi: 3.0.3
info:
title: Brightcove Analytics API Reference Access Tokens Credentials API
description: "Reference for the Brightcove Analytics API, used to retrieve analytics data for your accounts. To test API requests, you can use our <a href=\"/getting-started/concepts-testing-tools-brightcove-apis.html\" target=\"_blank\">API Testing Tools</a>.\n\nFor additional in-depth guides to features of the API, see the **[general documentation](/analytics/index.html)**.\n\n **Base URL**: https://analytics.api.brightcove.com"
x-bc-access: public
version: 1.0.0
servers:
- url: https://analytics.api.brightcove.com
variables: {}
tags:
- name: Credentials
description: Operations for creating and managing credentials for secure destinations.
paths:
/credentials:
get:
tags:
- Credentials
summary: List Credentials
description: This endpoint can be used to get user credentials for a given user provided one has an API key.
operationId: ListCredentials
parameters:
- $ref: '#/components/parameters/ContentType'
- $ref: '#/components/parameters/XAPIKEY'
responses:
'200':
description: '200'
content:
application/json:
schema:
$ref: '#/components/schemas/ListCredentials'
'401':
description: 'UNAUTHORIZED: Unauthorized - see [Live API Error Messages](/live-api/references/live-api-error-messages.html) for more details'
'404':
description: 'RESOURCE_NOT_FOUND: The api could not find the resource you requested - see [Live API Error Messages](/live-api/references/live-api-error-messages.html) for more details'
'500':
description: 'INTERNAL_SERVER_ERROR: see [Live API Error Messages](/live-api/references/live-api-error-messages.html) for more details'
deprecated: false
security: []
x-operation-settings:
CollectParameters: false
AllowDynamicQueryParameters: false
AllowDynamicFormParameters: false
IsMultiContentStreaming: false
post:
tags:
- Credentials
summary: Create Credential
description: 'Create a new credential. '
operationId: CreateCredential
parameters:
- $ref: '#/components/parameters/ContentType'
- $ref: '#/components/parameters/XAPIKEY'
requestBody:
description: Create a new credential.
content:
application/json:
schema:
$ref: '#/components/schemas/CreateCredentialbody'
required: true
responses:
'200':
description: '200'
content:
application/json:
schema:
$ref: '#/components/schemas/CreateCredential'
'400':
description: 'BAD_REQUEST: Invalid input value - see [Live API Error Messages](/live-api/references/live-api-error-messages.html) for more details'
'401':
description: 'UNAUTHORIZED: Unauthorized - see [Live API Error Messages](/live-api/references/live-api-error-messages.html) for more details'
'404':
description: 'RESOURCE_NOT_FOUND: The api could not find the resource you requested - see [Live API Error Messages](/live-api/references/live-api-error-messages.html) for more details'
'500':
description: 'INTERNAL_SERVER_ERROR: see [Live API Error Messages](/live-api/references/live-api-error-messages.html) for more details'
deprecated: false
security: []
x-operation-settings:
CollectParameters: false
AllowDynamicQueryParameters: false
AllowDynamicFormParameters: false
IsMultiContentStreaming: false
/credentials/{credential_id}:
put:
tags:
- Credentials
summary: Update Credential
description: 'Update a credential. '
operationId: UpdateCredential
parameters:
- $ref: '#/components/parameters/CredentialId'
- $ref: '#/components/parameters/ContentType'
- $ref: '#/components/parameters/XAPIKEY'
requestBody:
description: Update a credential.
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateCredentialbody'
required: true
responses:
'200':
description: '200'
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateCredential'
'400':
description: 'BAD_REQUEST: Invalid input value - see [Live API Error Messages](/live-api/references/live-api-error-messages.html) for more details'
'401':
description: 'UNAUTHORIZED: Unauthorized - see [Live API Error Messages](/live-api/references/live-api-error-messages.html) for more details'
'404':
description: 'RESOURCE_NOT_FOUND: The api could not find the resource you requested - see [Live API Error Messages](/live-api/references/live-api-error-messages.html) for more details'
'500':
description: 'INTERNAL_SERVER_ERROR: see [Live API Error Messages](/live-api/references/live-api-error-messages.html) for more details'
deprecated: false
security: []
x-operation-settings:
CollectParameters: false
AllowDynamicQueryParameters: false
AllowDynamicFormParameters: false
IsMultiContentStreaming: false
delete:
tags:
- Credentials
summary: Delete Credential
description: 'Delete a credential. '
operationId: DeleteCredential
parameters:
- $ref: '#/components/parameters/CredentialId'
- $ref: '#/components/parameters/ContentType'
- $ref: '#/components/parameters/XAPIKEY'
responses:
'204':
description: 'NO_CONTENT: the credential was deleted'
'401':
description: 'UNAUTHORIZED: Unauthorized - see [Live API Error Messages](/live-api/references/live-api-error-messages.html) for more details'
'404':
description: 'RESOURCE_NOT_FOUND: The api could not find the resource you requested - see [Live API Error Messages](/live-api/references/live-api-error-messages.html) for more details'
'500':
description: 'INTERNAL_SERVER_ERROR: see [Live API Error Messages](/live-api/references/live-api-error-messages.html) for more details'
deprecated: false
security: []
x-operation-settings:
CollectParameters: false
AllowDynamicQueryParameters: false
AllowDynamicFormParameters: false
IsMultiContentStreaming: false
components:
schemas:
CreateCredentialbody:
properties:
credential_default_for_type:
description: Whether these are the default credentials for the request type
type: boolean
default: false
credential_label:
description: Label for the credential
type: string
credential_private:
description: Private key or password depending on the type
type: string
credential_public:
description: Public key or password depending on the type
type: string
credential_type:
description: The credential type
enum:
- ftp
- http
- oauth
- rtmp
- s3
- videocloud
- zencoder
type: string
oauth_settings:
$ref: '#/components/schemas/CreateCredentialbody.oauthSettings'
user_id:
description: GUID for which the credentials are being created.
type: string
default: (all users)
required:
- credential_label
- credential_type
- credential_private
- credential_public
title: Create_CredentialBody
type: object
Credentials:
properties:
credential_default_for_type:
description: The clip label (from the input)
type: boolean
credential_id:
description: The credential id
type: string
credential_private:
description: The private key for the credential (not shown; represented by asterisks)
type: string
credential_public:
description: The public key for the credential
type: string
label:
description: The label used to reference the credential in requests
type: string
type:
description: The credential type
enum:
- ftp
- http
- oauth
- rtmp
- s3
- videocloud
- zencoder
x-enum-elements:
- name: ftp
description: credentials for FTP site where clips should be sent
- name: http
description: basic authorization credentials for an http address to send notifications to
- name: oauth
description: credentials for OAuth2 authentication required for the address where notifications are to be sent
- name: rtmp
description: add authentication to the endpoint your encoder connects to, so that anyone who has the RTMP URL can't just connect
- name: s3
description: authentication for your S3 bucket to send clips to
- name: videocloud
description: authentication for your Video Cloud account to send clips to
- name: zendcoder
description: authentication for your Zencoder account to send clips to
type: string
user_id:
description: The user id
type: string
required:
- credential_default_for_type
- user_id
- credential_private
- type
- label
- credential_id
- credential_public
title: credentials
type: object
ListCredentials:
properties:
Array:
description: of credentials objects
items:
$ref: '#/components/schemas/Credentials'
type: array
required:
- Array
title: List_Credentials200
type: object
CreateCredential:
properties:
credential_id:
description: The credential id
type: string
user_id:
description: The user id
type: string
required:
- credential_id
- user_id
title: Create_Credential_Response
type: object
UpdateCredentialbody:
properties:
credential_default_for_type:
description: Whether these are the default credentials for the request type
type: boolean
credential_label:
description: Label for the credential
type: string
credential_private:
description: Private key or password depending on the type
type: string
credential_public:
description: Public key or password depending on the type
type: string
credential_type:
description: The credential type
enum:
- ftp
- http
- oauth
- rtmp
- s3
- videocloud
- zencoder
type: string
oauth_settings:
$ref: '#/components/schemas/UpdateCredentialbody.oauthSettings'
user_id:
description: GUID for which the credentials are being created.
type: string
required:
- user_id
- credential_default_for_type
- credential_label
- credential_type
- credential_private
- credential_public
title: Update_CredentialBody
type: object
UpdateCredential:
properties:
credential_id:
description: The credential id
type: string
user_id:
description: The user id
type: string
required:
- credential_id
- user_id
title: Update_Credential_Response
type: object
UpdateCredentialbody.oauthSettings:
title: Update_CredentialBody.oauth_settings
type: object
description: OAuth settings for OAuth credentials needed to send notifications to a notification URL Required for oauth type credentials
properties:
url:
description: OAuth access token URL for OAuth credentials needed to send notifications to a notification URL
type: string
required:
- url
CreateCredentialbody.oauthSettings:
properties:
url:
description: OAuth access token URL for OAuth credentials needed to send notifications to a notification URL
type: string
required:
- url
title: Create_CredentialBody.oauth_settings
description: OAuth settings for OAuth credentials needed to send notifications to a notification URL Required for oauth type credentials
type: object
parameters:
XAPIKEY:
name: X-API-KEY
in: header
description: 'X-API-KEY: {Your_Live_API_Key}'
required: true
style: simple
explode: false
schema:
type: string
CredentialId:
name: credential_id
in: path
description: A credential ID
required: true
style: simple
explode: false
schema:
type: string
ContentType:
name: Content-Type
in: header
description: 'Content-Type: application/json'
required: true
style: simple
explode: false
schema:
type: string
default: application/json
example: application/json
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/analytics/read: Read analytics data
video-cloud/video/read: Read video data
x-bc-implicit-head: true
x-bc-implicit-options: true
x-bc-upstream: https://backend_server