Update an MDM control
Partially update an existing MDM control by ID. Send only the fields you want to change — any omitted field is left unchanged. type is required and must match the control (it selects the config schema). Editable fields: name, enabled, configurationPayload, and targeting. configurationPayload fully replaces the stored config when present (not merged); omit it to keep the current config, or send null to clear it. Targeting is set via targetMethod (omit to keep current): “All” (every device) or “DeviceGroup” (includedDeviceGroupIds/excludedDeviceGroupIds). An unknown ID returns 404, invalid config/targeting 400, a name/profile conflict 409, and demo companies are not allowed to update MDM controls (403).
Authorizations
Use your Primo API key in the Authorization header as Bearer <API_KEY>.
Path Parameters
Body
Control type discriminator, e.g. "wifi_macos". Read it from GET /mdm-controls/:id.
malwarebyte_macos, malwarebyte_windows, malwarebyte_linux, recoveryOs_macos, softwareUpdate_macos, appBlocking_macos, wifi_macos, wifi_ios, wifi_ipados, wifi_windows, wifi_android, wifi_linux, adminUserManagement_macos, adminUserManagement_windows, adminUserPasswordRotation_macos, adminUserPasswordRotation_windows, deviceNaming_macos, deviceNaming_windows, deviceNaming_linux, googleChrome_macos, googleChrome_windows, firewall_macos, firewall_windows, usbBlocking_macos, usbBlocking_windows, usbBlocking_linux, entraSSO_macos, oktaSSO_macos, primoSSO_macos, customFile_macos, customFile_ios, customFile_ipados, customFile_windows, customFile_android, customFile_linux, passwordPolicy_macos, passwordPolicy_windows, passwordPolicy_ios, passwordPolicy_ipados, passwordPolicy_android, sentinelOne_macos, sentinelOne_windows, sentinelOne_windows_arm64, sentinelOne_linux_deb, sentinelOne_linux_deb_arm64, sentinelOne_linux_rpm, sentinelOne_linux_rpm_arm64, diskEncryption_all, osUpdate_macos, osUpdate_windows, osUpdate_ios, osUpdate_ipados, rustdesk_macos, rustdesk_windows, disableProfilesPane_macos, screenCapture_macos, disableAirdrop_macos, airPrint_macos, webClip_macos, webClip_ios, webClip_ipados New display name. Omit to leave it unchanged.
New enabled state. Omit to leave it unchanged.
Full replacement config payload for the control, in clear values. Omit the field to leave the current config unchanged; send null to clear it. A partial payload is not merged — when present, send the whole config. Secret fields are returned redacted ("REDACTED") by GET, so replace them with real values before sending.
How the control is targeted. Omit to leave targeting unchanged. "All" ignores the group fields below.
All, DeviceGroup Device group IDs to include. Used only when targetMethod is "DeviceGroup".
Device group IDs to exclude. Used only when targetMethod is "DeviceGroup".
Response
Whether the MDM control was updated.