/* tslint:disable */ /* eslint-disable */ /** * Identity Security Cloud API - Machine Classification Config * 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 GetMachineClassificationConfigV1401Response */ export interface GetMachineClassificationConfigV1401Response { /** * A message describing the error * @type {any} * @memberof GetMachineClassificationConfigV1401Response */ 'error'?: any; } /** * * @export * @interface GetMachineClassificationConfigV1429Response */ export interface GetMachineClassificationConfigV1429Response { /** * A message describing the error * @type {any} * @memberof GetMachineClassificationConfigV1429Response */ '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 MachineClassificationConfig */ export interface MachineClassificationConfig { /** * Indicates whether Classification is enabled for a Source * @type {boolean} * @memberof MachineClassificationConfig */ 'enabled'?: boolean; /** * Classification Method * @type {string} * @memberof MachineClassificationConfig */ 'classificationMethod'?: MachineClassificationConfigClassificationMethodEnum; /** * * @type {MachineClassificationCriteriaLevel1} * @memberof MachineClassificationConfig */ 'criteria'?: MachineClassificationCriteriaLevel1; /** * Date the config was created * @type {string} * @memberof MachineClassificationConfig */ 'created'?: string; /** * Date the config was last updated * @type {string} * @memberof MachineClassificationConfig */ 'modified'?: string | null; } export const MachineClassificationConfigClassificationMethodEnum = { Source: 'SOURCE', Criteria: 'CRITERIA' } as const; export type MachineClassificationConfigClassificationMethodEnum = typeof MachineClassificationConfigClassificationMethodEnum[keyof typeof MachineClassificationConfigClassificationMethodEnum]; /** * * @export * @interface MachineClassificationCriteriaLevel1 */ export interface MachineClassificationCriteriaLevel1 { /** * * @type {MachineClassificationCriteriaOperation} * @memberof MachineClassificationCriteriaLevel1 */ 'operation'?: MachineClassificationCriteriaOperation; /** * Indicates whether case matters when evaluating the criteria * @type {boolean} * @memberof MachineClassificationCriteriaLevel1 */ 'caseSensitive'?: boolean; /** * The data type of the attribute being evaluated * @type {string} * @memberof MachineClassificationCriteriaLevel1 */ 'dataType'?: string | null; /** * The attribute to evaluate in the classification criteria * @type {string} * @memberof MachineClassificationCriteriaLevel1 */ 'attribute'?: string | null; /** * The value to compare against the attribute in the classification criteria * @type {string} * @memberof MachineClassificationCriteriaLevel1 */ 'value'?: string | null; /** * An array of child classification criteria objects * @type {Array} * @memberof MachineClassificationCriteriaLevel1 */ 'children'?: Array | null; } /** * * @export * @interface MachineClassificationCriteriaLevel2 */ export interface MachineClassificationCriteriaLevel2 { /** * * @type {MachineClassificationCriteriaOperation} * @memberof MachineClassificationCriteriaLevel2 */ 'operation'?: MachineClassificationCriteriaOperation; /** * Indicates whether case matters when evaluating the criteria * @type {boolean} * @memberof MachineClassificationCriteriaLevel2 */ 'caseSensitive'?: boolean; /** * The data type of the attribute being evaluated * @type {string} * @memberof MachineClassificationCriteriaLevel2 */ 'dataType'?: string | null; /** * The attribute to evaluate in the classification criteria * @type {string} * @memberof MachineClassificationCriteriaLevel2 */ 'attribute'?: string | null; /** * The value to compare against the attribute in the classification criteria * @type {string} * @memberof MachineClassificationCriteriaLevel2 */ 'value'?: string | null; /** * An array of child classification criteria objects * @type {Array} * @memberof MachineClassificationCriteriaLevel2 */ 'children'?: Array | null; } /** * * @export * @interface MachineClassificationCriteriaLevel3 */ export interface MachineClassificationCriteriaLevel3 { /** * * @type {MachineClassificationCriteriaOperation} * @memberof MachineClassificationCriteriaLevel3 */ 'operation'?: MachineClassificationCriteriaOperation; /** * Indicates whether or not case matters when evaluating the criteria * @type {boolean} * @memberof MachineClassificationCriteriaLevel3 */ 'caseSensitive'?: boolean; /** * The data type of the attribute being evaluated * @type {string} * @memberof MachineClassificationCriteriaLevel3 */ 'dataType'?: string | null; /** * The attribute to evaluate in the classification criteria * @type {string} * @memberof MachineClassificationCriteriaLevel3 */ 'attribute'?: string | null; /** * The value to compare against the attribute in the classification criteria * @type {string} * @memberof MachineClassificationCriteriaLevel3 */ 'value'?: string | null; /** * An array of child classification criteria objects * @type {Array} * @memberof MachineClassificationCriteriaLevel3 */ 'children'?: Array | null; } /** * An operation to perform on the classification criteria * @export * @enum {string} */ export const MachineClassificationCriteriaOperation = { Equals: 'EQUALS', NotEquals: 'NOT_EQUALS', StartsWith: 'STARTS_WITH', EndsWith: 'ENDS_WITH', Contains: 'CONTAINS', And: 'AND', Or: 'OR' } as const; export type MachineClassificationCriteriaOperation = typeof MachineClassificationCriteriaOperation[keyof typeof MachineClassificationCriteriaOperation]; /** * MachineClassificationConfigApi - axios parameter creator * @export */ export const MachineClassificationConfigApiAxiosParamCreator = function (configuration?: Configuration) { return { /** * Use this API to remove Classification Config for a Source. A token with ORG_ADMIN, SOURCE_ADMIN, or SOURCE_SUBADMIN authority is required to call this API. * @summary Delete source\'s classification config * @param {string} sourceId Source ID. * @param {string} [xSailPointExperimental] Use this header to enable this experimental API. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ deleteMachineClassificationConfigV1: async (sourceId: string, xSailPointExperimental?: string, axiosOptions: RawAxiosRequestConfig = {}): Promise => { // verify required parameter 'sourceId' is not null or undefined assertParamExists('deleteMachineClassificationConfigV1', 'sourceId', sourceId) if (xSailPointExperimental === undefined) { xSailPointExperimental = 'true'; } const localVarPath = `/sources/v1/{sourceId}/machine-classification-config` .replace(`{${"sourceId"}}`, encodeURIComponent(String(sourceId))); // 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; if (xSailPointExperimental != null) { localVarHeaderParameter['X-SailPoint-Experimental'] = String(xSailPointExperimental); } 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 a Machine Classification Config for a Source using Source ID. * @summary Machine classification config for source * @param {string} sourceId Source ID * @param {string} [xSailPointExperimental] Use this header to enable this experimental API. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ getMachineClassificationConfigV1: async (sourceId: string, xSailPointExperimental?: string, axiosOptions: RawAxiosRequestConfig = {}): Promise => { // verify required parameter 'sourceId' is not null or undefined assertParamExists('getMachineClassificationConfigV1', 'sourceId', sourceId) if (xSailPointExperimental === undefined) { xSailPointExperimental = 'true'; } const localVarPath = `/sources/v1/{sourceId}/machine-classification-config` .replace(`{${"sourceId"}}`, encodeURIComponent(String(sourceId))); // 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 (xSailPointExperimental != null) { localVarHeaderParameter['X-SailPoint-Experimental'] = String(xSailPointExperimental); } 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 Classification Config for a Source. A token with ORG_ADMIN, SOURCE_ADMIN, or SOURCE_SUBADMIN authority is required to call this API. * @summary Update source\'s classification config * @param {string} sourceId Source ID. * @param {MachineClassificationConfig} machineClassificationConfig * @param {string} [xSailPointExperimental] Use this header to enable this experimental API. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ setMachineClassificationConfigV1: async (sourceId: string, machineClassificationConfig: MachineClassificationConfig, xSailPointExperimental?: string, axiosOptions: RawAxiosRequestConfig = {}): Promise => { // verify required parameter 'sourceId' is not null or undefined assertParamExists('setMachineClassificationConfigV1', 'sourceId', sourceId) // verify required parameter 'machineClassificationConfig' is not null or undefined assertParamExists('setMachineClassificationConfigV1', 'machineClassificationConfig', machineClassificationConfig) if (xSailPointExperimental === undefined) { xSailPointExperimental = 'true'; } const localVarPath = `/sources/v1/{sourceId}/machine-classification-config` .replace(`{${"sourceId"}}`, encodeURIComponent(String(sourceId))); // 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: 'PUT', ...baseOptions, ...axiosOptions}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; localVarHeaderParameter['Content-Type'] = 'application/json'; if (xSailPointExperimental != null) { localVarHeaderParameter['X-SailPoint-Experimental'] = String(xSailPointExperimental); } setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...axiosOptions.headers}; localVarRequestOptions.data = serializeDataIfNeeded(machineClassificationConfig, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), axiosOptions: localVarRequestOptions, }; }, } }; /** * MachineClassificationConfigApi - functional programming interface * @export */ export const MachineClassificationConfigApiFp = function(configuration?: Configuration) { const localVarAxiosParamCreator = MachineClassificationConfigApiAxiosParamCreator(configuration) return { /** * Use this API to remove Classification Config for a Source. A token with ORG_ADMIN, SOURCE_ADMIN, or SOURCE_SUBADMIN authority is required to call this API. * @summary Delete source\'s classification config * @param {string} sourceId Source ID. * @param {string} [xSailPointExperimental] Use this header to enable this experimental API. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ async deleteMachineClassificationConfigV1(sourceId: string, xSailPointExperimental?: string, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.deleteMachineClassificationConfigV1(sourceId, xSailPointExperimental, axiosOptions); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['MachineClassificationConfigApi.deleteMachineClassificationConfigV1']?.[localVarOperationServerIndex]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); }, /** * This API returns a Machine Classification Config for a Source using Source ID. * @summary Machine classification config for source * @param {string} sourceId Source ID * @param {string} [xSailPointExperimental] Use this header to enable this experimental API. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ async getMachineClassificationConfigV1(sourceId: string, xSailPointExperimental?: string, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.getMachineClassificationConfigV1(sourceId, xSailPointExperimental, axiosOptions); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['MachineClassificationConfigApi.getMachineClassificationConfigV1']?.[localVarOperationServerIndex]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); }, /** * Use this API to update Classification Config for a Source. A token with ORG_ADMIN, SOURCE_ADMIN, or SOURCE_SUBADMIN authority is required to call this API. * @summary Update source\'s classification config * @param {string} sourceId Source ID. * @param {MachineClassificationConfig} machineClassificationConfig * @param {string} [xSailPointExperimental] Use this header to enable this experimental API. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ async setMachineClassificationConfigV1(sourceId: string, machineClassificationConfig: MachineClassificationConfig, xSailPointExperimental?: string, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.setMachineClassificationConfigV1(sourceId, machineClassificationConfig, xSailPointExperimental, axiosOptions); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['MachineClassificationConfigApi.setMachineClassificationConfigV1']?.[localVarOperationServerIndex]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); }, } }; /** * MachineClassificationConfigApi - factory interface * @export */ export const MachineClassificationConfigApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { const localVarFp = MachineClassificationConfigApiFp(configuration) return { /** * Use this API to remove Classification Config for a Source. A token with ORG_ADMIN, SOURCE_ADMIN, or SOURCE_SUBADMIN authority is required to call this API. * @summary Delete source\'s classification config * @param {MachineClassificationConfigApiDeleteMachineClassificationConfigV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ deleteMachineClassificationConfigV1(requestParameters: MachineClassificationConfigApiDeleteMachineClassificationConfigV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise { return localVarFp.deleteMachineClassificationConfigV1(requestParameters.sourceId, requestParameters.xSailPointExperimental, axiosOptions).then((request) => request(axios, basePath)); }, /** * This API returns a Machine Classification Config for a Source using Source ID. * @summary Machine classification config for source * @param {MachineClassificationConfigApiGetMachineClassificationConfigV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ getMachineClassificationConfigV1(requestParameters: MachineClassificationConfigApiGetMachineClassificationConfigV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise { return localVarFp.getMachineClassificationConfigV1(requestParameters.sourceId, requestParameters.xSailPointExperimental, axiosOptions).then((request) => request(axios, basePath)); }, /** * Use this API to update Classification Config for a Source. A token with ORG_ADMIN, SOURCE_ADMIN, or SOURCE_SUBADMIN authority is required to call this API. * @summary Update source\'s classification config * @param {MachineClassificationConfigApiSetMachineClassificationConfigV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ setMachineClassificationConfigV1(requestParameters: MachineClassificationConfigApiSetMachineClassificationConfigV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise { return localVarFp.setMachineClassificationConfigV1(requestParameters.sourceId, requestParameters.machineClassificationConfig, requestParameters.xSailPointExperimental, axiosOptions).then((request) => request(axios, basePath)); }, }; }; /** * Request parameters for deleteMachineClassificationConfigV1 operation in MachineClassificationConfigApi. * @export * @interface MachineClassificationConfigApiDeleteMachineClassificationConfigV1Request */ export interface MachineClassificationConfigApiDeleteMachineClassificationConfigV1Request { /** * Source ID. * @type {string} * @memberof MachineClassificationConfigApiDeleteMachineClassificationConfigV1 */ readonly sourceId: string /** * Use this header to enable this experimental API. * @type {string} * @memberof MachineClassificationConfigApiDeleteMachineClassificationConfigV1 */ readonly xSailPointExperimental?: string } /** * Request parameters for getMachineClassificationConfigV1 operation in MachineClassificationConfigApi. * @export * @interface MachineClassificationConfigApiGetMachineClassificationConfigV1Request */ export interface MachineClassificationConfigApiGetMachineClassificationConfigV1Request { /** * Source ID * @type {string} * @memberof MachineClassificationConfigApiGetMachineClassificationConfigV1 */ readonly sourceId: string /** * Use this header to enable this experimental API. * @type {string} * @memberof MachineClassificationConfigApiGetMachineClassificationConfigV1 */ readonly xSailPointExperimental?: string } /** * Request parameters for setMachineClassificationConfigV1 operation in MachineClassificationConfigApi. * @export * @interface MachineClassificationConfigApiSetMachineClassificationConfigV1Request */ export interface MachineClassificationConfigApiSetMachineClassificationConfigV1Request { /** * Source ID. * @type {string} * @memberof MachineClassificationConfigApiSetMachineClassificationConfigV1 */ readonly sourceId: string /** * * @type {MachineClassificationConfig} * @memberof MachineClassificationConfigApiSetMachineClassificationConfigV1 */ readonly machineClassificationConfig: MachineClassificationConfig /** * Use this header to enable this experimental API. * @type {string} * @memberof MachineClassificationConfigApiSetMachineClassificationConfigV1 */ readonly xSailPointExperimental?: string } /** * MachineClassificationConfigApi - object-oriented interface * @export * @class MachineClassificationConfigApi * @extends {BaseAPI} */ export class MachineClassificationConfigApi extends BaseAPI { /** * Use this API to remove Classification Config for a Source. A token with ORG_ADMIN, SOURCE_ADMIN, or SOURCE_SUBADMIN authority is required to call this API. * @summary Delete source\'s classification config * @param {MachineClassificationConfigApiDeleteMachineClassificationConfigV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof MachineClassificationConfigApi */ public deleteMachineClassificationConfigV1(requestParameters: MachineClassificationConfigApiDeleteMachineClassificationConfigV1Request, axiosOptions?: RawAxiosRequestConfig) { return MachineClassificationConfigApiFp(this.configuration).deleteMachineClassificationConfigV1(requestParameters.sourceId, requestParameters.xSailPointExperimental, axiosOptions).then((request) => request(this.axios, this.basePath)); } /** * This API returns a Machine Classification Config for a Source using Source ID. * @summary Machine classification config for source * @param {MachineClassificationConfigApiGetMachineClassificationConfigV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof MachineClassificationConfigApi */ public getMachineClassificationConfigV1(requestParameters: MachineClassificationConfigApiGetMachineClassificationConfigV1Request, axiosOptions?: RawAxiosRequestConfig) { return MachineClassificationConfigApiFp(this.configuration).getMachineClassificationConfigV1(requestParameters.sourceId, requestParameters.xSailPointExperimental, axiosOptions).then((request) => request(this.axios, this.basePath)); } /** * Use this API to update Classification Config for a Source. A token with ORG_ADMIN, SOURCE_ADMIN, or SOURCE_SUBADMIN authority is required to call this API. * @summary Update source\'s classification config * @param {MachineClassificationConfigApiSetMachineClassificationConfigV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof MachineClassificationConfigApi */ public setMachineClassificationConfigV1(requestParameters: MachineClassificationConfigApiSetMachineClassificationConfigV1Request, axiosOptions?: RawAxiosRequestConfig) { return MachineClassificationConfigApiFp(this.configuration).setMachineClassificationConfigV1(requestParameters.sourceId, requestParameters.machineClassificationConfig, requestParameters.xSailPointExperimental, axiosOptions).then((request) => request(this.axios, this.basePath)); } }