@bitmovin/api-sdk
Version:
Bitmovin JS/TS API SDK
98 lines (97 loc) • 3.98 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const BaseAPI_1 = require("../../../../common/BaseAPI");
const Mapper_1 = require("../../../../common/Mapper");
const BitmovinResponse_1 = require("../../../../models/BitmovinResponse");
const Invitation_1 = require("../../../../models/Invitation");
const PaginationResponse_1 = require("../../../../models/PaginationResponse");
const InvitationListQueryParams_1 = require("./InvitationListQueryParams");
/**
* InvitationsApi - object-oriented interface
* @export
* @class InvitationsApi
* @extends {BaseAPI}
*/
class InvitationsApi extends BaseAPI_1.BaseAPI {
constructor(configuration) {
super(configuration);
}
/**
* @summary Add Invitation to Group
* @param {string} organizationId Id of the organization
* @param {string} groupId Id of the group
* @param {Invitation} invitation Invitation details
* @throws {BitmovinError}
* @memberof InvitationsApi
*/
create(organizationId, groupId, invitation) {
const pathParamMap = {
organization_id: organizationId,
group_id: groupId
};
return this.restClient.post('/account/organizations/{organization_id}/groups/{group_id}/invitations', pathParamMap, invitation).then((response) => {
return (0, Mapper_1.map)(response, Invitation_1.default);
});
}
/**
* @summary Delete Invitation
* @param {string} organizationId Id of the organization
* @param {string} groupId Id of the group
* @param {string} invitationId Id of the invitation.
* @throws {BitmovinError}
* @memberof InvitationsApi
*/
delete(organizationId, groupId, invitationId) {
const pathParamMap = {
organization_id: organizationId,
group_id: groupId,
invitation_id: invitationId
};
return this.restClient.delete('/account/organizations/{organization_id}/groups/{group_id}/invitations/{invitation_id}', pathParamMap).then((response) => {
return (0, Mapper_1.map)(response, BitmovinResponse_1.default);
});
}
/**
* @summary Invitation Details
* @param {string} organizationId Id of the organization
* @param {string} groupId Id of the group
* @param {string} invitationId Id of the invitation.
* @throws {BitmovinError}
* @memberof InvitationsApi
*/
get(organizationId, groupId, invitationId) {
const pathParamMap = {
organization_id: organizationId,
group_id: groupId,
invitation_id: invitationId
};
return this.restClient.get('/account/organizations/{organization_id}/groups/{group_id}/invitations/{invitation_id}', pathParamMap).then((response) => {
return (0, Mapper_1.map)(response, Invitation_1.default);
});
}
/**
* @summary List Invitations
* @param {string} organizationId Id of the organization
* @param {string} groupId Id of the group
* @param {*} [queryParameters] query parameters for filtering, sorting and pagination
* @throws {BitmovinError}
* @memberof InvitationsApi
*/
list(organizationId, groupId, queryParameters) {
const pathParamMap = {
organization_id: organizationId,
group_id: groupId
};
let queryParams = {};
if (typeof queryParameters === 'function') {
queryParams = queryParameters(new InvitationListQueryParams_1.InvitationListQueryParamsBuilder()).buildQueryParams();
}
else if (queryParameters) {
queryParams = queryParameters;
}
return this.restClient.get('/account/organizations/{organization_id}/groups/{group_id}/invitations', pathParamMap, queryParams).then((response) => {
return new PaginationResponse_1.default(response, Invitation_1.default);
});
}
}
exports.default = InvitationsApi;