Job: Run Guide KeeperAdminCLI
Job Run Guide: How to Run Each Job (KeeperAdminCLI and API)
This guide describes how each job is intended to run, which parameters are required or useful, and gives concrete examples you can use with KeeperAdminCLI or with the trigger API (curl) when parameters are needed.
Prerequisites:
KeeperPrivilegeManager (KPM) must be running.
Run KeeperAdminCLI as Administrator (the run/trigger API requires admin).
Default KPM URL:
https://localhost:6889(override with--port 6889or--url <url>).
Two ways to run a job:
No parameters:
KeeperAdminCLI --port 6889 jobs run --id <jobId>(POST/api/Jobs/{jobId}/run, no body).With parameters: POST to
/api/Jobs/{jobId}/triggerwith JSON body. KeeperAdminCLI does not support this yet; use curl (or similar) as shown below.
Quick reference: KeeperAdminCLI-only jobs (no parameters)
These can be run with only KeeperAdminCLI (no curl):
FileInventory
KeeperAdminCLI --port 6889 jobs run --id 68112CE4-A2A8-4243-83C9-90BF8D2188A0
ExecutionGrantStartupCleanup
KeeperAdminCLI --port 6889 jobs run --id ExecutionGrantStartupCleanup
locale-cache-cleanup
KeeperAdminCLI --port 6889 jobs run --id locale-cache-cleanup
UserInventory
KeeperAdminCLI --port 6889 jobs run --id 3A124C4D-2D41-4174-9A13-998D1683DADC
ephemeral-account-cleanup-if-unused
KeeperAdminCLI --port 6889 jobs run --id ephemeral-account-cleanup-if-unused
ephemeral-orphan-profile-folders-cleanup
KeeperAdminCLI --port 6889 jobs run --id ephemeral-orphan-profile-folders-cleanup
log-version-info
KeeperAdminCLI --port 6889 jobs run --id log-version-info
FileAccessStartupCleanup
KeeperAdminCLI --port 6889 jobs run --id FileAccessStartupCleanup
process-configuration-policies
KeeperAdminCLI --port 6889 jobs run --id process-configuration-policies
ApplyFileAccessPolicies
KeeperAdminCLI --port 6889 jobs run --id ApplyFileAccessPolicies
agent_registration
KeeperAdminCLI --port 6889 jobs run --id agent_registration
keeperagent-silent-expiration-check
KeeperAdminCLI --port 6889 jobs run --id keeperagent-silent-expiration-check
InventoryBasic
KeeperAdminCLI --port 6889 jobs run --id 60260BA2-0713-4292-8A93-974E0E329BE1
ShowAgent
KeeperAdminCLI --port 6889 jobs run --id ShowAgent
least-privilege-check
KeeperAdminCLI --port 6889 jobs run --id least-privilege-check
RevertFileAccess
KeeperAdminCLI --port 6889 jobs run --id RevertFileAccess
StartKeeperClient
KeeperAdminCLI --port 6889 jobs run --id StartKeeperClient
Jobs that need parameters require POST /api/Jobs/{jobId}/trigger (or /evaluate) with JSON body — use curl as in the examples above until KeeperAdminCLI supports passing context.
FileInventory (68112CE4-A2A8-4243-83C9-90BF8D2188A0)
Name: FileInventory How it should run: Scheduled (every 7200 min) or manually. Runs file inventory and reports to KeeperLogger/KeeperApi. Required parameters: None. Optional parameters: None.
Example (KeeperAdminCLI):
ExecutionGrantStartupCleanup
Name: Execution Grant Startup Cleanup
How it should run: On startup (event) or manually. Cleans expired execution grants and orphaned expire-exec-grant job files.
Required parameters: None.
Optional parameters: KeeperApiBaseUrl (default: https://127.0.0.1:6889).
Example (KeeperAdminCLI):
privilege-elevation-policy-controls
Name: Privilege Elevation Policy Controls
How it should run: Triggered by PolicyEvaluationPending event (from KeeperPolicy when a privilege-elevation request is PENDING). Not intended for manual run without full policy context.
Required parameters: SessionId, RespondToTopic.
Optional parameters: ControlList, CommandLine, UserName, RequestId, JobId, FileName, FilePath, EventType (PrivilegeElevation), KeeperApiBaseUrl.
Example (with parameters via API): Use only when simulating a policy pending flow (e.g. testing). Normally triggered by MQTT/event.
Note: Running manually without real MQTT response topic will not complete the flow; job may run but response has nowhere to go.
LaunchFileAccess
Name: Launch File Access Grant
How it should run: Triggered by LaunchFileAccess custom event after file-access policy allows (and controls satisfied). Grants temporary file access and/or launches the executable.
Required parameters: FilePath.
Optional parameters: RequestId, FileName, UserIdentifier, UserName, PolicyUid, ControlList, Justification, ApprovalUid, GrantedAccess, DurationMinutes, KeeperApiBaseUrl, IsFromHook, CommandLine.
Example (with parameters via API):
StartKeeperClient
Name: Start Keeper Client for User Session
How it should run: Triggered by UserLogin, SessionConnect, StartKeeperClient, or ExistingSession when desktop is available. Starts KeeperClient in the user session.
Required parameters: SessionId, UserName (in schema; task does not pass them to exe).
Optional parameters: Domain, EventType, IsInteractive.
Example (minimal – KeeperAdminCLI): May start client with no session context.
Example (with context via API):
locale-cache-cleanup
Name: Locale Cache Cleanup How it should run: Scheduled (every 30 min) or manually. Cleans locale cache for users no longer logged on. Required parameters: None. Optional parameters: None.
Example (KeeperAdminCLI):
composite-risk-evaluation
Name: Composite Risk Evaluation
How it should run: Called synchronously via /api/Jobs/{jobId}/evaluate by policy/risk logic with file/user/machine context. Not typically run via “run” or “trigger”; use evaluate for a result.
Required parameters: FilePath, UserName, MachineName, TargetRiskScore.
Optional parameters: LocationRiskJobId, UserRiskJobId, ApplicationRiskJobId, MachineRiskJobId (defaults in job).
Example (evaluate API – synchronous, returns pass/fail):
Include KeeperApiBaseUrl so the job can call sub-risk jobs; the executor may also fall back to config if missing.
file-access-policy-controls
Name: File Access Policy Controls
How it should run: Triggered by PolicyEvaluationPending for FileAccess. Not intended for standalone manual run.
Required parameters: SessionId, RespondToTopic.
Optional parameters: ControlList, UserName, RequestId, FilePath, FileName, EventType (FileAccess), KeeperApiBaseUrl, DurationMinutes.
Example (with parameters via API – for testing only):
UserInventory (3A124C4D-2D41-4174-9A13-998D1683DADC)
Name: UserInventory How it should run: Scheduled (every 7200 min) or on AgentRegistered/Startup. Runs user inventory. Required parameters: None (httpport is injected by executor). Optional parameters: None.
Example (KeeperAdminCLI):
ephemeral-account-cleanup-if-unused
Name: Ephemeral Account Cleanup If Unused How it should run: Scheduled (every 30 sec) or manually. Deletes ephemeral account if no process is running as KeeperUserSession. Required parameters: None. Optional parameters: None.
Example (KeeperAdminCLI):
create-approved-request-from-policy-result
Name: Create Approved Request From Policy Result
How it should run: Triggered by PolicyEvaluationResult when policy returns ALLOW. Creates approved request server-side.
Required parameters: RequestId, Response.
Optional parameters: FileName, FilePath, CommandLine, UserName, EventType, OriginalEventType, RespondToTopic, KeeperApiBaseUrl.
Example (with parameters via API): Only meaningful when Response is ALLOW.
ephemeral-orphan-profile-folders-cleanup
Name: Ephemeral Orphan Profile Folders Cleanup How it should run: Scheduled (every 5 min) or manually. Cleans orphaned KeeperUserSession profile folders (Windows). Required parameters: None. Optional parameters: None.
Example (KeeperAdminCLI):
user-risk-assessment
Name: User Risk Assessment
How it should run: Called via evaluate by composite-risk-evaluation or policy.
Required parameters: UserName.
Optional parameters: RiskAssessmentExecutable, RiskAssessmentArguments, KeeperApiBaseUrl (from context).
Example (evaluate API):
custom-event-example
Name: Custom Event Handler Example
How it should run: Triggered by custom event (e.g. MyCustomEvent). Job is disabled by default.
Required parameters: None.
Optional parameters: MachineName, UserName, Source.
Example (KeeperAdminCLI – job must be enabled first):
Or trigger by event with context:
LaunchApprovedRequest
Name: Launch Approved Request
How it should run: Triggered by LaunchApprovedRequest event with either ApprovalUid (from keeperAgent) or RequestId/FilePath/CommandLine (from policy job). Launches elevated or non-elevated.
Required parameters: Either ApprovalUid or (FilePath for launch path).
Optional parameters: RequestId, CommandLine, EventType, UserName, KeeperApiBaseUrl.
Example (by ApprovalUid – from approval workflow):
Example (by path – e.g. from policy job):
LaunchNativeElevation
Name: Launch Native OS Elevation
How it should run: Triggered by LaunchNativeElevation when EnforcementDisabled (no policies apply); launches with OS UAC/sudo.
Required parameters: FilePath.
Optional parameters: FileName, CommandLine, WorkingDirectory, RequestId, UserName, KeeperApiBaseUrl, RespondToTopic, SessionId.
Example (with parameters via API):
policy-evaluation-error-handler
Name: Policy Evaluation Error Handler
How it should run: Triggered by HookErrorEvent when policy evaluation fails (desktop). Sends DENY and shows error.
Required parameters: RequestId (recommended).
Optional parameters: SessionId, RespondToTopic, EventType, ErrorReason, FileName, FilePath, CommandLine, UserName, KeeperApiBaseUrl.
Example (with parameters via API):
policy-evaluation-error-handler-headless
Name: Policy Evaluation Error Handler (Headless)
How it should run: Same as above for headless (no desktop).
Required parameters: RequestId (recommended).
Optional parameters: Same as policy-evaluation-error-handler.
Example: Same as above, replace job id with policy-evaluation-error-handler-headless.
log-version-info
Name: Log Version Information How it should run: Triggered by LogVersionInfo or manually. Logs component versions. Required parameters: None. Optional parameters: None.
Example (KeeperAdminCLI):
monitor-and-notify-notification
Name: Monitor and Notify Notification
How it should run: Triggered by MonitorAndNotifyNotification when a MonitorAndNotify policy fires.
Required parameters: Message.
Optional parameters: Username, RequestId, SessionId, RequiresAcknowledgement, KeeperApiBaseUrl.
Example (with parameters via API):
FileAccessStartupCleanup
Name: FileAccess Startup Cleanup
How it should run: On startup or manually. Cleans expired file access grants and orphaned revert jobs.
Required parameters: None.
Optional parameters: KeeperApiBaseUrl.
Example (KeeperAdminCLI):
process-configuration-policies
Name: Process Configuration Policies
How it should run: Triggered by PolicyPreprocessingCompleted. Applies SettingsUpdate and JobUpdate policies.
Required parameters: None.
Optional parameters: KeeperApiBaseUrl, JobsDirectory, PluginsDirectory, AppSettingsPath.
Example (KeeperAdminCLI):
file-risk-assessment
Name: File Risk Assessment
How it should run: Called via evaluate by composite-risk or policy.
Required parameters: FilePath.
Optional parameters: FileRiskExecutable, SelectedVendor.
Example (evaluate API):
send-audit-event
Name: Send Audit Event
How it should run: Triggered by SendAuditEvent with audit payload.
Required parameters: None in job; payload uses placeholders.
Optional parameters: RequestId, Timestamp, RequestUid, PolicyType, UserName, TargetInfo, EvaluationStatus, AuditEventType.
Example (with parameters via API):
ApplyFileAccessPolicies
Name: Apply FileAccess Policies
How it should run: Triggered by FileAccessPoliciesChanged or PolicySyncCompleted, or manually. Applies FileAccess DENY ACLs from pending enforcements.
Required parameters: None.
Optional parameters: KeeperApiBaseUrl.
Example (KeeperAdminCLI):
agent_registration
Name: Registration How it should run: On startup or manually. Registers the agent. Required parameters: None. Optional parameters: None.
Example (KeeperAdminCLI):
location-risk-assessment
Name: Location Risk Assessment
How it should run: Called via evaluate by composite-risk or policy.
Required parameters: FilePath.
Optional parameters: RiskAssessmentExecutable, RiskAssessmentArguments.
Example (evaluate API):
send-toast
Name: Send Toast
How it should run: Triggered by SendAuditEvent or other callers with message/severity.
Required parameters: None (but message is empty without context).
Optional parameters: title, message, severity, targetUser.
Example (with parameters via API):
expire-exec-grant-* (e.g. expire-exec-grant-4e85aed0bf2d4f38a4c25a80413aa7b8)
Name: Expire Execution Grant - <ExecutableName> How it should run: Scheduled at grant expiration time, or manually. Grant ID is in the job ID and in the task body. Required parameters: None (grantId is in job definition). Optional parameters: None.
Example (KeeperAdminCLI): Use the exact job ID created for that grant.
RevertFileAccess
Name: Revert File Access
How it should run: On schedule, RevertFileAccess event, or startup. Reverts expired file access grants. Job is disabled by default.
Required parameters: None.
Optional parameters: GrantId (specific grant; if empty, reverts all expired), KeeperApiBaseUrl.
Example (KeeperAdminCLI – enable job first if needed):
GrantFileAccess
Name: Grant File Access
How it should run: Triggered by GrantFileAccess event when approval/MFA/justify grants access.
Required parameters: None in schema; meaningful grant needs at least one of RestrictionId or FilePath + UserName.
Optional parameters: RestrictionId, FilePath, UserName, DurationMinutes, ApprovalUid, Justification, ControlMethod, KeeperApiBaseUrl.
Example (with parameters via API):
default-policy-controls-headless
Name: Default Policy Controls (Headless)
How it should run: Triggered by PolicyEvaluationPending when hasdesktop=false (headless). Forwards or denies.
Required parameters: SessionId, RespondToTopic.
Optional parameters: Same as default-policy-controls.
Example: Use trigger API with SessionId and RespondToTopic; normally invoked by policy, not manually.
keeperagent-silent-expiration-check
Name: KeeperAgent Silent Expiration Check How it should run: Scheduled (every 1440 min) or manually. Runs keeperAgent in silent mode if conditions met. Required parameters: None. Optional parameters: None.
Example (KeeperAdminCLI):
default-policy-controls
Name: Default Policy Controls
How it should run: Triggered by PolicyEvaluationPending for CommandLine/Custom (not PrivilegeElevation/FileAccess). Runs MFA/justify/approval.
Required parameters: SessionId, RespondToTopic.
Optional parameters: ControlList, CommandLine, UserName, RequestId, JobId, EventType, OriginalEventType, KeeperApiBaseUrl.
Example: Use trigger API with full context; normally invoked by policy.
LaunchPrivilegeElevation
Name: Launch Privilege Elevation
How it should run: Triggered by LaunchPrivilegeElevation with either ApprovalUid or FilePath/CommandLine/UserName from policy.
Required parameters: Either ApprovalUid or FilePath (for path-based launch).
Optional parameters: RequestId, FileName, CommandLine, UserName, MachineName, WorkingDirectory, KeeperApiBaseUrl, RespondToTopic, SessionId, EventType, DurationMinutes.
Example (by ApprovalUid):
Example (by path):
machine-risk-assessment
Name: Machine Risk Assessment
How it should run: Called via evaluate by composite-risk or policy.
Required parameters: MachineName.
Optional parameters: RiskAssessmentExecutable, RiskAssessmentArguments.
Example (evaluate API):
InventoryBasic (60260BA2-0713-4292-8A93-974E0E329BE1)
Name: InventoryBasic How it should run: Scheduled (every 7200 min) or on AgentRegistered/Startup. Required parameters: None. Optional parameters: None.
Example (KeeperAdminCLI):
ShowAgent
Name: Show Keeper Agent How it should run: Triggered by ShowAgent (e.g. from KeeperClient menu) or manually. Launches keeperAgent UI on user desktop. Required parameters: None. Optional parameters: None.
Example (KeeperAdminCLI):
least-privilege-check
Name: Least Privilege Enforcement
How it should run: Triggered by LeastPrivilegeCheck or manually. Removes unprotected users from administrators group per policy.
Required parameters: None.
Optional parameters: MachineName, UserName.
Example (KeeperAdminCLI):
Last updated
Was this helpful?

