Jamf CLI is a unified command-line interface for the Jamf Platform. It provides modern, developer-friendly tooling to manage Apple device fleets and security configurations from the terminal — spanning Jamf Pro, Jamf Protect, Jamf School, and the Jamf Platform Gateway.
Features
Jamf Platform (via Gateway)
- Blueprints — CRUD, deploy/undeploy, clone, scope management, import Classic configuration profiles with automatic DDM conversion
- Compliance Benchmarks — benchmark CRUD, baselines, rules, device compliance results, stats
- Platform Devices — unified device inventory and actions
- Platform Device Groups — CRUD and membership management
- DDM Reports — device declaration status and declaration clients
- Platform reports, audit checks, and auth token management
Jamf Pro
- Full API coverage across both Modern OpenAPI-generated and Classic
/JSSResource/endpoints - Instance health dashboard with 37 parallel API calls (
overviewcommand) - Device actions: erase, remove MDM, redeploy framework, blank push, DDM sync, renew MDM, lock, enable/disable Remote Desktop (computers); erase, unmanage, restart, shutdown, update inventory (mobile devices). Target by serial number, name, ID, group, or file
- Scope management for policies, config profiles, restricted software, and apps — no XML editing required
- Reports: security posture, patch compliance, policy health, profile deployment, fleet inventory
- Backup and diff for configuration export and cross-instance comparison
- Bulk operations with destructive safeguards (
--confirm-destructive)
Jamf Protect
- Full SDK coverage for plans, analytics, analytic sets, exception sets, USB control, telemetry, prevent lists, unified logging filters, and more
- Instance dashboard with 14 parallel API calls (
overviewcommand) - Idempotent upsert via
applycommands with--scaffoldfor JSON templates - Configuration export/import in JSON or YAML — names-based for cross-tenant portability
- Community analytics import from the jamf/jamfprotect repository
- Alerts, CIS benchmark insights, and audit log access
- Installer, profile, and certificate downloads
- Granular mutations: add/remove rules, analytics, and exceptions
Jamf School
- Device management: list, query, restart, refresh, unenroll, erase, activation lock clearing, and soft-delete with trash/restore
- User and group administration with scaffold-based creation
- Class management with student and teacher assignment
- Device groups with UDID-based membership operations
- DEP device monitoring
- Instance dashboard (
overviewcommand) - Optional Platform API integration for blueprints and DDM reports
Cross-product
--fieldextraction for any response field- Name-based
apply(upsert) andpatch(JSON Merge Patch, RFC 7386) across resources --name,--serial,--udidflags in place of positional IDs on get/update/delete/patch--scaffoldto print JSON templates for create/update commands- Five output formats:
table,json,csv,yaml,plain - Auto-pagination (
--all) and dry-run mode (--dry-run) multicommand to run against multiple profiles with glob patterns and file input- Multi-instance support for MSPs via named profiles
- System keychain integration for secure credential storage
- Jamf Platform Gateway support with regional routing
- Shell completion for bash, zsh, fish, and PowerShell
Installation
Homebrew (macOS and Linux)
brew install Jamf-Concepts/tap/jamf-cli
Binary releases
Download from GitHub Releases.
From source
go install github.com/Jamf-Concepts/jamf-cli/cmd/jamf-cli@latest
Getting Started
# Jamf Platform Gateway setup (unlocks Platform API commands)
jamf-cli platform setup
# Jamf Pro direct setup (on-premises or Jamf Cloud without gateway)
jamf-cli pro setup --url https://jamf.company.com
# Jamf Protect setup
jamf-cli protect setup --url https://tenant.protect.jamfcloud.com
# Jamf School setup
jamf-cli school setup --url https://school.jamfcloud.com
# Instance dashboards
jamf-cli pro overview
jamf-cli protect overview
jamf-cli school overview
# List computers
jamf-cli pro computers list -o table
# Export inventory to CSV
jamf-cli pro computers list -o csv --out-file inventory.csv
# Fleet security posture report
jamf-cli pro report security -o table
# Jamf School: list enrolled devices
jamf-cli school devices list -o table
Requirements
- macOS or Linux
- Jamf Pro, Jamf Protect, and/or Jamf School instance with API access