openapi: 3.0.1 info: title: Bitmovin Encoding Config API description: REST API for cloud-based VOD and live video encoding. Supports H.264, H.265/HEVC, VP9, AV1 and more, along with adaptive bitrate packaging (HLS/DASH/Smooth Streaming), DRM (Widevine, PlayReady, FairPlay), and per-title encoding optimisation. version: '3.0' termsOfService: https://bitmovin.com contact: name: Bitmovin Inc url: https://bitmovin.com email: support@bitmovin.com servers: - url: https://api.bitmovin.com/v1 description: Bitmovin Server variables: {} security: - ApiKeyAuth: [] - ApiKeyAuth: [] TenantOrgId: [] tags: - name: Config paths: /streams/config/domain-restriction/{domain_restriction_id}: delete: tags: - Config summary: Delete streams domain restriction by id operationId: DeleteStreamsDomainRestriction parameters: - name: domain_restriction_id in: path description: Id of the streams domain restriction. style: simple required: true schema: type: string example: cbp330cc4dci2iv9bc9g responses: '204': description: Successful response. default: description: Error response. content: application/json: schema: $ref: '#/components/schemas/ResponseError' get: tags: - Config summary: Get streams domain restriction config by id operationId: GetStreamDomainRestrictionById parameters: - name: domain_restriction_id in: path description: Id of the streams domain restriction. style: simple required: true schema: type: string example: cbp330cc4dci2iv9bc9g responses: '200': description: Successful response. content: application/json: schema: allOf: - $ref: '#/components/schemas/ResponseEnvelope' - properties: data: properties: result: allOf: - $ref: '#/components/schemas/StreamsDomainRestrictionResponse' default: description: Error response. content: application/json: schema: $ref: '#/components/schemas/ResponseError' patch: tags: - Config summary: Partially update streams domain restriction by id operationId: PatchStreamsDomainRestriction parameters: - name: domain_restriction_id in: path description: Id of the streams domain restriction. style: simple required: true schema: type: string example: cbp330cc4dci2iv9bc9g requestBody: required: true description: The updated streams domain restriction object. content: application/json: schema: $ref: '#/components/schemas/StreamsDomainRestrictionUpdateRequest' responses: '200': description: Successful response. content: application/json: schema: allOf: - $ref: '#/components/schemas/ResponseEnvelope' - properties: data: properties: result: $ref: '#/components/schemas/StreamsDomainRestrictionResponse' default: description: Error response. content: application/json: schema: $ref: '#/components/schemas/ResponseError' /streams/config/domain-restriction: get: tags: - Config summary: Get paginated list of domain restriction configurations operationId: GetStreamsDomainRestriction parameters: - name: offset in: query description: Index of the first item to return, starting at 0. Default is 0 style: form schema: type: integer example: '0' - name: limit in: query description: Maximum number of items to return. Default is 25, maximum is 100 style: form schema: type: integer example: '25' responses: '200': description: Successful response. content: application/json: schema: allOf: - $ref: '#/components/schemas/ResponseEnvelope' - properties: data: properties: result: allOf: - $ref: '#/components/schemas/PaginationResponse' - properties: items: description: List of all streams domain restriction configs items: $ref: '#/components/schemas/StreamsDomainRestrictionResponse' default: description: Error response. content: application/json: schema: $ref: '#/components/schemas/ResponseError' post: tags: - Config summary: Create new streams domain restriction operationId: PostStreamsDomainRestriction requestBody: description: Create a new streams domain restriction content: application/json: schema: $ref: '#/components/schemas/StreamsDomainRestrictionCreateRequest' responses: '201': description: Successful response. content: application/json: schema: allOf: - $ref: '#/components/schemas/ResponseEnvelope' - properties: data: properties: result: allOf: - $ref: '#/components/schemas/StreamsDomainRestrictionResponse' - description: Created streams domain restriction '409': description: Error response. content: application/json: schema: $ref: '#/components/schemas/ResponseError' default: description: Error response. content: application/json: schema: $ref: '#/components/schemas/ResponseError' components: schemas: BitmovinResponse: title: BitmovinResponse required: - id properties: id: type: string readOnly: true description: Id of the resource example: cb90b80c-8867-4e3b-8479-174aa2843f62 StreamsDomainRestrictionUpdateRequest: title: StreamsDomainRestrictionUpdateRequest properties: allowedDomains: type: array description: The list of allowed domains items: type: string allowNoReferer: type: boolean description: Controls if requests to domain restricted streams without referer header should be allowed or denied allowShare: type: boolean description: Controls if Stream is accessible via sharing URL or not Message: title: Message required: - type - text allOf: - $ref: '#/components/schemas/BitmovinResponse' - properties: type: description: Message type giving a hint on the importance of the message (log level) allOf: - $ref: '#/components/schemas/MessageType' text: type: string description: Message text example: field must not be empty field: type: string description: Name of the field to which the message is referring to example: manifestId links: type: array items: $ref: '#/components/schemas/Link' description: collection of links to webpages containing further information on the topic more: type: object description: Service-specific information date: type: string format: date-time description: Timestamp when the message occurred example: '2016-06-25T20:09:23.69Z' ResponseEnvelope: title: ResponseEnvelope required: - requestId - status - data properties: requestId: type: string readOnly: true description: Unique correlation id example: 6d84e126-d10c-4e52-bbfb-bd4c92bc8333 status: description: Response status information readOnly: true example: SUCCESS allOf: - $ref: '#/components/schemas/ResponseStatus' data: description: Response information readOnly: true allOf: - $ref: '#/components/schemas/ResultWrapper' more: type: object description: Additional endpoint specific information StreamsDomainRestrictionResponse: title: StreamsDomainRestrictionResponse properties: id: readOnly: true type: string description: The identifier of the streams domain restriction entity allowedDomains: type: array description: The list of allowed domains items: type: string allowNoReferer: type: boolean description: Controls if requests to domain restricted streams without referer header should be allowed or denied allowShare: type: boolean description: Controls if Stream is accessible via sharing URL or not PaginationResponse: title: PaginationResponse properties: totalCount: type: integer format: int64 readOnly: true offset: type: integer readOnly: true limit: type: integer readOnly: true previous: type: string readOnly: true next: type: string readOnly: true items: type: array readOnly: true items: type: object ResponseStatus: title: ResponseStatus type: string enum: - SUCCESS - ERROR ResponseErrorData: title: ResponseErrorData required: - code - message - developerMessage properties: code: type: integer readOnly: true description: 'Contains an error code as defined in https://bitmovin.com/encoding-documentation/bitmovin-api/#/introduction/api-error-codes ' example: 1005 message: type: string readOnly: true description: General error message developerMessage: type: string readOnly: true description: More detailed message meant for developers links: type: array readOnly: true items: $ref: '#/components/schemas/Link' description: collection of links to webpages containing further information on the topic details: type: array readOnly: true items: $ref: '#/components/schemas/Message' description: collection of messages containing more detailed information on the cause of the error ResultWrapper: title: ResultWrapper properties: result: type: object readOnly: true StreamsDomainRestrictionCreateRequest: title: StreamsDomainRestrictionCreateRequest required: - allowedDomains properties: allowedDomains: type: array description: The list of allowed domains example: [] items: type: string allowNoReferer: type: boolean description: Controls if requests to domain restricted streams without referer header should be allowed or denied allowShare: type: boolean description: Controls if Stream is accessible via sharing URL or not ResponseError: title: ResponseError required: - requestId - status - data properties: requestId: type: string readOnly: true description: Unique correlation id example: 6d84e126-d10c-4e52-bbfb-bd4c92bc8333 status: description: Response status information readOnly: true example: ERROR allOf: - $ref: '#/components/schemas/ResponseStatus' data: description: Response information readOnly: true allOf: - $ref: '#/components/schemas/ResponseErrorData' Link: title: Link required: - href properties: href: type: string description: webpage target URL example: https://bitmovin.com/encoding-documentation/bitmovin-api/#/reference/encoding/manifests/add-period title: type: string description: Short description of the linked page example: how to add a period to a manifest MessageType: title: MessageType type: string enum: - ERROR - WARNING - INFO - DEBUG - TRACE securitySchemes: ApiKeyAuth: type: apiKey description: Your Bitmovin API key name: X-Api-Key in: header TenantOrgId: type: apiKey description: Your Bitmovin account organization name: X-Tenant-Org-Id in: header