/* tslint:disable */ /* eslint-disable */ /** * Sonatype Guide API * REST API into [Sonatype Guide](https://guide.sonatype.com). * * The version of the OpenAPI document: 202607 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ import * as runtime from '../runtime'; import type { BulkRemoveMembersRequest, InviteUsersRequest, OnboardingBannerStatusDTO, OrganizationDTO, OrganizationMembersResponse, UpdateOrganizationRequest, } from '../models/index'; import { BulkRemoveMembersRequestFromJSON, BulkRemoveMembersRequestToJSON, InviteUsersRequestFromJSON, InviteUsersRequestToJSON, OnboardingBannerStatusDTOFromJSON, OnboardingBannerStatusDTOToJSON, OrganizationDTOFromJSON, OrganizationDTOToJSON, OrganizationMembersResponseFromJSON, OrganizationMembersResponseToJSON, UpdateOrganizationRequestFromJSON, UpdateOrganizationRequestToJSON, } from '../models/index'; export interface CurrentUserOrganizationApiAcceptInvitationRequest { invitationToken: string; } export interface CurrentUserOrganizationApiBulkRemoveMembersOrInvitationsRequest { bulkRemoveMembersRequest: BulkRemoveMembersRequest; } export interface CurrentUserOrganizationApiInviteUsersOperationRequest { inviteUsersRequest: InviteUsersRequest; } export interface CurrentUserOrganizationApiRemoveMemberOrInvitationRequest { email: string; } export interface CurrentUserOrganizationApiUpdateOrganizationOperationRequest { updateOrganizationRequest: UpdateOrganizationRequest; } /** * */ export class CurrentUserOrganizationApi extends runtime.BaseAPI { /** * Accept an invitation to join an organization using the invitation token from the email link * Accept organization invitation */ async acceptInvitationRaw(requestParameters: CurrentUserOrganizationApiAcceptInvitationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { if (requestParameters['invitationToken'] == null) { throw new runtime.RequiredError( 'invitationToken', 'Required parameter "invitationToken" was null or undefined when calling acceptInvitation().' ); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.accessToken) { const token = this.configuration.accessToken; const tokenString = await token("bearer-jwt", []); if (tokenString) { headerParameters["Authorization"] = `Bearer ${tokenString}`; } } let urlPath = `/users/me/organization/invitations/{invitationToken}/accept`; urlPath = urlPath.replace(`{${"invitationToken"}}`, encodeURIComponent(String(requestParameters['invitationToken']))); const response = await this.request({ path: urlPath, method: 'POST', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.VoidApiResponse(response); } /** * Accept an invitation to join an organization using the invitation token from the email link * Accept organization invitation */ async acceptInvitation(requestParameters: CurrentUserOrganizationApiAcceptInvitationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { await this.acceptInvitationRaw(requestParameters, initOverrides); } /** * Removes multiple members or pending invitations from the authenticated user\'s organization. All removals happen in a single transaction - if any removal fails, all are rolled back. * Bulk remove members or invitations from organization */ async bulkRemoveMembersOrInvitationsRaw(requestParameters: CurrentUserOrganizationApiBulkRemoveMembersOrInvitationsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { if (requestParameters['bulkRemoveMembersRequest'] == null) { throw new runtime.RequiredError( 'bulkRemoveMembersRequest', 'Required parameter "bulkRemoveMembersRequest" was null or undefined when calling bulkRemoveMembersOrInvitations().' ); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; headerParameters['Content-Type'] = 'application/json'; if (this.configuration && this.configuration.accessToken) { const token = this.configuration.accessToken; const tokenString = await token("bearer-jwt", []); if (tokenString) { headerParameters["Authorization"] = `Bearer ${tokenString}`; } } let urlPath = `/users/me/organization/members`; const response = await this.request({ path: urlPath, method: 'DELETE', headers: headerParameters, query: queryParameters, body: BulkRemoveMembersRequestToJSON(requestParameters['bulkRemoveMembersRequest']), }, initOverrides); return new runtime.VoidApiResponse(response); } /** * Removes multiple members or pending invitations from the authenticated user\'s organization. All removals happen in a single transaction - if any removal fails, all are rolled back. * Bulk remove members or invitations from organization */ async bulkRemoveMembersOrInvitations(requestParameters: CurrentUserOrganizationApiBulkRemoveMembersOrInvitationsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { await this.bulkRemoveMembersOrInvitationsRaw(requestParameters, initOverrides); } /** * Marks the onboarding banner as dismissed for the organization. The banner will not reappear for any member of the organization across sessions or devices. * Dismiss onboarding banner */ async dismissOnboardingBannerRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.accessToken) { const token = this.configuration.accessToken; const tokenString = await token("bearer-jwt", []); if (tokenString) { headerParameters["Authorization"] = `Bearer ${tokenString}`; } } let urlPath = `/users/me/organization/onboarding-banner`; const response = await this.request({ path: urlPath, method: 'DELETE', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.VoidApiResponse(response); } /** * Marks the onboarding banner as dismissed for the organization. The banner will not reappear for any member of the organization across sessions or devices. * Dismiss onboarding banner */ async dismissOnboardingBanner(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { await this.dismissOnboardingBannerRaw(initOverrides); } /** * Retrieves organization information without billing/usage details * Get current user\'s organization */ async getCurrentUserOrganizationRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.accessToken) { const token = this.configuration.accessToken; const tokenString = await token("bearer-jwt", []); if (tokenString) { headerParameters["Authorization"] = `Bearer ${tokenString}`; } } let urlPath = `/users/me/organization`; const response = await this.request({ path: urlPath, method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.VoidApiResponse(response); } /** * Retrieves organization information without billing/usage details * Get current user\'s organization */ async getCurrentUserOrganization(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { await this.getCurrentUserOrganizationRaw(initOverrides); } /** * Retrieves the onboarding banner visibility status based on organization plan, member count, and dismiss state. Returns showBanner=false when user has no organization. * Get onboarding banner status */ async getOnboardingBannerStatusRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.accessToken) { const token = this.configuration.accessToken; const tokenString = await token("bearer-jwt", []); if (tokenString) { headerParameters["Authorization"] = `Bearer ${tokenString}`; } } let urlPath = `/users/me/organization/onboarding-banner`; const response = await this.request({ path: urlPath, method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.VoidApiResponse(response); } /** * Retrieves the onboarding banner visibility status based on organization plan, member count, and dismiss state. Returns showBanner=false when user has no organization. * Get onboarding banner status */ async getOnboardingBannerStatus(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { await this.getOnboardingBannerStatusRaw(initOverrides); } /** * Sends an invitation to an email list to join the organization * Invite users to current user\'s an organization */ async inviteUsersRaw(requestParameters: CurrentUserOrganizationApiInviteUsersOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { if (requestParameters['inviteUsersRequest'] == null) { throw new runtime.RequiredError( 'inviteUsersRequest', 'Required parameter "inviteUsersRequest" was null or undefined when calling inviteUsers().' ); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; headerParameters['Content-Type'] = 'application/json'; if (this.configuration && this.configuration.accessToken) { const token = this.configuration.accessToken; const tokenString = await token("bearer-jwt", []); if (tokenString) { headerParameters["Authorization"] = `Bearer ${tokenString}`; } } let urlPath = `/users/me/organization/members/invite`; const response = await this.request({ path: urlPath, method: 'POST', headers: headerParameters, query: queryParameters, body: InviteUsersRequestToJSON(requestParameters['inviteUsersRequest']), }, initOverrides); return new runtime.VoidApiResponse(response); } /** * Sends an invitation to an email list to join the organization * Invite users to current user\'s an organization */ async inviteUsers(requestParameters: CurrentUserOrganizationApiInviteUsersOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { await this.inviteUsersRaw(requestParameters, initOverrides); } /** * Allows a member to leave their organization * Leave organization */ async leaveOrganizationRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.accessToken) { const token = this.configuration.accessToken; const tokenString = await token("bearer-jwt", []); if (tokenString) { headerParameters["Authorization"] = `Bearer ${tokenString}`; } } let urlPath = `/users/me/organization/membership`; const response = await this.request({ path: urlPath, method: 'DELETE', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.VoidApiResponse(response); } /** * Allows a member to leave their organization * Leave organization */ async leaveOrganization(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { await this.leaveOrganizationRaw(initOverrides); } /** * Removes a member or pending invitation from the authenticated user\'s organization * Remove member or invitation from organization */ async removeMemberOrInvitationRaw(requestParameters: CurrentUserOrganizationApiRemoveMemberOrInvitationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { if (requestParameters['email'] == null) { throw new runtime.RequiredError( 'email', 'Required parameter "email" was null or undefined when calling removeMemberOrInvitation().' ); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.accessToken) { const token = this.configuration.accessToken; const tokenString = await token("bearer-jwt", []); if (tokenString) { headerParameters["Authorization"] = `Bearer ${tokenString}`; } } let urlPath = `/users/me/organization/members/{email}`; urlPath = urlPath.replace(`{${"email"}}`, encodeURIComponent(String(requestParameters['email']))); const response = await this.request({ path: urlPath, method: 'DELETE', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.VoidApiResponse(response); } /** * Removes a member or pending invitation from the authenticated user\'s organization * Remove member or invitation from organization */ async removeMemberOrInvitation(requestParameters: CurrentUserOrganizationApiRemoveMemberOrInvitationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { await this.removeMemberOrInvitationRaw(requestParameters, initOverrides); } /** * Retrieves members and invitees of the authenticated user\'s organization * Retrieve current user\'s organization members and invitees */ async retrieveOrganizationMembersAsCsvRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.accessToken) { const token = this.configuration.accessToken; const tokenString = await token("bearer-jwt", []); if (tokenString) { headerParameters["Authorization"] = `Bearer ${tokenString}`; } } let urlPath = `/users/me/organization/members`; const response = await this.request({ path: urlPath, method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.VoidApiResponse(response); } /** * Retrieves members and invitees of the authenticated user\'s organization * Retrieve current user\'s organization members and invitees */ async retrieveOrganizationMembersAsCsv(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { await this.retrieveOrganizationMembersAsCsvRaw(initOverrides); } /** * Updates the organization\'s name, logo URL and URL * Update current user\'s organization */ async updateOrganizationRaw(requestParameters: CurrentUserOrganizationApiUpdateOrganizationOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { if (requestParameters['updateOrganizationRequest'] == null) { throw new runtime.RequiredError( 'updateOrganizationRequest', 'Required parameter "updateOrganizationRequest" was null or undefined when calling updateOrganization().' ); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; headerParameters['Content-Type'] = 'application/json'; if (this.configuration && this.configuration.accessToken) { const token = this.configuration.accessToken; const tokenString = await token("bearer-jwt", []); if (tokenString) { headerParameters["Authorization"] = `Bearer ${tokenString}`; } } let urlPath = `/users/me/organization`; const response = await this.request({ path: urlPath, method: 'PUT', headers: headerParameters, query: queryParameters, body: UpdateOrganizationRequestToJSON(requestParameters['updateOrganizationRequest']), }, initOverrides); return new runtime.VoidApiResponse(response); } /** * Updates the organization\'s name, logo URL and URL * Update current user\'s organization */ async updateOrganization(requestParameters: CurrentUserOrganizationApiUpdateOrganizationOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { await this.updateOrganizationRaw(requestParameters, initOverrides); } }