UNPKG

@bitmovin/api-sdk

Version:

Bitmovin JS/TS API SDK

79 lines (78 loc) 2.86 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const BaseAPI_1 = require("../../../common/BaseAPI"); const Mapper_1 = require("../../../common/Mapper"); const CustomdataApi_1 = require("./customdata/CustomdataApi"); const S3Output_1 = require("../../../models/S3Output"); const PaginationResponse_1 = require("../../../models/PaginationResponse"); const S3OutputListQueryParams_1 = require("./S3OutputListQueryParams"); /** * S3Api - object-oriented interface * @export * @class S3Api * @extends {BaseAPI} */ class S3Api extends BaseAPI_1.BaseAPI { constructor(configuration) { super(configuration); this.customdata = new CustomdataApi_1.default(configuration); } /** * @summary Create S3 Output * @param {S3Output} s3Output The S3 output to be created The following permissions are required for S3 output: * s3:PutObject * s3:PutObjectAcl * s3:ListBucket * s3:GetBucketLocation * @throws {BitmovinError} * @memberof S3Api */ create(s3Output) { return this.restClient.post('/encoding/outputs/s3', {}, s3Output).then((response) => { return (0, Mapper_1.map)(response, S3Output_1.default); }); } /** * @summary Delete S3 Output * @param {string} outputId Id of the output * @throws {BitmovinError} * @memberof S3Api */ delete(outputId) { const pathParamMap = { output_id: outputId }; return this.restClient.delete('/encoding/outputs/s3/{output_id}', pathParamMap).then((response) => { return (0, Mapper_1.map)(response, S3Output_1.default); }); } /** * @summary S3 Output Details * @param {string} outputId Id of the input * @throws {BitmovinError} * @memberof S3Api */ get(outputId) { const pathParamMap = { output_id: outputId }; return this.restClient.get('/encoding/outputs/s3/{output_id}', pathParamMap).then((response) => { return (0, Mapper_1.map)(response, S3Output_1.default); }); } /** * @summary List S3 Outputs * @param {*} [queryParameters] query parameters for filtering, sorting and pagination * @throws {BitmovinError} * @memberof S3Api */ list(queryParameters) { let queryParams = {}; if (typeof queryParameters === 'function') { queryParams = queryParameters(new S3OutputListQueryParams_1.S3OutputListQueryParamsBuilder()).buildQueryParams(); } else if (queryParameters) { queryParams = queryParameters; } return this.restClient.get('/encoding/outputs/s3', {}, queryParams).then((response) => { return new PaginationResponse_1.default(response, S3Output_1.default); }); } } exports.default = S3Api;