/** * Identity Security Cloud API - IAI Recommendations * 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 type { RequestArgs } from './base'; import { BaseAPI } from './base'; /** * * @export * @interface AccessItemRef */ export interface AccessItemRef { /** * ID of the access item to retrieve the recommendation for. * @type {string} * @memberof AccessItemRef */ 'id'?: string; /** * Access item\'s type. * @type {string} * @memberof AccessItemRef */ 'type'?: AccessItemRefTypeEnum; } export declare const AccessItemRefTypeEnum: { readonly Entitlement: "ENTITLEMENT"; readonly AccessProfile: "ACCESS_PROFILE"; readonly Role: "ROLE"; }; export type AccessItemRefTypeEnum = typeof AccessItemRefTypeEnum[keyof typeof AccessItemRefTypeEnum]; /** * * @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 FeatureValueDto */ export interface FeatureValueDto { /** * The type of feature * @type {string} * @memberof FeatureValueDto */ 'feature'?: string; /** * The number of identities that have access to the feature * @type {number} * @memberof FeatureValueDto */ 'numerator'?: number; /** * The number of identities with the corresponding feature * @type {number} * @memberof FeatureValueDto */ 'denominator'?: number; } /** * * @export * @interface GetRecommendationsV1401Response */ export interface GetRecommendationsV1401Response { /** * A message describing the error * @type {any} * @memberof GetRecommendationsV1401Response */ 'error'?: any; } /** * * @export * @interface GetRecommendationsV1429Response */ export interface GetRecommendationsV1429Response { /** * A message describing the error * @type {any} * @memberof GetRecommendationsV1429Response */ '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 declare const LocaleOrigin: { readonly Default: "DEFAULT"; readonly Request: "REQUEST"; }; export type LocaleOrigin = typeof LocaleOrigin[keyof typeof LocaleOrigin]; /** * * @export * @interface RecommendationConfigDto */ export interface RecommendationConfigDto { /** * List of identity attributes to use for calculating certification recommendations * @type {Array} * @memberof RecommendationConfigDto */ 'recommenderFeatures'?: Array; /** * The percent value that the recommendation calculation must surpass to produce a YES recommendation * @type {number} * @memberof RecommendationConfigDto */ 'peerGroupPercentageThreshold'?: number; /** * If true, rulesRecommenderConfig will be refreshed with new programatically selected attribute and threshold values on the next pipeline run * @type {boolean} * @memberof RecommendationConfigDto */ 'runAutoSelectOnce'?: boolean; /** * If true, rulesRecommenderConfig will be refreshed with new programatically selected threshold values on the next pipeline run * @type {boolean} * @memberof RecommendationConfigDto */ 'onlyTuneThreshold'?: boolean; } /** * * @export * @interface RecommendationRequest */ export interface RecommendationRequest { /** * The identity ID * @type {string} * @memberof RecommendationRequest */ 'identityId'?: string; /** * * @type {AccessItemRef} * @memberof RecommendationRequest */ 'item'?: AccessItemRef; } /** * * @export * @interface RecommendationRequestDto */ export interface RecommendationRequestDto { /** * * @type {Array} * @memberof RecommendationRequestDto */ 'requests'?: Array; /** * Exclude interpretations in the response if \"true\". Return interpretations in the response if this attribute is not specified. * @type {boolean} * @memberof RecommendationRequestDto */ 'excludeInterpretations'?: boolean; /** * When set to true, the calling system uses the translated messages for the specified language * @type {boolean} * @memberof RecommendationRequestDto */ 'includeTranslationMessages'?: boolean; /** * Returns the recommender calculations if set to true * @type {boolean} * @memberof RecommendationRequestDto */ 'includeDebugInformation'?: boolean; /** * When set to true, uses prescribedRulesRecommenderConfig to get identity attributes and peer group threshold instead of standard config. * @type {boolean} * @memberof RecommendationRequestDto */ 'prescribeMode'?: boolean; } /** * * @export * @interface RecommendationResponse */ export interface RecommendationResponse { /** * * @type {RecommendationRequest} * @memberof RecommendationResponse */ 'request'?: RecommendationRequest; /** * The recommendation - YES if the access is recommended, NO if not recommended, MAYBE if there is not enough information to make a recommendation, NOT_FOUND if the identity is not found in the system * @type {string} * @memberof RecommendationResponse */ 'recommendation'?: RecommendationResponseRecommendationEnum; /** * The list of interpretations explaining the recommendation. The array is empty if includeInterpretations is false or not present in the request. e.g. - [ \"Not approved in the last 6 months.\" ]. Interpretations will be translated using the client\'s locale as found in the Accept-Language header. If a translation for the client\'s locale cannot be found, the US English translation will be returned. * @type {Array} * @memberof RecommendationResponse */ 'interpretations'?: Array; /** * The list of translation messages, if they have been requested. * @type {Array} * @memberof RecommendationResponse */ 'translationMessages'?: Array; /** * * @type {RecommenderCalculations} * @memberof RecommendationResponse */ 'recommenderCalculations'?: RecommenderCalculations; } export declare const RecommendationResponseRecommendationEnum: { readonly Yes: "YES"; readonly No: "NO"; readonly Maybe: "MAYBE"; readonly NotFound: "NOT_FOUND"; }; export type RecommendationResponseRecommendationEnum = typeof RecommendationResponseRecommendationEnum[keyof typeof RecommendationResponseRecommendationEnum]; /** * * @export * @interface RecommendationResponseDto */ export interface RecommendationResponseDto { /** * * @type {Array} * @memberof RecommendationResponseDto */ 'response'?: Array; } /** * * @export * @interface RecommenderCalculations */ export interface RecommenderCalculations { /** * The ID of the identity * @type {string} * @memberof RecommenderCalculations */ 'identityId'?: string; /** * The entitlement ID * @type {string} * @memberof RecommenderCalculations */ 'entitlementId'?: string; /** * The actual recommendation * @type {string} * @memberof RecommenderCalculations */ 'recommendation'?: string; /** * The overall weighted score * @type {number} * @memberof RecommenderCalculations */ 'overallWeightedScore'?: number; /** * The weighted score of each individual feature * @type {{ [key: string]: number; }} * @memberof RecommenderCalculations */ 'featureWeightedScores'?: { [key: string]: number; }; /** * The configured value against which the overallWeightedScore is compared * @type {number} * @memberof RecommenderCalculations */ 'threshold'?: number; /** * The values for your configured features * @type {{ [key: string]: RecommenderCalculationsIdentityAttributesValue; }} * @memberof RecommenderCalculations */ 'identityAttributes'?: { [key: string]: RecommenderCalculationsIdentityAttributesValue; }; /** * * @type {FeatureValueDto} * @memberof RecommenderCalculations */ 'featureValues'?: FeatureValueDto; } /** * * @export * @interface RecommenderCalculationsIdentityAttributesValue */ export interface RecommenderCalculationsIdentityAttributesValue { /** * * @type {string} * @memberof RecommenderCalculationsIdentityAttributesValue */ 'value'?: string; } /** * * @export * @interface TranslationMessage */ export interface TranslationMessage { /** * The key of the translation message * @type {string} * @memberof TranslationMessage */ 'key'?: string; /** * The values corresponding to the translation messages * @type {Array} * @memberof TranslationMessage */ 'values'?: Array; } /** * IAIRecommendationsApi - axios parameter creator * @export */ export declare const IAIRecommendationsApiAxiosParamCreator: (configuration?: Configuration) => { /** * Retrieves configuration attributes used by certification recommendations. * @summary Get certification recommendation config values * @param {string} [xSailPointExperimental] Use this header to enable this experimental API. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ getRecommendationsConfigV1: (xSailPointExperimental?: string, axiosOptions?: RawAxiosRequestConfig) => Promise; /** * The getRecommendations API returns recommendations based on the requested object. The recommendations are invoked by IdentityIQ and IdentityNow plug-ins that retrieve recommendations based on the performed calculations. * @summary Returns recommendation based on object * @param {RecommendationRequestDto} recommendationRequestDto * @param {string} [xSailPointExperimental] Use this header to enable this experimental API. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ getRecommendationsV1: (recommendationRequestDto: RecommendationRequestDto, xSailPointExperimental?: string, axiosOptions?: RawAxiosRequestConfig) => Promise; /** * Updates configuration attributes used by certification recommendations. * @summary Update certification recommendation config values * @param {RecommendationConfigDto} recommendationConfigDto * @param {string} [xSailPointExperimental] Use this header to enable this experimental API. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ updateRecommendationsConfigV1: (recommendationConfigDto: RecommendationConfigDto, xSailPointExperimental?: string, axiosOptions?: RawAxiosRequestConfig) => Promise; }; /** * IAIRecommendationsApi - functional programming interface * @export */ export declare const IAIRecommendationsApiFp: (configuration?: Configuration) => { /** * Retrieves configuration attributes used by certification recommendations. * @summary Get certification recommendation config values * @param {string} [xSailPointExperimental] Use this header to enable this experimental API. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ getRecommendationsConfigV1(xSailPointExperimental?: string, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>; /** * The getRecommendations API returns recommendations based on the requested object. The recommendations are invoked by IdentityIQ and IdentityNow plug-ins that retrieve recommendations based on the performed calculations. * @summary Returns recommendation based on object * @param {RecommendationRequestDto} recommendationRequestDto * @param {string} [xSailPointExperimental] Use this header to enable this experimental API. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ getRecommendationsV1(recommendationRequestDto: RecommendationRequestDto, xSailPointExperimental?: string, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>; /** * Updates configuration attributes used by certification recommendations. * @summary Update certification recommendation config values * @param {RecommendationConfigDto} recommendationConfigDto * @param {string} [xSailPointExperimental] Use this header to enable this experimental API. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ updateRecommendationsConfigV1(recommendationConfigDto: RecommendationConfigDto, xSailPointExperimental?: string, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>; }; /** * IAIRecommendationsApi - factory interface * @export */ export declare const IAIRecommendationsApiFactory: (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) => { /** * Retrieves configuration attributes used by certification recommendations. * @summary Get certification recommendation config values * @param {IAIRecommendationsApiGetRecommendationsConfigV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ getRecommendationsConfigV1(requestParameters?: IAIRecommendationsApiGetRecommendationsConfigV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise; /** * The getRecommendations API returns recommendations based on the requested object. The recommendations are invoked by IdentityIQ and IdentityNow plug-ins that retrieve recommendations based on the performed calculations. * @summary Returns recommendation based on object * @param {IAIRecommendationsApiGetRecommendationsV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ getRecommendationsV1(requestParameters: IAIRecommendationsApiGetRecommendationsV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise; /** * Updates configuration attributes used by certification recommendations. * @summary Update certification recommendation config values * @param {IAIRecommendationsApiUpdateRecommendationsConfigV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ updateRecommendationsConfigV1(requestParameters: IAIRecommendationsApiUpdateRecommendationsConfigV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise; }; /** * Request parameters for getRecommendationsConfigV1 operation in IAIRecommendationsApi. * @export * @interface IAIRecommendationsApiGetRecommendationsConfigV1Request */ export interface IAIRecommendationsApiGetRecommendationsConfigV1Request { /** * Use this header to enable this experimental API. * @type {string} * @memberof IAIRecommendationsApiGetRecommendationsConfigV1 */ readonly xSailPointExperimental?: string; } /** * Request parameters for getRecommendationsV1 operation in IAIRecommendationsApi. * @export * @interface IAIRecommendationsApiGetRecommendationsV1Request */ export interface IAIRecommendationsApiGetRecommendationsV1Request { /** * * @type {RecommendationRequestDto} * @memberof IAIRecommendationsApiGetRecommendationsV1 */ readonly recommendationRequestDto: RecommendationRequestDto; /** * Use this header to enable this experimental API. * @type {string} * @memberof IAIRecommendationsApiGetRecommendationsV1 */ readonly xSailPointExperimental?: string; } /** * Request parameters for updateRecommendationsConfigV1 operation in IAIRecommendationsApi. * @export * @interface IAIRecommendationsApiUpdateRecommendationsConfigV1Request */ export interface IAIRecommendationsApiUpdateRecommendationsConfigV1Request { /** * * @type {RecommendationConfigDto} * @memberof IAIRecommendationsApiUpdateRecommendationsConfigV1 */ readonly recommendationConfigDto: RecommendationConfigDto; /** * Use this header to enable this experimental API. * @type {string} * @memberof IAIRecommendationsApiUpdateRecommendationsConfigV1 */ readonly xSailPointExperimental?: string; } /** * IAIRecommendationsApi - object-oriented interface * @export * @class IAIRecommendationsApi * @extends {BaseAPI} */ export declare class IAIRecommendationsApi extends BaseAPI { /** * Retrieves configuration attributes used by certification recommendations. * @summary Get certification recommendation config values * @param {IAIRecommendationsApiGetRecommendationsConfigV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof IAIRecommendationsApi */ getRecommendationsConfigV1(requestParameters?: IAIRecommendationsApiGetRecommendationsConfigV1Request, axiosOptions?: RawAxiosRequestConfig): Promise>; /** * The getRecommendations API returns recommendations based on the requested object. The recommendations are invoked by IdentityIQ and IdentityNow plug-ins that retrieve recommendations based on the performed calculations. * @summary Returns recommendation based on object * @param {IAIRecommendationsApiGetRecommendationsV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof IAIRecommendationsApi */ getRecommendationsV1(requestParameters: IAIRecommendationsApiGetRecommendationsV1Request, axiosOptions?: RawAxiosRequestConfig): Promise>; /** * Updates configuration attributes used by certification recommendations. * @summary Update certification recommendation config values * @param {IAIRecommendationsApiUpdateRecommendationsConfigV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof IAIRecommendationsApi */ updateRecommendationsConfigV1(requestParameters: IAIRecommendationsApiUpdateRecommendationsConfigV1Request, axiosOptions?: RawAxiosRequestConfig): Promise>; }