MDM Deployment Overview
Deploy the Pult Agent at scale using your MDM system.
For organizations managing devices centrally, the Pult Agent can be deployed via your MDM system. This automates both the installation and the enrollment process so employees don't need to install or sign in manually.
Deployment Steps
A typical MDM deployment involves three parts:
- Install the agent -- Upload the Pult Agent installer (
.pkgfor macOS,.msifor Windows) to your MDM and deploy it to target devices. - Provision the bootstrap token -- Deploy the bootstrap token to each device so the agent can enroll automatically. Depending on your MDM, this may be done via MSI properties, a post-install script, or file-based deployment.
- Approve device requests -- As devices enroll, review and approve the device authentication requests in the Pult Dashboard.
Platform-Specific Guides
Windows
- Microsoft Intune Deployment -- Complete guide using PSAppDeployToolkit for Intune Win32 App deployment.
- For other MDMs that run installers in user context, use MSI properties directly:
msiexec /i pult-agent.msi BOOTSTRAP_TOKEN="your-token" AUTOLAUNCHAPP=1macOS
For macOS MDMs (Jamf, Kandji, etc.):
- Deploy the
.pkginstaller through your MDM. - Configure a post-install script to provision the bootstrap token (via CLI or file-based method).
- Set up managed login items to ensure the agent auto-starts.
Auto-Start Configuration
Windows
The MSI installer registers the agent for auto-start via a registry entry
(HKLM\Software\Microsoft\Windows\CurrentVersion\Run) by default (AUTOSTART_ALLUSERS=1).
macOS
macOS requires a separate MDM configuration profile to ensure the agent starts automatically and cannot be disabled by the user. See Managed Login Items.
Version Detection
Use these scripts in your MDM to detect the installed agent version (useful for triggering automatic updates):
macOS:
#!/bin/bash
APP_PATH="/Applications/Pult Agent.app"
REQUIRED_VERSION="0.2.9"
if [[ ! -d "$APP_PATH" ]]; then
exit 1
fi
INSTALLED_VERSION=$(/usr/bin/defaults read "$APP_PATH/Contents/Info.plist" CFBundleShortVersionString 2>/dev/null)
if [[ "$INSTALLED_VERSION" == "$REQUIRED_VERSION" ]]; then
exit 0
else
exit 1
fiWindows (PowerShell):
$AgentPath = "C:\Program Files\Pult Agent\pult-agent.exe"
$RequiredVersion = "0.2.9"
if (-not (Test-Path $AgentPath)) {
exit 1
}
$InstalledVersion = (Get-Item $AgentPath).VersionInfo.FileVersion
if ($InstalledVersion -eq $RequiredVersion) {
exit 0
} else {
exit 1
}Exit code 0 = compliant (correct version), exit code 1 = non-compliant (triggers re-install).
Last updated on Apr 8, 2026, 11:52 PM