/* tslint:disable */ /* eslint-disable */ /** * Identity Security Cloud API - Certification Campaigns * 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 AccessConstraint */ export interface AccessConstraint { /** * Type of Access * @type {string} * @memberof AccessConstraint */ 'type': AccessConstraintTypeEnum; /** * Must be set only if operator is SELECTED. * @type {Array} * @memberof AccessConstraint */ 'ids'?: Array; /** * Used to determine whether the scope of the campaign should be reduced for selected ids or all. * @type {string} * @memberof AccessConstraint */ 'operator': AccessConstraintOperatorEnum; } export const AccessConstraintTypeEnum = { Entitlement: 'ENTITLEMENT', AccessProfile: 'ACCESS_PROFILE', Role: 'ROLE' } as const; export type AccessConstraintTypeEnum = typeof AccessConstraintTypeEnum[keyof typeof AccessConstraintTypeEnum]; export const AccessConstraintOperatorEnum = { All: 'ALL', Selected: 'SELECTED' } as const; export type AccessConstraintOperatorEnum = typeof AccessConstraintOperatorEnum[keyof typeof AccessConstraintOperatorEnum]; /** * * @export * @interface ActivateCampaignOptions */ export interface ActivateCampaignOptions { /** * The timezone must be in a valid ISO 8601 format. Timezones in ISO 8601 are represented as UTC (represented as \'Z\') or as an offset from UTC. The offset format can be +/-hh:mm, +/-hhmm, or +/-hh. * @type {string} * @memberof ActivateCampaignOptions */ 'timeZone'?: string; } /** * * @export * @interface AdminReviewReassign */ export interface AdminReviewReassign { /** * List of certification IDs to reassign * @type {Array} * @memberof AdminReviewReassign */ 'certificationIds'?: Array; /** * * @type {AdminReviewReassignReassignTo} * @memberof AdminReviewReassign */ 'reassignTo'?: AdminReviewReassignReassignTo; /** * Comment to explain why the certification was reassigned * @type {string} * @memberof AdminReviewReassign */ 'reason'?: string; } /** * * @export * @interface AdminReviewReassignReassignTo */ export interface AdminReviewReassignReassignTo { /** * The identity ID to which the review is being assigned. * @type {string} * @memberof AdminReviewReassignReassignTo */ 'id'?: string; /** * The type of the ID provided. * @type {string} * @memberof AdminReviewReassignReassignTo */ 'type'?: AdminReviewReassignReassignToTypeEnum; } export const AdminReviewReassignReassignToTypeEnum = { Identity: 'IDENTITY' } as const; export type AdminReviewReassignReassignToTypeEnum = typeof AdminReviewReassignReassignToTypeEnum[keyof typeof AdminReviewReassignReassignToTypeEnum]; /** * * @export * @interface ArrayInner */ export interface ArrayInner { } /** * * @export * @interface Campaign2 */ export interface Campaign2 { /** * Id of the campaign * @type {string} * @memberof Campaign2 */ 'id'?: string | null; /** * The campaign name. If this object is part of a template, special formatting applies; see the `/campaign-templates/{id}/generate` endpoint documentation for details. * @type {string} * @memberof Campaign2 */ 'name': string; /** * The campaign description. If this object is part of a template, special formatting applies; see the `/campaign-templates/{id}/generate` endpoint documentation for details. * @type {string} * @memberof Campaign2 */ 'description': string | null; /** * The campaign\'s completion deadline. This date must be in the future in order to activate the campaign. If you try to activate a campaign with a deadline of today or in the past, you will receive a 400 error response. * @type {string} * @memberof Campaign2 */ 'deadline'?: string | null; /** * The type of campaign. Could be extended in the future. * @type {string} * @memberof Campaign2 */ 'type': Campaign2TypeEnum; /** * Enables email notification for this campaign * @type {boolean} * @memberof Campaign2 */ 'emailNotificationEnabled'?: boolean; /** * Allows auto revoke for this campaign * @type {boolean} * @memberof Campaign2 */ 'autoRevokeAllowed'?: boolean; /** * Enables IAI for this campaign. Accepts true even if the IAI product feature is off. If IAI is turned off then campaigns generated from this template will indicate false. The real value will then be returned if IAI is ever enabled for the org in the future. * @type {boolean} * @memberof Campaign2 */ 'recommendationsEnabled'?: boolean; /** * The campaign\'s current status. * @type {string} * @memberof Campaign2 */ 'status'?: Campaign2StatusEnum | null; /** * The correlatedStatus of the campaign. Only SOURCE_OWNER campaigns can be Uncorrelated. An Uncorrelated certification campaign only includes Uncorrelated identities (An identity is uncorrelated if it has no accounts on an authoritative source). * @type {string} * @memberof Campaign2 */ 'correlatedStatus'?: Campaign2CorrelatedStatusEnum; /** * Created time of the campaign * @type {string} * @memberof Campaign2 */ 'created'?: string | null; /** * The total number of certifications in this campaign. * @type {number} * @memberof Campaign2 */ 'totalCertifications'?: number | null; /** * The number of completed certifications in this campaign. * @type {number} * @memberof Campaign2 */ 'completedCertifications'?: number | null; /** * A list of errors and warnings that have accumulated. * @type {Array} * @memberof Campaign2 */ 'alerts'?: Array | null; /** * Modified time of the campaign * @type {string} * @memberof Campaign2 */ 'modified'?: string | null; /** * * @type {Campaign2AllOfFilter} * @memberof Campaign2 */ 'filter'?: Campaign2AllOfFilter | null; /** * Determines if comments on sunset date changes are required. * @type {boolean} * @memberof Campaign2 */ 'sunsetCommentsRequired'?: boolean; /** * * @type {Campaign2AllOfSourceOwnerCampaignInfo} * @memberof Campaign2 */ 'sourceOwnerCampaignInfo'?: Campaign2AllOfSourceOwnerCampaignInfo | null; /** * * @type {Campaign2AllOfSearchCampaignInfo} * @memberof Campaign2 */ 'searchCampaignInfo'?: Campaign2AllOfSearchCampaignInfo | null; /** * * @type {Campaign2AllOfRoleCompositionCampaignInfo} * @memberof Campaign2 */ 'roleCompositionCampaignInfo'?: Campaign2AllOfRoleCompositionCampaignInfo | null; /** * * @type {Campaign2AllOfMachineAccountCampaignInfo} * @memberof Campaign2 */ 'machineAccountCampaignInfo'?: Campaign2AllOfMachineAccountCampaignInfo | null; /** * A list of sources in the campaign that contain \\\"orphan entitlements\\\" (entitlements without a corresponding Managed Attribute). An empty list indicates the campaign has no orphan entitlements. Null indicates there may be unknown orphan entitlements in the campaign (the campaign was created before this feature was implemented). * @type {Array} * @memberof Campaign2 */ 'sourcesWithOrphanEntitlements'?: Array | null; /** * Determines whether comments are required for decisions during certification reviews. You can require comments for all decisions, revoke-only decisions, or no decisions. By default, comments are not required for decisions. * @type {string} * @memberof Campaign2 */ 'mandatoryCommentRequirement'?: Campaign2MandatoryCommentRequirementEnum; } export const Campaign2TypeEnum = { Manager: 'MANAGER', SourceOwner: 'SOURCE_OWNER', Search: 'SEARCH', RoleComposition: 'ROLE_COMPOSITION', MachineAccount: 'MACHINE_ACCOUNT' } as const; export type Campaign2TypeEnum = typeof Campaign2TypeEnum[keyof typeof Campaign2TypeEnum]; export const Campaign2StatusEnum = { Pending: 'PENDING', Staged: 'STAGED', Canceling: 'CANCELING', Activating: 'ACTIVATING', Active: 'ACTIVE', Completing: 'COMPLETING', Completed: 'COMPLETED', Error: 'ERROR', Archived: 'ARCHIVED' } as const; export type Campaign2StatusEnum = typeof Campaign2StatusEnum[keyof typeof Campaign2StatusEnum]; export const Campaign2CorrelatedStatusEnum = { Correlated: 'CORRELATED', Uncorrelated: 'UNCORRELATED' } as const; export type Campaign2CorrelatedStatusEnum = typeof Campaign2CorrelatedStatusEnum[keyof typeof Campaign2CorrelatedStatusEnum]; export const Campaign2MandatoryCommentRequirementEnum = { AllDecisions: 'ALL_DECISIONS', RevokeOnlyDecisions: 'REVOKE_ONLY_DECISIONS', NoDecisions: 'NO_DECISIONS' } as const; export type Campaign2MandatoryCommentRequirementEnum = typeof Campaign2MandatoryCommentRequirementEnum[keyof typeof Campaign2MandatoryCommentRequirementEnum]; /** * Determines which items will be included in this campaign. The default campaign filter is used if this field is left blank. * @export * @interface Campaign2AllOfFilter */ export interface Campaign2AllOfFilter { /** * The ID of whatever type of filter is being used. * @type {string} * @memberof Campaign2AllOfFilter */ 'id'?: string; /** * Type of the filter * @type {string} * @memberof Campaign2AllOfFilter */ 'type'?: Campaign2AllOfFilterTypeEnum; /** * Name of the filter * @type {string} * @memberof Campaign2AllOfFilter */ 'name'?: string; } export const Campaign2AllOfFilterTypeEnum = { CampaignFilter: 'CAMPAIGN_FILTER' } as const; export type Campaign2AllOfFilterTypeEnum = typeof Campaign2AllOfFilterTypeEnum[keyof typeof Campaign2AllOfFilterTypeEnum]; /** * Must be set only if the campaign type is MACHINE_ACCOUNT. * @export * @interface Campaign2AllOfMachineAccountCampaignInfo */ export interface Campaign2AllOfMachineAccountCampaignInfo { /** * The list of sources to be included in the campaign. * @type {Array} * @memberof Campaign2AllOfMachineAccountCampaignInfo */ 'sourceIds'?: Array; /** * The reviewer\'s type. * @type {string} * @memberof Campaign2AllOfMachineAccountCampaignInfo */ 'reviewerType'?: Campaign2AllOfMachineAccountCampaignInfoReviewerTypeEnum; } export const Campaign2AllOfMachineAccountCampaignInfoReviewerTypeEnum = { AccountOwner: 'ACCOUNT_OWNER' } as const; export type Campaign2AllOfMachineAccountCampaignInfoReviewerTypeEnum = typeof Campaign2AllOfMachineAccountCampaignInfoReviewerTypeEnum[keyof typeof Campaign2AllOfMachineAccountCampaignInfoReviewerTypeEnum]; /** * Optional configuration options for role composition campaigns. * @export * @interface Campaign2AllOfRoleCompositionCampaignInfo */ export interface Campaign2AllOfRoleCompositionCampaignInfo { /** * The ID of the identity or governance group reviewing this campaign. Deprecated in favor of the \"reviewer\" object. * @type {string} * @memberof Campaign2AllOfRoleCompositionCampaignInfo * @deprecated */ 'reviewerId'?: string | null; /** * * @type {Campaign2AllOfRoleCompositionCampaignInfoReviewer} * @memberof Campaign2AllOfRoleCompositionCampaignInfo */ 'reviewer'?: Campaign2AllOfRoleCompositionCampaignInfoReviewer | null; /** * Optional list of roles to include in this campaign. Only one of `roleIds` and `query` may be set; if neither are set, all roles are included. * @type {Array} * @memberof Campaign2AllOfRoleCompositionCampaignInfo */ 'roleIds'?: Array; /** * * @type {Campaign2AllOfRoleCompositionCampaignInfoRemediatorRef} * @memberof Campaign2AllOfRoleCompositionCampaignInfo */ 'remediatorRef': Campaign2AllOfRoleCompositionCampaignInfoRemediatorRef; /** * Optional search query to scope this campaign to a set of roles. Only one of `roleIds` and `query` may be set; if neither are set, all roles are included. * @type {string} * @memberof Campaign2AllOfRoleCompositionCampaignInfo */ 'query'?: string | null; /** * Describes this role composition campaign. Intended for storing the query used, and possibly the number of roles selected/available. * @type {string} * @memberof Campaign2AllOfRoleCompositionCampaignInfo */ 'description'?: string | null; } /** * This determines who remediation tasks will be assigned to. Remediation tasks are created for each revoke decision on items in the campaign. The only legal remediator type is \'IDENTITY\', and the chosen identity must be a Role Admin or Org Admin. * @export * @interface Campaign2AllOfRoleCompositionCampaignInfoRemediatorRef */ export interface Campaign2AllOfRoleCompositionCampaignInfoRemediatorRef { /** * Legal Remediator Type * @type {string} * @memberof Campaign2AllOfRoleCompositionCampaignInfoRemediatorRef */ 'type': Campaign2AllOfRoleCompositionCampaignInfoRemediatorRefTypeEnum; /** * The ID of the remediator. * @type {string} * @memberof Campaign2AllOfRoleCompositionCampaignInfoRemediatorRef */ 'id': string; /** * The name of the remediator. * @type {string} * @memberof Campaign2AllOfRoleCompositionCampaignInfoRemediatorRef */ 'name'?: string; } export const Campaign2AllOfRoleCompositionCampaignInfoRemediatorRefTypeEnum = { Identity: 'IDENTITY' } as const; export type Campaign2AllOfRoleCompositionCampaignInfoRemediatorRefTypeEnum = typeof Campaign2AllOfRoleCompositionCampaignInfoRemediatorRefTypeEnum[keyof typeof Campaign2AllOfRoleCompositionCampaignInfoRemediatorRefTypeEnum]; /** * If specified, this identity or governance group will be the reviewer for all certifications in this campaign. The allowed DTO types are IDENTITY and GOVERNANCE_GROUP. * @export * @interface Campaign2AllOfRoleCompositionCampaignInfoReviewer */ export interface Campaign2AllOfRoleCompositionCampaignInfoReviewer { /** * The reviewer\'s DTO type. * @type {string} * @memberof Campaign2AllOfRoleCompositionCampaignInfoReviewer */ 'type'?: Campaign2AllOfRoleCompositionCampaignInfoReviewerTypeEnum; /** * The reviewer\'s ID. * @type {string} * @memberof Campaign2AllOfRoleCompositionCampaignInfoReviewer */ 'id'?: string; /** * The reviewer\'s name. * @type {string} * @memberof Campaign2AllOfRoleCompositionCampaignInfoReviewer */ 'name'?: string; } export const Campaign2AllOfRoleCompositionCampaignInfoReviewerTypeEnum = { GovernanceGroup: 'GOVERNANCE_GROUP', Identity: 'IDENTITY' } as const; export type Campaign2AllOfRoleCompositionCampaignInfoReviewerTypeEnum = typeof Campaign2AllOfRoleCompositionCampaignInfoReviewerTypeEnum[keyof typeof Campaign2AllOfRoleCompositionCampaignInfoReviewerTypeEnum]; /** * Must be set only if the campaign type is SEARCH. * @export * @interface Campaign2AllOfSearchCampaignInfo */ export interface Campaign2AllOfSearchCampaignInfo { /** * The type of search campaign represented. * @type {string} * @memberof Campaign2AllOfSearchCampaignInfo */ 'type': Campaign2AllOfSearchCampaignInfoTypeEnum; /** * Describes this search campaign. Intended for storing the query used, and possibly the number of identities selected/available. * @type {string} * @memberof Campaign2AllOfSearchCampaignInfo */ 'description'?: string; /** * * @type {Campaign2AllOfSearchCampaignInfoReviewer} * @memberof Campaign2AllOfSearchCampaignInfo */ 'reviewer'?: Campaign2AllOfSearchCampaignInfoReviewer | null; /** * The scope for the campaign. The campaign will cover identities returned by the query and identities that have access items returned by the query. One of `query` or `identityIds` must be set. * @type {string} * @memberof Campaign2AllOfSearchCampaignInfo */ 'query'?: string | null; /** * A direct list of identities to include in this campaign. One of `identityIds` or `query` must be set. * @type {Array} * @memberof Campaign2AllOfSearchCampaignInfo */ 'identityIds'?: Array | null; /** * Further reduces the scope of the campaign by excluding identities (from `query` or `identityIds`) that do not have this access. * @type {Array} * @memberof Campaign2AllOfSearchCampaignInfo */ 'accessConstraints'?: Array; } export const Campaign2AllOfSearchCampaignInfoTypeEnum = { Identity: 'IDENTITY', Access: 'ACCESS' } as const; export type Campaign2AllOfSearchCampaignInfoTypeEnum = typeof Campaign2AllOfSearchCampaignInfoTypeEnum[keyof typeof Campaign2AllOfSearchCampaignInfoTypeEnum]; /** * If specified, this identity or governance group will be the reviewer for all certifications in this campaign. The allowed DTO types are IDENTITY and GOVERNANCE_GROUP. * @export * @interface Campaign2AllOfSearchCampaignInfoReviewer */ export interface Campaign2AllOfSearchCampaignInfoReviewer { /** * The reviewer\'s DTO type. * @type {string} * @memberof Campaign2AllOfSearchCampaignInfoReviewer */ 'type'?: Campaign2AllOfSearchCampaignInfoReviewerTypeEnum; /** * The reviewer\'s ID. * @type {string} * @memberof Campaign2AllOfSearchCampaignInfoReviewer */ 'id'?: string; /** * The reviewer\'s name. * @type {string} * @memberof Campaign2AllOfSearchCampaignInfoReviewer */ 'name'?: string | null; } export const Campaign2AllOfSearchCampaignInfoReviewerTypeEnum = { GovernanceGroup: 'GOVERNANCE_GROUP', Identity: 'IDENTITY' } as const; export type Campaign2AllOfSearchCampaignInfoReviewerTypeEnum = typeof Campaign2AllOfSearchCampaignInfoReviewerTypeEnum[keyof typeof Campaign2AllOfSearchCampaignInfoReviewerTypeEnum]; /** * Must be set only if the campaign type is SOURCE_OWNER. * @export * @interface Campaign2AllOfSourceOwnerCampaignInfo */ export interface Campaign2AllOfSourceOwnerCampaignInfo { /** * The list of sources to be included in the campaign. * @type {Array} * @memberof Campaign2AllOfSourceOwnerCampaignInfo */ 'sourceIds'?: Array; } /** * * @export * @interface Campaign2AllOfSourcesWithOrphanEntitlements */ export interface Campaign2AllOfSourcesWithOrphanEntitlements { /** * Id of the source * @type {string} * @memberof Campaign2AllOfSourcesWithOrphanEntitlements */ 'id'?: string; /** * Type * @type {string} * @memberof Campaign2AllOfSourcesWithOrphanEntitlements */ 'type'?: Campaign2AllOfSourcesWithOrphanEntitlementsTypeEnum; /** * Name of the source * @type {string} * @memberof Campaign2AllOfSourcesWithOrphanEntitlements */ 'name'?: string; } export const Campaign2AllOfSourcesWithOrphanEntitlementsTypeEnum = { Source: 'SOURCE' } as const; export type Campaign2AllOfSourcesWithOrphanEntitlementsTypeEnum = typeof Campaign2AllOfSourcesWithOrphanEntitlementsTypeEnum[keyof typeof Campaign2AllOfSourcesWithOrphanEntitlementsTypeEnum]; /** * * @export * @interface CampaignAlert */ export interface CampaignAlert { /** * Denotes the level of the message * @type {string} * @memberof CampaignAlert */ 'level'?: CampaignAlertLevelEnum; /** * * @type {Array} * @memberof CampaignAlert */ 'localizations'?: Array; } export const CampaignAlertLevelEnum = { Error: 'ERROR', Warn: 'WARN', Info: 'INFO' } as const; export type CampaignAlertLevelEnum = typeof CampaignAlertLevelEnum[keyof typeof CampaignAlertLevelEnum]; /** * * @export * @interface CampaignCompleteOptions */ export interface CampaignCompleteOptions { /** * Determines whether to auto-approve(APPROVE) or auto-revoke(REVOKE) upon campaign completion. * @type {string} * @memberof CampaignCompleteOptions */ 'autoCompleteAction'?: CampaignCompleteOptionsAutoCompleteActionEnum; } export const CampaignCompleteOptionsAutoCompleteActionEnum = { Approve: 'APPROVE', Revoke: 'REVOKE' } as const; export type CampaignCompleteOptionsAutoCompleteActionEnum = typeof CampaignCompleteOptionsAutoCompleteActionEnum[keyof typeof CampaignCompleteOptionsAutoCompleteActionEnum]; /** * * @export * @interface CampaignReference */ export interface CampaignReference { /** * The unique ID of the campaign. * @type {string} * @memberof CampaignReference */ 'id': string; /** * The name of the campaign. * @type {string} * @memberof CampaignReference */ 'name': string; /** * The type of object that is being referenced. * @type {string} * @memberof CampaignReference */ 'type': CampaignReferenceTypeEnum; /** * The type of the campaign. * @type {string} * @memberof CampaignReference */ 'campaignType': CampaignReferenceCampaignTypeEnum; /** * The description of the campaign set by the admin who created it. * @type {string} * @memberof CampaignReference */ 'description': string | null; /** * The correlatedStatus of the campaign. Only SOURCE_OWNER campaigns can be Uncorrelated. An Uncorrelated certification campaign only includes Uncorrelated identities (An identity is uncorrelated if it has no accounts on an authoritative source). * @type {string} * @memberof CampaignReference */ 'correlatedStatus': CampaignReferenceCorrelatedStatusEnum; /** * Determines whether comments are required for decisions during certification reviews. You can require comments for all decisions, revoke-only decisions, or no decisions. By default, comments are not required for decisions. * @type {string} * @memberof CampaignReference */ 'mandatoryCommentRequirement': CampaignReferenceMandatoryCommentRequirementEnum; } export const CampaignReferenceTypeEnum = { Campaign: 'CAMPAIGN' } as const; export type CampaignReferenceTypeEnum = typeof CampaignReferenceTypeEnum[keyof typeof CampaignReferenceTypeEnum]; export const CampaignReferenceCampaignTypeEnum = { Manager: 'MANAGER', SourceOwner: 'SOURCE_OWNER', Search: 'SEARCH', RoleComposition: 'ROLE_COMPOSITION', MachineAccount: 'MACHINE_ACCOUNT' } as const; export type CampaignReferenceCampaignTypeEnum = typeof CampaignReferenceCampaignTypeEnum[keyof typeof CampaignReferenceCampaignTypeEnum]; export const CampaignReferenceCorrelatedStatusEnum = { Correlated: 'CORRELATED', Uncorrelated: 'UNCORRELATED' } as const; export type CampaignReferenceCorrelatedStatusEnum = typeof CampaignReferenceCorrelatedStatusEnum[keyof typeof CampaignReferenceCorrelatedStatusEnum]; export const CampaignReferenceMandatoryCommentRequirementEnum = { AllDecisions: 'ALL_DECISIONS', RevokeOnlyDecisions: 'REVOKE_ONLY_DECISIONS', NoDecisions: 'NO_DECISIONS' } as const; export type CampaignReferenceMandatoryCommentRequirementEnum = typeof CampaignReferenceMandatoryCommentRequirementEnum[keyof typeof CampaignReferenceMandatoryCommentRequirementEnum]; /** * * @export * @interface CampaignReport */ export interface CampaignReport { /** * SOD policy violation report result DTO type. * @type {string} * @memberof CampaignReport */ 'type'?: CampaignReportTypeEnum; /** * SOD policy violation report result ID. * @type {string} * @memberof CampaignReport */ 'id'?: string; /** * Human-readable name of the SOD policy violation report result. * @type {string} * @memberof CampaignReport */ 'name'?: string; /** * Status of a SOD policy violation report. * @type {string} * @memberof CampaignReport */ 'status'?: CampaignReportStatusEnum; /** * * @type {ReportType} * @memberof CampaignReport */ 'reportType': ReportType; /** * The most recent date and time this report was run * @type {string} * @memberof CampaignReport */ 'lastRunAt'?: string; } export const CampaignReportTypeEnum = { ReportResult: 'REPORT_RESULT' } as const; export type CampaignReportTypeEnum = typeof CampaignReportTypeEnum[keyof typeof CampaignReportTypeEnum]; export const CampaignReportStatusEnum = { Success: 'SUCCESS', Warning: 'WARNING', Error: 'ERROR', Terminated: 'TERMINATED', TempError: 'TEMP_ERROR', Pending: 'PENDING' } as const; export type CampaignReportStatusEnum = typeof CampaignReportStatusEnum[keyof typeof CampaignReportStatusEnum]; /** * * @export * @interface CampaignReportsConfig */ export interface CampaignReportsConfig { /** * list of identity attribute columns * @type {Array} * @memberof CampaignReportsConfig */ 'identityAttributeColumns'?: Array | null; } /** * Campaign Template * @export * @interface CampaignTemplate */ export interface CampaignTemplate { /** * Id of the campaign template * @type {string} * @memberof CampaignTemplate */ 'id'?: string; /** * This template\'s name. Has no bearing on generated campaigns\' names. * @type {string} * @memberof CampaignTemplate */ 'name': string; /** * This template\'s description. Has no bearing on generated campaigns\' descriptions. * @type {string} * @memberof CampaignTemplate */ 'description': string; /** * Creation date of Campaign Template * @type {string} * @memberof CampaignTemplate */ 'created': string; /** * Modification date of Campaign Template * @type {string} * @memberof CampaignTemplate */ 'modified': string | null; /** * Indicates if this campaign template has been scheduled. * @type {boolean} * @memberof CampaignTemplate */ 'scheduled'?: boolean; /** * * @type {CampaignTemplateOwnerRef} * @memberof CampaignTemplate */ 'ownerRef'?: CampaignTemplateOwnerRef; /** * The time period during which the campaign should be completed, formatted as an ISO-8601 Duration. When this template generates a campaign, the campaign\'s deadline will be the current date plus this duration. For example, if generation occurred on 2020-01-01 and this field was \"P2W\" (two weeks), the resulting campaign\'s deadline would be 2020-01-15 (the current date plus 14 days). * @type {string} * @memberof CampaignTemplate */ 'deadlineDuration'?: string | null; /** * * @type {Campaign2} * @memberof CampaignTemplate */ 'campaign': Campaign2; } /** * The owner of this template, and the owner of campaigns generated from this template via a schedule. This field is automatically populated at creation time with the current user. * @export * @interface CampaignTemplateOwnerRef */ export interface CampaignTemplateOwnerRef { /** * Id of the owner * @type {string} * @memberof CampaignTemplateOwnerRef */ 'id'?: string; /** * Type of the owner * @type {string} * @memberof CampaignTemplateOwnerRef */ 'type'?: CampaignTemplateOwnerRefTypeEnum; /** * Name of the owner * @type {string} * @memberof CampaignTemplateOwnerRef */ 'name'?: string; /** * Email of the owner * @type {string} * @memberof CampaignTemplateOwnerRef */ 'email'?: string; } export const CampaignTemplateOwnerRefTypeEnum = { Identity: 'IDENTITY' } as const; export type CampaignTemplateOwnerRefTypeEnum = typeof CampaignTemplateOwnerRefTypeEnum[keyof typeof CampaignTemplateOwnerRefTypeEnum]; /** * * @export * @interface CampaignsDeleteRequest */ export interface CampaignsDeleteRequest { /** * The ids of the campaigns to delete * @type {Array} * @memberof CampaignsDeleteRequest */ 'ids'?: Array; } /** * * @export * @interface CertificationTask */ export interface CertificationTask { /** * The ID of the certification task. * @type {string} * @memberof CertificationTask */ 'id'?: string; /** * The type of the certification task. More values may be added in the future. * @type {string} * @memberof CertificationTask */ 'type'?: CertificationTaskTypeEnum; /** * The type of item that is being operated on by this task whose ID is stored in the targetId field. * @type {string} * @memberof CertificationTask */ 'targetType'?: CertificationTaskTargetTypeEnum; /** * The ID of the item being operated on by this task. * @type {string} * @memberof CertificationTask */ 'targetId'?: string; /** * The status of the task. * @type {string} * @memberof CertificationTask */ 'status'?: CertificationTaskStatusEnum; /** * List of error messages * @type {Array} * @memberof CertificationTask */ 'errors'?: Array; /** * Reassignment trails that lead to self certification identity * @type {Array} * @memberof CertificationTask */ 'reassignmentTrailDTOs'?: Array; /** * The date and time on which this task was created. * @type {string} * @memberof CertificationTask */ 'created'?: string; } export const CertificationTaskTypeEnum = { Reassign: 'REASSIGN', AdminReassign: 'ADMIN_REASSIGN', CompleteCertification: 'COMPLETE_CERTIFICATION', FinishCertification: 'FINISH_CERTIFICATION', CompleteCampaign: 'COMPLETE_CAMPAIGN', ActivateCampaign: 'ACTIVATE_CAMPAIGN', CampaignCreate: 'CAMPAIGN_CREATE', CampaignDelete: 'CAMPAIGN_DELETE' } as const; export type CertificationTaskTypeEnum = typeof CertificationTaskTypeEnum[keyof typeof CertificationTaskTypeEnum]; export const CertificationTaskTargetTypeEnum = { Certification: 'CERTIFICATION', Campaign: 'CAMPAIGN' } as const; export type CertificationTaskTargetTypeEnum = typeof CertificationTaskTargetTypeEnum[keyof typeof CertificationTaskTargetTypeEnum]; export const CertificationTaskStatusEnum = { Queued: 'QUEUED', InProgress: 'IN_PROGRESS', Success: 'SUCCESS', Error: 'ERROR' } as const; export type CertificationTaskStatusEnum = typeof CertificationTaskStatusEnum[keyof typeof CertificationTaskStatusEnum]; /** * * @export * @interface ErrorMessageDto */ export interface ErrorMessageDto { /** * The locale for the message text, a BCP 47 language tag. * @type {string} * @memberof ErrorMessageDto */ 'locale'?: string | null; /** * * @type {LocaleOrigin} * @memberof ErrorMessageDto */ 'localeOrigin'?: LocaleOrigin | null; /** * Actual text of the error message in the indicated locale. * @type {string} * @memberof ErrorMessageDto */ 'text'?: string; } /** * * @export * @interface ErrorResponseDto */ export interface ErrorResponseDto { /** * Fine-grained error code providing more detail of the error. * @type {string} * @memberof ErrorResponseDto */ 'detailCode'?: string; /** * Unique tracking id for the error. * @type {string} * @memberof ErrorResponseDto */ 'trackingId'?: string; /** * Generic localized reason for error * @type {Array} * @memberof ErrorResponseDto */ 'messages'?: Array; /** * Plain-text descriptive reasons to provide additional detail to the text provided in the messages field * @type {Array} * @memberof ErrorResponseDto */ 'causes'?: Array; } /** * * @export * @interface GetActiveCampaignsV1200ResponseInner */ export interface GetActiveCampaignsV1200ResponseInner { /** * Id of the campaign * @type {string} * @memberof GetActiveCampaignsV1200ResponseInner */ 'id'?: string | null; /** * The campaign name. If this object is part of a template, special formatting applies; see the `/campaign-templates/{id}/generate` endpoint documentation for details. * @type {string} * @memberof GetActiveCampaignsV1200ResponseInner */ 'name': string; /** * The campaign description. If this object is part of a template, special formatting applies; see the `/campaign-templates/{id}/generate` endpoint documentation for details. * @type {string} * @memberof GetActiveCampaignsV1200ResponseInner */ 'description': string | null; /** * The campaign\'s completion deadline. This date must be in the future in order to activate the campaign. If you try to activate a campaign with a deadline of today or in the past, you will receive a 400 error response. * @type {string} * @memberof GetActiveCampaignsV1200ResponseInner */ 'deadline'?: string | null; /** * The type of campaign. Could be extended in the future. * @type {string} * @memberof GetActiveCampaignsV1200ResponseInner */ 'type': GetActiveCampaignsV1200ResponseInnerTypeEnum; /** * Enables email notification for this campaign * @type {boolean} * @memberof GetActiveCampaignsV1200ResponseInner */ 'emailNotificationEnabled'?: boolean; /** * Allows auto revoke for this campaign * @type {boolean} * @memberof GetActiveCampaignsV1200ResponseInner */ 'autoRevokeAllowed'?: boolean; /** * Enables IAI for this campaign. Accepts true even if the IAI product feature is off. If IAI is turned off then campaigns generated from this template will indicate false. The real value will then be returned if IAI is ever enabled for the org in the future. * @type {boolean} * @memberof GetActiveCampaignsV1200ResponseInner */ 'recommendationsEnabled'?: boolean; /** * The campaign\'s current status. * @type {string} * @memberof GetActiveCampaignsV1200ResponseInner */ 'status'?: GetActiveCampaignsV1200ResponseInnerStatusEnum | null; /** * The correlatedStatus of the campaign. Only SOURCE_OWNER campaigns can be Uncorrelated. An Uncorrelated certification campaign only includes Uncorrelated identities (An identity is uncorrelated if it has no accounts on an authoritative source). * @type {string} * @memberof GetActiveCampaignsV1200ResponseInner */ 'correlatedStatus'?: GetActiveCampaignsV1200ResponseInnerCorrelatedStatusEnum; /** * Created time of the campaign * @type {string} * @memberof GetActiveCampaignsV1200ResponseInner */ 'created'?: string | null; /** * The total number of certifications in this campaign. * @type {number} * @memberof GetActiveCampaignsV1200ResponseInner */ 'totalCertifications'?: number | null; /** * The number of completed certifications in this campaign. * @type {number} * @memberof GetActiveCampaignsV1200ResponseInner */ 'completedCertifications'?: number | null; /** * A list of errors and warnings that have accumulated. * @type {Array} * @memberof GetActiveCampaignsV1200ResponseInner */ 'alerts'?: Array | null; /** * Modified time of the campaign * @type {string} * @memberof GetActiveCampaignsV1200ResponseInner */ 'modified'?: string | null; /** * * @type {Campaign2AllOfFilter} * @memberof GetActiveCampaignsV1200ResponseInner */ 'filter'?: Campaign2AllOfFilter | null; /** * Determines if comments on sunset date changes are required. * @type {boolean} * @memberof GetActiveCampaignsV1200ResponseInner */ 'sunsetCommentsRequired'?: boolean; /** * * @type {Campaign2AllOfSourceOwnerCampaignInfo} * @memberof GetActiveCampaignsV1200ResponseInner */ 'sourceOwnerCampaignInfo'?: Campaign2AllOfSourceOwnerCampaignInfo | null; /** * * @type {Campaign2AllOfSearchCampaignInfo} * @memberof GetActiveCampaignsV1200ResponseInner */ 'searchCampaignInfo'?: Campaign2AllOfSearchCampaignInfo | null; /** * * @type {Campaign2AllOfRoleCompositionCampaignInfo} * @memberof GetActiveCampaignsV1200ResponseInner */ 'roleCompositionCampaignInfo'?: Campaign2AllOfRoleCompositionCampaignInfo | null; /** * * @type {Campaign2AllOfMachineAccountCampaignInfo} * @memberof GetActiveCampaignsV1200ResponseInner */ 'machineAccountCampaignInfo'?: Campaign2AllOfMachineAccountCampaignInfo | null; /** * A list of sources in the campaign that contain \\\"orphan entitlements\\\" (entitlements without a corresponding Managed Attribute). An empty list indicates the campaign has no orphan entitlements. Null indicates there may be unknown orphan entitlements in the campaign (the campaign was created before this feature was implemented). * @type {Array} * @memberof GetActiveCampaignsV1200ResponseInner */ 'sourcesWithOrphanEntitlements'?: Array | null; /** * Determines whether comments are required for decisions during certification reviews. You can require comments for all decisions, revoke-only decisions, or no decisions. By default, comments are not required for decisions. * @type {string} * @memberof GetActiveCampaignsV1200ResponseInner */ 'mandatoryCommentRequirement'?: GetActiveCampaignsV1200ResponseInnerMandatoryCommentRequirementEnum; } export const GetActiveCampaignsV1200ResponseInnerTypeEnum = { Manager: 'MANAGER', SourceOwner: 'SOURCE_OWNER', Search: 'SEARCH', RoleComposition: 'ROLE_COMPOSITION', MachineAccount: 'MACHINE_ACCOUNT' } as const; export type GetActiveCampaignsV1200ResponseInnerTypeEnum = typeof GetActiveCampaignsV1200ResponseInnerTypeEnum[keyof typeof GetActiveCampaignsV1200ResponseInnerTypeEnum]; export const GetActiveCampaignsV1200ResponseInnerStatusEnum = { Pending: 'PENDING', Staged: 'STAGED', Canceling: 'CANCELING', Activating: 'ACTIVATING', Active: 'ACTIVE', Completing: 'COMPLETING', Completed: 'COMPLETED', Error: 'ERROR', Archived: 'ARCHIVED' } as const; export type GetActiveCampaignsV1200ResponseInnerStatusEnum = typeof GetActiveCampaignsV1200ResponseInnerStatusEnum[keyof typeof GetActiveCampaignsV1200ResponseInnerStatusEnum]; export const GetActiveCampaignsV1200ResponseInnerCorrelatedStatusEnum = { Correlated: 'CORRELATED', Uncorrelated: 'UNCORRELATED' } as const; export type GetActiveCampaignsV1200ResponseInnerCorrelatedStatusEnum = typeof GetActiveCampaignsV1200ResponseInnerCorrelatedStatusEnum[keyof typeof GetActiveCampaignsV1200ResponseInnerCorrelatedStatusEnum]; export const GetActiveCampaignsV1200ResponseInnerMandatoryCommentRequirementEnum = { AllDecisions: 'ALL_DECISIONS', RevokeOnlyDecisions: 'REVOKE_ONLY_DECISIONS', NoDecisions: 'NO_DECISIONS' } as const; export type GetActiveCampaignsV1200ResponseInnerMandatoryCommentRequirementEnum = typeof GetActiveCampaignsV1200ResponseInnerMandatoryCommentRequirementEnum[keyof typeof GetActiveCampaignsV1200ResponseInnerMandatoryCommentRequirementEnum]; /** * * @export * @interface GetActiveCampaignsV1401Response */ export interface GetActiveCampaignsV1401Response { /** * A message describing the error * @type {any} * @memberof GetActiveCampaignsV1401Response */ 'error'?: any; } /** * * @export * @interface GetActiveCampaignsV1429Response */ export interface GetActiveCampaignsV1429Response { /** * A message describing the error * @type {any} * @memberof GetActiveCampaignsV1429Response */ 'message'?: any; } /** * * @export * @interface GetCampaignV1200Response */ export interface GetCampaignV1200Response { /** * Id of the campaign * @type {string} * @memberof GetCampaignV1200Response */ 'id'?: string | null; /** * The campaign name. If this object is part of a template, special formatting applies; see the `/campaign-templates/{id}/generate` endpoint documentation for details. * @type {string} * @memberof GetCampaignV1200Response */ 'name': string; /** * The campaign description. If this object is part of a template, special formatting applies; see the `/campaign-templates/{id}/generate` endpoint documentation for details. * @type {string} * @memberof GetCampaignV1200Response */ 'description': string | null; /** * The campaign\'s completion deadline. This date must be in the future in order to activate the campaign. If you try to activate a campaign with a deadline of today or in the past, you will receive a 400 error response. * @type {string} * @memberof GetCampaignV1200Response */ 'deadline'?: string | null; /** * The type of campaign. Could be extended in the future. * @type {string} * @memberof GetCampaignV1200Response */ 'type': GetCampaignV1200ResponseTypeEnum; /** * Enables email notification for this campaign * @type {boolean} * @memberof GetCampaignV1200Response */ 'emailNotificationEnabled'?: boolean; /** * Allows auto revoke for this campaign * @type {boolean} * @memberof GetCampaignV1200Response */ 'autoRevokeAllowed'?: boolean; /** * Enables IAI for this campaign. Accepts true even if the IAI product feature is off. If IAI is turned off then campaigns generated from this template will indicate false. The real value will then be returned if IAI is ever enabled for the org in the future. * @type {boolean} * @memberof GetCampaignV1200Response */ 'recommendationsEnabled'?: boolean; /** * The campaign\'s current status. * @type {string} * @memberof GetCampaignV1200Response */ 'status'?: GetCampaignV1200ResponseStatusEnum | null; /** * The correlatedStatus of the campaign. Only SOURCE_OWNER campaigns can be Uncorrelated. An Uncorrelated certification campaign only includes Uncorrelated identities (An identity is uncorrelated if it has no accounts on an authoritative source). * @type {string} * @memberof GetCampaignV1200Response */ 'correlatedStatus'?: GetCampaignV1200ResponseCorrelatedStatusEnum; /** * Created time of the campaign * @type {string} * @memberof GetCampaignV1200Response */ 'created'?: string | null; /** * The total number of certifications in this campaign. * @type {number} * @memberof GetCampaignV1200Response */ 'totalCertifications'?: number | null; /** * The number of completed certifications in this campaign. * @type {number} * @memberof GetCampaignV1200Response */ 'completedCertifications'?: number | null; /** * A list of errors and warnings that have accumulated. * @type {Array} * @memberof GetCampaignV1200Response */ 'alerts'?: Array | null; /** * Modified time of the campaign * @type {string} * @memberof GetCampaignV1200Response */ 'modified'?: string | null; /** * * @type {Campaign2AllOfFilter} * @memberof GetCampaignV1200Response */ 'filter'?: Campaign2AllOfFilter | null; /** * Determines if comments on sunset date changes are required. * @type {boolean} * @memberof GetCampaignV1200Response */ 'sunsetCommentsRequired'?: boolean; /** * * @type {Campaign2AllOfSourceOwnerCampaignInfo} * @memberof GetCampaignV1200Response */ 'sourceOwnerCampaignInfo'?: Campaign2AllOfSourceOwnerCampaignInfo | null; /** * * @type {Campaign2AllOfSearchCampaignInfo} * @memberof GetCampaignV1200Response */ 'searchCampaignInfo'?: Campaign2AllOfSearchCampaignInfo | null; /** * * @type {Campaign2AllOfRoleCompositionCampaignInfo} * @memberof GetCampaignV1200Response */ 'roleCompositionCampaignInfo'?: Campaign2AllOfRoleCompositionCampaignInfo | null; /** * * @type {Campaign2AllOfMachineAccountCampaignInfo} * @memberof GetCampaignV1200Response */ 'machineAccountCampaignInfo'?: Campaign2AllOfMachineAccountCampaignInfo | null; /** * A list of sources in the campaign that contain \\\"orphan entitlements\\\" (entitlements without a corresponding Managed Attribute). An empty list indicates the campaign has no orphan entitlements. Null indicates there may be unknown orphan entitlements in the campaign (the campaign was created before this feature was implemented). * @type {Array} * @memberof GetCampaignV1200Response */ 'sourcesWithOrphanEntitlements'?: Array | null; /** * Determines whether comments are required for decisions during certification reviews. You can require comments for all decisions, revoke-only decisions, or no decisions. By default, comments are not required for decisions. * @type {string} * @memberof GetCampaignV1200Response */ 'mandatoryCommentRequirement'?: GetCampaignV1200ResponseMandatoryCommentRequirementEnum; } export const GetCampaignV1200ResponseTypeEnum = { Manager: 'MANAGER', SourceOwner: 'SOURCE_OWNER', Search: 'SEARCH', RoleComposition: 'ROLE_COMPOSITION', MachineAccount: 'MACHINE_ACCOUNT' } as const; export type GetCampaignV1200ResponseTypeEnum = typeof GetCampaignV1200ResponseTypeEnum[keyof typeof GetCampaignV1200ResponseTypeEnum]; export const GetCampaignV1200ResponseStatusEnum = { Pending: 'PENDING', Staged: 'STAGED', Canceling: 'CANCELING', Activating: 'ACTIVATING', Active: 'ACTIVE', Completing: 'COMPLETING', Completed: 'COMPLETED', Error: 'ERROR', Archived: 'ARCHIVED' } as const; export type GetCampaignV1200ResponseStatusEnum = typeof GetCampaignV1200ResponseStatusEnum[keyof typeof GetCampaignV1200ResponseStatusEnum]; export const GetCampaignV1200ResponseCorrelatedStatusEnum = { Correlated: 'CORRELATED', Uncorrelated: 'UNCORRELATED' } as const; export type GetCampaignV1200ResponseCorrelatedStatusEnum = typeof GetCampaignV1200ResponseCorrelatedStatusEnum[keyof typeof GetCampaignV1200ResponseCorrelatedStatusEnum]; export const GetCampaignV1200ResponseMandatoryCommentRequirementEnum = { AllDecisions: 'ALL_DECISIONS', RevokeOnlyDecisions: 'REVOKE_ONLY_DECISIONS', NoDecisions: 'NO_DECISIONS' } as const; export type GetCampaignV1200ResponseMandatoryCommentRequirementEnum = typeof GetCampaignV1200ResponseMandatoryCommentRequirementEnum[keyof typeof GetCampaignV1200ResponseMandatoryCommentRequirementEnum]; /** * 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; /** * 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 ReassignmentTrailDTO */ export interface ReassignmentTrailDTO { /** * The ID of previous owner identity. * @type {string} * @memberof ReassignmentTrailDTO */ 'previousOwner'?: string; /** * The ID of new owner identity. * @type {string} * @memberof ReassignmentTrailDTO */ 'newOwner'?: string; /** * The type of reassignment. * @type {string} * @memberof ReassignmentTrailDTO */ 'reassignmentType'?: string; } /** * * @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]; /** * type of a Report * @export * @enum {string} */ export const ReportType = { CampaignCompositionReport: 'CAMPAIGN_COMPOSITION_REPORT', CampaignRemediationStatusReport: 'CAMPAIGN_REMEDIATION_STATUS_REPORT', CampaignStatusReport: 'CAMPAIGN_STATUS_REPORT', CertificationSignoffReport: 'CERTIFICATION_SIGNOFF_REPORT' } as const; export type ReportType = typeof ReportType[keyof typeof ReportType]; /** * * @export * @interface Schedule2 */ export interface Schedule2 { /** * Determines the overall schedule cadence. In general, all time period fields smaller than the chosen type can be configured. For example, a DAILY schedule can have \'hours\' set, but not \'days\'; a WEEKLY schedule can have both \'hours\' and \'days\' set. * @type {string} * @memberof Schedule2 */ 'type': Schedule2TypeEnum; /** * * @type {Schedule2Months} * @memberof Schedule2 */ 'months'?: Schedule2Months | null; /** * * @type {Schedule2Days} * @memberof Schedule2 */ 'days'?: Schedule2Days; /** * * @type {Schedule2Hours} * @memberof Schedule2 */ 'hours': Schedule2Hours; /** * Specifies the time after which this schedule will no longer occur. * @type {string} * @memberof Schedule2 */ 'expiration'?: string | null; /** * The time zone to use when running the schedule. For instance, if the schedule is scheduled to run at 1AM, and this field is set to \"CST\", the schedule will run at 1AM CST. * @type {string} * @memberof Schedule2 */ 'timeZoneId'?: string; } export const Schedule2TypeEnum = { Weekly: 'WEEKLY', Monthly: 'MONTHLY', Annually: 'ANNUALLY', Calendar: 'CALENDAR' } as const; export type Schedule2TypeEnum = typeof Schedule2TypeEnum[keyof typeof Schedule2TypeEnum]; /** * Specifies which day(s) a schedule is active for. This is required for all schedule types. The \"values\" field holds different data depending on the type of schedule: * WEEKLY: days of the week (1-7) * MONTHLY: days of the month (1-31, L, L-1...) * ANNUALLY: if the \"months\" field is also set: days of the month (1-31, L, L-1...); otherwise: ISO-8601 dates without year (\"--12-31\") * CALENDAR: ISO-8601 dates (\"2020-12-31\") Note that CALENDAR only supports the LIST type, and ANNUALLY does not support the RANGE type when provided with ISO-8601 dates without year. Examples: On Sundays: * type LIST * values \"1\" The second to last day of the month: * type LIST * values \"L-1\" From the 20th to the last day of the month: * type RANGE * values \"20\", \"L\" Every March 2nd: * type LIST * values \"--03-02\" On March 2nd, 2021: * type: LIST * values \"2021-03-02\" * @export * @interface Schedule2Days */ export interface Schedule2Days { /** * Enum type to specify days value * @type {string} * @memberof Schedule2Days */ 'type': Schedule2DaysTypeEnum; /** * Values of the days based on the enum type mentioned above * @type {Array} * @memberof Schedule2Days */ 'values': Array; /** * Interval between the cert generations * @type {number} * @memberof Schedule2Days */ 'interval'?: number | null; } export const Schedule2DaysTypeEnum = { List: 'LIST', Range: 'RANGE' } as const; export type Schedule2DaysTypeEnum = typeof Schedule2DaysTypeEnum[keyof typeof Schedule2DaysTypeEnum]; /** * Specifies which hour(s) a schedule is active for. Examples: Every three hours starting from 8AM, inclusive: * type LIST * values \"8\" * interval 3 During business hours: * type RANGE * values \"9\", \"5\" At 5AM, noon, and 5PM: * type LIST * values \"5\", \"12\", \"17\" * @export * @interface Schedule2Hours */ export interface Schedule2Hours { /** * Enum type to specify hours value * @type {string} * @memberof Schedule2Hours */ 'type': Schedule2HoursTypeEnum; /** * Values of the days based on the enum type mentioned above * @type {Array} * @memberof Schedule2Hours */ 'values': Array; /** * Interval between the cert generations * @type {number} * @memberof Schedule2Hours */ 'interval'?: number | null; } export const Schedule2HoursTypeEnum = { List: 'LIST', Range: 'RANGE' } as const; export type Schedule2HoursTypeEnum = typeof Schedule2HoursTypeEnum[keyof typeof Schedule2HoursTypeEnum]; /** * Specifies which months of a schedule are active. Only valid for ANNUALLY schedule types. Examples: On February and March: * type LIST * values \"2\", \"3\" Every 3 months, starting in January (quarterly): * type LIST * values \"1\" * interval 3 Every two months between July and December: * type RANGE * values \"7\", \"12\" * interval 2 * @export * @interface Schedule2Months */ export interface Schedule2Months { /** * Enum type to specify months value * @type {string} * @memberof Schedule2Months */ 'type': Schedule2MonthsTypeEnum; /** * Values of the months based on the enum type mentioned above * @type {Array} * @memberof Schedule2Months */ 'values': Array; /** * Interval between the cert generations * @type {number} * @memberof Schedule2Months */ 'interval'?: number; } export const Schedule2MonthsTypeEnum = { List: 'LIST', Range: 'RANGE' } as const; export type Schedule2MonthsTypeEnum = typeof Schedule2MonthsTypeEnum[keyof typeof Schedule2MonthsTypeEnum]; /** * * @export * @interface SlimCampaign */ export interface SlimCampaign { /** * Id of the campaign * @type {string} * @memberof SlimCampaign */ 'id'?: string | null; /** * The campaign name. If this object is part of a template, special formatting applies; see the `/campaign-templates/{id}/generate` endpoint documentation for details. * @type {string} * @memberof SlimCampaign */ 'name': string; /** * The campaign description. If this object is part of a template, special formatting applies; see the `/campaign-templates/{id}/generate` endpoint documentation for details. * @type {string} * @memberof SlimCampaign */ 'description': string | null; /** * The campaign\'s completion deadline. This date must be in the future in order to activate the campaign. If you try to activate a campaign with a deadline of today or in the past, you will receive a 400 error response. * @type {string} * @memberof SlimCampaign */ 'deadline'?: string | null; /** * The type of campaign. Could be extended in the future. * @type {string} * @memberof SlimCampaign */ 'type': SlimCampaignTypeEnum; /** * Enables email notification for this campaign * @type {boolean} * @memberof SlimCampaign */ 'emailNotificationEnabled'?: boolean; /** * Allows auto revoke for this campaign * @type {boolean} * @memberof SlimCampaign */ 'autoRevokeAllowed'?: boolean; /** * Enables IAI for this campaign. Accepts true even if the IAI product feature is off. If IAI is turned off then campaigns generated from this template will indicate false. The real value will then be returned if IAI is ever enabled for the org in the future. * @type {boolean} * @memberof SlimCampaign */ 'recommendationsEnabled'?: boolean; /** * The campaign\'s current status. * @type {string} * @memberof SlimCampaign */ 'status'?: SlimCampaignStatusEnum | null; /** * The correlatedStatus of the campaign. Only SOURCE_OWNER campaigns can be Uncorrelated. An Uncorrelated certification campaign only includes Uncorrelated identities (An identity is uncorrelated if it has no accounts on an authoritative source). * @type {string} * @memberof SlimCampaign */ 'correlatedStatus'?: SlimCampaignCorrelatedStatusEnum; /** * Created time of the campaign * @type {string} * @memberof SlimCampaign */ 'created'?: string | null; /** * The total number of certifications in this campaign. * @type {number} * @memberof SlimCampaign */ 'totalCertifications'?: number | null; /** * The number of completed certifications in this campaign. * @type {number} * @memberof SlimCampaign */ 'completedCertifications'?: number | null; /** * A list of errors and warnings that have accumulated. * @type {Array} * @memberof SlimCampaign */ 'alerts'?: Array | null; } export const SlimCampaignTypeEnum = { Manager: 'MANAGER', SourceOwner: 'SOURCE_OWNER', Search: 'SEARCH', RoleComposition: 'ROLE_COMPOSITION', MachineAccount: 'MACHINE_ACCOUNT' } as const; export type SlimCampaignTypeEnum = typeof SlimCampaignTypeEnum[keyof typeof SlimCampaignTypeEnum]; export const SlimCampaignStatusEnum = { Pending: 'PENDING', Staged: 'STAGED', Canceling: 'CANCELING', Activating: 'ACTIVATING', Active: 'ACTIVE', Completing: 'COMPLETING', Completed: 'COMPLETED', Error: 'ERROR', Archived: 'ARCHIVED' } as const; export type SlimCampaignStatusEnum = typeof SlimCampaignStatusEnum[keyof typeof SlimCampaignStatusEnum]; export const SlimCampaignCorrelatedStatusEnum = { Correlated: 'CORRELATED', Uncorrelated: 'UNCORRELATED' } as const; export type SlimCampaignCorrelatedStatusEnum = typeof SlimCampaignCorrelatedStatusEnum[keyof typeof SlimCampaignCorrelatedStatusEnum]; /** * 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]; /** * CertificationCampaignsApi - axios parameter creator * @export */ export const CertificationCampaignsApiAxiosParamCreator = function (configuration?: Configuration) { return { /** * :::caution This endpoint will run successfully for any campaigns that are **past due**. This endpoint will return a content error if the campaign is **not past due**. ::: Use this API to complete a certification campaign. This functionality is provided to admins so that they can complete a certification even if all items have not been completed. * @summary Complete a campaign * @param {string} id Campaign ID. * @param {CampaignCompleteOptions} [campaignCompleteOptions] Optional. Default behavior is for the campaign to auto-approve upon completion, unless autoCompleteAction=REVOKE * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ completeCampaignV1: async (id: string, campaignCompleteOptions?: CampaignCompleteOptions, axiosOptions: RawAxiosRequestConfig = {}): Promise => { // verify required parameter 'id' is not null or undefined assertParamExists('completeCampaignV1', 'id', id) const localVarPath = `/campaigns/v1/{id}/complete` .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; localVarHeaderParameter['Content-Type'] = 'application/json'; setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...axiosOptions.headers}; localVarRequestOptions.data = serializeDataIfNeeded(campaignCompleteOptions, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), axiosOptions: localVarRequestOptions, }; }, /** * Use this API to create a certification campaign template based on campaign. * @summary Create a campaign template * @param {CampaignTemplate} campaignTemplate * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ createCampaignTemplateV1: async (campaignTemplate: CampaignTemplate, axiosOptions: RawAxiosRequestConfig = {}): Promise => { // verify required parameter 'campaignTemplate' is not null or undefined assertParamExists('createCampaignTemplateV1', 'campaignTemplate', campaignTemplate) const localVarPath = `/campaign-templates/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(campaignTemplate, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), axiosOptions: localVarRequestOptions, }; }, /** * Use this API to create a certification campaign with the information provided in the request body. * @summary Create a campaign * @param {Campaign2} campaign2 * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ createCampaignV1: async (campaign2: Campaign2, axiosOptions: RawAxiosRequestConfig = {}): Promise => { // verify required parameter 'campaign2' is not null or undefined assertParamExists('createCampaignV1', 'campaign2', campaign2) const localVarPath = `/campaigns/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(campaign2, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), axiosOptions: localVarRequestOptions, }; }, /** * Use this API to delete the schedule for a certification campaign template. The API returns a 404 if there is no schedule set. * @summary Delete campaign template schedule * @param {string} id ID of the campaign template whose schedule is being deleted. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ deleteCampaignTemplateScheduleV1: async (id: string, axiosOptions: RawAxiosRequestConfig = {}): Promise => { // verify required parameter 'id' is not null or undefined assertParamExists('deleteCampaignTemplateScheduleV1', 'id', id) const localVarPath = `/campaign-templates/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, }; }, /** * Use this API to delete a certification campaign template by ID. * @summary Delete a campaign template * @param {string} id ID of the campaign template being deleted. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ deleteCampaignTemplateV1: async (id: string, axiosOptions: RawAxiosRequestConfig = {}): Promise => { // verify required parameter 'id' is not null or undefined assertParamExists('deleteCampaignTemplateV1', 'id', id) const localVarPath = `/campaign-templates/v1/{id}` .replace(`{${"id"}}`, encodeURIComponent(String(id))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; } const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...axiosOptions}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...axiosOptions.headers}; return { url: toPathString(localVarUrlObj), axiosOptions: localVarRequestOptions, }; }, /** * Use this API to delete certification campaigns whose IDs are specified in the provided list of campaign IDs. * @summary Delete campaigns * @param {CampaignsDeleteRequest} campaignsDeleteRequest IDs of the campaigns to delete. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ deleteCampaignsV1: async (campaignsDeleteRequest: CampaignsDeleteRequest, axiosOptions: RawAxiosRequestConfig = {}): Promise => { // verify required parameter 'campaignsDeleteRequest' is not null or undefined assertParamExists('deleteCampaignsV1', 'campaignsDeleteRequest', campaignsDeleteRequest) const localVarPath = `/campaigns/v1/delete`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; } const localVarRequestOptions = { method: 'POST', ...baseOptions, ...axiosOptions}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; localVarHeaderParameter['Content-Type'] = 'application/json'; setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...axiosOptions.headers}; localVarRequestOptions.data = serializeDataIfNeeded(campaignsDeleteRequest, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), axiosOptions: localVarRequestOptions, }; }, /** * Use this API to get a list of campaigns. This API can provide increased level of detail for each campaign for the correct provided query. * @summary List campaigns * @param {GetActiveCampaignsV1DetailEnum} [detail] Determines whether slim, or increased level of detail is provided for each campaign in the returned list. Slim is the default behavior. * @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, sw* **status**: *eq, in* * @param {string} [sorters] Sort results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#sorting-results) Sorting is supported for the following fields: **name, created** * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ getActiveCampaignsV1: async (detail?: GetActiveCampaignsV1DetailEnum, limit?: number, offset?: number, count?: boolean, filters?: string, sorters?: string, axiosOptions: RawAxiosRequestConfig = {}): Promise => { const localVarPath = `/campaigns/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 (detail !== undefined) { localVarQueryParameter['detail'] = detail; } 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, }; }, /** * Use this API to fetch the configuration for certification campaign reports. The configuration includes only one element - identity attributes defined as custom report columns. * @summary Get campaign reports configuration * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ getCampaignReportsConfigV1: async (axiosOptions: RawAxiosRequestConfig = {}): Promise => { const localVarPath = `/campaigns/v1/reports-configuration`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; } const localVarRequestOptions = { method: 'GET', ...baseOptions, ...axiosOptions}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...axiosOptions.headers}; return { url: toPathString(localVarUrlObj), axiosOptions: localVarRequestOptions, }; }, /** * Use this API to fetch all reports for a certification campaign by campaign ID. * @summary Get campaign reports * @param {string} id ID of the campaign whose reports are being fetched. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ getCampaignReportsV1: async (id: string, axiosOptions: RawAxiosRequestConfig = {}): Promise => { // verify required parameter 'id' is not null or undefined assertParamExists('getCampaignReportsV1', 'id', id) const localVarPath = `/campaigns/v1/{id}/reports` .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, }; }, /** * Use this API to get the schedule for a certification campaign template. The API returns a 404 if there is no schedule set. * @summary Get campaign template schedule * @param {string} id ID of the campaign template whose schedule is being fetched. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ getCampaignTemplateScheduleV1: async (id: string, axiosOptions: RawAxiosRequestConfig = {}): Promise => { // verify required parameter 'id' is not null or undefined assertParamExists('getCampaignTemplateScheduleV1', 'id', id) const localVarPath = `/campaign-templates/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, }; }, /** * Use this API to fetch a certification campaign template by ID. * @summary Get a campaign template * @param {string} id Requested campaign template\'s ID. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ getCampaignTemplateV1: async (id: string, axiosOptions: RawAxiosRequestConfig = {}): Promise => { // verify required parameter 'id' is not null or undefined assertParamExists('getCampaignTemplateV1', 'id', id) const localVarPath = `/campaign-templates/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, }; }, /** * Use this API to get a list of all campaign templates. Scope can be reduced through standard V3 query params. The API returns all campaign templates matching the query parameters. * @summary List campaign templates * @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} [sorters] Sort results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#sorting-results) Sorting is supported for the following fields: **name, created, modified** * @param {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: **name**: *eq, ge, gt, in, le, lt, ne, sw* **id**: *eq, ge, gt, in, le, lt, ne, sw* * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ getCampaignTemplatesV1: async (limit?: number, offset?: number, count?: boolean, sorters?: string, filters?: string, axiosOptions: RawAxiosRequestConfig = {}): Promise => { const localVarPath = `/campaign-templates/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 (sorters !== undefined) { localVarQueryParameter['sorters'] = sorters; } if (filters !== undefined) { localVarQueryParameter['filters'] = filters; } setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...axiosOptions.headers}; return { url: toPathString(localVarUrlObj), axiosOptions: localVarRequestOptions, }; }, /** * Use this API to get information for an existing certification campaign by the campaign\'s ID. * @summary Get campaign * @param {string} id ID of the campaign to be retrieved. * @param {GetCampaignV1DetailEnum} [detail] Determines whether slim, or increased level of detail is provided for each campaign in the returned list. Slim is the default behavior. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ getCampaignV1: async (id: string, detail?: GetCampaignV1DetailEnum, axiosOptions: RawAxiosRequestConfig = {}): Promise => { // verify required parameter 'id' is not null or undefined assertParamExists('getCampaignV1', 'id', id) const localVarPath = `/campaigns/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; if (detail !== undefined) { localVarQueryParameter['detail'] = detail; } setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...axiosOptions.headers}; return { url: toPathString(localVarUrlObj), axiosOptions: localVarRequestOptions, }; }, /** * This API reassigns the specified certifications from one identity to another. * @summary Reassign certifications * @param {string} id The certification campaign ID * @param {AdminReviewReassign} adminReviewReassign * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ moveV1: async (id: string, adminReviewReassign: AdminReviewReassign, axiosOptions: RawAxiosRequestConfig = {}): Promise => { // verify required parameter 'id' is not null or undefined assertParamExists('moveV1', 'id', id) // verify required parameter 'adminReviewReassign' is not null or undefined assertParamExists('moveV1', 'adminReviewReassign', adminReviewReassign) const localVarPath = `/campaigns/v1/{id}/reassign` .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; localVarHeaderParameter['Content-Type'] = 'application/json'; setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...axiosOptions.headers}; localVarRequestOptions.data = serializeDataIfNeeded(adminReviewReassign, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), axiosOptions: localVarRequestOptions, }; }, /** * Use this API to update individual fields on a certification campaign template, using the [JSON Patch](https://tools.ietf.org/html/rfc6902) standard. * @summary Update a campaign template * @param {string} id ID of the campaign template being modified. * @param {Array} jsonPatchOperation A list of campaign update operations according to the [JSON Patch](https://tools.ietf.org/html/rfc6902) standard. The following fields are patchable: * name * description * deadlineDuration * campaign (all fields that are allowed during create) * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ patchCampaignTemplateV1: async (id: string, jsonPatchOperation: Array, axiosOptions: RawAxiosRequestConfig = {}): Promise => { // verify required parameter 'id' is not null or undefined assertParamExists('patchCampaignTemplateV1', 'id', id) // verify required parameter 'jsonPatchOperation' is not null or undefined assertParamExists('patchCampaignTemplateV1', 'jsonPatchOperation', jsonPatchOperation) const localVarPath = `/campaign-templates/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, }; }, /** * Use this API to overwrite the configuration for campaign reports. * @summary Set campaign reports configuration * @param {CampaignReportsConfig} campaignReportsConfig Campaign report configuration. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ setCampaignReportsConfigV1: async (campaignReportsConfig: CampaignReportsConfig, axiosOptions: RawAxiosRequestConfig = {}): Promise => { // verify required parameter 'campaignReportsConfig' is not null or undefined assertParamExists('setCampaignReportsConfigV1', 'campaignReportsConfig', campaignReportsConfig) const localVarPath = `/campaigns/v1/reports-configuration`; // 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(campaignReportsConfig, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), axiosOptions: localVarRequestOptions, }; }, /** * Use this API to set the schedule for a certification campaign template. If a schedule already exists, the API overwrites it with the new one. * @summary Set campaign template schedule * @param {string} id ID of the campaign template being scheduled. * @param {Schedule2} [schedule2] * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ setCampaignTemplateScheduleV1: async (id: string, schedule2?: Schedule2, axiosOptions: RawAxiosRequestConfig = {}): Promise => { // verify required parameter 'id' is not null or undefined assertParamExists('setCampaignTemplateScheduleV1', 'id', id) const localVarPath = `/campaign-templates/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(schedule2, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), axiosOptions: localVarRequestOptions, }; }, /** * Use this API to run a remediation scan task for a certification campaign. * @summary Run campaign remediation scan * @param {string} id ID of the campaign the remediation scan is being run for. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ startCampaignRemediationScanV1: async (id: string, axiosOptions: RawAxiosRequestConfig = {}): Promise => { // verify required parameter 'id' is not null or undefined assertParamExists('startCampaignRemediationScanV1', 'id', id) const localVarPath = `/campaigns/v1/{id}/run-remediation-scan` .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, }; }, /** * Use this API to run a report for a certification campaign. * @summary Run campaign report * @param {string} id ID of the campaign the report is being run for. * @param {ReportType} type Type of the report to run. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ startCampaignReportV1: async (id: string, type: ReportType, axiosOptions: RawAxiosRequestConfig = {}): Promise => { // verify required parameter 'id' is not null or undefined assertParamExists('startCampaignReportV1', 'id', id) // verify required parameter 'type' is not null or undefined assertParamExists('startCampaignReportV1', 'type', type) const localVarPath = `/campaigns/v1/{id}/run-report/{type}` .replace(`{${"id"}}`, encodeURIComponent(String(id))) .replace(`{${"type"}}`, encodeURIComponent(String(type))); // 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, }; }, /** * Use this API to submit a job to activate the certified campaign with the specified ID. The campaign must be staged. * @summary Activate a campaign * @param {string} id Campaign ID. * @param {ActivateCampaignOptions} [activateCampaignOptions] Optional. If no timezone is specified, the standard UTC timezone is used (i.e. UTC+00:00). Although this can take any timezone, the intended value is the caller\'s timezone. The activation time calculated from the given timezone may cause the campaign deadline time to be modified, but it will remain within the original date. The timezone must be in a valid ISO 8601 format. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ startCampaignV1: async (id: string, activateCampaignOptions?: ActivateCampaignOptions, axiosOptions: RawAxiosRequestConfig = {}): Promise => { // verify required parameter 'id' is not null or undefined assertParamExists('startCampaignV1', 'id', id) const localVarPath = `/campaigns/v1/{id}/activate` .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; localVarHeaderParameter['Content-Type'] = 'application/json'; setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...axiosOptions.headers}; localVarRequestOptions.data = serializeDataIfNeeded(activateCampaignOptions, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), axiosOptions: localVarRequestOptions, }; }, /** * Use this API to generate a new certification campaign from a campaign template. The campaign object contained in the template has special formatting applied to its name and description fields that determine the generated campaign\'s name/description. Placeholders in those fields are formatted with the current date and time upon generation. Placeholders consist of a percent sign followed by a letter indicating what should be inserted. For example, \"%Y\" inserts the current year, and a campaign template named \"Campaign for %y\" generates a campaign called \"Campaign for 2020\" (assuming the year at generation time is 2020). Valid placeholders are the date/time conversion suffix characters supported by [java.util.Formatter](https://docs.oracle.com/javase/8/docs/api/java/util/Formatter.html). * @summary Generate a campaign from template * @param {string} id ID of the campaign template to use for generation. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ startGenerateCampaignTemplateV1: async (id: string, axiosOptions: RawAxiosRequestConfig = {}): Promise => { // verify required parameter 'id' is not null or undefined assertParamExists('startGenerateCampaignTemplateV1', 'id', id) const localVarPath = `/campaign-templates/v1/{id}/generate` .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, }; }, /** * Use this API to update individual fields on a certification campaign, using the [JSON Patch](https://tools.ietf.org/html/rfc6902) standard. * @summary Update a campaign * @param {string} id ID of the campaign template being modified. * @param {Array} jsonPatchOperation A list of campaign update operations according to the [JSON Patch](https://tools.ietf.org/html/rfc6902) standard. The fields that can be patched differ based on the status of the campaign. When the campaign is in the *STAGED* status, you can patch these fields: * name * description * recommendationsEnabled * deadline * emailNotificationEnabled * autoRevokeAllowed When the campaign is in the *ACTIVE* status, you can patch these fields: * deadline * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ updateCampaignV1: async (id: string, jsonPatchOperation: Array, axiosOptions: RawAxiosRequestConfig = {}): Promise => { // verify required parameter 'id' is not null or undefined assertParamExists('updateCampaignV1', 'id', id) // verify required parameter 'jsonPatchOperation' is not null or undefined assertParamExists('updateCampaignV1', 'jsonPatchOperation', jsonPatchOperation) const localVarPath = `/campaigns/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, }; }, } }; /** * CertificationCampaignsApi - functional programming interface * @export */ export const CertificationCampaignsApiFp = function(configuration?: Configuration) { const localVarAxiosParamCreator = CertificationCampaignsApiAxiosParamCreator(configuration) return { /** * :::caution This endpoint will run successfully for any campaigns that are **past due**. This endpoint will return a content error if the campaign is **not past due**. ::: Use this API to complete a certification campaign. This functionality is provided to admins so that they can complete a certification even if all items have not been completed. * @summary Complete a campaign * @param {string} id Campaign ID. * @param {CampaignCompleteOptions} [campaignCompleteOptions] Optional. Default behavior is for the campaign to auto-approve upon completion, unless autoCompleteAction=REVOKE * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ async completeCampaignV1(id: string, campaignCompleteOptions?: CampaignCompleteOptions, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.completeCampaignV1(id, campaignCompleteOptions, axiosOptions); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['CertificationCampaignsApi.completeCampaignV1']?.[localVarOperationServerIndex]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); }, /** * Use this API to create a certification campaign template based on campaign. * @summary Create a campaign template * @param {CampaignTemplate} campaignTemplate * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ async createCampaignTemplateV1(campaignTemplate: CampaignTemplate, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.createCampaignTemplateV1(campaignTemplate, axiosOptions); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['CertificationCampaignsApi.createCampaignTemplateV1']?.[localVarOperationServerIndex]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); }, /** * Use this API to create a certification campaign with the information provided in the request body. * @summary Create a campaign * @param {Campaign2} campaign2 * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ async createCampaignV1(campaign2: Campaign2, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.createCampaignV1(campaign2, axiosOptions); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['CertificationCampaignsApi.createCampaignV1']?.[localVarOperationServerIndex]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); }, /** * Use this API to delete the schedule for a certification campaign template. The API returns a 404 if there is no schedule set. * @summary Delete campaign template schedule * @param {string} id ID of the campaign template whose schedule is being deleted. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ async deleteCampaignTemplateScheduleV1(id: string, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.deleteCampaignTemplateScheduleV1(id, axiosOptions); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['CertificationCampaignsApi.deleteCampaignTemplateScheduleV1']?.[localVarOperationServerIndex]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); }, /** * Use this API to delete a certification campaign template by ID. * @summary Delete a campaign template * @param {string} id ID of the campaign template being deleted. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ async deleteCampaignTemplateV1(id: string, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.deleteCampaignTemplateV1(id, axiosOptions); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['CertificationCampaignsApi.deleteCampaignTemplateV1']?.[localVarOperationServerIndex]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); }, /** * Use this API to delete certification campaigns whose IDs are specified in the provided list of campaign IDs. * @summary Delete campaigns * @param {CampaignsDeleteRequest} campaignsDeleteRequest IDs of the campaigns to delete. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ async deleteCampaignsV1(campaignsDeleteRequest: CampaignsDeleteRequest, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.deleteCampaignsV1(campaignsDeleteRequest, axiosOptions); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['CertificationCampaignsApi.deleteCampaignsV1']?.[localVarOperationServerIndex]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); }, /** * Use this API to get a list of campaigns. This API can provide increased level of detail for each campaign for the correct provided query. * @summary List campaigns * @param {GetActiveCampaignsV1DetailEnum} [detail] Determines whether slim, or increased level of detail is provided for each campaign in the returned list. Slim is the default behavior. * @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, sw* **status**: *eq, in* * @param {string} [sorters] Sort results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#sorting-results) Sorting is supported for the following fields: **name, created** * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ async getActiveCampaignsV1(detail?: GetActiveCampaignsV1DetailEnum, limit?: number, offset?: number, count?: boolean, filters?: string, sorters?: string, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { const localVarAxiosArgs = await localVarAxiosParamCreator.getActiveCampaignsV1(detail, limit, offset, count, filters, sorters, axiosOptions); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['CertificationCampaignsApi.getActiveCampaignsV1']?.[localVarOperationServerIndex]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); }, /** * Use this API to fetch the configuration for certification campaign reports. The configuration includes only one element - identity attributes defined as custom report columns. * @summary Get campaign reports configuration * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ async getCampaignReportsConfigV1(axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.getCampaignReportsConfigV1(axiosOptions); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['CertificationCampaignsApi.getCampaignReportsConfigV1']?.[localVarOperationServerIndex]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); }, /** * Use this API to fetch all reports for a certification campaign by campaign ID. * @summary Get campaign reports * @param {string} id ID of the campaign whose reports are being fetched. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ async getCampaignReportsV1(id: string, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { const localVarAxiosArgs = await localVarAxiosParamCreator.getCampaignReportsV1(id, axiosOptions); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['CertificationCampaignsApi.getCampaignReportsV1']?.[localVarOperationServerIndex]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); }, /** * Use this API to get the schedule for a certification campaign template. The API returns a 404 if there is no schedule set. * @summary Get campaign template schedule * @param {string} id ID of the campaign template whose schedule is being fetched. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ async getCampaignTemplateScheduleV1(id: string, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.getCampaignTemplateScheduleV1(id, axiosOptions); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['CertificationCampaignsApi.getCampaignTemplateScheduleV1']?.[localVarOperationServerIndex]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); }, /** * Use this API to fetch a certification campaign template by ID. * @summary Get a campaign template * @param {string} id Requested campaign template\'s ID. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ async getCampaignTemplateV1(id: string, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.getCampaignTemplateV1(id, axiosOptions); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['CertificationCampaignsApi.getCampaignTemplateV1']?.[localVarOperationServerIndex]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); }, /** * Use this API to get a list of all campaign templates. Scope can be reduced through standard V3 query params. The API returns all campaign templates matching the query parameters. * @summary List campaign templates * @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} [sorters] Sort results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#sorting-results) Sorting is supported for the following fields: **name, created, modified** * @param {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: **name**: *eq, ge, gt, in, le, lt, ne, sw* **id**: *eq, ge, gt, in, le, lt, ne, sw* * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ async getCampaignTemplatesV1(limit?: number, offset?: number, count?: boolean, sorters?: string, filters?: string, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { const localVarAxiosArgs = await localVarAxiosParamCreator.getCampaignTemplatesV1(limit, offset, count, sorters, filters, axiosOptions); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['CertificationCampaignsApi.getCampaignTemplatesV1']?.[localVarOperationServerIndex]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); }, /** * Use this API to get information for an existing certification campaign by the campaign\'s ID. * @summary Get campaign * @param {string} id ID of the campaign to be retrieved. * @param {GetCampaignV1DetailEnum} [detail] Determines whether slim, or increased level of detail is provided for each campaign in the returned list. Slim is the default behavior. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ async getCampaignV1(id: string, detail?: GetCampaignV1DetailEnum, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.getCampaignV1(id, detail, axiosOptions); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['CertificationCampaignsApi.getCampaignV1']?.[localVarOperationServerIndex]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); }, /** * This API reassigns the specified certifications from one identity to another. * @summary Reassign certifications * @param {string} id The certification campaign ID * @param {AdminReviewReassign} adminReviewReassign * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ async moveV1(id: string, adminReviewReassign: AdminReviewReassign, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.moveV1(id, adminReviewReassign, axiosOptions); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['CertificationCampaignsApi.moveV1']?.[localVarOperationServerIndex]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); }, /** * Use this API to update individual fields on a certification campaign template, using the [JSON Patch](https://tools.ietf.org/html/rfc6902) standard. * @summary Update a campaign template * @param {string} id ID of the campaign template being modified. * @param {Array} jsonPatchOperation A list of campaign update operations according to the [JSON Patch](https://tools.ietf.org/html/rfc6902) standard. The following fields are patchable: * name * description * deadlineDuration * campaign (all fields that are allowed during create) * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ async patchCampaignTemplateV1(id: string, jsonPatchOperation: Array, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.patchCampaignTemplateV1(id, jsonPatchOperation, axiosOptions); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['CertificationCampaignsApi.patchCampaignTemplateV1']?.[localVarOperationServerIndex]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); }, /** * Use this API to overwrite the configuration for campaign reports. * @summary Set campaign reports configuration * @param {CampaignReportsConfig} campaignReportsConfig Campaign report configuration. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ async setCampaignReportsConfigV1(campaignReportsConfig: CampaignReportsConfig, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.setCampaignReportsConfigV1(campaignReportsConfig, axiosOptions); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['CertificationCampaignsApi.setCampaignReportsConfigV1']?.[localVarOperationServerIndex]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); }, /** * Use this API to set the schedule for a certification campaign template. If a schedule already exists, the API overwrites it with the new one. * @summary Set campaign template schedule * @param {string} id ID of the campaign template being scheduled. * @param {Schedule2} [schedule2] * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ async setCampaignTemplateScheduleV1(id: string, schedule2?: Schedule2, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.setCampaignTemplateScheduleV1(id, schedule2, axiosOptions); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['CertificationCampaignsApi.setCampaignTemplateScheduleV1']?.[localVarOperationServerIndex]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); }, /** * Use this API to run a remediation scan task for a certification campaign. * @summary Run campaign remediation scan * @param {string} id ID of the campaign the remediation scan is being run for. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ async startCampaignRemediationScanV1(id: string, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.startCampaignRemediationScanV1(id, axiosOptions); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['CertificationCampaignsApi.startCampaignRemediationScanV1']?.[localVarOperationServerIndex]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); }, /** * Use this API to run a report for a certification campaign. * @summary Run campaign report * @param {string} id ID of the campaign the report is being run for. * @param {ReportType} type Type of the report to run. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ async startCampaignReportV1(id: string, type: ReportType, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.startCampaignReportV1(id, type, axiosOptions); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['CertificationCampaignsApi.startCampaignReportV1']?.[localVarOperationServerIndex]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); }, /** * Use this API to submit a job to activate the certified campaign with the specified ID. The campaign must be staged. * @summary Activate a campaign * @param {string} id Campaign ID. * @param {ActivateCampaignOptions} [activateCampaignOptions] Optional. If no timezone is specified, the standard UTC timezone is used (i.e. UTC+00:00). Although this can take any timezone, the intended value is the caller\'s timezone. The activation time calculated from the given timezone may cause the campaign deadline time to be modified, but it will remain within the original date. The timezone must be in a valid ISO 8601 format. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ async startCampaignV1(id: string, activateCampaignOptions?: ActivateCampaignOptions, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.startCampaignV1(id, activateCampaignOptions, axiosOptions); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['CertificationCampaignsApi.startCampaignV1']?.[localVarOperationServerIndex]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); }, /** * Use this API to generate a new certification campaign from a campaign template. The campaign object contained in the template has special formatting applied to its name and description fields that determine the generated campaign\'s name/description. Placeholders in those fields are formatted with the current date and time upon generation. Placeholders consist of a percent sign followed by a letter indicating what should be inserted. For example, \"%Y\" inserts the current year, and a campaign template named \"Campaign for %y\" generates a campaign called \"Campaign for 2020\" (assuming the year at generation time is 2020). Valid placeholders are the date/time conversion suffix characters supported by [java.util.Formatter](https://docs.oracle.com/javase/8/docs/api/java/util/Formatter.html). * @summary Generate a campaign from template * @param {string} id ID of the campaign template to use for generation. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ async startGenerateCampaignTemplateV1(id: string, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.startGenerateCampaignTemplateV1(id, axiosOptions); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['CertificationCampaignsApi.startGenerateCampaignTemplateV1']?.[localVarOperationServerIndex]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); }, /** * Use this API to update individual fields on a certification campaign, using the [JSON Patch](https://tools.ietf.org/html/rfc6902) standard. * @summary Update a campaign * @param {string} id ID of the campaign template being modified. * @param {Array} jsonPatchOperation A list of campaign update operations according to the [JSON Patch](https://tools.ietf.org/html/rfc6902) standard. The fields that can be patched differ based on the status of the campaign. When the campaign is in the *STAGED* status, you can patch these fields: * name * description * recommendationsEnabled * deadline * emailNotificationEnabled * autoRevokeAllowed When the campaign is in the *ACTIVE* status, you can patch these fields: * deadline * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ async updateCampaignV1(id: string, jsonPatchOperation: Array, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.updateCampaignV1(id, jsonPatchOperation, axiosOptions); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['CertificationCampaignsApi.updateCampaignV1']?.[localVarOperationServerIndex]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); }, } }; /** * CertificationCampaignsApi - factory interface * @export */ export const CertificationCampaignsApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { const localVarFp = CertificationCampaignsApiFp(configuration) return { /** * :::caution This endpoint will run successfully for any campaigns that are **past due**. This endpoint will return a content error if the campaign is **not past due**. ::: Use this API to complete a certification campaign. This functionality is provided to admins so that they can complete a certification even if all items have not been completed. * @summary Complete a campaign * @param {CertificationCampaignsApiCompleteCampaignV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ completeCampaignV1(requestParameters: CertificationCampaignsApiCompleteCampaignV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise { return localVarFp.completeCampaignV1(requestParameters.id, requestParameters.campaignCompleteOptions, axiosOptions).then((request) => request(axios, basePath)); }, /** * Use this API to create a certification campaign template based on campaign. * @summary Create a campaign template * @param {CertificationCampaignsApiCreateCampaignTemplateV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ createCampaignTemplateV1(requestParameters: CertificationCampaignsApiCreateCampaignTemplateV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise { return localVarFp.createCampaignTemplateV1(requestParameters.campaignTemplate, axiosOptions).then((request) => request(axios, basePath)); }, /** * Use this API to create a certification campaign with the information provided in the request body. * @summary Create a campaign * @param {CertificationCampaignsApiCreateCampaignV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ createCampaignV1(requestParameters: CertificationCampaignsApiCreateCampaignV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise { return localVarFp.createCampaignV1(requestParameters.campaign2, axiosOptions).then((request) => request(axios, basePath)); }, /** * Use this API to delete the schedule for a certification campaign template. The API returns a 404 if there is no schedule set. * @summary Delete campaign template schedule * @param {CertificationCampaignsApiDeleteCampaignTemplateScheduleV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ deleteCampaignTemplateScheduleV1(requestParameters: CertificationCampaignsApiDeleteCampaignTemplateScheduleV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise { return localVarFp.deleteCampaignTemplateScheduleV1(requestParameters.id, axiosOptions).then((request) => request(axios, basePath)); }, /** * Use this API to delete a certification campaign template by ID. * @summary Delete a campaign template * @param {CertificationCampaignsApiDeleteCampaignTemplateV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ deleteCampaignTemplateV1(requestParameters: CertificationCampaignsApiDeleteCampaignTemplateV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise { return localVarFp.deleteCampaignTemplateV1(requestParameters.id, axiosOptions).then((request) => request(axios, basePath)); }, /** * Use this API to delete certification campaigns whose IDs are specified in the provided list of campaign IDs. * @summary Delete campaigns * @param {CertificationCampaignsApiDeleteCampaignsV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ deleteCampaignsV1(requestParameters: CertificationCampaignsApiDeleteCampaignsV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise { return localVarFp.deleteCampaignsV1(requestParameters.campaignsDeleteRequest, axiosOptions).then((request) => request(axios, basePath)); }, /** * Use this API to get a list of campaigns. This API can provide increased level of detail for each campaign for the correct provided query. * @summary List campaigns * @param {CertificationCampaignsApiGetActiveCampaignsV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ getActiveCampaignsV1(requestParameters: CertificationCampaignsApiGetActiveCampaignsV1Request = {}, axiosOptions?: RawAxiosRequestConfig): AxiosPromise> { return localVarFp.getActiveCampaignsV1(requestParameters.detail, requestParameters.limit, requestParameters.offset, requestParameters.count, requestParameters.filters, requestParameters.sorters, axiosOptions).then((request) => request(axios, basePath)); }, /** * Use this API to fetch the configuration for certification campaign reports. The configuration includes only one element - identity attributes defined as custom report columns. * @summary Get campaign reports configuration * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ getCampaignReportsConfigV1(axiosOptions?: RawAxiosRequestConfig): AxiosPromise { return localVarFp.getCampaignReportsConfigV1(axiosOptions).then((request) => request(axios, basePath)); }, /** * Use this API to fetch all reports for a certification campaign by campaign ID. * @summary Get campaign reports * @param {CertificationCampaignsApiGetCampaignReportsV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ getCampaignReportsV1(requestParameters: CertificationCampaignsApiGetCampaignReportsV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise> { return localVarFp.getCampaignReportsV1(requestParameters.id, axiosOptions).then((request) => request(axios, basePath)); }, /** * Use this API to get the schedule for a certification campaign template. The API returns a 404 if there is no schedule set. * @summary Get campaign template schedule * @param {CertificationCampaignsApiGetCampaignTemplateScheduleV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ getCampaignTemplateScheduleV1(requestParameters: CertificationCampaignsApiGetCampaignTemplateScheduleV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise { return localVarFp.getCampaignTemplateScheduleV1(requestParameters.id, axiosOptions).then((request) => request(axios, basePath)); }, /** * Use this API to fetch a certification campaign template by ID. * @summary Get a campaign template * @param {CertificationCampaignsApiGetCampaignTemplateV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ getCampaignTemplateV1(requestParameters: CertificationCampaignsApiGetCampaignTemplateV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise { return localVarFp.getCampaignTemplateV1(requestParameters.id, axiosOptions).then((request) => request(axios, basePath)); }, /** * Use this API to get a list of all campaign templates. Scope can be reduced through standard V3 query params. The API returns all campaign templates matching the query parameters. * @summary List campaign templates * @param {CertificationCampaignsApiGetCampaignTemplatesV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ getCampaignTemplatesV1(requestParameters: CertificationCampaignsApiGetCampaignTemplatesV1Request = {}, axiosOptions?: RawAxiosRequestConfig): AxiosPromise> { return localVarFp.getCampaignTemplatesV1(requestParameters.limit, requestParameters.offset, requestParameters.count, requestParameters.sorters, requestParameters.filters, axiosOptions).then((request) => request(axios, basePath)); }, /** * Use this API to get information for an existing certification campaign by the campaign\'s ID. * @summary Get campaign * @param {CertificationCampaignsApiGetCampaignV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ getCampaignV1(requestParameters: CertificationCampaignsApiGetCampaignV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise { return localVarFp.getCampaignV1(requestParameters.id, requestParameters.detail, axiosOptions).then((request) => request(axios, basePath)); }, /** * This API reassigns the specified certifications from one identity to another. * @summary Reassign certifications * @param {CertificationCampaignsApiMoveV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ moveV1(requestParameters: CertificationCampaignsApiMoveV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise { return localVarFp.moveV1(requestParameters.id, requestParameters.adminReviewReassign, axiosOptions).then((request) => request(axios, basePath)); }, /** * Use this API to update individual fields on a certification campaign template, using the [JSON Patch](https://tools.ietf.org/html/rfc6902) standard. * @summary Update a campaign template * @param {CertificationCampaignsApiPatchCampaignTemplateV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ patchCampaignTemplateV1(requestParameters: CertificationCampaignsApiPatchCampaignTemplateV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise { return localVarFp.patchCampaignTemplateV1(requestParameters.id, requestParameters.jsonPatchOperation, axiosOptions).then((request) => request(axios, basePath)); }, /** * Use this API to overwrite the configuration for campaign reports. * @summary Set campaign reports configuration * @param {CertificationCampaignsApiSetCampaignReportsConfigV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ setCampaignReportsConfigV1(requestParameters: CertificationCampaignsApiSetCampaignReportsConfigV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise { return localVarFp.setCampaignReportsConfigV1(requestParameters.campaignReportsConfig, axiosOptions).then((request) => request(axios, basePath)); }, /** * Use this API to set the schedule for a certification campaign template. If a schedule already exists, the API overwrites it with the new one. * @summary Set campaign template schedule * @param {CertificationCampaignsApiSetCampaignTemplateScheduleV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ setCampaignTemplateScheduleV1(requestParameters: CertificationCampaignsApiSetCampaignTemplateScheduleV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise { return localVarFp.setCampaignTemplateScheduleV1(requestParameters.id, requestParameters.schedule2, axiosOptions).then((request) => request(axios, basePath)); }, /** * Use this API to run a remediation scan task for a certification campaign. * @summary Run campaign remediation scan * @param {CertificationCampaignsApiStartCampaignRemediationScanV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ startCampaignRemediationScanV1(requestParameters: CertificationCampaignsApiStartCampaignRemediationScanV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise { return localVarFp.startCampaignRemediationScanV1(requestParameters.id, axiosOptions).then((request) => request(axios, basePath)); }, /** * Use this API to run a report for a certification campaign. * @summary Run campaign report * @param {CertificationCampaignsApiStartCampaignReportV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ startCampaignReportV1(requestParameters: CertificationCampaignsApiStartCampaignReportV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise { return localVarFp.startCampaignReportV1(requestParameters.id, requestParameters.type, axiosOptions).then((request) => request(axios, basePath)); }, /** * Use this API to submit a job to activate the certified campaign with the specified ID. The campaign must be staged. * @summary Activate a campaign * @param {CertificationCampaignsApiStartCampaignV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ startCampaignV1(requestParameters: CertificationCampaignsApiStartCampaignV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise { return localVarFp.startCampaignV1(requestParameters.id, requestParameters.activateCampaignOptions, axiosOptions).then((request) => request(axios, basePath)); }, /** * Use this API to generate a new certification campaign from a campaign template. The campaign object contained in the template has special formatting applied to its name and description fields that determine the generated campaign\'s name/description. Placeholders in those fields are formatted with the current date and time upon generation. Placeholders consist of a percent sign followed by a letter indicating what should be inserted. For example, \"%Y\" inserts the current year, and a campaign template named \"Campaign for %y\" generates a campaign called \"Campaign for 2020\" (assuming the year at generation time is 2020). Valid placeholders are the date/time conversion suffix characters supported by [java.util.Formatter](https://docs.oracle.com/javase/8/docs/api/java/util/Formatter.html). * @summary Generate a campaign from template * @param {CertificationCampaignsApiStartGenerateCampaignTemplateV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ startGenerateCampaignTemplateV1(requestParameters: CertificationCampaignsApiStartGenerateCampaignTemplateV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise { return localVarFp.startGenerateCampaignTemplateV1(requestParameters.id, axiosOptions).then((request) => request(axios, basePath)); }, /** * Use this API to update individual fields on a certification campaign, using the [JSON Patch](https://tools.ietf.org/html/rfc6902) standard. * @summary Update a campaign * @param {CertificationCampaignsApiUpdateCampaignV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ updateCampaignV1(requestParameters: CertificationCampaignsApiUpdateCampaignV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise { return localVarFp.updateCampaignV1(requestParameters.id, requestParameters.jsonPatchOperation, axiosOptions).then((request) => request(axios, basePath)); }, }; }; /** * Request parameters for completeCampaignV1 operation in CertificationCampaignsApi. * @export * @interface CertificationCampaignsApiCompleteCampaignV1Request */ export interface CertificationCampaignsApiCompleteCampaignV1Request { /** * Campaign ID. * @type {string} * @memberof CertificationCampaignsApiCompleteCampaignV1 */ readonly id: string /** * Optional. Default behavior is for the campaign to auto-approve upon completion, unless autoCompleteAction=REVOKE * @type {CampaignCompleteOptions} * @memberof CertificationCampaignsApiCompleteCampaignV1 */ readonly campaignCompleteOptions?: CampaignCompleteOptions } /** * Request parameters for createCampaignTemplateV1 operation in CertificationCampaignsApi. * @export * @interface CertificationCampaignsApiCreateCampaignTemplateV1Request */ export interface CertificationCampaignsApiCreateCampaignTemplateV1Request { /** * * @type {CampaignTemplate} * @memberof CertificationCampaignsApiCreateCampaignTemplateV1 */ readonly campaignTemplate: CampaignTemplate } /** * Request parameters for createCampaignV1 operation in CertificationCampaignsApi. * @export * @interface CertificationCampaignsApiCreateCampaignV1Request */ export interface CertificationCampaignsApiCreateCampaignV1Request { /** * * @type {Campaign2} * @memberof CertificationCampaignsApiCreateCampaignV1 */ readonly campaign2: Campaign2 } /** * Request parameters for deleteCampaignTemplateScheduleV1 operation in CertificationCampaignsApi. * @export * @interface CertificationCampaignsApiDeleteCampaignTemplateScheduleV1Request */ export interface CertificationCampaignsApiDeleteCampaignTemplateScheduleV1Request { /** * ID of the campaign template whose schedule is being deleted. * @type {string} * @memberof CertificationCampaignsApiDeleteCampaignTemplateScheduleV1 */ readonly id: string } /** * Request parameters for deleteCampaignTemplateV1 operation in CertificationCampaignsApi. * @export * @interface CertificationCampaignsApiDeleteCampaignTemplateV1Request */ export interface CertificationCampaignsApiDeleteCampaignTemplateV1Request { /** * ID of the campaign template being deleted. * @type {string} * @memberof CertificationCampaignsApiDeleteCampaignTemplateV1 */ readonly id: string } /** * Request parameters for deleteCampaignsV1 operation in CertificationCampaignsApi. * @export * @interface CertificationCampaignsApiDeleteCampaignsV1Request */ export interface CertificationCampaignsApiDeleteCampaignsV1Request { /** * IDs of the campaigns to delete. * @type {CampaignsDeleteRequest} * @memberof CertificationCampaignsApiDeleteCampaignsV1 */ readonly campaignsDeleteRequest: CampaignsDeleteRequest } /** * Request parameters for getActiveCampaignsV1 operation in CertificationCampaignsApi. * @export * @interface CertificationCampaignsApiGetActiveCampaignsV1Request */ export interface CertificationCampaignsApiGetActiveCampaignsV1Request { /** * Determines whether slim, or increased level of detail is provided for each campaign in the returned list. Slim is the default behavior. * @type {'SLIM' | 'FULL'} * @memberof CertificationCampaignsApiGetActiveCampaignsV1 */ readonly detail?: GetActiveCampaignsV1DetailEnum /** * 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 CertificationCampaignsApiGetActiveCampaignsV1 */ 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 CertificationCampaignsApiGetActiveCampaignsV1 */ 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 CertificationCampaignsApiGetActiveCampaignsV1 */ 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, sw* **status**: *eq, in* * @type {string} * @memberof CertificationCampaignsApiGetActiveCampaignsV1 */ readonly filters?: string /** * Sort results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#sorting-results) Sorting is supported for the following fields: **name, created** * @type {string} * @memberof CertificationCampaignsApiGetActiveCampaignsV1 */ readonly sorters?: string } /** * Request parameters for getCampaignReportsV1 operation in CertificationCampaignsApi. * @export * @interface CertificationCampaignsApiGetCampaignReportsV1Request */ export interface CertificationCampaignsApiGetCampaignReportsV1Request { /** * ID of the campaign whose reports are being fetched. * @type {string} * @memberof CertificationCampaignsApiGetCampaignReportsV1 */ readonly id: string } /** * Request parameters for getCampaignTemplateScheduleV1 operation in CertificationCampaignsApi. * @export * @interface CertificationCampaignsApiGetCampaignTemplateScheduleV1Request */ export interface CertificationCampaignsApiGetCampaignTemplateScheduleV1Request { /** * ID of the campaign template whose schedule is being fetched. * @type {string} * @memberof CertificationCampaignsApiGetCampaignTemplateScheduleV1 */ readonly id: string } /** * Request parameters for getCampaignTemplateV1 operation in CertificationCampaignsApi. * @export * @interface CertificationCampaignsApiGetCampaignTemplateV1Request */ export interface CertificationCampaignsApiGetCampaignTemplateV1Request { /** * Requested campaign template\'s ID. * @type {string} * @memberof CertificationCampaignsApiGetCampaignTemplateV1 */ readonly id: string } /** * Request parameters for getCampaignTemplatesV1 operation in CertificationCampaignsApi. * @export * @interface CertificationCampaignsApiGetCampaignTemplatesV1Request */ export interface CertificationCampaignsApiGetCampaignTemplatesV1Request { /** * 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 CertificationCampaignsApiGetCampaignTemplatesV1 */ 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 CertificationCampaignsApiGetCampaignTemplatesV1 */ 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 CertificationCampaignsApiGetCampaignTemplatesV1 */ readonly count?: boolean /** * Sort results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#sorting-results) Sorting is supported for the following fields: **name, created, modified** * @type {string} * @memberof CertificationCampaignsApiGetCampaignTemplatesV1 */ readonly sorters?: string /** * 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: **name**: *eq, ge, gt, in, le, lt, ne, sw* **id**: *eq, ge, gt, in, le, lt, ne, sw* * @type {string} * @memberof CertificationCampaignsApiGetCampaignTemplatesV1 */ readonly filters?: string } /** * Request parameters for getCampaignV1 operation in CertificationCampaignsApi. * @export * @interface CertificationCampaignsApiGetCampaignV1Request */ export interface CertificationCampaignsApiGetCampaignV1Request { /** * ID of the campaign to be retrieved. * @type {string} * @memberof CertificationCampaignsApiGetCampaignV1 */ readonly id: string /** * Determines whether slim, or increased level of detail is provided for each campaign in the returned list. Slim is the default behavior. * @type {'SLIM' | 'FULL'} * @memberof CertificationCampaignsApiGetCampaignV1 */ readonly detail?: GetCampaignV1DetailEnum } /** * Request parameters for moveV1 operation in CertificationCampaignsApi. * @export * @interface CertificationCampaignsApiMoveV1Request */ export interface CertificationCampaignsApiMoveV1Request { /** * The certification campaign ID * @type {string} * @memberof CertificationCampaignsApiMoveV1 */ readonly id: string /** * * @type {AdminReviewReassign} * @memberof CertificationCampaignsApiMoveV1 */ readonly adminReviewReassign: AdminReviewReassign } /** * Request parameters for patchCampaignTemplateV1 operation in CertificationCampaignsApi. * @export * @interface CertificationCampaignsApiPatchCampaignTemplateV1Request */ export interface CertificationCampaignsApiPatchCampaignTemplateV1Request { /** * ID of the campaign template being modified. * @type {string} * @memberof CertificationCampaignsApiPatchCampaignTemplateV1 */ readonly id: string /** * A list of campaign update operations according to the [JSON Patch](https://tools.ietf.org/html/rfc6902) standard. The following fields are patchable: * name * description * deadlineDuration * campaign (all fields that are allowed during create) * @type {Array} * @memberof CertificationCampaignsApiPatchCampaignTemplateV1 */ readonly jsonPatchOperation: Array } /** * Request parameters for setCampaignReportsConfigV1 operation in CertificationCampaignsApi. * @export * @interface CertificationCampaignsApiSetCampaignReportsConfigV1Request */ export interface CertificationCampaignsApiSetCampaignReportsConfigV1Request { /** * Campaign report configuration. * @type {CampaignReportsConfig} * @memberof CertificationCampaignsApiSetCampaignReportsConfigV1 */ readonly campaignReportsConfig: CampaignReportsConfig } /** * Request parameters for setCampaignTemplateScheduleV1 operation in CertificationCampaignsApi. * @export * @interface CertificationCampaignsApiSetCampaignTemplateScheduleV1Request */ export interface CertificationCampaignsApiSetCampaignTemplateScheduleV1Request { /** * ID of the campaign template being scheduled. * @type {string} * @memberof CertificationCampaignsApiSetCampaignTemplateScheduleV1 */ readonly id: string /** * * @type {Schedule2} * @memberof CertificationCampaignsApiSetCampaignTemplateScheduleV1 */ readonly schedule2?: Schedule2 } /** * Request parameters for startCampaignRemediationScanV1 operation in CertificationCampaignsApi. * @export * @interface CertificationCampaignsApiStartCampaignRemediationScanV1Request */ export interface CertificationCampaignsApiStartCampaignRemediationScanV1Request { /** * ID of the campaign the remediation scan is being run for. * @type {string} * @memberof CertificationCampaignsApiStartCampaignRemediationScanV1 */ readonly id: string } /** * Request parameters for startCampaignReportV1 operation in CertificationCampaignsApi. * @export * @interface CertificationCampaignsApiStartCampaignReportV1Request */ export interface CertificationCampaignsApiStartCampaignReportV1Request { /** * ID of the campaign the report is being run for. * @type {string} * @memberof CertificationCampaignsApiStartCampaignReportV1 */ readonly id: string /** * Type of the report to run. * @type {ReportType} * @memberof CertificationCampaignsApiStartCampaignReportV1 */ readonly type: ReportType } /** * Request parameters for startCampaignV1 operation in CertificationCampaignsApi. * @export * @interface CertificationCampaignsApiStartCampaignV1Request */ export interface CertificationCampaignsApiStartCampaignV1Request { /** * Campaign ID. * @type {string} * @memberof CertificationCampaignsApiStartCampaignV1 */ readonly id: string /** * Optional. If no timezone is specified, the standard UTC timezone is used (i.e. UTC+00:00). Although this can take any timezone, the intended value is the caller\'s timezone. The activation time calculated from the given timezone may cause the campaign deadline time to be modified, but it will remain within the original date. The timezone must be in a valid ISO 8601 format. * @type {ActivateCampaignOptions} * @memberof CertificationCampaignsApiStartCampaignV1 */ readonly activateCampaignOptions?: ActivateCampaignOptions } /** * Request parameters for startGenerateCampaignTemplateV1 operation in CertificationCampaignsApi. * @export * @interface CertificationCampaignsApiStartGenerateCampaignTemplateV1Request */ export interface CertificationCampaignsApiStartGenerateCampaignTemplateV1Request { /** * ID of the campaign template to use for generation. * @type {string} * @memberof CertificationCampaignsApiStartGenerateCampaignTemplateV1 */ readonly id: string } /** * Request parameters for updateCampaignV1 operation in CertificationCampaignsApi. * @export * @interface CertificationCampaignsApiUpdateCampaignV1Request */ export interface CertificationCampaignsApiUpdateCampaignV1Request { /** * ID of the campaign template being modified. * @type {string} * @memberof CertificationCampaignsApiUpdateCampaignV1 */ readonly id: string /** * A list of campaign update operations according to the [JSON Patch](https://tools.ietf.org/html/rfc6902) standard. The fields that can be patched differ based on the status of the campaign. When the campaign is in the *STAGED* status, you can patch these fields: * name * description * recommendationsEnabled * deadline * emailNotificationEnabled * autoRevokeAllowed When the campaign is in the *ACTIVE* status, you can patch these fields: * deadline * @type {Array} * @memberof CertificationCampaignsApiUpdateCampaignV1 */ readonly jsonPatchOperation: Array } /** * CertificationCampaignsApi - object-oriented interface * @export * @class CertificationCampaignsApi * @extends {BaseAPI} */ export class CertificationCampaignsApi extends BaseAPI { /** * :::caution This endpoint will run successfully for any campaigns that are **past due**. This endpoint will return a content error if the campaign is **not past due**. ::: Use this API to complete a certification campaign. This functionality is provided to admins so that they can complete a certification even if all items have not been completed. * @summary Complete a campaign * @param {CertificationCampaignsApiCompleteCampaignV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof CertificationCampaignsApi */ public completeCampaignV1(requestParameters: CertificationCampaignsApiCompleteCampaignV1Request, axiosOptions?: RawAxiosRequestConfig) { return CertificationCampaignsApiFp(this.configuration).completeCampaignV1(requestParameters.id, requestParameters.campaignCompleteOptions, axiosOptions).then((request) => request(this.axios, this.basePath)); } /** * Use this API to create a certification campaign template based on campaign. * @summary Create a campaign template * @param {CertificationCampaignsApiCreateCampaignTemplateV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof CertificationCampaignsApi */ public createCampaignTemplateV1(requestParameters: CertificationCampaignsApiCreateCampaignTemplateV1Request, axiosOptions?: RawAxiosRequestConfig) { return CertificationCampaignsApiFp(this.configuration).createCampaignTemplateV1(requestParameters.campaignTemplate, axiosOptions).then((request) => request(this.axios, this.basePath)); } /** * Use this API to create a certification campaign with the information provided in the request body. * @summary Create a campaign * @param {CertificationCampaignsApiCreateCampaignV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof CertificationCampaignsApi */ public createCampaignV1(requestParameters: CertificationCampaignsApiCreateCampaignV1Request, axiosOptions?: RawAxiosRequestConfig) { return CertificationCampaignsApiFp(this.configuration).createCampaignV1(requestParameters.campaign2, axiosOptions).then((request) => request(this.axios, this.basePath)); } /** * Use this API to delete the schedule for a certification campaign template. The API returns a 404 if there is no schedule set. * @summary Delete campaign template schedule * @param {CertificationCampaignsApiDeleteCampaignTemplateScheduleV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof CertificationCampaignsApi */ public deleteCampaignTemplateScheduleV1(requestParameters: CertificationCampaignsApiDeleteCampaignTemplateScheduleV1Request, axiosOptions?: RawAxiosRequestConfig) { return CertificationCampaignsApiFp(this.configuration).deleteCampaignTemplateScheduleV1(requestParameters.id, axiosOptions).then((request) => request(this.axios, this.basePath)); } /** * Use this API to delete a certification campaign template by ID. * @summary Delete a campaign template * @param {CertificationCampaignsApiDeleteCampaignTemplateV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof CertificationCampaignsApi */ public deleteCampaignTemplateV1(requestParameters: CertificationCampaignsApiDeleteCampaignTemplateV1Request, axiosOptions?: RawAxiosRequestConfig) { return CertificationCampaignsApiFp(this.configuration).deleteCampaignTemplateV1(requestParameters.id, axiosOptions).then((request) => request(this.axios, this.basePath)); } /** * Use this API to delete certification campaigns whose IDs are specified in the provided list of campaign IDs. * @summary Delete campaigns * @param {CertificationCampaignsApiDeleteCampaignsV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof CertificationCampaignsApi */ public deleteCampaignsV1(requestParameters: CertificationCampaignsApiDeleteCampaignsV1Request, axiosOptions?: RawAxiosRequestConfig) { return CertificationCampaignsApiFp(this.configuration).deleteCampaignsV1(requestParameters.campaignsDeleteRequest, axiosOptions).then((request) => request(this.axios, this.basePath)); } /** * Use this API to get a list of campaigns. This API can provide increased level of detail for each campaign for the correct provided query. * @summary List campaigns * @param {CertificationCampaignsApiGetActiveCampaignsV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof CertificationCampaignsApi */ public getActiveCampaignsV1(requestParameters: CertificationCampaignsApiGetActiveCampaignsV1Request = {}, axiosOptions?: RawAxiosRequestConfig) { return CertificationCampaignsApiFp(this.configuration).getActiveCampaignsV1(requestParameters.detail, requestParameters.limit, requestParameters.offset, requestParameters.count, requestParameters.filters, requestParameters.sorters, axiosOptions).then((request) => request(this.axios, this.basePath)); } /** * Use this API to fetch the configuration for certification campaign reports. The configuration includes only one element - identity attributes defined as custom report columns. * @summary Get campaign reports configuration * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof CertificationCampaignsApi */ public getCampaignReportsConfigV1(axiosOptions?: RawAxiosRequestConfig) { return CertificationCampaignsApiFp(this.configuration).getCampaignReportsConfigV1(axiosOptions).then((request) => request(this.axios, this.basePath)); } /** * Use this API to fetch all reports for a certification campaign by campaign ID. * @summary Get campaign reports * @param {CertificationCampaignsApiGetCampaignReportsV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof CertificationCampaignsApi */ public getCampaignReportsV1(requestParameters: CertificationCampaignsApiGetCampaignReportsV1Request, axiosOptions?: RawAxiosRequestConfig) { return CertificationCampaignsApiFp(this.configuration).getCampaignReportsV1(requestParameters.id, axiosOptions).then((request) => request(this.axios, this.basePath)); } /** * Use this API to get the schedule for a certification campaign template. The API returns a 404 if there is no schedule set. * @summary Get campaign template schedule * @param {CertificationCampaignsApiGetCampaignTemplateScheduleV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof CertificationCampaignsApi */ public getCampaignTemplateScheduleV1(requestParameters: CertificationCampaignsApiGetCampaignTemplateScheduleV1Request, axiosOptions?: RawAxiosRequestConfig) { return CertificationCampaignsApiFp(this.configuration).getCampaignTemplateScheduleV1(requestParameters.id, axiosOptions).then((request) => request(this.axios, this.basePath)); } /** * Use this API to fetch a certification campaign template by ID. * @summary Get a campaign template * @param {CertificationCampaignsApiGetCampaignTemplateV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof CertificationCampaignsApi */ public getCampaignTemplateV1(requestParameters: CertificationCampaignsApiGetCampaignTemplateV1Request, axiosOptions?: RawAxiosRequestConfig) { return CertificationCampaignsApiFp(this.configuration).getCampaignTemplateV1(requestParameters.id, axiosOptions).then((request) => request(this.axios, this.basePath)); } /** * Use this API to get a list of all campaign templates. Scope can be reduced through standard V3 query params. The API returns all campaign templates matching the query parameters. * @summary List campaign templates * @param {CertificationCampaignsApiGetCampaignTemplatesV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof CertificationCampaignsApi */ public getCampaignTemplatesV1(requestParameters: CertificationCampaignsApiGetCampaignTemplatesV1Request = {}, axiosOptions?: RawAxiosRequestConfig) { return CertificationCampaignsApiFp(this.configuration).getCampaignTemplatesV1(requestParameters.limit, requestParameters.offset, requestParameters.count, requestParameters.sorters, requestParameters.filters, axiosOptions).then((request) => request(this.axios, this.basePath)); } /** * Use this API to get information for an existing certification campaign by the campaign\'s ID. * @summary Get campaign * @param {CertificationCampaignsApiGetCampaignV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof CertificationCampaignsApi */ public getCampaignV1(requestParameters: CertificationCampaignsApiGetCampaignV1Request, axiosOptions?: RawAxiosRequestConfig) { return CertificationCampaignsApiFp(this.configuration).getCampaignV1(requestParameters.id, requestParameters.detail, axiosOptions).then((request) => request(this.axios, this.basePath)); } /** * This API reassigns the specified certifications from one identity to another. * @summary Reassign certifications * @param {CertificationCampaignsApiMoveV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof CertificationCampaignsApi */ public moveV1(requestParameters: CertificationCampaignsApiMoveV1Request, axiosOptions?: RawAxiosRequestConfig) { return CertificationCampaignsApiFp(this.configuration).moveV1(requestParameters.id, requestParameters.adminReviewReassign, axiosOptions).then((request) => request(this.axios, this.basePath)); } /** * Use this API to update individual fields on a certification campaign template, using the [JSON Patch](https://tools.ietf.org/html/rfc6902) standard. * @summary Update a campaign template * @param {CertificationCampaignsApiPatchCampaignTemplateV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof CertificationCampaignsApi */ public patchCampaignTemplateV1(requestParameters: CertificationCampaignsApiPatchCampaignTemplateV1Request, axiosOptions?: RawAxiosRequestConfig) { return CertificationCampaignsApiFp(this.configuration).patchCampaignTemplateV1(requestParameters.id, requestParameters.jsonPatchOperation, axiosOptions).then((request) => request(this.axios, this.basePath)); } /** * Use this API to overwrite the configuration for campaign reports. * @summary Set campaign reports configuration * @param {CertificationCampaignsApiSetCampaignReportsConfigV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof CertificationCampaignsApi */ public setCampaignReportsConfigV1(requestParameters: CertificationCampaignsApiSetCampaignReportsConfigV1Request, axiosOptions?: RawAxiosRequestConfig) { return CertificationCampaignsApiFp(this.configuration).setCampaignReportsConfigV1(requestParameters.campaignReportsConfig, axiosOptions).then((request) => request(this.axios, this.basePath)); } /** * Use this API to set the schedule for a certification campaign template. If a schedule already exists, the API overwrites it with the new one. * @summary Set campaign template schedule * @param {CertificationCampaignsApiSetCampaignTemplateScheduleV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof CertificationCampaignsApi */ public setCampaignTemplateScheduleV1(requestParameters: CertificationCampaignsApiSetCampaignTemplateScheduleV1Request, axiosOptions?: RawAxiosRequestConfig) { return CertificationCampaignsApiFp(this.configuration).setCampaignTemplateScheduleV1(requestParameters.id, requestParameters.schedule2, axiosOptions).then((request) => request(this.axios, this.basePath)); } /** * Use this API to run a remediation scan task for a certification campaign. * @summary Run campaign remediation scan * @param {CertificationCampaignsApiStartCampaignRemediationScanV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof CertificationCampaignsApi */ public startCampaignRemediationScanV1(requestParameters: CertificationCampaignsApiStartCampaignRemediationScanV1Request, axiosOptions?: RawAxiosRequestConfig) { return CertificationCampaignsApiFp(this.configuration).startCampaignRemediationScanV1(requestParameters.id, axiosOptions).then((request) => request(this.axios, this.basePath)); } /** * Use this API to run a report for a certification campaign. * @summary Run campaign report * @param {CertificationCampaignsApiStartCampaignReportV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof CertificationCampaignsApi */ public startCampaignReportV1(requestParameters: CertificationCampaignsApiStartCampaignReportV1Request, axiosOptions?: RawAxiosRequestConfig) { return CertificationCampaignsApiFp(this.configuration).startCampaignReportV1(requestParameters.id, requestParameters.type, axiosOptions).then((request) => request(this.axios, this.basePath)); } /** * Use this API to submit a job to activate the certified campaign with the specified ID. The campaign must be staged. * @summary Activate a campaign * @param {CertificationCampaignsApiStartCampaignV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof CertificationCampaignsApi */ public startCampaignV1(requestParameters: CertificationCampaignsApiStartCampaignV1Request, axiosOptions?: RawAxiosRequestConfig) { return CertificationCampaignsApiFp(this.configuration).startCampaignV1(requestParameters.id, requestParameters.activateCampaignOptions, axiosOptions).then((request) => request(this.axios, this.basePath)); } /** * Use this API to generate a new certification campaign from a campaign template. The campaign object contained in the template has special formatting applied to its name and description fields that determine the generated campaign\'s name/description. Placeholders in those fields are formatted with the current date and time upon generation. Placeholders consist of a percent sign followed by a letter indicating what should be inserted. For example, \"%Y\" inserts the current year, and a campaign template named \"Campaign for %y\" generates a campaign called \"Campaign for 2020\" (assuming the year at generation time is 2020). Valid placeholders are the date/time conversion suffix characters supported by [java.util.Formatter](https://docs.oracle.com/javase/8/docs/api/java/util/Formatter.html). * @summary Generate a campaign from template * @param {CertificationCampaignsApiStartGenerateCampaignTemplateV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof CertificationCampaignsApi */ public startGenerateCampaignTemplateV1(requestParameters: CertificationCampaignsApiStartGenerateCampaignTemplateV1Request, axiosOptions?: RawAxiosRequestConfig) { return CertificationCampaignsApiFp(this.configuration).startGenerateCampaignTemplateV1(requestParameters.id, axiosOptions).then((request) => request(this.axios, this.basePath)); } /** * Use this API to update individual fields on a certification campaign, using the [JSON Patch](https://tools.ietf.org/html/rfc6902) standard. * @summary Update a campaign * @param {CertificationCampaignsApiUpdateCampaignV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof CertificationCampaignsApi */ public updateCampaignV1(requestParameters: CertificationCampaignsApiUpdateCampaignV1Request, axiosOptions?: RawAxiosRequestConfig) { return CertificationCampaignsApiFp(this.configuration).updateCampaignV1(requestParameters.id, requestParameters.jsonPatchOperation, axiosOptions).then((request) => request(this.axios, this.basePath)); } } /** * @export */ export const GetActiveCampaignsV1DetailEnum = { Slim: 'SLIM', Full: 'FULL' } as const; export type GetActiveCampaignsV1DetailEnum = typeof GetActiveCampaignsV1DetailEnum[keyof typeof GetActiveCampaignsV1DetailEnum]; /** * @export */ export const GetCampaignV1DetailEnum = { Slim: 'SLIM', Full: 'FULL' } as const; export type GetCampaignV1DetailEnum = typeof GetCampaignV1DetailEnum[keyof typeof GetCampaignV1DetailEnum];