/* tslint:disable */ /* eslint-disable */ /** * Identity Security Cloud API - Privilege Criteria Configuration * 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 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; } /** * * @export * @interface GetPrivilegeCriteriaConfigV1401Response */ export interface GetPrivilegeCriteriaConfigV1401Response { /** * A message describing the error * @type {any} * @memberof GetPrivilegeCriteriaConfigV1401Response */ 'error'?: any; } /** * * @export * @interface GetPrivilegeCriteriaConfigV1429Response */ export interface GetPrivilegeCriteriaConfigV1429Response { /** * A message describing the error * @type {any} * @memberof GetPrivilegeCriteriaConfigV1429Response */ '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]; /** * * @export * @interface PrivilegeCriteriaConfigDTO */ export interface PrivilegeCriteriaConfigDTO { /** * The Id of the task which is executing the bulk update. * @type {string} * @memberof PrivilegeCriteriaConfigDTO */ 'id'?: string; /** * The Id of the source that the criteria configuration is applied to. * @type {string} * @memberof PrivilegeCriteriaConfigDTO */ 'sourceId'?: string; /** * The configuration settings for privilege criteria evaluation. * @type {object} * @memberof PrivilegeCriteriaConfigDTO */ 'config'?: object; /** * The date and time when the privilege criteria configuration was created. * @type {string} * @memberof PrivilegeCriteriaConfigDTO */ 'created'?: string; /** * The date and time when the privilege criteria configuration was last modified. * @type {string} * @memberof PrivilegeCriteriaConfigDTO */ 'modified'?: string; } /** * PrivilegeCriteriaConfigurationApi - axios parameter creator * @export */ export const PrivilegeCriteriaConfigurationApiAxiosParamCreator = function (configuration?: Configuration) { return { /** * Use this API to get the privilege criteria configuration by Id. * @summary Get privilege criteria config * @param {string} criteriaConfigId The Id of the privilege criteria configuration record to retrieve. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ getPrivilegeCriteriaConfigV1: async (criteriaConfigId: string, axiosOptions: RawAxiosRequestConfig = {}): Promise => { // verify required parameter 'criteriaConfigId' is not null or undefined assertParamExists('getPrivilegeCriteriaConfigV1', 'criteriaConfigId', criteriaConfigId) const localVarPath = `/criteria-config/v1/privilege/{criteriaConfigId}` .replace(`{${"criteriaConfigId"}}`, encodeURIComponent(String(criteriaConfigId))); // 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, }; }, /** * Use this API to list the privilege criteria configuration. * @summary List privilege criteria config * @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: **sourceId**: *eq* All filter values are case-sensitive for this API. For example, the following is valid: `?filters=sourceId eq \"2c91809175e6c63f0175fb5570220569\"` * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ listPrivilegeCriteriaConfigV1: async (filters: string, axiosOptions: RawAxiosRequestConfig = {}): Promise => { // verify required parameter 'filters' is not null or undefined assertParamExists('listPrivilegeCriteriaConfigV1', 'filters', filters) const localVarPath = `/criteria-config/v1/privilege`; // 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 (filters !== undefined) { localVarQueryParameter['filters'] = filters; } setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...axiosOptions.headers}; return { url: toPathString(localVarUrlObj), axiosOptions: localVarRequestOptions, }; }, /** * Use this API to update the privilege criteria configuration. * @summary Update privilege criteria configuration * @param {string} criteriaConfigId The Id of the privilege criteria configuration to update. * @param {Array} requestBody A list of criteria configuration operations according to the [JSON Patch](https://tools.ietf.org/html/rfc6902) standard. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ patchPrivilegeCriteriaConfigV1: async (criteriaConfigId: string, requestBody: Array, axiosOptions: RawAxiosRequestConfig = {}): Promise => { // verify required parameter 'criteriaConfigId' is not null or undefined assertParamExists('patchPrivilegeCriteriaConfigV1', 'criteriaConfigId', criteriaConfigId) // verify required parameter 'requestBody' is not null or undefined assertParamExists('patchPrivilegeCriteriaConfigV1', 'requestBody', requestBody) const localVarPath = `/criteria-config/v1/privilege/{criteriaConfigId}` .replace(`{${"criteriaConfigId"}}`, encodeURIComponent(String(criteriaConfigId))); // 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(requestBody, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), axiosOptions: localVarRequestOptions, }; }, } }; /** * PrivilegeCriteriaConfigurationApi - functional programming interface * @export */ export const PrivilegeCriteriaConfigurationApiFp = function(configuration?: Configuration) { const localVarAxiosParamCreator = PrivilegeCriteriaConfigurationApiAxiosParamCreator(configuration) return { /** * Use this API to get the privilege criteria configuration by Id. * @summary Get privilege criteria config * @param {string} criteriaConfigId The Id of the privilege criteria configuration record to retrieve. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ async getPrivilegeCriteriaConfigV1(criteriaConfigId: string, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.getPrivilegeCriteriaConfigV1(criteriaConfigId, axiosOptions); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['PrivilegeCriteriaConfigurationApi.getPrivilegeCriteriaConfigV1']?.[localVarOperationServerIndex]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); }, /** * Use this API to list the privilege criteria configuration. * @summary List privilege criteria config * @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: **sourceId**: *eq* All filter values are case-sensitive for this API. For example, the following is valid: `?filters=sourceId eq \"2c91809175e6c63f0175fb5570220569\"` * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ async listPrivilegeCriteriaConfigV1(filters: string, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { const localVarAxiosArgs = await localVarAxiosParamCreator.listPrivilegeCriteriaConfigV1(filters, axiosOptions); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['PrivilegeCriteriaConfigurationApi.listPrivilegeCriteriaConfigV1']?.[localVarOperationServerIndex]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); }, /** * Use this API to update the privilege criteria configuration. * @summary Update privilege criteria configuration * @param {string} criteriaConfigId The Id of the privilege criteria configuration to update. * @param {Array} requestBody A list of criteria configuration operations according to the [JSON Patch](https://tools.ietf.org/html/rfc6902) standard. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ async patchPrivilegeCriteriaConfigV1(criteriaConfigId: string, requestBody: Array, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.patchPrivilegeCriteriaConfigV1(criteriaConfigId, requestBody, axiosOptions); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['PrivilegeCriteriaConfigurationApi.patchPrivilegeCriteriaConfigV1']?.[localVarOperationServerIndex]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); }, } }; /** * PrivilegeCriteriaConfigurationApi - factory interface * @export */ export const PrivilegeCriteriaConfigurationApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { const localVarFp = PrivilegeCriteriaConfigurationApiFp(configuration) return { /** * Use this API to get the privilege criteria configuration by Id. * @summary Get privilege criteria config * @param {PrivilegeCriteriaConfigurationApiGetPrivilegeCriteriaConfigV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ getPrivilegeCriteriaConfigV1(requestParameters: PrivilegeCriteriaConfigurationApiGetPrivilegeCriteriaConfigV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise { return localVarFp.getPrivilegeCriteriaConfigV1(requestParameters.criteriaConfigId, axiosOptions).then((request) => request(axios, basePath)); }, /** * Use this API to list the privilege criteria configuration. * @summary List privilege criteria config * @param {PrivilegeCriteriaConfigurationApiListPrivilegeCriteriaConfigV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ listPrivilegeCriteriaConfigV1(requestParameters: PrivilegeCriteriaConfigurationApiListPrivilegeCriteriaConfigV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise> { return localVarFp.listPrivilegeCriteriaConfigV1(requestParameters.filters, axiosOptions).then((request) => request(axios, basePath)); }, /** * Use this API to update the privilege criteria configuration. * @summary Update privilege criteria configuration * @param {PrivilegeCriteriaConfigurationApiPatchPrivilegeCriteriaConfigV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ patchPrivilegeCriteriaConfigV1(requestParameters: PrivilegeCriteriaConfigurationApiPatchPrivilegeCriteriaConfigV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise { return localVarFp.patchPrivilegeCriteriaConfigV1(requestParameters.criteriaConfigId, requestParameters.requestBody, axiosOptions).then((request) => request(axios, basePath)); }, }; }; /** * Request parameters for getPrivilegeCriteriaConfigV1 operation in PrivilegeCriteriaConfigurationApi. * @export * @interface PrivilegeCriteriaConfigurationApiGetPrivilegeCriteriaConfigV1Request */ export interface PrivilegeCriteriaConfigurationApiGetPrivilegeCriteriaConfigV1Request { /** * The Id of the privilege criteria configuration record to retrieve. * @type {string} * @memberof PrivilegeCriteriaConfigurationApiGetPrivilegeCriteriaConfigV1 */ readonly criteriaConfigId: string } /** * Request parameters for listPrivilegeCriteriaConfigV1 operation in PrivilegeCriteriaConfigurationApi. * @export * @interface PrivilegeCriteriaConfigurationApiListPrivilegeCriteriaConfigV1Request */ export interface PrivilegeCriteriaConfigurationApiListPrivilegeCriteriaConfigV1Request { /** * 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: **sourceId**: *eq* All filter values are case-sensitive for this API. For example, the following is valid: `?filters=sourceId eq \"2c91809175e6c63f0175fb5570220569\"` * @type {string} * @memberof PrivilegeCriteriaConfigurationApiListPrivilegeCriteriaConfigV1 */ readonly filters: string } /** * Request parameters for patchPrivilegeCriteriaConfigV1 operation in PrivilegeCriteriaConfigurationApi. * @export * @interface PrivilegeCriteriaConfigurationApiPatchPrivilegeCriteriaConfigV1Request */ export interface PrivilegeCriteriaConfigurationApiPatchPrivilegeCriteriaConfigV1Request { /** * The Id of the privilege criteria configuration to update. * @type {string} * @memberof PrivilegeCriteriaConfigurationApiPatchPrivilegeCriteriaConfigV1 */ readonly criteriaConfigId: string /** * A list of criteria configuration operations according to the [JSON Patch](https://tools.ietf.org/html/rfc6902) standard. * @type {Array} * @memberof PrivilegeCriteriaConfigurationApiPatchPrivilegeCriteriaConfigV1 */ readonly requestBody: Array } /** * PrivilegeCriteriaConfigurationApi - object-oriented interface * @export * @class PrivilegeCriteriaConfigurationApi * @extends {BaseAPI} */ export class PrivilegeCriteriaConfigurationApi extends BaseAPI { /** * Use this API to get the privilege criteria configuration by Id. * @summary Get privilege criteria config * @param {PrivilegeCriteriaConfigurationApiGetPrivilegeCriteriaConfigV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof PrivilegeCriteriaConfigurationApi */ public getPrivilegeCriteriaConfigV1(requestParameters: PrivilegeCriteriaConfigurationApiGetPrivilegeCriteriaConfigV1Request, axiosOptions?: RawAxiosRequestConfig) { return PrivilegeCriteriaConfigurationApiFp(this.configuration).getPrivilegeCriteriaConfigV1(requestParameters.criteriaConfigId, axiosOptions).then((request) => request(this.axios, this.basePath)); } /** * Use this API to list the privilege criteria configuration. * @summary List privilege criteria config * @param {PrivilegeCriteriaConfigurationApiListPrivilegeCriteriaConfigV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof PrivilegeCriteriaConfigurationApi */ public listPrivilegeCriteriaConfigV1(requestParameters: PrivilegeCriteriaConfigurationApiListPrivilegeCriteriaConfigV1Request, axiosOptions?: RawAxiosRequestConfig) { return PrivilegeCriteriaConfigurationApiFp(this.configuration).listPrivilegeCriteriaConfigV1(requestParameters.filters, axiosOptions).then((request) => request(this.axios, this.basePath)); } /** * Use this API to update the privilege criteria configuration. * @summary Update privilege criteria configuration * @param {PrivilegeCriteriaConfigurationApiPatchPrivilegeCriteriaConfigV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof PrivilegeCriteriaConfigurationApi */ public patchPrivilegeCriteriaConfigV1(requestParameters: PrivilegeCriteriaConfigurationApiPatchPrivilegeCriteriaConfigV1Request, axiosOptions?: RawAxiosRequestConfig) { return PrivilegeCriteriaConfigurationApiFp(this.configuration).patchPrivilegeCriteriaConfigV1(requestParameters.criteriaConfigId, requestParameters.requestBody, axiosOptions).then((request) => request(this.axios, this.basePath)); } }