/* tslint:disable */ /* eslint-disable */ /** * Identity Security Cloud API - Governance Groups * Use these APIs to interact with the Identity Security Cloud platform to achieve repeatable, automated processes with greater scalability. We encourage you to join the SailPoint Developer Community forum at https://developer.sailpoint.com/discuss to connect with other developers using our APIs. * * The version of the OpenAPI document: v1 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ import type { Configuration } from '../configuration'; import type { AxiosPromise, AxiosInstance, RawAxiosRequestConfig } from 'axios'; import globalAxios from 'axios'; // Some imports not used depending on template conditions // @ts-ignore import { DUMMY_BASE_URL, assertParamExists, setApiKeyToObject, setBasicAuthToObject, setBearerAuthToObject, setOAuthToObject, setSearchParams, serializeDataIfNeeded, toPathString, createRequestFunction } from './common'; import type { RequestArgs } from './base'; // @ts-ignore import { BASE_PATH, COLLECTION_FORMATS, BaseAPI, RequiredError, operationServerMap } from './base'; /** * * @export * @interface ArrayInner */ export interface ArrayInner { } /** * Identity\'s basic details. * @export * @interface BulkWorkgroupMembersRequestInner */ export interface BulkWorkgroupMembersRequestInner { /** * Identity\'s DTO type. * @type {string} * @memberof BulkWorkgroupMembersRequestInner */ 'type'?: BulkWorkgroupMembersRequestInnerTypeEnum; /** * Identity ID. * @type {string} * @memberof BulkWorkgroupMembersRequestInner */ 'id'?: string; /** * Identity\'s display name. * @type {string} * @memberof BulkWorkgroupMembersRequestInner */ 'name'?: string; } export const BulkWorkgroupMembersRequestInnerTypeEnum = { Identity: 'IDENTITY' } as const; export type BulkWorkgroupMembersRequestInnerTypeEnum = typeof BulkWorkgroupMembersRequestInnerTypeEnum[keyof typeof BulkWorkgroupMembersRequestInnerTypeEnum]; /** * * @export * @interface ConnectedObject */ export interface ConnectedObject { /** * * @type {ConnectedObjectType} * @memberof ConnectedObject */ 'type'?: ConnectedObjectType; /** * ID of the object to which this reference applies * @type {string} * @memberof ConnectedObject */ 'id'?: string; /** * Human-readable name of Connected object * @type {string} * @memberof ConnectedObject */ 'name'?: string; /** * Description of the Connected object. * @type {string} * @memberof ConnectedObject */ 'description'?: string | null; } /** * An enumeration of the types of Objects associated with a Governance Group. Supported object types are ACCESS_PROFILE, ROLE, SOD_POLICY and SOURCE. * @export * @enum {string} */ export const ConnectedObjectType = { AccessProfile: 'ACCESS_PROFILE', Role: 'ROLE', SodPolicy: 'SOD_POLICY', Source: 'SOURCE' } as const; export type ConnectedObjectType = typeof ConnectedObjectType[keyof typeof ConnectedObjectType]; /** * * @export * @interface ErrorMessageDto */ export interface ErrorMessageDto { /** * The locale for the message text, a BCP 47 language tag. * @type {string} * @memberof ErrorMessageDto */ 'locale'?: string | null; /** * * @type {LocaleOrigin} * @memberof ErrorMessageDto */ 'localeOrigin'?: LocaleOrigin | null; /** * Actual text of the error message in the indicated locale. * @type {string} * @memberof ErrorMessageDto */ 'text'?: string; } /** * * @export * @interface ErrorResponseDto */ export interface ErrorResponseDto { /** * Fine-grained error code providing more detail of the error. * @type {string} * @memberof ErrorResponseDto */ 'detailCode'?: string; /** * Unique tracking id for the error. * @type {string} * @memberof ErrorResponseDto */ 'trackingId'?: string; /** * Generic localized reason for error * @type {Array} * @memberof ErrorResponseDto */ 'messages'?: Array; /** * Plain-text descriptive reasons to provide additional detail to the text provided in the messages field * @type {Array} * @memberof ErrorResponseDto */ 'causes'?: Array; } /** * A JSONPatch Operation as defined by [RFC 6902 - JSON Patch](https://tools.ietf.org/html/rfc6902) * @export * @interface JsonPatchOperation */ export interface JsonPatchOperation { /** * The operation to be performed * @type {string} * @memberof JsonPatchOperation */ 'op': JsonPatchOperationOpEnum; /** * A string JSON Pointer representing the target path to an element to be affected by the operation * @type {string} * @memberof JsonPatchOperation */ 'path': string; /** * * @type {JsonPatchOperationValue} * @memberof JsonPatchOperation */ 'value'?: JsonPatchOperationValue; } export const JsonPatchOperationOpEnum = { Add: 'add', Remove: 'remove', Replace: 'replace', Move: 'move', Copy: 'copy', Test: 'test' } as const; export type JsonPatchOperationOpEnum = typeof JsonPatchOperationOpEnum[keyof typeof JsonPatchOperationOpEnum]; /** * @type JsonPatchOperationValue * The value to be used for the operation, required for \"add\" and \"replace\" operations * @export */ export type JsonPatchOperationValue = Array | boolean | number | object | string; /** * Identity of workgroup member. * @export * @interface ListWorkgroupMembersV1200ResponseInner */ export interface ListWorkgroupMembersV1200ResponseInner { /** * Workgroup member identity DTO type. * @type {string} * @memberof ListWorkgroupMembersV1200ResponseInner */ 'type'?: ListWorkgroupMembersV1200ResponseInnerTypeEnum; /** * Workgroup member identity ID. * @type {string} * @memberof ListWorkgroupMembersV1200ResponseInner */ 'id'?: string; /** * Workgroup member identity display name. * @type {string} * @memberof ListWorkgroupMembersV1200ResponseInner */ 'name'?: string; /** * Workgroup member identity email. * @type {string} * @memberof ListWorkgroupMembersV1200ResponseInner */ 'email'?: string; } export const ListWorkgroupMembersV1200ResponseInnerTypeEnum = { Identity: 'IDENTITY' } as const; export type ListWorkgroupMembersV1200ResponseInnerTypeEnum = typeof ListWorkgroupMembersV1200ResponseInnerTypeEnum[keyof typeof ListWorkgroupMembersV1200ResponseInnerTypeEnum]; /** * * @export * @interface ListWorkgroupsV1401Response */ export interface ListWorkgroupsV1401Response { /** * A message describing the error * @type {any} * @memberof ListWorkgroupsV1401Response */ 'error'?: any; } /** * * @export * @interface ListWorkgroupsV1429Response */ export interface ListWorkgroupsV1429Response { /** * A message describing the error * @type {any} * @memberof ListWorkgroupsV1429Response */ 'message'?: any; } /** * An indicator of how the locale was selected. *DEFAULT* means the locale is the system default. *REQUEST* means the locale was selected from the request context (i.e., best match based on the *Accept-Language* header). Additional values may be added in the future without notice. * @export * @enum {string} */ export const LocaleOrigin = { Default: 'DEFAULT', Request: 'REQUEST' } as const; export type LocaleOrigin = typeof LocaleOrigin[keyof typeof LocaleOrigin]; /** * Owner\'s identity. * @export * @interface OwnerDto */ export interface OwnerDto { /** * Owner\'s DTO type. * @type {string} * @memberof OwnerDto */ 'type'?: OwnerDtoTypeEnum; /** * Owner\'s identity ID. * @type {string} * @memberof OwnerDto */ 'id'?: string; /** * Owner\'s name. * @type {string} * @memberof OwnerDto */ 'name'?: string; } export const OwnerDtoTypeEnum = { Identity: 'IDENTITY' } as const; export type OwnerDtoTypeEnum = typeof OwnerDtoTypeEnum[keyof typeof OwnerDtoTypeEnum]; /** * * @export * @interface WorkgroupBulkDeleteRequest */ export interface WorkgroupBulkDeleteRequest { /** * List of IDs of Governance Groups to be deleted. * @type {Array} * @memberof WorkgroupBulkDeleteRequest */ 'ids'?: Array; } /** * * @export * @interface WorkgroupConnectionDto */ export interface WorkgroupConnectionDto { /** * * @type {WorkgroupConnectionDtoObject} * @memberof WorkgroupConnectionDto */ 'object'?: WorkgroupConnectionDtoObject; /** * Connection Type. * @type {string} * @memberof WorkgroupConnectionDto */ 'connectionType'?: WorkgroupConnectionDtoConnectionTypeEnum; } export const WorkgroupConnectionDtoConnectionTypeEnum = { AccessRequestReviewer: 'AccessRequestReviewer', Owner: 'Owner', ManagementWorkgroup: 'ManagementWorkgroup' } as const; export type WorkgroupConnectionDtoConnectionTypeEnum = typeof WorkgroupConnectionDtoConnectionTypeEnum[keyof typeof WorkgroupConnectionDtoConnectionTypeEnum]; /** * * @export * @interface WorkgroupConnectionDtoObject */ export interface WorkgroupConnectionDtoObject { /** * * @type {ConnectedObjectType & object} * @memberof WorkgroupConnectionDtoObject */ 'type'?: ConnectedObjectType & object; /** * ID of the object to which this reference applies * @type {string} * @memberof WorkgroupConnectionDtoObject */ 'id'?: string; /** * Human-readable name of Connected object * @type {string} * @memberof WorkgroupConnectionDtoObject */ 'name'?: string; /** * Description of the Connected object. * @type {string} * @memberof WorkgroupConnectionDtoObject */ 'description'?: string | null; } /** * * @export * @interface WorkgroupDeleteItem */ export interface WorkgroupDeleteItem { /** * Id of the Governance Group. * @type {string} * @memberof WorkgroupDeleteItem */ 'id': string; /** * The HTTP response status code returned for an individual Governance Group that is requested for deletion during a bulk delete operation. > 204 - Governance Group deleted successfully. > 409 - Governance Group is in use,hence can not be deleted. > 404 - Governance Group not found. * @type {number} * @memberof WorkgroupDeleteItem */ 'status': number; /** * Human readable status description and containing additional context information about success or failures etc. * @type {string} * @memberof WorkgroupDeleteItem */ 'description'?: string; } /** * * @export * @interface WorkgroupDto */ export interface WorkgroupDto { /** * * @type {WorkgroupDtoOwner} * @memberof WorkgroupDto */ 'owner'?: WorkgroupDtoOwner; /** * Governance group ID. * @type {string} * @memberof WorkgroupDto */ 'id'?: string; /** * Governance group name. * @type {string} * @memberof WorkgroupDto */ 'name'?: string; /** * Governance group description. * @type {string} * @memberof WorkgroupDto */ 'description'?: string; /** * Number of members in the governance group. * @type {number} * @memberof WorkgroupDto */ 'memberCount'?: number; /** * Number of connections in the governance group. * @type {number} * @memberof WorkgroupDto */ 'connectionCount'?: number; /** * * @type {string} * @memberof WorkgroupDto */ 'created'?: string; /** * * @type {string} * @memberof WorkgroupDto */ 'modified'?: string; } /** * * @export * @interface WorkgroupDtoOwner */ export interface WorkgroupDtoOwner { /** * Owner\'s DTO type. * @type {string} * @memberof WorkgroupDtoOwner */ 'type'?: WorkgroupDtoOwnerTypeEnum; /** * Owner\'s identity ID. * @type {string} * @memberof WorkgroupDtoOwner */ 'id'?: string; /** * Owner\'s name. * @type {string} * @memberof WorkgroupDtoOwner */ 'name'?: string; /** * The display name of the identity * @type {string} * @memberof WorkgroupDtoOwner */ 'displayName'?: string; /** * The primary email address of the identity * @type {string} * @memberof WorkgroupDtoOwner */ 'emailAddress'?: string; } export const WorkgroupDtoOwnerTypeEnum = { Identity: 'IDENTITY' } as const; export type WorkgroupDtoOwnerTypeEnum = typeof WorkgroupDtoOwnerTypeEnum[keyof typeof WorkgroupDtoOwnerTypeEnum]; /** * * @export * @interface WorkgroupMemberAddItem */ export interface WorkgroupMemberAddItem { /** * Identifier of identity in bulk member add request. * @type {string} * @memberof WorkgroupMemberAddItem */ 'id': string; /** * The HTTP response status code returned for an individual member that is requested for addition during a bulk add operation. The HTTP response status code returned for an individual Governance Group is requested for deletion. > 201 - Identity is added into Governance Group members list. > 409 - Identity is already member of Governance Group. * @type {number} * @memberof WorkgroupMemberAddItem */ 'status': number; /** * Human readable status description and containing additional context information about success or failures etc. * @type {string} * @memberof WorkgroupMemberAddItem */ 'description'?: string; } /** * * @export * @interface WorkgroupMemberDeleteItem */ export interface WorkgroupMemberDeleteItem { /** * Identifier of identity in bulk member add /remove request. * @type {string} * @memberof WorkgroupMemberDeleteItem */ 'id': string; /** * The HTTP response status code returned for an individual member that is requested for deletion during a bulk delete operation. > 204 - Identity is removed from Governance Group members list. > 404 - Identity is not member of Governance Group. * @type {number} * @memberof WorkgroupMemberDeleteItem */ 'status': number; /** * Human readable status description and containing additional context information about success or failures etc. * @type {string} * @memberof WorkgroupMemberDeleteItem */ 'description'?: string; } /** * GovernanceGroupsApi - axios parameter creator * @export */ export const GovernanceGroupsApiAxiosParamCreator = function (configuration?: Configuration) { return { /** * This API creates a new Governance Group. * @summary Create a new governance group. * @param {WorkgroupDto} workgroupDto * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ createWorkgroupV1: async (workgroupDto: WorkgroupDto, axiosOptions: RawAxiosRequestConfig = {}): Promise => { // verify required parameter 'workgroupDto' is not null or undefined assertParamExists('createWorkgroupV1', 'workgroupDto', workgroupDto) const localVarPath = `/workgroups/v1`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; } const localVarRequestOptions = { method: 'POST', ...baseOptions, ...axiosOptions}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; localVarHeaderParameter['Content-Type'] = 'application/json'; setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...axiosOptions.headers}; localVarRequestOptions.data = serializeDataIfNeeded(workgroupDto, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), axiosOptions: localVarRequestOptions, }; }, /** * This API removes one or more members from a Governance Group. A > **Following field of Identity is an optional field in the request.** > **name** * @summary Remove members from governance group * @param {string} workgroupId ID of the Governance Group. * @param {Array} bulkWorkgroupMembersRequestInner List of identities to be removed from a Governance Group members list. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ deleteWorkgroupMembersV1: async (workgroupId: string, bulkWorkgroupMembersRequestInner: Array, axiosOptions: RawAxiosRequestConfig = {}): Promise => { // verify required parameter 'workgroupId' is not null or undefined assertParamExists('deleteWorkgroupMembersV1', 'workgroupId', workgroupId) // verify required parameter 'bulkWorkgroupMembersRequestInner' is not null or undefined assertParamExists('deleteWorkgroupMembersV1', 'bulkWorkgroupMembersRequestInner', bulkWorkgroupMembersRequestInner) const localVarPath = `/workgroups/v1/{workgroupId}/members/bulk-delete` .replace(`{${"workgroupId"}}`, encodeURIComponent(String(workgroupId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; } const localVarRequestOptions = { method: 'POST', ...baseOptions, ...axiosOptions}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; localVarHeaderParameter['Content-Type'] = 'application/json'; setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...axiosOptions.headers}; localVarRequestOptions.data = serializeDataIfNeeded(bulkWorkgroupMembersRequestInner, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), axiosOptions: localVarRequestOptions, }; }, /** * This API deletes a Governance Group by its ID. * @summary Delete a governance group * @param {string} id ID of the Governance Group * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ deleteWorkgroupV1: async (id: string, axiosOptions: RawAxiosRequestConfig = {}): Promise => { // verify required parameter 'id' is not null or undefined assertParamExists('deleteWorkgroupV1', 'id', id) const localVarPath = `/workgroups/v1/{id}` .replace(`{${"id"}}`, encodeURIComponent(String(id))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; } const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...axiosOptions}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...axiosOptions.headers}; return { url: toPathString(localVarUrlObj), axiosOptions: localVarRequestOptions, }; }, /** * This API initiates a bulk deletion of one or more Governance Groups. > If any of the indicated Governance Groups have one or more connections associated with it,then those Governance Groups will be added in **inUse** list of the response. Governance Group(s) marked as **inUse** can not be deleted. > If any of the indicated Governance Groups is not does not exists in Organization,then those Governance Groups will be added in **notFound** list of the response. Governance Groups marked as **notFound** will not be deleted. > If any of the indicated Governance Groups does not have any connections associated with it,then those Governance Groups will be added in **deleted** list of the response. A Governance Group marked as **deleted** will be deleted from current Organization. > If the request contains any **inUse** or **notFound** Governance Group IDs then it skips only these Governance Groups for deletion and deletes the rest of Governance Groups which have no connections associated with it. > **This API has limit number of Governance Groups can be deleted at one time. If the request contains more then 100 Governance Groups IDs to be deleted then the API will throw an exception.** * @summary Delete governance group(s) * @param {WorkgroupBulkDeleteRequest} workgroupBulkDeleteRequest * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ deleteWorkgroupsInBulkV1: async (workgroupBulkDeleteRequest: WorkgroupBulkDeleteRequest, axiosOptions: RawAxiosRequestConfig = {}): Promise => { // verify required parameter 'workgroupBulkDeleteRequest' is not null or undefined assertParamExists('deleteWorkgroupsInBulkV1', 'workgroupBulkDeleteRequest', workgroupBulkDeleteRequest) const localVarPath = `/workgroups/v1/bulk-delete`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; } const localVarRequestOptions = { method: 'POST', ...baseOptions, ...axiosOptions}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; localVarHeaderParameter['Content-Type'] = 'application/json'; setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...axiosOptions.headers}; localVarRequestOptions.data = serializeDataIfNeeded(workgroupBulkDeleteRequest, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), axiosOptions: localVarRequestOptions, }; }, /** * This API returns a Governance Groups by its ID. * @summary Get governance group by id * @param {string} id ID of the Governance Group * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ getWorkgroupV1: async (id: string, axiosOptions: RawAxiosRequestConfig = {}): Promise => { // verify required parameter 'id' is not null or undefined assertParamExists('getWorkgroupV1', 'id', id) const localVarPath = `/workgroups/v1/{id}` .replace(`{${"id"}}`, encodeURIComponent(String(id))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; } const localVarRequestOptions = { method: 'GET', ...baseOptions, ...axiosOptions}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...axiosOptions.headers}; return { url: toPathString(localVarUrlObj), axiosOptions: localVarRequestOptions, }; }, /** * This API returns list of connections associated with a Governance Group. * @summary List connections for governance group * @param {string} workgroupId ID of the Governance Group. * @param {number} [offset] Offset into the full result set. Usually specified with *limit* to paginate through the results. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. * @param {number} [limit] Note that for this API the maximum value for limit is 50. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. * @param {boolean} [count] If *true* it will populate the *X-Total-Count* response header with the number of results that would be returned if *limit* and *offset* were ignored. Since requesting a total count can have a performance impact, it is recommended not to send **count=true** if that value will not be used. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. * @param {string} [sorters] Sort results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#sorting-results) Sorting is supported for the following fields: **name, created, modified** * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ listConnectionsV1: async (workgroupId: string, offset?: number, limit?: number, count?: boolean, sorters?: string, axiosOptions: RawAxiosRequestConfig = {}): Promise => { // verify required parameter 'workgroupId' is not null or undefined assertParamExists('listConnectionsV1', 'workgroupId', workgroupId) const localVarPath = `/workgroups/v1/{workgroupId}/connections` .replace(`{${"workgroupId"}}`, encodeURIComponent(String(workgroupId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; } const localVarRequestOptions = { method: 'GET', ...baseOptions, ...axiosOptions}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; if (offset !== undefined) { localVarQueryParameter['offset'] = offset; } if (limit !== undefined) { localVarQueryParameter['limit'] = limit; } if (count !== undefined) { localVarQueryParameter['count'] = count; } if (sorters !== undefined) { localVarQueryParameter['sorters'] = sorters; } setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...axiosOptions.headers}; return { url: toPathString(localVarUrlObj), axiosOptions: localVarRequestOptions, }; }, /** * This API returns list of members associated with a Governance Group. * @summary List governance group members * @param {string} workgroupId ID of the Governance Group. * @param {number} [offset] Offset into the full result set. Usually specified with *limit* to paginate through the results. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. * @param {number} [limit] Note that for this API the maximum value for limit is 50. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. * @param {boolean} [count] If *true* it will populate the *X-Total-Count* response header with the number of results that would be returned if *limit* and *offset* were ignored. Since requesting a total count can have a performance impact, it is recommended not to send **count=true** if that value will not be used. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. * @param {string} [sorters] Sort results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#sorting-results) Sorting is supported for the following fields: **name, created, modified** * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ listWorkgroupMembersV1: async (workgroupId: string, offset?: number, limit?: number, count?: boolean, sorters?: string, axiosOptions: RawAxiosRequestConfig = {}): Promise => { // verify required parameter 'workgroupId' is not null or undefined assertParamExists('listWorkgroupMembersV1', 'workgroupId', workgroupId) const localVarPath = `/workgroups/v1/{workgroupId}/members` .replace(`{${"workgroupId"}}`, encodeURIComponent(String(workgroupId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; } const localVarRequestOptions = { method: 'GET', ...baseOptions, ...axiosOptions}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; if (offset !== undefined) { localVarQueryParameter['offset'] = offset; } if (limit !== undefined) { localVarQueryParameter['limit'] = limit; } if (count !== undefined) { localVarQueryParameter['count'] = count; } if (sorters !== undefined) { localVarQueryParameter['sorters'] = sorters; } setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...axiosOptions.headers}; return { url: toPathString(localVarUrlObj), axiosOptions: localVarRequestOptions, }; }, /** * This API returns list of Governance Groups * @summary List governance groups * @param {number} [offset] Offset into the full result set. Usually specified with *limit* to paginate through the results. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. * @param {number} [limit] Max number of results to return. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. * @param {boolean} [count] If *true* it will populate the *X-Total-Count* response header with the number of results that would be returned if *limit* and *offset* were ignored. Since requesting a total count can have a performance impact, it is recommended not to send **count=true** if that value will not be used. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. * @param {string} [filters] Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **id**: *eq, in, sw* **name**: *eq, sw, in* **memberships.identityId**: *eq, in* * @param {string} [sorters] Sort results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#sorting-results) Sorting is supported for the following fields: **name, created, modified, id, description** * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ listWorkgroupsV1: async (offset?: number, limit?: number, count?: boolean, filters?: string, sorters?: string, axiosOptions: RawAxiosRequestConfig = {}): Promise => { const localVarPath = `/workgroups/v1`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; } const localVarRequestOptions = { method: 'GET', ...baseOptions, ...axiosOptions}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; if (offset !== undefined) { localVarQueryParameter['offset'] = offset; } if (limit !== undefined) { localVarQueryParameter['limit'] = limit; } if (count !== undefined) { localVarQueryParameter['count'] = count; } if (filters !== undefined) { localVarQueryParameter['filters'] = filters; } if (sorters !== undefined) { localVarQueryParameter['sorters'] = sorters; } setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...axiosOptions.headers}; return { url: toPathString(localVarUrlObj), axiosOptions: localVarRequestOptions, }; }, /** * This API updates an existing governance group by ID. The following fields and objects are patchable: * name * description * owner * @summary Patch a governance group * @param {string} id ID of the Governance Group * @param {Array} [jsonPatchOperation] * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ patchWorkgroupV1: async (id: string, jsonPatchOperation?: Array, axiosOptions: RawAxiosRequestConfig = {}): Promise => { // verify required parameter 'id' is not null or undefined assertParamExists('patchWorkgroupV1', 'id', id) const localVarPath = `/workgroups/v1/{id}` .replace(`{${"id"}}`, encodeURIComponent(String(id))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; } const localVarRequestOptions = { method: 'PATCH', ...baseOptions, ...axiosOptions}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; localVarHeaderParameter['Content-Type'] = 'application/json-patch+json'; setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...axiosOptions.headers}; localVarRequestOptions.data = serializeDataIfNeeded(jsonPatchOperation, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), axiosOptions: localVarRequestOptions, }; }, /** * This API adds one or more members to a Governance Group. A token with API, ORG_ADMIN authority is required to call this API. > **Following field of Identity is an optional field in the request.** > **name** * @summary Add members to governance group * @param {string} workgroupId ID of the Governance Group. * @param {Array} bulkWorkgroupMembersRequestInner List of identities to be added to a Governance Group members list. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ updateWorkgroupMembersV1: async (workgroupId: string, bulkWorkgroupMembersRequestInner: Array, axiosOptions: RawAxiosRequestConfig = {}): Promise => { // verify required parameter 'workgroupId' is not null or undefined assertParamExists('updateWorkgroupMembersV1', 'workgroupId', workgroupId) // verify required parameter 'bulkWorkgroupMembersRequestInner' is not null or undefined assertParamExists('updateWorkgroupMembersV1', 'bulkWorkgroupMembersRequestInner', bulkWorkgroupMembersRequestInner) const localVarPath = `/workgroups/v1/{workgroupId}/members/bulk-add` .replace(`{${"workgroupId"}}`, encodeURIComponent(String(workgroupId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; } const localVarRequestOptions = { method: 'POST', ...baseOptions, ...axiosOptions}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; localVarHeaderParameter['Content-Type'] = 'application/json'; setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...axiosOptions.headers}; localVarRequestOptions.data = serializeDataIfNeeded(bulkWorkgroupMembersRequestInner, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), axiosOptions: localVarRequestOptions, }; }, } }; /** * GovernanceGroupsApi - functional programming interface * @export */ export const GovernanceGroupsApiFp = function(configuration?: Configuration) { const localVarAxiosParamCreator = GovernanceGroupsApiAxiosParamCreator(configuration) return { /** * This API creates a new Governance Group. * @summary Create a new governance group. * @param {WorkgroupDto} workgroupDto * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ async createWorkgroupV1(workgroupDto: WorkgroupDto, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.createWorkgroupV1(workgroupDto, axiosOptions); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['GovernanceGroupsApi.createWorkgroupV1']?.[localVarOperationServerIndex]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); }, /** * This API removes one or more members from a Governance Group. A > **Following field of Identity is an optional field in the request.** > **name** * @summary Remove members from governance group * @param {string} workgroupId ID of the Governance Group. * @param {Array} bulkWorkgroupMembersRequestInner List of identities to be removed from a Governance Group members list. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ async deleteWorkgroupMembersV1(workgroupId: string, bulkWorkgroupMembersRequestInner: Array, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { const localVarAxiosArgs = await localVarAxiosParamCreator.deleteWorkgroupMembersV1(workgroupId, bulkWorkgroupMembersRequestInner, axiosOptions); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['GovernanceGroupsApi.deleteWorkgroupMembersV1']?.[localVarOperationServerIndex]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); }, /** * This API deletes a Governance Group by its ID. * @summary Delete a governance group * @param {string} id ID of the Governance Group * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ async deleteWorkgroupV1(id: string, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.deleteWorkgroupV1(id, axiosOptions); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['GovernanceGroupsApi.deleteWorkgroupV1']?.[localVarOperationServerIndex]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); }, /** * This API initiates a bulk deletion of one or more Governance Groups. > If any of the indicated Governance Groups have one or more connections associated with it,then those Governance Groups will be added in **inUse** list of the response. Governance Group(s) marked as **inUse** can not be deleted. > If any of the indicated Governance Groups is not does not exists in Organization,then those Governance Groups will be added in **notFound** list of the response. Governance Groups marked as **notFound** will not be deleted. > If any of the indicated Governance Groups does not have any connections associated with it,then those Governance Groups will be added in **deleted** list of the response. A Governance Group marked as **deleted** will be deleted from current Organization. > If the request contains any **inUse** or **notFound** Governance Group IDs then it skips only these Governance Groups for deletion and deletes the rest of Governance Groups which have no connections associated with it. > **This API has limit number of Governance Groups can be deleted at one time. If the request contains more then 100 Governance Groups IDs to be deleted then the API will throw an exception.** * @summary Delete governance group(s) * @param {WorkgroupBulkDeleteRequest} workgroupBulkDeleteRequest * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ async deleteWorkgroupsInBulkV1(workgroupBulkDeleteRequest: WorkgroupBulkDeleteRequest, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { const localVarAxiosArgs = await localVarAxiosParamCreator.deleteWorkgroupsInBulkV1(workgroupBulkDeleteRequest, axiosOptions); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['GovernanceGroupsApi.deleteWorkgroupsInBulkV1']?.[localVarOperationServerIndex]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); }, /** * This API returns a Governance Groups by its ID. * @summary Get governance group by id * @param {string} id ID of the Governance Group * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ async getWorkgroupV1(id: string, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.getWorkgroupV1(id, axiosOptions); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['GovernanceGroupsApi.getWorkgroupV1']?.[localVarOperationServerIndex]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); }, /** * This API returns list of connections associated with a Governance Group. * @summary List connections for governance group * @param {string} workgroupId ID of the Governance Group. * @param {number} [offset] Offset into the full result set. Usually specified with *limit* to paginate through the results. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. * @param {number} [limit] Note that for this API the maximum value for limit is 50. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. * @param {boolean} [count] If *true* it will populate the *X-Total-Count* response header with the number of results that would be returned if *limit* and *offset* were ignored. Since requesting a total count can have a performance impact, it is recommended not to send **count=true** if that value will not be used. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. * @param {string} [sorters] Sort results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#sorting-results) Sorting is supported for the following fields: **name, created, modified** * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ async listConnectionsV1(workgroupId: string, offset?: number, limit?: number, count?: boolean, sorters?: string, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { const localVarAxiosArgs = await localVarAxiosParamCreator.listConnectionsV1(workgroupId, offset, limit, count, sorters, axiosOptions); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['GovernanceGroupsApi.listConnectionsV1']?.[localVarOperationServerIndex]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); }, /** * This API returns list of members associated with a Governance Group. * @summary List governance group members * @param {string} workgroupId ID of the Governance Group. * @param {number} [offset] Offset into the full result set. Usually specified with *limit* to paginate through the results. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. * @param {number} [limit] Note that for this API the maximum value for limit is 50. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. * @param {boolean} [count] If *true* it will populate the *X-Total-Count* response header with the number of results that would be returned if *limit* and *offset* were ignored. Since requesting a total count can have a performance impact, it is recommended not to send **count=true** if that value will not be used. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. * @param {string} [sorters] Sort results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#sorting-results) Sorting is supported for the following fields: **name, created, modified** * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ async listWorkgroupMembersV1(workgroupId: string, offset?: number, limit?: number, count?: boolean, sorters?: string, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { const localVarAxiosArgs = await localVarAxiosParamCreator.listWorkgroupMembersV1(workgroupId, offset, limit, count, sorters, axiosOptions); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['GovernanceGroupsApi.listWorkgroupMembersV1']?.[localVarOperationServerIndex]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); }, /** * This API returns list of Governance Groups * @summary List governance groups * @param {number} [offset] Offset into the full result set. Usually specified with *limit* to paginate through the results. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. * @param {number} [limit] Max number of results to return. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. * @param {boolean} [count] If *true* it will populate the *X-Total-Count* response header with the number of results that would be returned if *limit* and *offset* were ignored. Since requesting a total count can have a performance impact, it is recommended not to send **count=true** if that value will not be used. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. * @param {string} [filters] Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **id**: *eq, in, sw* **name**: *eq, sw, in* **memberships.identityId**: *eq, in* * @param {string} [sorters] Sort results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#sorting-results) Sorting is supported for the following fields: **name, created, modified, id, description** * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ async listWorkgroupsV1(offset?: number, limit?: number, count?: boolean, filters?: string, sorters?: string, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { const localVarAxiosArgs = await localVarAxiosParamCreator.listWorkgroupsV1(offset, limit, count, filters, sorters, axiosOptions); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['GovernanceGroupsApi.listWorkgroupsV1']?.[localVarOperationServerIndex]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); }, /** * This API updates an existing governance group by ID. The following fields and objects are patchable: * name * description * owner * @summary Patch a governance group * @param {string} id ID of the Governance Group * @param {Array} [jsonPatchOperation] * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ async patchWorkgroupV1(id: string, jsonPatchOperation?: Array, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.patchWorkgroupV1(id, jsonPatchOperation, axiosOptions); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['GovernanceGroupsApi.patchWorkgroupV1']?.[localVarOperationServerIndex]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); }, /** * This API adds one or more members to a Governance Group. A token with API, ORG_ADMIN authority is required to call this API. > **Following field of Identity is an optional field in the request.** > **name** * @summary Add members to governance group * @param {string} workgroupId ID of the Governance Group. * @param {Array} bulkWorkgroupMembersRequestInner List of identities to be added to a Governance Group members list. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ async updateWorkgroupMembersV1(workgroupId: string, bulkWorkgroupMembersRequestInner: Array, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { const localVarAxiosArgs = await localVarAxiosParamCreator.updateWorkgroupMembersV1(workgroupId, bulkWorkgroupMembersRequestInner, axiosOptions); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['GovernanceGroupsApi.updateWorkgroupMembersV1']?.[localVarOperationServerIndex]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); }, } }; /** * GovernanceGroupsApi - factory interface * @export */ export const GovernanceGroupsApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { const localVarFp = GovernanceGroupsApiFp(configuration) return { /** * This API creates a new Governance Group. * @summary Create a new governance group. * @param {GovernanceGroupsApiCreateWorkgroupV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ createWorkgroupV1(requestParameters: GovernanceGroupsApiCreateWorkgroupV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise { return localVarFp.createWorkgroupV1(requestParameters.workgroupDto, axiosOptions).then((request) => request(axios, basePath)); }, /** * This API removes one or more members from a Governance Group. A > **Following field of Identity is an optional field in the request.** > **name** * @summary Remove members from governance group * @param {GovernanceGroupsApiDeleteWorkgroupMembersV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ deleteWorkgroupMembersV1(requestParameters: GovernanceGroupsApiDeleteWorkgroupMembersV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise> { return localVarFp.deleteWorkgroupMembersV1(requestParameters.workgroupId, requestParameters.bulkWorkgroupMembersRequestInner, axiosOptions).then((request) => request(axios, basePath)); }, /** * This API deletes a Governance Group by its ID. * @summary Delete a governance group * @param {GovernanceGroupsApiDeleteWorkgroupV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ deleteWorkgroupV1(requestParameters: GovernanceGroupsApiDeleteWorkgroupV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise { return localVarFp.deleteWorkgroupV1(requestParameters.id, axiosOptions).then((request) => request(axios, basePath)); }, /** * This API initiates a bulk deletion of one or more Governance Groups. > If any of the indicated Governance Groups have one or more connections associated with it,then those Governance Groups will be added in **inUse** list of the response. Governance Group(s) marked as **inUse** can not be deleted. > If any of the indicated Governance Groups is not does not exists in Organization,then those Governance Groups will be added in **notFound** list of the response. Governance Groups marked as **notFound** will not be deleted. > If any of the indicated Governance Groups does not have any connections associated with it,then those Governance Groups will be added in **deleted** list of the response. A Governance Group marked as **deleted** will be deleted from current Organization. > If the request contains any **inUse** or **notFound** Governance Group IDs then it skips only these Governance Groups for deletion and deletes the rest of Governance Groups which have no connections associated with it. > **This API has limit number of Governance Groups can be deleted at one time. If the request contains more then 100 Governance Groups IDs to be deleted then the API will throw an exception.** * @summary Delete governance group(s) * @param {GovernanceGroupsApiDeleteWorkgroupsInBulkV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ deleteWorkgroupsInBulkV1(requestParameters: GovernanceGroupsApiDeleteWorkgroupsInBulkV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise> { return localVarFp.deleteWorkgroupsInBulkV1(requestParameters.workgroupBulkDeleteRequest, axiosOptions).then((request) => request(axios, basePath)); }, /** * This API returns a Governance Groups by its ID. * @summary Get governance group by id * @param {GovernanceGroupsApiGetWorkgroupV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ getWorkgroupV1(requestParameters: GovernanceGroupsApiGetWorkgroupV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise { return localVarFp.getWorkgroupV1(requestParameters.id, axiosOptions).then((request) => request(axios, basePath)); }, /** * This API returns list of connections associated with a Governance Group. * @summary List connections for governance group * @param {GovernanceGroupsApiListConnectionsV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ listConnectionsV1(requestParameters: GovernanceGroupsApiListConnectionsV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise> { return localVarFp.listConnectionsV1(requestParameters.workgroupId, requestParameters.offset, requestParameters.limit, requestParameters.count, requestParameters.sorters, axiosOptions).then((request) => request(axios, basePath)); }, /** * This API returns list of members associated with a Governance Group. * @summary List governance group members * @param {GovernanceGroupsApiListWorkgroupMembersV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ listWorkgroupMembersV1(requestParameters: GovernanceGroupsApiListWorkgroupMembersV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise> { return localVarFp.listWorkgroupMembersV1(requestParameters.workgroupId, requestParameters.offset, requestParameters.limit, requestParameters.count, requestParameters.sorters, axiosOptions).then((request) => request(axios, basePath)); }, /** * This API returns list of Governance Groups * @summary List governance groups * @param {GovernanceGroupsApiListWorkgroupsV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ listWorkgroupsV1(requestParameters: GovernanceGroupsApiListWorkgroupsV1Request = {}, axiosOptions?: RawAxiosRequestConfig): AxiosPromise> { return localVarFp.listWorkgroupsV1(requestParameters.offset, requestParameters.limit, requestParameters.count, requestParameters.filters, requestParameters.sorters, axiosOptions).then((request) => request(axios, basePath)); }, /** * This API updates an existing governance group by ID. The following fields and objects are patchable: * name * description * owner * @summary Patch a governance group * @param {GovernanceGroupsApiPatchWorkgroupV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ patchWorkgroupV1(requestParameters: GovernanceGroupsApiPatchWorkgroupV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise { return localVarFp.patchWorkgroupV1(requestParameters.id, requestParameters.jsonPatchOperation, axiosOptions).then((request) => request(axios, basePath)); }, /** * This API adds one or more members to a Governance Group. A token with API, ORG_ADMIN authority is required to call this API. > **Following field of Identity is an optional field in the request.** > **name** * @summary Add members to governance group * @param {GovernanceGroupsApiUpdateWorkgroupMembersV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ updateWorkgroupMembersV1(requestParameters: GovernanceGroupsApiUpdateWorkgroupMembersV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise> { return localVarFp.updateWorkgroupMembersV1(requestParameters.workgroupId, requestParameters.bulkWorkgroupMembersRequestInner, axiosOptions).then((request) => request(axios, basePath)); }, }; }; /** * Request parameters for createWorkgroupV1 operation in GovernanceGroupsApi. * @export * @interface GovernanceGroupsApiCreateWorkgroupV1Request */ export interface GovernanceGroupsApiCreateWorkgroupV1Request { /** * * @type {WorkgroupDto} * @memberof GovernanceGroupsApiCreateWorkgroupV1 */ readonly workgroupDto: WorkgroupDto } /** * Request parameters for deleteWorkgroupMembersV1 operation in GovernanceGroupsApi. * @export * @interface GovernanceGroupsApiDeleteWorkgroupMembersV1Request */ export interface GovernanceGroupsApiDeleteWorkgroupMembersV1Request { /** * ID of the Governance Group. * @type {string} * @memberof GovernanceGroupsApiDeleteWorkgroupMembersV1 */ readonly workgroupId: string /** * List of identities to be removed from a Governance Group members list. * @type {Array} * @memberof GovernanceGroupsApiDeleteWorkgroupMembersV1 */ readonly bulkWorkgroupMembersRequestInner: Array } /** * Request parameters for deleteWorkgroupV1 operation in GovernanceGroupsApi. * @export * @interface GovernanceGroupsApiDeleteWorkgroupV1Request */ export interface GovernanceGroupsApiDeleteWorkgroupV1Request { /** * ID of the Governance Group * @type {string} * @memberof GovernanceGroupsApiDeleteWorkgroupV1 */ readonly id: string } /** * Request parameters for deleteWorkgroupsInBulkV1 operation in GovernanceGroupsApi. * @export * @interface GovernanceGroupsApiDeleteWorkgroupsInBulkV1Request */ export interface GovernanceGroupsApiDeleteWorkgroupsInBulkV1Request { /** * * @type {WorkgroupBulkDeleteRequest} * @memberof GovernanceGroupsApiDeleteWorkgroupsInBulkV1 */ readonly workgroupBulkDeleteRequest: WorkgroupBulkDeleteRequest } /** * Request parameters for getWorkgroupV1 operation in GovernanceGroupsApi. * @export * @interface GovernanceGroupsApiGetWorkgroupV1Request */ export interface GovernanceGroupsApiGetWorkgroupV1Request { /** * ID of the Governance Group * @type {string} * @memberof GovernanceGroupsApiGetWorkgroupV1 */ readonly id: string } /** * Request parameters for listConnectionsV1 operation in GovernanceGroupsApi. * @export * @interface GovernanceGroupsApiListConnectionsV1Request */ export interface GovernanceGroupsApiListConnectionsV1Request { /** * ID of the Governance Group. * @type {string} * @memberof GovernanceGroupsApiListConnectionsV1 */ readonly workgroupId: string /** * Offset into the full result set. Usually specified with *limit* to paginate through the results. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. * @type {number} * @memberof GovernanceGroupsApiListConnectionsV1 */ readonly offset?: number /** * Note that for this API the maximum value for limit is 50. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. * @type {number} * @memberof GovernanceGroupsApiListConnectionsV1 */ readonly limit?: number /** * If *true* it will populate the *X-Total-Count* response header with the number of results that would be returned if *limit* and *offset* were ignored. Since requesting a total count can have a performance impact, it is recommended not to send **count=true** if that value will not be used. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. * @type {boolean} * @memberof GovernanceGroupsApiListConnectionsV1 */ readonly count?: boolean /** * Sort results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#sorting-results) Sorting is supported for the following fields: **name, created, modified** * @type {string} * @memberof GovernanceGroupsApiListConnectionsV1 */ readonly sorters?: string } /** * Request parameters for listWorkgroupMembersV1 operation in GovernanceGroupsApi. * @export * @interface GovernanceGroupsApiListWorkgroupMembersV1Request */ export interface GovernanceGroupsApiListWorkgroupMembersV1Request { /** * ID of the Governance Group. * @type {string} * @memberof GovernanceGroupsApiListWorkgroupMembersV1 */ readonly workgroupId: string /** * Offset into the full result set. Usually specified with *limit* to paginate through the results. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. * @type {number} * @memberof GovernanceGroupsApiListWorkgroupMembersV1 */ readonly offset?: number /** * Note that for this API the maximum value for limit is 50. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. * @type {number} * @memberof GovernanceGroupsApiListWorkgroupMembersV1 */ readonly limit?: number /** * If *true* it will populate the *X-Total-Count* response header with the number of results that would be returned if *limit* and *offset* were ignored. Since requesting a total count can have a performance impact, it is recommended not to send **count=true** if that value will not be used. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. * @type {boolean} * @memberof GovernanceGroupsApiListWorkgroupMembersV1 */ readonly count?: boolean /** * Sort results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#sorting-results) Sorting is supported for the following fields: **name, created, modified** * @type {string} * @memberof GovernanceGroupsApiListWorkgroupMembersV1 */ readonly sorters?: string } /** * Request parameters for listWorkgroupsV1 operation in GovernanceGroupsApi. * @export * @interface GovernanceGroupsApiListWorkgroupsV1Request */ export interface GovernanceGroupsApiListWorkgroupsV1Request { /** * Offset into the full result set. Usually specified with *limit* to paginate through the results. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. * @type {number} * @memberof GovernanceGroupsApiListWorkgroupsV1 */ readonly offset?: number /** * Max number of results to return. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. * @type {number} * @memberof GovernanceGroupsApiListWorkgroupsV1 */ readonly limit?: number /** * If *true* it will populate the *X-Total-Count* response header with the number of results that would be returned if *limit* and *offset* were ignored. Since requesting a total count can have a performance impact, it is recommended not to send **count=true** if that value will not be used. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. * @type {boolean} * @memberof GovernanceGroupsApiListWorkgroupsV1 */ readonly count?: boolean /** * Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **id**: *eq, in, sw* **name**: *eq, sw, in* **memberships.identityId**: *eq, in* * @type {string} * @memberof GovernanceGroupsApiListWorkgroupsV1 */ readonly filters?: string /** * Sort results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#sorting-results) Sorting is supported for the following fields: **name, created, modified, id, description** * @type {string} * @memberof GovernanceGroupsApiListWorkgroupsV1 */ readonly sorters?: string } /** * Request parameters for patchWorkgroupV1 operation in GovernanceGroupsApi. * @export * @interface GovernanceGroupsApiPatchWorkgroupV1Request */ export interface GovernanceGroupsApiPatchWorkgroupV1Request { /** * ID of the Governance Group * @type {string} * @memberof GovernanceGroupsApiPatchWorkgroupV1 */ readonly id: string /** * * @type {Array} * @memberof GovernanceGroupsApiPatchWorkgroupV1 */ readonly jsonPatchOperation?: Array } /** * Request parameters for updateWorkgroupMembersV1 operation in GovernanceGroupsApi. * @export * @interface GovernanceGroupsApiUpdateWorkgroupMembersV1Request */ export interface GovernanceGroupsApiUpdateWorkgroupMembersV1Request { /** * ID of the Governance Group. * @type {string} * @memberof GovernanceGroupsApiUpdateWorkgroupMembersV1 */ readonly workgroupId: string /** * List of identities to be added to a Governance Group members list. * @type {Array} * @memberof GovernanceGroupsApiUpdateWorkgroupMembersV1 */ readonly bulkWorkgroupMembersRequestInner: Array } /** * GovernanceGroupsApi - object-oriented interface * @export * @class GovernanceGroupsApi * @extends {BaseAPI} */ export class GovernanceGroupsApi extends BaseAPI { /** * This API creates a new Governance Group. * @summary Create a new governance group. * @param {GovernanceGroupsApiCreateWorkgroupV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof GovernanceGroupsApi */ public createWorkgroupV1(requestParameters: GovernanceGroupsApiCreateWorkgroupV1Request, axiosOptions?: RawAxiosRequestConfig) { return GovernanceGroupsApiFp(this.configuration).createWorkgroupV1(requestParameters.workgroupDto, axiosOptions).then((request) => request(this.axios, this.basePath)); } /** * This API removes one or more members from a Governance Group. A > **Following field of Identity is an optional field in the request.** > **name** * @summary Remove members from governance group * @param {GovernanceGroupsApiDeleteWorkgroupMembersV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof GovernanceGroupsApi */ public deleteWorkgroupMembersV1(requestParameters: GovernanceGroupsApiDeleteWorkgroupMembersV1Request, axiosOptions?: RawAxiosRequestConfig) { return GovernanceGroupsApiFp(this.configuration).deleteWorkgroupMembersV1(requestParameters.workgroupId, requestParameters.bulkWorkgroupMembersRequestInner, axiosOptions).then((request) => request(this.axios, this.basePath)); } /** * This API deletes a Governance Group by its ID. * @summary Delete a governance group * @param {GovernanceGroupsApiDeleteWorkgroupV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof GovernanceGroupsApi */ public deleteWorkgroupV1(requestParameters: GovernanceGroupsApiDeleteWorkgroupV1Request, axiosOptions?: RawAxiosRequestConfig) { return GovernanceGroupsApiFp(this.configuration).deleteWorkgroupV1(requestParameters.id, axiosOptions).then((request) => request(this.axios, this.basePath)); } /** * This API initiates a bulk deletion of one or more Governance Groups. > If any of the indicated Governance Groups have one or more connections associated with it,then those Governance Groups will be added in **inUse** list of the response. Governance Group(s) marked as **inUse** can not be deleted. > If any of the indicated Governance Groups is not does not exists in Organization,then those Governance Groups will be added in **notFound** list of the response. Governance Groups marked as **notFound** will not be deleted. > If any of the indicated Governance Groups does not have any connections associated with it,then those Governance Groups will be added in **deleted** list of the response. A Governance Group marked as **deleted** will be deleted from current Organization. > If the request contains any **inUse** or **notFound** Governance Group IDs then it skips only these Governance Groups for deletion and deletes the rest of Governance Groups which have no connections associated with it. > **This API has limit number of Governance Groups can be deleted at one time. If the request contains more then 100 Governance Groups IDs to be deleted then the API will throw an exception.** * @summary Delete governance group(s) * @param {GovernanceGroupsApiDeleteWorkgroupsInBulkV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof GovernanceGroupsApi */ public deleteWorkgroupsInBulkV1(requestParameters: GovernanceGroupsApiDeleteWorkgroupsInBulkV1Request, axiosOptions?: RawAxiosRequestConfig) { return GovernanceGroupsApiFp(this.configuration).deleteWorkgroupsInBulkV1(requestParameters.workgroupBulkDeleteRequest, axiosOptions).then((request) => request(this.axios, this.basePath)); } /** * This API returns a Governance Groups by its ID. * @summary Get governance group by id * @param {GovernanceGroupsApiGetWorkgroupV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof GovernanceGroupsApi */ public getWorkgroupV1(requestParameters: GovernanceGroupsApiGetWorkgroupV1Request, axiosOptions?: RawAxiosRequestConfig) { return GovernanceGroupsApiFp(this.configuration).getWorkgroupV1(requestParameters.id, axiosOptions).then((request) => request(this.axios, this.basePath)); } /** * This API returns list of connections associated with a Governance Group. * @summary List connections for governance group * @param {GovernanceGroupsApiListConnectionsV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof GovernanceGroupsApi */ public listConnectionsV1(requestParameters: GovernanceGroupsApiListConnectionsV1Request, axiosOptions?: RawAxiosRequestConfig) { return GovernanceGroupsApiFp(this.configuration).listConnectionsV1(requestParameters.workgroupId, requestParameters.offset, requestParameters.limit, requestParameters.count, requestParameters.sorters, axiosOptions).then((request) => request(this.axios, this.basePath)); } /** * This API returns list of members associated with a Governance Group. * @summary List governance group members * @param {GovernanceGroupsApiListWorkgroupMembersV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof GovernanceGroupsApi */ public listWorkgroupMembersV1(requestParameters: GovernanceGroupsApiListWorkgroupMembersV1Request, axiosOptions?: RawAxiosRequestConfig) { return GovernanceGroupsApiFp(this.configuration).listWorkgroupMembersV1(requestParameters.workgroupId, requestParameters.offset, requestParameters.limit, requestParameters.count, requestParameters.sorters, axiosOptions).then((request) => request(this.axios, this.basePath)); } /** * This API returns list of Governance Groups * @summary List governance groups * @param {GovernanceGroupsApiListWorkgroupsV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof GovernanceGroupsApi */ public listWorkgroupsV1(requestParameters: GovernanceGroupsApiListWorkgroupsV1Request = {}, axiosOptions?: RawAxiosRequestConfig) { return GovernanceGroupsApiFp(this.configuration).listWorkgroupsV1(requestParameters.offset, requestParameters.limit, requestParameters.count, requestParameters.filters, requestParameters.sorters, axiosOptions).then((request) => request(this.axios, this.basePath)); } /** * This API updates an existing governance group by ID. The following fields and objects are patchable: * name * description * owner * @summary Patch a governance group * @param {GovernanceGroupsApiPatchWorkgroupV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof GovernanceGroupsApi */ public patchWorkgroupV1(requestParameters: GovernanceGroupsApiPatchWorkgroupV1Request, axiosOptions?: RawAxiosRequestConfig) { return GovernanceGroupsApiFp(this.configuration).patchWorkgroupV1(requestParameters.id, requestParameters.jsonPatchOperation, axiosOptions).then((request) => request(this.axios, this.basePath)); } /** * This API adds one or more members to a Governance Group. A token with API, ORG_ADMIN authority is required to call this API. > **Following field of Identity is an optional field in the request.** > **name** * @summary Add members to governance group * @param {GovernanceGroupsApiUpdateWorkgroupMembersV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof GovernanceGroupsApi */ public updateWorkgroupMembersV1(requestParameters: GovernanceGroupsApiUpdateWorkgroupMembersV1Request, axiosOptions?: RawAxiosRequestConfig) { return GovernanceGroupsApiFp(this.configuration).updateWorkgroupMembersV1(requestParameters.workgroupId, requestParameters.bulkWorkgroupMembersRequestInner, axiosOptions).then((request) => request(this.axios, this.basePath)); } }