/* tslint:disable */ /* eslint-disable */ /** * Identity Security Cloud API - SOD Policies * 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 AccessCriteria */ export interface AccessCriteria { /** * Business name for the access construct list * @type {string} * @memberof AccessCriteria */ 'name'?: string; /** * List of criteria. There is a min of 1 and max of 50 items in the list. * @type {Array} * @memberof AccessCriteria */ 'criteriaList'?: Array; } /** * * @export * @interface AccessCriteriaCriteriaListInner */ export interface AccessCriteriaCriteriaListInner { /** * Type of the propery to which this reference applies to * @type {string} * @memberof AccessCriteriaCriteriaListInner */ 'type'?: AccessCriteriaCriteriaListInnerTypeEnum; /** * ID of the object to which this reference applies to * @type {string} * @memberof AccessCriteriaCriteriaListInner */ 'id'?: string; /** * Human-readable display name of the object to which this reference applies to * @type {string} * @memberof AccessCriteriaCriteriaListInner */ 'name'?: string; } export const AccessCriteriaCriteriaListInnerTypeEnum = { Entitlement: 'ENTITLEMENT' } as const; export type AccessCriteriaCriteriaListInnerTypeEnum = typeof AccessCriteriaCriteriaListInnerTypeEnum[keyof typeof AccessCriteriaCriteriaListInnerTypeEnum]; /** * * @export * @interface ArrayInner */ export interface ArrayInner { } /** * * @export * @interface ConflictingAccessCriteria */ export interface ConflictingAccessCriteria { /** * * @type {AccessCriteria} * @memberof ConflictingAccessCriteria */ 'leftCriteria'?: AccessCriteria; /** * * @type {AccessCriteria} * @memberof ConflictingAccessCriteria */ 'rightCriteria'?: AccessCriteria; } /** * * @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; /** * * @export * @interface ListSodPoliciesV1401Response */ export interface ListSodPoliciesV1401Response { /** * A message describing the error * @type {any} * @memberof ListSodPoliciesV1401Response */ 'error'?: any; } /** * * @export * @interface ListSodPoliciesV1429Response */ export interface ListSodPoliciesV1429Response { /** * A message describing the error * @type {any} * @memberof ListSodPoliciesV1429Response */ '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 MultiPolicyRequest */ export interface MultiPolicyRequest { /** * Multi-policy report will be run for this list of ids * @type {Array} * @memberof MultiPolicyRequest */ 'filteredPolicyList'?: Array; } /** * * @export * @interface ReportResultReference */ export interface ReportResultReference { /** * SOD policy violation report result DTO type. * @type {string} * @memberof ReportResultReference */ 'type'?: ReportResultReferenceTypeEnum; /** * SOD policy violation report result ID. * @type {string} * @memberof ReportResultReference */ 'id'?: string; /** * Human-readable name of the SOD policy violation report result. * @type {string} * @memberof ReportResultReference */ 'name'?: string; /** * Status of a SOD policy violation report. * @type {string} * @memberof ReportResultReference */ 'status'?: ReportResultReferenceStatusEnum; } export const ReportResultReferenceTypeEnum = { ReportResult: 'REPORT_RESULT' } as const; export type ReportResultReferenceTypeEnum = typeof ReportResultReferenceTypeEnum[keyof typeof ReportResultReferenceTypeEnum]; export const ReportResultReferenceStatusEnum = { Success: 'SUCCESS', Warning: 'WARNING', Error: 'ERROR', Terminated: 'TERMINATED', TempError: 'TEMP_ERROR', Pending: 'PENDING' } as const; export type ReportResultReferenceStatusEnum = typeof ReportResultReferenceStatusEnum[keyof typeof ReportResultReferenceStatusEnum]; /** * The schedule information. * @export * @interface Schedule */ export interface Schedule { /** * * @type {ScheduleType} * @memberof Schedule */ 'type': ScheduleType; /** * * @type {ScheduleMonths} * @memberof Schedule */ 'months'?: ScheduleMonths; /** * * @type {ScheduleDays} * @memberof Schedule */ 'days'?: ScheduleDays; /** * * @type {ScheduleHours} * @memberof Schedule */ 'hours': ScheduleHours; /** * A date-time in ISO-8601 format * @type {string} * @memberof Schedule */ 'expiration'?: string | null; /** * The canonical TZ identifier the schedule will run in (ex. America/New_York). If no timezone is specified, the org\'s default timezone is used. * @type {string} * @memberof Schedule */ 'timeZoneId'?: string | null; } /** * * @export * @interface ScheduleDays */ export interface ScheduleDays { /** * * @type {SelectorType} * @memberof ScheduleDays */ 'type': SelectorType; /** * The selected values. * @type {Array} * @memberof ScheduleDays */ 'values': Array; /** * The selected interval for RANGE selectors. * @type {number} * @memberof ScheduleDays */ 'interval'?: number | null; } /** * * @export * @interface ScheduleHours */ export interface ScheduleHours { /** * * @type {SelectorType} * @memberof ScheduleHours */ 'type': SelectorType; /** * The selected values. * @type {Array} * @memberof ScheduleHours */ 'values': Array; /** * The selected interval for RANGE selectors. * @type {number} * @memberof ScheduleHours */ 'interval'?: number | null; } /** * * @export * @interface ScheduleMonths */ export interface ScheduleMonths { /** * * @type {SelectorType} * @memberof ScheduleMonths */ 'type': SelectorType; /** * The selected values. * @type {Array} * @memberof ScheduleMonths */ 'values': Array; /** * The selected interval for RANGE selectors. * @type {number} * @memberof ScheduleMonths */ 'interval'?: number | null; } /** * Enum representing the currently supported schedule types. Additional values may be added in the future without notice. * @export * @enum {string} */ export const ScheduleType = { Daily: 'DAILY', Weekly: 'WEEKLY', Monthly: 'MONTHLY', Calendar: 'CALENDAR', Annually: 'ANNUALLY' } as const; export type ScheduleType = typeof ScheduleType[keyof typeof ScheduleType]; /** * * @export * @interface Selector */ export interface Selector { /** * * @type {SelectorType} * @memberof Selector */ 'type': SelectorType; /** * The selected values. * @type {Array} * @memberof Selector */ 'values': Array; /** * The selected interval for RANGE selectors. * @type {number} * @memberof Selector */ 'interval'?: number | null; } /** * Enum representing the currently supported selector types. LIST - the *values* array contains one or more distinct values. RANGE - the *values* array contains two values: the start and end of the range, inclusive. Additional values may be added in the future without notice. * @export * @enum {string} */ export const SelectorType = { List: 'LIST', Range: 'RANGE' } as const; export type SelectorType = typeof SelectorType[keyof typeof SelectorType]; /** * * @export * @interface SodPolicy */ export interface SodPolicy { /** * Policy id * @type {string} * @memberof SodPolicy */ 'id'?: string; /** * Policy Business Name * @type {string} * @memberof SodPolicy */ 'name'?: string; /** * The time when this SOD policy is created. * @type {string} * @memberof SodPolicy */ 'created'?: string; /** * The time when this SOD policy is modified. * @type {string} * @memberof SodPolicy */ 'modified'?: string; /** * Optional description of the SOD policy * @type {string} * @memberof SodPolicy */ 'description'?: string | null; /** * * @type {SodPolicyOwnerRef} * @memberof SodPolicy */ 'ownerRef'?: SodPolicyOwnerRef; /** * Optional External Policy Reference * @type {string} * @memberof SodPolicy */ 'externalPolicyReference'?: string | null; /** * Search query of the SOD policy * @type {string} * @memberof SodPolicy */ 'policyQuery'?: string; /** * Optional compensating controls(Mitigating Controls) * @type {string} * @memberof SodPolicy */ 'compensatingControls'?: string | null; /** * Optional correction advice * @type {string} * @memberof SodPolicy */ 'correctionAdvice'?: string | null; /** * whether the policy is enforced or not * @type {string} * @memberof SodPolicy */ 'state'?: SodPolicyStateEnum; /** * tags for this policy object * @type {Array} * @memberof SodPolicy */ 'tags'?: Array; /** * Policy\'s creator ID * @type {string} * @memberof SodPolicy */ 'creatorId'?: string; /** * Policy\'s modifier ID * @type {string} * @memberof SodPolicy */ 'modifierId'?: string | null; /** * * @type {ViolationOwnerAssignmentConfig} * @memberof SodPolicy */ 'violationOwnerAssignmentConfig'?: ViolationOwnerAssignmentConfig; /** * defines whether a policy has been scheduled or not * @type {boolean} * @memberof SodPolicy */ 'scheduled'?: boolean; /** * whether a policy is query based or conflicting access based * @type {string} * @memberof SodPolicy */ 'type'?: SodPolicyTypeEnum; /** * * @type {SodPolicyConflictingAccessCriteria} * @memberof SodPolicy */ 'conflictingAccessCriteria'?: SodPolicyConflictingAccessCriteria; } export const SodPolicyStateEnum = { Enforced: 'ENFORCED', NotEnforced: 'NOT_ENFORCED' } as const; export type SodPolicyStateEnum = typeof SodPolicyStateEnum[keyof typeof SodPolicyStateEnum]; export const SodPolicyTypeEnum = { General: 'GENERAL', ConflictingAccessBased: 'CONFLICTING_ACCESS_BASED' } as const; export type SodPolicyTypeEnum = typeof SodPolicyTypeEnum[keyof typeof SodPolicyTypeEnum]; /** * * @export * @interface SodPolicyConflictingAccessCriteria */ export interface SodPolicyConflictingAccessCriteria { /** * * @type {AccessCriteria} * @memberof SodPolicyConflictingAccessCriteria */ 'leftCriteria'?: AccessCriteria; /** * * @type {AccessCriteria} * @memberof SodPolicyConflictingAccessCriteria */ 'rightCriteria'?: AccessCriteria; } /** * The owner of the SOD policy. * @export * @interface SodPolicyOwnerRef */ export interface SodPolicyOwnerRef { /** * Owner type. * @type {string} * @memberof SodPolicyOwnerRef */ 'type'?: SodPolicyOwnerRefTypeEnum; /** * Owner\'s ID. * @type {string} * @memberof SodPolicyOwnerRef */ 'id'?: string; /** * Owner\'s name. * @type {string} * @memberof SodPolicyOwnerRef */ 'name'?: string; } export const SodPolicyOwnerRefTypeEnum = { Identity: 'IDENTITY', GovernanceGroup: 'GOVERNANCE_GROUP' } as const; export type SodPolicyOwnerRefTypeEnum = typeof SodPolicyOwnerRefTypeEnum[keyof typeof SodPolicyOwnerRefTypeEnum]; /** * * @export * @interface SodPolicySchedule */ export interface SodPolicySchedule { /** * SOD Policy schedule name * @type {string} * @memberof SodPolicySchedule */ 'name'?: string; /** * The time when this SOD policy schedule is created. * @type {string} * @memberof SodPolicySchedule */ 'created'?: string; /** * The time when this SOD policy schedule is modified. * @type {string} * @memberof SodPolicySchedule */ 'modified'?: string; /** * SOD Policy schedule description * @type {string} * @memberof SodPolicySchedule */ 'description'?: string; /** * * @type {Schedule} * @memberof SodPolicySchedule */ 'schedule'?: Schedule; /** * * @type {Array} * @memberof SodPolicySchedule */ 'recipients'?: Array; /** * Indicates if empty results need to be emailed * @type {boolean} * @memberof SodPolicySchedule */ 'emailEmptyResults'?: boolean; /** * Policy\'s creator ID * @type {string} * @memberof SodPolicySchedule */ 'creatorId'?: string; /** * Policy\'s modifier ID * @type {string} * @memberof SodPolicySchedule */ 'modifierId'?: string; } /** * SOD policy recipient. * @export * @interface SodRecipient */ export interface SodRecipient { /** * SOD policy recipient DTO type. * @type {string} * @memberof SodRecipient */ 'type'?: SodRecipientTypeEnum; /** * SOD policy recipient\'s identity ID. * @type {string} * @memberof SodRecipient */ 'id'?: string; /** * SOD policy recipient\'s display name. * @type {string} * @memberof SodRecipient */ 'name'?: string; } export const SodRecipientTypeEnum = { Identity: 'IDENTITY' } as const; export type SodRecipientTypeEnum = typeof SodRecipientTypeEnum[keyof typeof SodRecipientTypeEnum]; /** * SOD policy violation report result. * @export * @interface SodReportResultDto */ export interface SodReportResultDto { /** * SOD policy violation report result DTO type. * @type {string} * @memberof SodReportResultDto */ 'type'?: SodReportResultDtoTypeEnum; /** * SOD policy violation report result ID. * @type {string} * @memberof SodReportResultDto */ 'id'?: string; /** * Human-readable name of the SOD policy violation report result. * @type {string} * @memberof SodReportResultDto */ 'name'?: string; } export const SodReportResultDtoTypeEnum = { ReportResult: 'REPORT_RESULT' } as const; export type SodReportResultDtoTypeEnum = typeof SodReportResultDtoTypeEnum[keyof typeof SodReportResultDtoTypeEnum]; /** * * @export * @interface ViolationOwnerAssignmentConfig */ export interface ViolationOwnerAssignmentConfig { /** * Details about the violations owner. MANAGER - identity\'s manager STATIC - Governance Group or Identity * @type {string} * @memberof ViolationOwnerAssignmentConfig */ 'assignmentRule'?: ViolationOwnerAssignmentConfigAssignmentRuleEnum | null; /** * * @type {ViolationOwnerAssignmentConfigOwnerRef} * @memberof ViolationOwnerAssignmentConfig */ 'ownerRef'?: ViolationOwnerAssignmentConfigOwnerRef | null; } export const ViolationOwnerAssignmentConfigAssignmentRuleEnum = { Manager: 'MANAGER', Static: 'STATIC' } as const; export type ViolationOwnerAssignmentConfigAssignmentRuleEnum = typeof ViolationOwnerAssignmentConfigAssignmentRuleEnum[keyof typeof ViolationOwnerAssignmentConfigAssignmentRuleEnum]; /** * The owner of the violation assignment config. * @export * @interface ViolationOwnerAssignmentConfigOwnerRef */ export interface ViolationOwnerAssignmentConfigOwnerRef { /** * Owner type. * @type {string} * @memberof ViolationOwnerAssignmentConfigOwnerRef */ 'type'?: ViolationOwnerAssignmentConfigOwnerRefTypeEnum | null; /** * Owner\'s ID. * @type {string} * @memberof ViolationOwnerAssignmentConfigOwnerRef */ 'id'?: string; /** * Owner\'s name. * @type {string} * @memberof ViolationOwnerAssignmentConfigOwnerRef */ 'name'?: string; } export const ViolationOwnerAssignmentConfigOwnerRefTypeEnum = { Identity: 'IDENTITY', GovernanceGroup: 'GOVERNANCE_GROUP', Manager: 'MANAGER' } as const; export type ViolationOwnerAssignmentConfigOwnerRefTypeEnum = typeof ViolationOwnerAssignmentConfigOwnerRefTypeEnum[keyof typeof ViolationOwnerAssignmentConfigOwnerRefTypeEnum]; /** * SODPoliciesApi - axios parameter creator * @export */ export const SODPoliciesApiAxiosParamCreator = function (configuration?: Configuration) { return { /** * This creates both General and Conflicting Access Based policy, with a limit of 50 entitlements for each (left & right) criteria for Conflicting Access Based SOD policy. Requires role of ORG_ADMIN. * @summary Create sod policy * @param {SodPolicy} sodPolicy * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ createSodPolicyV1: async (sodPolicy: SodPolicy, axiosOptions: RawAxiosRequestConfig = {}): Promise => { // verify required parameter 'sodPolicy' is not null or undefined assertParamExists('createSodPolicyV1', 'sodPolicy', sodPolicy) const localVarPath = `/sod-policies/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(sodPolicy, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), axiosOptions: localVarRequestOptions, }; }, /** * This deletes schedule for a specified SOD policy by ID. * @summary Delete sod policy schedule * @param {string} id The ID of the SOD policy the schedule must be deleted for. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ deleteSodPolicyScheduleV1: async (id: string, axiosOptions: RawAxiosRequestConfig = {}): Promise => { // verify required parameter 'id' is not null or undefined assertParamExists('deleteSodPolicyScheduleV1', 'id', id) const localVarPath = `/sod-policies/v1/{id}/schedule` .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 deletes a specified SOD policy. Requires role of ORG_ADMIN. * @summary Delete sod policy by id * @param {string} id The ID of the SOD Policy to delete. * @param {boolean} [logical] Indicates whether this is a soft delete (logical true) or a hard delete. Soft delete marks the policy as deleted and just save it with this status. It could be fully deleted or recovered further. Hard delete vise versa permanently delete SOD request during this call. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ deleteSodPolicyV1: async (id: string, logical?: boolean, axiosOptions: RawAxiosRequestConfig = {}): Promise => { // verify required parameter 'id' is not null or undefined assertParamExists('deleteSodPolicyV1', 'id', id) const localVarPath = `/sod-policies/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; if (logical !== undefined) { localVarQueryParameter['logical'] = logical; } setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...axiosOptions.headers}; return { url: toPathString(localVarUrlObj), axiosOptions: localVarRequestOptions, }; }, /** * This allows to download a specified named violation report for a given report reference. * @summary Download custom violation report * @param {string} reportResultId The ID of the report reference to download. * @param {string} fileName Custom Name for the file. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ getCustomViolationReportV1: async (reportResultId: string, fileName: string, axiosOptions: RawAxiosRequestConfig = {}): Promise => { // verify required parameter 'reportResultId' is not null or undefined assertParamExists('getCustomViolationReportV1', 'reportResultId', reportResultId) // verify required parameter 'fileName' is not null or undefined assertParamExists('getCustomViolationReportV1', 'fileName', fileName) const localVarPath = `/sod-violation-report/v1/{reportResultId}/download/{fileName}` .replace(`{${"reportResultId"}}`, encodeURIComponent(String(reportResultId))) .replace(`{${"fileName"}}`, encodeURIComponent(String(fileName))); // 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 allows to download a violation report for a given report reference. * @summary Download violation report * @param {string} reportResultId The ID of the report reference to download. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ getDefaultViolationReportV1: async (reportResultId: string, axiosOptions: RawAxiosRequestConfig = {}): Promise => { // verify required parameter 'reportResultId' is not null or undefined assertParamExists('getDefaultViolationReportV1', 'reportResultId', reportResultId) const localVarPath = `/sod-violation-report/v1/{reportResultId}/download` .replace(`{${"reportResultId"}}`, encodeURIComponent(String(reportResultId))); // 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 endpoint gets the status for a violation report for all policy run. * @summary Get multi-report run task status * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ getSodAllReportRunStatusV1: async (axiosOptions: RawAxiosRequestConfig = {}): Promise => { const localVarPath = `/sod-violation-report/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; setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...axiosOptions.headers}; return { url: toPathString(localVarUrlObj), axiosOptions: localVarRequestOptions, }; }, /** * This endpoint gets a specified SOD policy\'s schedule. * @summary Get sod policy schedule * @param {string} id The ID of the SOD policy schedule to retrieve. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ getSodPolicyScheduleV1: async (id: string, axiosOptions: RawAxiosRequestConfig = {}): Promise => { // verify required parameter 'id' is not null or undefined assertParamExists('getSodPolicyScheduleV1', 'id', id) const localVarPath = `/sod-policies/v1/{id}/schedule` .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 gets specified SOD policy. Requires role of ORG_ADMIN. * @summary Get sod policy by id * @param {string} id The ID of the SOD Policy to retrieve. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ getSodPolicyV1: async (id: string, axiosOptions: RawAxiosRequestConfig = {}): Promise => { // verify required parameter 'id' is not null or undefined assertParamExists('getSodPolicyV1', 'id', id) const localVarPath = `/sod-policies/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 gets the status for a violation report run task that has already been invoked. * @summary Get violation report run status * @param {string} reportResultId The ID of the report reference to retrieve. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ getSodViolationReportRunStatusV1: async (reportResultId: string, axiosOptions: RawAxiosRequestConfig = {}): Promise => { // verify required parameter 'reportResultId' is not null or undefined assertParamExists('getSodViolationReportRunStatusV1', 'reportResultId', reportResultId) const localVarPath = `/sod-policies/v1/sod-violation-report-status/{reportResultId}` .replace(`{${"reportResultId"}}`, encodeURIComponent(String(reportResultId))); // 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 gets the status for a violation report run task that has already been invoked. * @summary Get sod violation report status * @param {string} id The ID of the violation report to retrieve status for. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ getSodViolationReportStatusV1: async (id: string, axiosOptions: RawAxiosRequestConfig = {}): Promise => { // verify required parameter 'id' is not null or undefined assertParamExists('getSodViolationReportStatusV1', 'id', id) const localVarPath = `/sod-policies/v1/{id}/violation-report` .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 gets list of all SOD policies. Requires role of ORG_ADMIN * @summary List sod policies * @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 {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 {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* **name**: *eq, in* **state**: *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: **id, name, created, modified, description** * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ listSodPoliciesV1: async (limit?: number, offset?: number, count?: boolean, filters?: string, sorters?: string, axiosOptions: RawAxiosRequestConfig = {}): Promise => { const localVarPath = `/sod-policies/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 (limit !== undefined) { localVarQueryParameter['limit'] = limit; } if (offset !== undefined) { localVarQueryParameter['offset'] = offset; } 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, }; }, /** * Allows updating SOD Policy fields other than [\"id\",\"created\",\"creatorId\",\"policyQuery\",\"type\"] using the [JSON Patch](https://tools.ietf.org/html/rfc6902) standard. Requires role of ORG_ADMIN. This endpoint can only patch CONFLICTING_ACCESS_BASED type policies. Do not use this endpoint to patch general policies - doing so will build an API exception. * @summary Patch sod policy by id * @param {string} id The ID of the SOD policy being modified. * @param {Array} jsonPatchOperation A list of SOD Policy update operations according to the [JSON Patch](https://tools.ietf.org/html/rfc6902) standard. The following fields are patchable: * name * description * ownerRef * externalPolicyReference * compensatingControls * correctionAdvice * state * tags * violationOwnerAssignmentConfig * scheduled * conflictingAccessCriteria * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ patchSodPolicyV1: async (id: string, jsonPatchOperation: Array, axiosOptions: RawAxiosRequestConfig = {}): Promise => { // verify required parameter 'id' is not null or undefined assertParamExists('patchSodPolicyV1', 'id', id) // verify required parameter 'jsonPatchOperation' is not null or undefined assertParamExists('patchSodPolicyV1', 'jsonPatchOperation', jsonPatchOperation) const localVarPath = `/sod-policies/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 updates schedule for a specified SOD policy. * @summary Update sod policy schedule * @param {string} id The ID of the SOD policy to update its schedule. * @param {SodPolicySchedule} sodPolicySchedule * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ putPolicyScheduleV1: async (id: string, sodPolicySchedule: SodPolicySchedule, axiosOptions: RawAxiosRequestConfig = {}): Promise => { // verify required parameter 'id' is not null or undefined assertParamExists('putPolicyScheduleV1', 'id', id) // verify required parameter 'sodPolicySchedule' is not null or undefined assertParamExists('putPolicyScheduleV1', 'sodPolicySchedule', sodPolicySchedule) const localVarPath = `/sod-policies/v1/{id}/schedule` .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: 'PUT', ...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(sodPolicySchedule, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), axiosOptions: localVarRequestOptions, }; }, /** * This updates a specified SOD policy. Requires role of ORG_ADMIN. * @summary Update sod policy by id * @param {string} id The ID of the SOD policy to update. * @param {SodPolicy} sodPolicy * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ putSodPolicyV1: async (id: string, sodPolicy: SodPolicy, axiosOptions: RawAxiosRequestConfig = {}): Promise => { // verify required parameter 'id' is not null or undefined assertParamExists('putSodPolicyV1', 'id', id) // verify required parameter 'sodPolicy' is not null or undefined assertParamExists('putSodPolicyV1', 'sodPolicy', sodPolicy) const localVarPath = `/sod-policies/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: 'PUT', ...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(sodPolicy, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), axiosOptions: localVarRequestOptions, }; }, /** * Runs the scheduled report for the policy retrieved by passed policy ID. The report schedule is fetched from the policy retrieved by ID. * @summary Evaluate one policy by id * @param {string} id The SOD policy ID to run. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ startEvaluateSodPolicyV1: async (id: string, axiosOptions: RawAxiosRequestConfig = {}): Promise => { // verify required parameter 'id' is not null or undefined assertParamExists('startEvaluateSodPolicyV1', 'id', id) const localVarPath = `/sod-policies/v1/{id}/evaluate` .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: 'POST', ...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, }; }, /** * Runs multi-policy report for the org. If a policy reports more than 5000 violations, the report mentions that the violation limit was exceeded for that policy. If the request is empty, the report runs for all policies. Otherwise, the report runs for only the filtered policy list provided. * @summary Runs all policies for org * @param {MultiPolicyRequest} [multiPolicyRequest] * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ startSodAllPoliciesForOrgV1: async (multiPolicyRequest?: MultiPolicyRequest, axiosOptions: RawAxiosRequestConfig = {}): Promise => { const localVarPath = `/sod-violation-report/v1/run`; // 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(multiPolicyRequest, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), axiosOptions: localVarRequestOptions, }; }, /** * This invokes processing of violation report for given SOD policy. If the policy reports more than 5000 violations, the report returns with violation limit exceeded message. * @summary Runs sod policy violation report * @param {string} id The SOD policy ID to run. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ startSodPolicyV1: async (id: string, axiosOptions: RawAxiosRequestConfig = {}): Promise => { // verify required parameter 'id' is not null or undefined assertParamExists('startSodPolicyV1', 'id', id) const localVarPath = `/sod-policies/v1/{id}/violation-report/run` .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: 'POST', ...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, }; }, } }; /** * SODPoliciesApi - functional programming interface * @export */ export const SODPoliciesApiFp = function(configuration?: Configuration) { const localVarAxiosParamCreator = SODPoliciesApiAxiosParamCreator(configuration) return { /** * This creates both General and Conflicting Access Based policy, with a limit of 50 entitlements for each (left & right) criteria for Conflicting Access Based SOD policy. Requires role of ORG_ADMIN. * @summary Create sod policy * @param {SodPolicy} sodPolicy * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ async createSodPolicyV1(sodPolicy: SodPolicy, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.createSodPolicyV1(sodPolicy, axiosOptions); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['SODPoliciesApi.createSodPolicyV1']?.[localVarOperationServerIndex]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); }, /** * This deletes schedule for a specified SOD policy by ID. * @summary Delete sod policy schedule * @param {string} id The ID of the SOD policy the schedule must be deleted for. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ async deleteSodPolicyScheduleV1(id: string, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.deleteSodPolicyScheduleV1(id, axiosOptions); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['SODPoliciesApi.deleteSodPolicyScheduleV1']?.[localVarOperationServerIndex]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); }, /** * This deletes a specified SOD policy. Requires role of ORG_ADMIN. * @summary Delete sod policy by id * @param {string} id The ID of the SOD Policy to delete. * @param {boolean} [logical] Indicates whether this is a soft delete (logical true) or a hard delete. Soft delete marks the policy as deleted and just save it with this status. It could be fully deleted or recovered further. Hard delete vise versa permanently delete SOD request during this call. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ async deleteSodPolicyV1(id: string, logical?: boolean, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.deleteSodPolicyV1(id, logical, axiosOptions); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['SODPoliciesApi.deleteSodPolicyV1']?.[localVarOperationServerIndex]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); }, /** * This allows to download a specified named violation report for a given report reference. * @summary Download custom violation report * @param {string} reportResultId The ID of the report reference to download. * @param {string} fileName Custom Name for the file. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ async getCustomViolationReportV1(reportResultId: string, fileName: string, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.getCustomViolationReportV1(reportResultId, fileName, axiosOptions); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['SODPoliciesApi.getCustomViolationReportV1']?.[localVarOperationServerIndex]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); }, /** * This allows to download a violation report for a given report reference. * @summary Download violation report * @param {string} reportResultId The ID of the report reference to download. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ async getDefaultViolationReportV1(reportResultId: string, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.getDefaultViolationReportV1(reportResultId, axiosOptions); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['SODPoliciesApi.getDefaultViolationReportV1']?.[localVarOperationServerIndex]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); }, /** * This endpoint gets the status for a violation report for all policy run. * @summary Get multi-report run task status * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ async getSodAllReportRunStatusV1(axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.getSodAllReportRunStatusV1(axiosOptions); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['SODPoliciesApi.getSodAllReportRunStatusV1']?.[localVarOperationServerIndex]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); }, /** * This endpoint gets a specified SOD policy\'s schedule. * @summary Get sod policy schedule * @param {string} id The ID of the SOD policy schedule to retrieve. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ async getSodPolicyScheduleV1(id: string, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.getSodPolicyScheduleV1(id, axiosOptions); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['SODPoliciesApi.getSodPolicyScheduleV1']?.[localVarOperationServerIndex]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); }, /** * This gets specified SOD policy. Requires role of ORG_ADMIN. * @summary Get sod policy by id * @param {string} id The ID of the SOD Policy to retrieve. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ async getSodPolicyV1(id: string, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.getSodPolicyV1(id, axiosOptions); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['SODPoliciesApi.getSodPolicyV1']?.[localVarOperationServerIndex]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); }, /** * This gets the status for a violation report run task that has already been invoked. * @summary Get violation report run status * @param {string} reportResultId The ID of the report reference to retrieve. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ async getSodViolationReportRunStatusV1(reportResultId: string, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.getSodViolationReportRunStatusV1(reportResultId, axiosOptions); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['SODPoliciesApi.getSodViolationReportRunStatusV1']?.[localVarOperationServerIndex]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); }, /** * This gets the status for a violation report run task that has already been invoked. * @summary Get sod violation report status * @param {string} id The ID of the violation report to retrieve status for. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ async getSodViolationReportStatusV1(id: string, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.getSodViolationReportStatusV1(id, axiosOptions); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['SODPoliciesApi.getSodViolationReportStatusV1']?.[localVarOperationServerIndex]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); }, /** * This gets list of all SOD policies. Requires role of ORG_ADMIN * @summary List sod policies * @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 {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 {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* **name**: *eq, in* **state**: *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: **id, name, created, modified, description** * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ async listSodPoliciesV1(limit?: number, offset?: number, count?: boolean, filters?: string, sorters?: string, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { const localVarAxiosArgs = await localVarAxiosParamCreator.listSodPoliciesV1(limit, offset, count, filters, sorters, axiosOptions); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['SODPoliciesApi.listSodPoliciesV1']?.[localVarOperationServerIndex]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); }, /** * Allows updating SOD Policy fields other than [\"id\",\"created\",\"creatorId\",\"policyQuery\",\"type\"] using the [JSON Patch](https://tools.ietf.org/html/rfc6902) standard. Requires role of ORG_ADMIN. This endpoint can only patch CONFLICTING_ACCESS_BASED type policies. Do not use this endpoint to patch general policies - doing so will build an API exception. * @summary Patch sod policy by id * @param {string} id The ID of the SOD policy being modified. * @param {Array} jsonPatchOperation A list of SOD Policy update operations according to the [JSON Patch](https://tools.ietf.org/html/rfc6902) standard. The following fields are patchable: * name * description * ownerRef * externalPolicyReference * compensatingControls * correctionAdvice * state * tags * violationOwnerAssignmentConfig * scheduled * conflictingAccessCriteria * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ async patchSodPolicyV1(id: string, jsonPatchOperation: Array, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.patchSodPolicyV1(id, jsonPatchOperation, axiosOptions); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['SODPoliciesApi.patchSodPolicyV1']?.[localVarOperationServerIndex]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); }, /** * This updates schedule for a specified SOD policy. * @summary Update sod policy schedule * @param {string} id The ID of the SOD policy to update its schedule. * @param {SodPolicySchedule} sodPolicySchedule * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ async putPolicyScheduleV1(id: string, sodPolicySchedule: SodPolicySchedule, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.putPolicyScheduleV1(id, sodPolicySchedule, axiosOptions); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['SODPoliciesApi.putPolicyScheduleV1']?.[localVarOperationServerIndex]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); }, /** * This updates a specified SOD policy. Requires role of ORG_ADMIN. * @summary Update sod policy by id * @param {string} id The ID of the SOD policy to update. * @param {SodPolicy} sodPolicy * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ async putSodPolicyV1(id: string, sodPolicy: SodPolicy, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.putSodPolicyV1(id, sodPolicy, axiosOptions); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['SODPoliciesApi.putSodPolicyV1']?.[localVarOperationServerIndex]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); }, /** * Runs the scheduled report for the policy retrieved by passed policy ID. The report schedule is fetched from the policy retrieved by ID. * @summary Evaluate one policy by id * @param {string} id The SOD policy ID to run. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ async startEvaluateSodPolicyV1(id: string, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.startEvaluateSodPolicyV1(id, axiosOptions); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['SODPoliciesApi.startEvaluateSodPolicyV1']?.[localVarOperationServerIndex]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); }, /** * Runs multi-policy report for the org. If a policy reports more than 5000 violations, the report mentions that the violation limit was exceeded for that policy. If the request is empty, the report runs for all policies. Otherwise, the report runs for only the filtered policy list provided. * @summary Runs all policies for org * @param {MultiPolicyRequest} [multiPolicyRequest] * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ async startSodAllPoliciesForOrgV1(multiPolicyRequest?: MultiPolicyRequest, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.startSodAllPoliciesForOrgV1(multiPolicyRequest, axiosOptions); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['SODPoliciesApi.startSodAllPoliciesForOrgV1']?.[localVarOperationServerIndex]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); }, /** * This invokes processing of violation report for given SOD policy. If the policy reports more than 5000 violations, the report returns with violation limit exceeded message. * @summary Runs sod policy violation report * @param {string} id The SOD policy ID to run. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ async startSodPolicyV1(id: string, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.startSodPolicyV1(id, axiosOptions); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['SODPoliciesApi.startSodPolicyV1']?.[localVarOperationServerIndex]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); }, } }; /** * SODPoliciesApi - factory interface * @export */ export const SODPoliciesApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { const localVarFp = SODPoliciesApiFp(configuration) return { /** * This creates both General and Conflicting Access Based policy, with a limit of 50 entitlements for each (left & right) criteria for Conflicting Access Based SOD policy. Requires role of ORG_ADMIN. * @summary Create sod policy * @param {SODPoliciesApiCreateSodPolicyV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ createSodPolicyV1(requestParameters: SODPoliciesApiCreateSodPolicyV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise { return localVarFp.createSodPolicyV1(requestParameters.sodPolicy, axiosOptions).then((request) => request(axios, basePath)); }, /** * This deletes schedule for a specified SOD policy by ID. * @summary Delete sod policy schedule * @param {SODPoliciesApiDeleteSodPolicyScheduleV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ deleteSodPolicyScheduleV1(requestParameters: SODPoliciesApiDeleteSodPolicyScheduleV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise { return localVarFp.deleteSodPolicyScheduleV1(requestParameters.id, axiosOptions).then((request) => request(axios, basePath)); }, /** * This deletes a specified SOD policy. Requires role of ORG_ADMIN. * @summary Delete sod policy by id * @param {SODPoliciesApiDeleteSodPolicyV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ deleteSodPolicyV1(requestParameters: SODPoliciesApiDeleteSodPolicyV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise { return localVarFp.deleteSodPolicyV1(requestParameters.id, requestParameters.logical, axiosOptions).then((request) => request(axios, basePath)); }, /** * This allows to download a specified named violation report for a given report reference. * @summary Download custom violation report * @param {SODPoliciesApiGetCustomViolationReportV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ getCustomViolationReportV1(requestParameters: SODPoliciesApiGetCustomViolationReportV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise { return localVarFp.getCustomViolationReportV1(requestParameters.reportResultId, requestParameters.fileName, axiosOptions).then((request) => request(axios, basePath)); }, /** * This allows to download a violation report for a given report reference. * @summary Download violation report * @param {SODPoliciesApiGetDefaultViolationReportV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ getDefaultViolationReportV1(requestParameters: SODPoliciesApiGetDefaultViolationReportV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise { return localVarFp.getDefaultViolationReportV1(requestParameters.reportResultId, axiosOptions).then((request) => request(axios, basePath)); }, /** * This endpoint gets the status for a violation report for all policy run. * @summary Get multi-report run task status * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ getSodAllReportRunStatusV1(axiosOptions?: RawAxiosRequestConfig): AxiosPromise { return localVarFp.getSodAllReportRunStatusV1(axiosOptions).then((request) => request(axios, basePath)); }, /** * This endpoint gets a specified SOD policy\'s schedule. * @summary Get sod policy schedule * @param {SODPoliciesApiGetSodPolicyScheduleV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ getSodPolicyScheduleV1(requestParameters: SODPoliciesApiGetSodPolicyScheduleV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise { return localVarFp.getSodPolicyScheduleV1(requestParameters.id, axiosOptions).then((request) => request(axios, basePath)); }, /** * This gets specified SOD policy. Requires role of ORG_ADMIN. * @summary Get sod policy by id * @param {SODPoliciesApiGetSodPolicyV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ getSodPolicyV1(requestParameters: SODPoliciesApiGetSodPolicyV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise { return localVarFp.getSodPolicyV1(requestParameters.id, axiosOptions).then((request) => request(axios, basePath)); }, /** * This gets the status for a violation report run task that has already been invoked. * @summary Get violation report run status * @param {SODPoliciesApiGetSodViolationReportRunStatusV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ getSodViolationReportRunStatusV1(requestParameters: SODPoliciesApiGetSodViolationReportRunStatusV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise { return localVarFp.getSodViolationReportRunStatusV1(requestParameters.reportResultId, axiosOptions).then((request) => request(axios, basePath)); }, /** * This gets the status for a violation report run task that has already been invoked. * @summary Get sod violation report status * @param {SODPoliciesApiGetSodViolationReportStatusV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ getSodViolationReportStatusV1(requestParameters: SODPoliciesApiGetSodViolationReportStatusV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise { return localVarFp.getSodViolationReportStatusV1(requestParameters.id, axiosOptions).then((request) => request(axios, basePath)); }, /** * This gets list of all SOD policies. Requires role of ORG_ADMIN * @summary List sod policies * @param {SODPoliciesApiListSodPoliciesV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ listSodPoliciesV1(requestParameters: SODPoliciesApiListSodPoliciesV1Request = {}, axiosOptions?: RawAxiosRequestConfig): AxiosPromise> { return localVarFp.listSodPoliciesV1(requestParameters.limit, requestParameters.offset, requestParameters.count, requestParameters.filters, requestParameters.sorters, axiosOptions).then((request) => request(axios, basePath)); }, /** * Allows updating SOD Policy fields other than [\"id\",\"created\",\"creatorId\",\"policyQuery\",\"type\"] using the [JSON Patch](https://tools.ietf.org/html/rfc6902) standard. Requires role of ORG_ADMIN. This endpoint can only patch CONFLICTING_ACCESS_BASED type policies. Do not use this endpoint to patch general policies - doing so will build an API exception. * @summary Patch sod policy by id * @param {SODPoliciesApiPatchSodPolicyV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ patchSodPolicyV1(requestParameters: SODPoliciesApiPatchSodPolicyV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise { return localVarFp.patchSodPolicyV1(requestParameters.id, requestParameters.jsonPatchOperation, axiosOptions).then((request) => request(axios, basePath)); }, /** * This updates schedule for a specified SOD policy. * @summary Update sod policy schedule * @param {SODPoliciesApiPutPolicyScheduleV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ putPolicyScheduleV1(requestParameters: SODPoliciesApiPutPolicyScheduleV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise { return localVarFp.putPolicyScheduleV1(requestParameters.id, requestParameters.sodPolicySchedule, axiosOptions).then((request) => request(axios, basePath)); }, /** * This updates a specified SOD policy. Requires role of ORG_ADMIN. * @summary Update sod policy by id * @param {SODPoliciesApiPutSodPolicyV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ putSodPolicyV1(requestParameters: SODPoliciesApiPutSodPolicyV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise { return localVarFp.putSodPolicyV1(requestParameters.id, requestParameters.sodPolicy, axiosOptions).then((request) => request(axios, basePath)); }, /** * Runs the scheduled report for the policy retrieved by passed policy ID. The report schedule is fetched from the policy retrieved by ID. * @summary Evaluate one policy by id * @param {SODPoliciesApiStartEvaluateSodPolicyV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ startEvaluateSodPolicyV1(requestParameters: SODPoliciesApiStartEvaluateSodPolicyV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise { return localVarFp.startEvaluateSodPolicyV1(requestParameters.id, axiosOptions).then((request) => request(axios, basePath)); }, /** * Runs multi-policy report for the org. If a policy reports more than 5000 violations, the report mentions that the violation limit was exceeded for that policy. If the request is empty, the report runs for all policies. Otherwise, the report runs for only the filtered policy list provided. * @summary Runs all policies for org * @param {SODPoliciesApiStartSodAllPoliciesForOrgV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ startSodAllPoliciesForOrgV1(requestParameters: SODPoliciesApiStartSodAllPoliciesForOrgV1Request = {}, axiosOptions?: RawAxiosRequestConfig): AxiosPromise { return localVarFp.startSodAllPoliciesForOrgV1(requestParameters.multiPolicyRequest, axiosOptions).then((request) => request(axios, basePath)); }, /** * This invokes processing of violation report for given SOD policy. If the policy reports more than 5000 violations, the report returns with violation limit exceeded message. * @summary Runs sod policy violation report * @param {SODPoliciesApiStartSodPolicyV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ startSodPolicyV1(requestParameters: SODPoliciesApiStartSodPolicyV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise { return localVarFp.startSodPolicyV1(requestParameters.id, axiosOptions).then((request) => request(axios, basePath)); }, }; }; /** * Request parameters for createSodPolicyV1 operation in SODPoliciesApi. * @export * @interface SODPoliciesApiCreateSodPolicyV1Request */ export interface SODPoliciesApiCreateSodPolicyV1Request { /** * * @type {SodPolicy} * @memberof SODPoliciesApiCreateSodPolicyV1 */ readonly sodPolicy: SodPolicy } /** * Request parameters for deleteSodPolicyScheduleV1 operation in SODPoliciesApi. * @export * @interface SODPoliciesApiDeleteSodPolicyScheduleV1Request */ export interface SODPoliciesApiDeleteSodPolicyScheduleV1Request { /** * The ID of the SOD policy the schedule must be deleted for. * @type {string} * @memberof SODPoliciesApiDeleteSodPolicyScheduleV1 */ readonly id: string } /** * Request parameters for deleteSodPolicyV1 operation in SODPoliciesApi. * @export * @interface SODPoliciesApiDeleteSodPolicyV1Request */ export interface SODPoliciesApiDeleteSodPolicyV1Request { /** * The ID of the SOD Policy to delete. * @type {string} * @memberof SODPoliciesApiDeleteSodPolicyV1 */ readonly id: string /** * Indicates whether this is a soft delete (logical true) or a hard delete. Soft delete marks the policy as deleted and just save it with this status. It could be fully deleted or recovered further. Hard delete vise versa permanently delete SOD request during this call. * @type {boolean} * @memberof SODPoliciesApiDeleteSodPolicyV1 */ readonly logical?: boolean } /** * Request parameters for getCustomViolationReportV1 operation in SODPoliciesApi. * @export * @interface SODPoliciesApiGetCustomViolationReportV1Request */ export interface SODPoliciesApiGetCustomViolationReportV1Request { /** * The ID of the report reference to download. * @type {string} * @memberof SODPoliciesApiGetCustomViolationReportV1 */ readonly reportResultId: string /** * Custom Name for the file. * @type {string} * @memberof SODPoliciesApiGetCustomViolationReportV1 */ readonly fileName: string } /** * Request parameters for getDefaultViolationReportV1 operation in SODPoliciesApi. * @export * @interface SODPoliciesApiGetDefaultViolationReportV1Request */ export interface SODPoliciesApiGetDefaultViolationReportV1Request { /** * The ID of the report reference to download. * @type {string} * @memberof SODPoliciesApiGetDefaultViolationReportV1 */ readonly reportResultId: string } /** * Request parameters for getSodPolicyScheduleV1 operation in SODPoliciesApi. * @export * @interface SODPoliciesApiGetSodPolicyScheduleV1Request */ export interface SODPoliciesApiGetSodPolicyScheduleV1Request { /** * The ID of the SOD policy schedule to retrieve. * @type {string} * @memberof SODPoliciesApiGetSodPolicyScheduleV1 */ readonly id: string } /** * Request parameters for getSodPolicyV1 operation in SODPoliciesApi. * @export * @interface SODPoliciesApiGetSodPolicyV1Request */ export interface SODPoliciesApiGetSodPolicyV1Request { /** * The ID of the SOD Policy to retrieve. * @type {string} * @memberof SODPoliciesApiGetSodPolicyV1 */ readonly id: string } /** * Request parameters for getSodViolationReportRunStatusV1 operation in SODPoliciesApi. * @export * @interface SODPoliciesApiGetSodViolationReportRunStatusV1Request */ export interface SODPoliciesApiGetSodViolationReportRunStatusV1Request { /** * The ID of the report reference to retrieve. * @type {string} * @memberof SODPoliciesApiGetSodViolationReportRunStatusV1 */ readonly reportResultId: string } /** * Request parameters for getSodViolationReportStatusV1 operation in SODPoliciesApi. * @export * @interface SODPoliciesApiGetSodViolationReportStatusV1Request */ export interface SODPoliciesApiGetSodViolationReportStatusV1Request { /** * The ID of the violation report to retrieve status for. * @type {string} * @memberof SODPoliciesApiGetSodViolationReportStatusV1 */ readonly id: string } /** * Request parameters for listSodPoliciesV1 operation in SODPoliciesApi. * @export * @interface SODPoliciesApiListSodPoliciesV1Request */ export interface SODPoliciesApiListSodPoliciesV1Request { /** * 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 SODPoliciesApiListSodPoliciesV1 */ readonly limit?: number /** * 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 SODPoliciesApiListSodPoliciesV1 */ readonly offset?: 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 SODPoliciesApiListSodPoliciesV1 */ 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* **name**: *eq, in* **state**: *eq, in* * @type {string} * @memberof SODPoliciesApiListSodPoliciesV1 */ 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: **id, name, created, modified, description** * @type {string} * @memberof SODPoliciesApiListSodPoliciesV1 */ readonly sorters?: string } /** * Request parameters for patchSodPolicyV1 operation in SODPoliciesApi. * @export * @interface SODPoliciesApiPatchSodPolicyV1Request */ export interface SODPoliciesApiPatchSodPolicyV1Request { /** * The ID of the SOD policy being modified. * @type {string} * @memberof SODPoliciesApiPatchSodPolicyV1 */ readonly id: string /** * A list of SOD Policy update operations according to the [JSON Patch](https://tools.ietf.org/html/rfc6902) standard. The following fields are patchable: * name * description * ownerRef * externalPolicyReference * compensatingControls * correctionAdvice * state * tags * violationOwnerAssignmentConfig * scheduled * conflictingAccessCriteria * @type {Array} * @memberof SODPoliciesApiPatchSodPolicyV1 */ readonly jsonPatchOperation: Array } /** * Request parameters for putPolicyScheduleV1 operation in SODPoliciesApi. * @export * @interface SODPoliciesApiPutPolicyScheduleV1Request */ export interface SODPoliciesApiPutPolicyScheduleV1Request { /** * The ID of the SOD policy to update its schedule. * @type {string} * @memberof SODPoliciesApiPutPolicyScheduleV1 */ readonly id: string /** * * @type {SodPolicySchedule} * @memberof SODPoliciesApiPutPolicyScheduleV1 */ readonly sodPolicySchedule: SodPolicySchedule } /** * Request parameters for putSodPolicyV1 operation in SODPoliciesApi. * @export * @interface SODPoliciesApiPutSodPolicyV1Request */ export interface SODPoliciesApiPutSodPolicyV1Request { /** * The ID of the SOD policy to update. * @type {string} * @memberof SODPoliciesApiPutSodPolicyV1 */ readonly id: string /** * * @type {SodPolicy} * @memberof SODPoliciesApiPutSodPolicyV1 */ readonly sodPolicy: SodPolicy } /** * Request parameters for startEvaluateSodPolicyV1 operation in SODPoliciesApi. * @export * @interface SODPoliciesApiStartEvaluateSodPolicyV1Request */ export interface SODPoliciesApiStartEvaluateSodPolicyV1Request { /** * The SOD policy ID to run. * @type {string} * @memberof SODPoliciesApiStartEvaluateSodPolicyV1 */ readonly id: string } /** * Request parameters for startSodAllPoliciesForOrgV1 operation in SODPoliciesApi. * @export * @interface SODPoliciesApiStartSodAllPoliciesForOrgV1Request */ export interface SODPoliciesApiStartSodAllPoliciesForOrgV1Request { /** * * @type {MultiPolicyRequest} * @memberof SODPoliciesApiStartSodAllPoliciesForOrgV1 */ readonly multiPolicyRequest?: MultiPolicyRequest } /** * Request parameters for startSodPolicyV1 operation in SODPoliciesApi. * @export * @interface SODPoliciesApiStartSodPolicyV1Request */ export interface SODPoliciesApiStartSodPolicyV1Request { /** * The SOD policy ID to run. * @type {string} * @memberof SODPoliciesApiStartSodPolicyV1 */ readonly id: string } /** * SODPoliciesApi - object-oriented interface * @export * @class SODPoliciesApi * @extends {BaseAPI} */ export class SODPoliciesApi extends BaseAPI { /** * This creates both General and Conflicting Access Based policy, with a limit of 50 entitlements for each (left & right) criteria for Conflicting Access Based SOD policy. Requires role of ORG_ADMIN. * @summary Create sod policy * @param {SODPoliciesApiCreateSodPolicyV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof SODPoliciesApi */ public createSodPolicyV1(requestParameters: SODPoliciesApiCreateSodPolicyV1Request, axiosOptions?: RawAxiosRequestConfig) { return SODPoliciesApiFp(this.configuration).createSodPolicyV1(requestParameters.sodPolicy, axiosOptions).then((request) => request(this.axios, this.basePath)); } /** * This deletes schedule for a specified SOD policy by ID. * @summary Delete sod policy schedule * @param {SODPoliciesApiDeleteSodPolicyScheduleV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof SODPoliciesApi */ public deleteSodPolicyScheduleV1(requestParameters: SODPoliciesApiDeleteSodPolicyScheduleV1Request, axiosOptions?: RawAxiosRequestConfig) { return SODPoliciesApiFp(this.configuration).deleteSodPolicyScheduleV1(requestParameters.id, axiosOptions).then((request) => request(this.axios, this.basePath)); } /** * This deletes a specified SOD policy. Requires role of ORG_ADMIN. * @summary Delete sod policy by id * @param {SODPoliciesApiDeleteSodPolicyV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof SODPoliciesApi */ public deleteSodPolicyV1(requestParameters: SODPoliciesApiDeleteSodPolicyV1Request, axiosOptions?: RawAxiosRequestConfig) { return SODPoliciesApiFp(this.configuration).deleteSodPolicyV1(requestParameters.id, requestParameters.logical, axiosOptions).then((request) => request(this.axios, this.basePath)); } /** * This allows to download a specified named violation report for a given report reference. * @summary Download custom violation report * @param {SODPoliciesApiGetCustomViolationReportV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof SODPoliciesApi */ public getCustomViolationReportV1(requestParameters: SODPoliciesApiGetCustomViolationReportV1Request, axiosOptions?: RawAxiosRequestConfig) { return SODPoliciesApiFp(this.configuration).getCustomViolationReportV1(requestParameters.reportResultId, requestParameters.fileName, axiosOptions).then((request) => request(this.axios, this.basePath)); } /** * This allows to download a violation report for a given report reference. * @summary Download violation report * @param {SODPoliciesApiGetDefaultViolationReportV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof SODPoliciesApi */ public getDefaultViolationReportV1(requestParameters: SODPoliciesApiGetDefaultViolationReportV1Request, axiosOptions?: RawAxiosRequestConfig) { return SODPoliciesApiFp(this.configuration).getDefaultViolationReportV1(requestParameters.reportResultId, axiosOptions).then((request) => request(this.axios, this.basePath)); } /** * This endpoint gets the status for a violation report for all policy run. * @summary Get multi-report run task status * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof SODPoliciesApi */ public getSodAllReportRunStatusV1(axiosOptions?: RawAxiosRequestConfig) { return SODPoliciesApiFp(this.configuration).getSodAllReportRunStatusV1(axiosOptions).then((request) => request(this.axios, this.basePath)); } /** * This endpoint gets a specified SOD policy\'s schedule. * @summary Get sod policy schedule * @param {SODPoliciesApiGetSodPolicyScheduleV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof SODPoliciesApi */ public getSodPolicyScheduleV1(requestParameters: SODPoliciesApiGetSodPolicyScheduleV1Request, axiosOptions?: RawAxiosRequestConfig) { return SODPoliciesApiFp(this.configuration).getSodPolicyScheduleV1(requestParameters.id, axiosOptions).then((request) => request(this.axios, this.basePath)); } /** * This gets specified SOD policy. Requires role of ORG_ADMIN. * @summary Get sod policy by id * @param {SODPoliciesApiGetSodPolicyV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof SODPoliciesApi */ public getSodPolicyV1(requestParameters: SODPoliciesApiGetSodPolicyV1Request, axiosOptions?: RawAxiosRequestConfig) { return SODPoliciesApiFp(this.configuration).getSodPolicyV1(requestParameters.id, axiosOptions).then((request) => request(this.axios, this.basePath)); } /** * This gets the status for a violation report run task that has already been invoked. * @summary Get violation report run status * @param {SODPoliciesApiGetSodViolationReportRunStatusV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof SODPoliciesApi */ public getSodViolationReportRunStatusV1(requestParameters: SODPoliciesApiGetSodViolationReportRunStatusV1Request, axiosOptions?: RawAxiosRequestConfig) { return SODPoliciesApiFp(this.configuration).getSodViolationReportRunStatusV1(requestParameters.reportResultId, axiosOptions).then((request) => request(this.axios, this.basePath)); } /** * This gets the status for a violation report run task that has already been invoked. * @summary Get sod violation report status * @param {SODPoliciesApiGetSodViolationReportStatusV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof SODPoliciesApi */ public getSodViolationReportStatusV1(requestParameters: SODPoliciesApiGetSodViolationReportStatusV1Request, axiosOptions?: RawAxiosRequestConfig) { return SODPoliciesApiFp(this.configuration).getSodViolationReportStatusV1(requestParameters.id, axiosOptions).then((request) => request(this.axios, this.basePath)); } /** * This gets list of all SOD policies. Requires role of ORG_ADMIN * @summary List sod policies * @param {SODPoliciesApiListSodPoliciesV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof SODPoliciesApi */ public listSodPoliciesV1(requestParameters: SODPoliciesApiListSodPoliciesV1Request = {}, axiosOptions?: RawAxiosRequestConfig) { return SODPoliciesApiFp(this.configuration).listSodPoliciesV1(requestParameters.limit, requestParameters.offset, requestParameters.count, requestParameters.filters, requestParameters.sorters, axiosOptions).then((request) => request(this.axios, this.basePath)); } /** * Allows updating SOD Policy fields other than [\"id\",\"created\",\"creatorId\",\"policyQuery\",\"type\"] using the [JSON Patch](https://tools.ietf.org/html/rfc6902) standard. Requires role of ORG_ADMIN. This endpoint can only patch CONFLICTING_ACCESS_BASED type policies. Do not use this endpoint to patch general policies - doing so will build an API exception. * @summary Patch sod policy by id * @param {SODPoliciesApiPatchSodPolicyV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof SODPoliciesApi */ public patchSodPolicyV1(requestParameters: SODPoliciesApiPatchSodPolicyV1Request, axiosOptions?: RawAxiosRequestConfig) { return SODPoliciesApiFp(this.configuration).patchSodPolicyV1(requestParameters.id, requestParameters.jsonPatchOperation, axiosOptions).then((request) => request(this.axios, this.basePath)); } /** * This updates schedule for a specified SOD policy. * @summary Update sod policy schedule * @param {SODPoliciesApiPutPolicyScheduleV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof SODPoliciesApi */ public putPolicyScheduleV1(requestParameters: SODPoliciesApiPutPolicyScheduleV1Request, axiosOptions?: RawAxiosRequestConfig) { return SODPoliciesApiFp(this.configuration).putPolicyScheduleV1(requestParameters.id, requestParameters.sodPolicySchedule, axiosOptions).then((request) => request(this.axios, this.basePath)); } /** * This updates a specified SOD policy. Requires role of ORG_ADMIN. * @summary Update sod policy by id * @param {SODPoliciesApiPutSodPolicyV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof SODPoliciesApi */ public putSodPolicyV1(requestParameters: SODPoliciesApiPutSodPolicyV1Request, axiosOptions?: RawAxiosRequestConfig) { return SODPoliciesApiFp(this.configuration).putSodPolicyV1(requestParameters.id, requestParameters.sodPolicy, axiosOptions).then((request) => request(this.axios, this.basePath)); } /** * Runs the scheduled report for the policy retrieved by passed policy ID. The report schedule is fetched from the policy retrieved by ID. * @summary Evaluate one policy by id * @param {SODPoliciesApiStartEvaluateSodPolicyV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof SODPoliciesApi */ public startEvaluateSodPolicyV1(requestParameters: SODPoliciesApiStartEvaluateSodPolicyV1Request, axiosOptions?: RawAxiosRequestConfig) { return SODPoliciesApiFp(this.configuration).startEvaluateSodPolicyV1(requestParameters.id, axiosOptions).then((request) => request(this.axios, this.basePath)); } /** * Runs multi-policy report for the org. If a policy reports more than 5000 violations, the report mentions that the violation limit was exceeded for that policy. If the request is empty, the report runs for all policies. Otherwise, the report runs for only the filtered policy list provided. * @summary Runs all policies for org * @param {SODPoliciesApiStartSodAllPoliciesForOrgV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof SODPoliciesApi */ public startSodAllPoliciesForOrgV1(requestParameters: SODPoliciesApiStartSodAllPoliciesForOrgV1Request = {}, axiosOptions?: RawAxiosRequestConfig) { return SODPoliciesApiFp(this.configuration).startSodAllPoliciesForOrgV1(requestParameters.multiPolicyRequest, axiosOptions).then((request) => request(this.axios, this.basePath)); } /** * This invokes processing of violation report for given SOD policy. If the policy reports more than 5000 violations, the report returns with violation limit exceeded message. * @summary Runs sod policy violation report * @param {SODPoliciesApiStartSodPolicyV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof SODPoliciesApi */ public startSodPolicyV1(requestParameters: SODPoliciesApiStartSodPolicyV1Request, axiosOptions?: RawAxiosRequestConfig) { return SODPoliciesApiFp(this.configuration).startSodPolicyV1(requestParameters.id, axiosOptions).then((request) => request(this.axios, this.basePath)); } }