Frodo Library - v4.0.0-24
    Preparing search index...

    Interface CertificationTemplateSkeleton

    interface CertificationTemplateSkeleton {
        allowBulkCertify: boolean;
        allowPartialSignoff: boolean;
        allowSelfCertification: boolean;
        assignmentNotification: string;
        assignmentNotificationIncludeManager: boolean;
        certificationType: CertificationTemplateType;
        defaultCertifierId: string;
        defaultCertifierInfo: UserInfo;
        description: string;
        enableForward: boolean;
        enableReassign: boolean;
        escalationFrequency: number;
        escalationNotification: string;
        escalationOwner: string;
        escalationOwnerInfo?: UserInfo;
        events: {
            assignment?: EmailTemplateNotificationEvent;
            escalation?: EmailTemplateNotificationEvent;
            expirationNotification?: EmailTemplateNotificationEvent;
            reassign?: EmailTemplateNotificationEvent;
            reminder?: EmailTemplateNotificationEvent;
        };
        exceptionDuration: number;
        excludeConditionalAccess: boolean;
        excludeRoleBasedAccess: boolean;
        expirationAction: string;
        expirationActionDelay: number;
        expirationNotification: string;
        expirationNotificationDay: number;
        expirationReassignee: string;
        expirationReassigneeInfo?: UserInfo;
        finalizeRule: string;
        id: string;
        initializeRule: string;
        isEventBased: boolean;
        metadata?: Metadata;
        name: string;
        ownerId: string;
        ownerInfo: UserInfo;
        parameters?: { displayName: string; id: string; type: string }[];
        reassignNotification: string;
        reassignPermissions: {
            certify: boolean;
            claim: boolean;
            comment: boolean;
            delegate: boolean;
            exception: boolean;
            forward: boolean;
            reassign: boolean;
            reset: boolean;
            revoke: boolean;
            save: boolean;
            signoff: boolean;
        };
        remediationDelay: number;
        remediationRule: string;
        reminderFrequency: number;
        reminderNotification: string;
        requireJustification: { exceptionAllowed: boolean; revoke: boolean };
        schedule?: {
            _id: string;
            concurrentExecution: boolean;
            enabled: boolean;
            endTime: string;
            invokeContext: {
                numberOfThreads?: number;
                scan?: {
                    _queryFilter: string;
                    object: string;
                    taskState: { completed: string; started: string };
                };
                script: {
                    globals: { scanType?: string; templateId?: string };
                    source: string;
                    type: "text/javascript";
                };
            };
            invokeLogLevel: "error"
            | "warn"
            | "trace"
            | "debug"
            | "info";
            invokeService: string;
            misfirePolicy: "fireAndProceed" | "doNothing";
            nextRunDate: string;
            persisted: boolean;
            previousRunDate: string;
            recoverable: boolean;
            repeatCount: number;
            repeatInterval: number;
            schedule: string;
            startTime: string;
            triggers: object[];
            type: "simple" | "cron";
        };
        scheduleId?: string;
        selfCertificationRule: "none"
        | "all"
        | "restricted";
        skipInactiveCertifiers: boolean;
        stageDuration: number;
        stages: {
            certifierId: string;
            certifierInfo?: ObjectInfo;
            certifierPath: string;
            certifierScript: string;
            certifierType:
                | "user"
                | "organization"
                | "custom"
                | "manager"
                | "authzGroup";
        }[];
        stagingEnabled: boolean;
        status: "active"
        | "pending";
        targetFilter: {
            account: SearchTargetFilterOperation;
            application?: SearchTargetFilterOperation;
            decision: SearchTargetFilterOperation;
            entitlement?: SearchTargetFilterOperation;
            memberOfOrg: string[];
            role?: SearchTargetFilterOperation;
            type: (
                | "entitlement"
                | "roleMembership"
                | "accountGrant"
                | "entitlementGrant"
                | "AccountGrant"
                | "ResourceGrant"
            )[];
            user?: SearchTargetFilterOperation;
        };
        templateEventType?: string;
        uiConfig: {
            columnConfig: {
                accounts?: string[];
                entitlements?: string[];
                roles?: string[];
            };
        };
    }
    Index

    Properties

    allowBulkCertify: boolean
    allowPartialSignoff: boolean
    allowSelfCertification: boolean
    assignmentNotification: string
    assignmentNotificationIncludeManager: boolean
    certificationType: CertificationTemplateType
    defaultCertifierId: string
    defaultCertifierInfo: UserInfo
    description: string
    enableForward: boolean
    enableReassign: boolean
    escalationFrequency: number
    escalationNotification: string
    escalationOwner: string
    escalationOwnerInfo?: UserInfo
    events: {
        assignment?: EmailTemplateNotificationEvent;
        escalation?: EmailTemplateNotificationEvent;
        expirationNotification?: EmailTemplateNotificationEvent;
        reassign?: EmailTemplateNotificationEvent;
        reminder?: EmailTemplateNotificationEvent;
    }
    exceptionDuration: number
    excludeConditionalAccess: boolean
    excludeRoleBasedAccess: boolean
    expirationAction: string
    expirationActionDelay: number
    expirationNotification: string
    expirationNotificationDay: number
    expirationReassignee: string
    expirationReassigneeInfo?: UserInfo
    finalizeRule: string
    id: string
    initializeRule: string
    isEventBased: boolean
    metadata?: Metadata
    name: string
    ownerId: string
    ownerInfo: UserInfo
    parameters?: { displayName: string; id: string; type: string }[]
    reassignNotification: string
    reassignPermissions: {
        certify: boolean;
        claim: boolean;
        comment: boolean;
        delegate: boolean;
        exception: boolean;
        forward: boolean;
        reassign: boolean;
        reset: boolean;
        revoke: boolean;
        save: boolean;
        signoff: boolean;
    }
    remediationDelay: number
    remediationRule: string
    reminderFrequency: number
    reminderNotification: string
    requireJustification: { exceptionAllowed: boolean; revoke: boolean }
    schedule?: {
        _id: string;
        concurrentExecution: boolean;
        enabled: boolean;
        endTime: string;
        invokeContext: {
            numberOfThreads?: number;
            scan?: {
                _queryFilter: string;
                object: string;
                taskState: { completed: string; started: string };
            };
            script: {
                globals: { scanType?: string; templateId?: string };
                source: string;
                type: "text/javascript";
            };
        };
        invokeLogLevel: "error"
        | "warn"
        | "trace"
        | "debug"
        | "info";
        invokeService: string;
        misfirePolicy: "fireAndProceed" | "doNothing";
        nextRunDate: string;
        persisted: boolean;
        previousRunDate: string;
        recoverable: boolean;
        repeatCount: number;
        repeatInterval: number;
        schedule: string;
        startTime: string;
        triggers: object[];
        type: "simple" | "cron";
    }
    scheduleId?: string
    selfCertificationRule: "none" | "all" | "restricted"
    skipInactiveCertifiers: boolean
    stageDuration: number
    stages: {
        certifierId: string;
        certifierInfo?: ObjectInfo;
        certifierPath: string;
        certifierScript: string;
        certifierType:
            | "user"
            | "organization"
            | "custom"
            | "manager"
            | "authzGroup";
    }[]
    stagingEnabled: boolean
    status: "active" | "pending"
    targetFilter: {
        account: SearchTargetFilterOperation;
        application?: SearchTargetFilterOperation;
        decision: SearchTargetFilterOperation;
        entitlement?: SearchTargetFilterOperation;
        memberOfOrg: string[];
        role?: SearchTargetFilterOperation;
        type: (
            | "entitlement"
            | "roleMembership"
            | "accountGrant"
            | "entitlementGrant"
            | "AccountGrant"
            | "ResourceGrant"
        )[];
        user?: SearchTargetFilterOperation;
    }
    templateEventType?: string
    uiConfig: {
        columnConfig: {
            accounts?: string[];
            entitlements?: string[];
            roles?: string[];
        };
    }