When pushing the “ScheduleOSUpdate” command to a Supervised MDM enrolled iPad device, command fails with the following error.
Available OS Update response
<key>AvailableOSUpdates</key>
<array>
<dict>
<key>AllowsInstallLater</key>
<false/>
<key>Build</key>
<string>20G75</string>
<key>DownloadSize</key>
<integer>4456890240</integer>
<key>HumanReadableName</key>
<string>iOS 16</string>
<key>InstallSize</key>
<integer>467664896</integer>
<key>IsCritical</key>
<false/>
<key>ProductKey</key>
<string>iOSUpdate20G75</string>
<key>ProductName</key>
<string>iOS</string>
<key>RestartRequired</key>
<true/>
<key>Version</key>
<string>16.6</string>
</dict>
</array>
<key>CommandUUID</key>
<string>AvailableOSUpdates</string>
<key>Status</key>
<string>Acknowledged</string>
ScheduleOSUpdate command
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>CommandUUID</key>
<string>ScheduleOSUpdate</string>
<key>Command</key>
<dict>
<key>RequestType</key>
<string>ScheduleOSUpdate</string>
<key>Updates</key>
<array>
<dict>
<key>ProductKey</key>
<string>iOSUpdate20G75</string>
<key>InstallAction</key>
<string>Default</string>
<key>ProductVersion</key>
<string>16.6</string>
</dict>
</array>
</dict>
</dict>
</plist>
ScheduleOSUpdate command response
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>CommandUUID</key>
<string>AttemptOSUpdate</string>
<key>Status</key>
<string>Acknowledged</string>
<key>UDID</key>
<string>****</string>
<key>UpdateResults</key>
<array>
<dict>
<key>ErrorChain</key>
<array>
<dict>
<key>ErrorCode</key>
<integer>12057</integer>
<key>ErrorDomain</key>
<string>MCMDMErrorDomain</string>
<key>LocalizedDescription</key>
<string>The update failed to download.</string>
<key>USEnglishDescription</key>
<string>The update failed to download.</string>
</dict>
<dict>
<key>ErrorCode</key>
<integer>2202</integer>
<key>ErrorDomain</key>
<string>DeviceManagement.error</string>
<key>LocalizedDescription</key>
<string>A download failed.</string>
</dict>
<dict>
<key>ErrorCode</key>
<integer>31</integer>
<key>ErrorDomain</key>
<string>com.apple.softwareupdateservices.errors</string>
<key>LocalizedDescription</key>
<string>The operation couldn’t be completed. (com.apple.softwareupdateservices.errors error 31.)</string>
</dict>
</array>
<key>InstallAction</key>
<string>Error</string>
<key>ProductKey</key>
<string>iOSUpdate20G75</string>
<key>Status</key>
<string>DownloadFailed</string>
</dict>
</array>
</dict>
</plist>
As seen in the AvailableOSUpdate response, this device is applicable for iOS 16 update but unable to update manually as well as via MDM.
The device has the following message showing up, is there any relation between the MDM command failing and this message.
This iPad device is currently running "12.1.4" OS version
Kindly confirm the reason for this message and the reason for this failure via MDM.
And also confirm if there are any restrictions to update to certain major OS versions from lower OS versions, if so kindly share any documentation available regarding this.

General
RSS for tagExplore the intersection of business and app development. Discuss topics like device management, education, and resources for aspiring app developers.
Post
Replies
Boosts
Views
Activity
I downloaded Apple Configurator v1.1 from the App Store to an iPad 9th Gen running iPadOS 16.1. When I try to launch the Configurator, the display goes black for a second and then returns to the home screen. I have neither a current Mac available nor an iPhone, only a stack of new iPads purchased through Amazon.
WWDC21 session 10123 shows a screen that implies the guardian instance of your app is able to select apps on your child's device to encourage or to control. In my experience with the API so far I can't see a way to do this. The API only seems to work on the child's phone. Here are my questions:
Is there a suggested way to determine whether the app is running on a guardian device? The only way I can see is to attempt AuthorizationCenter.shared.requestAuthorization and check for an error value of .invalidAccountType. But it seems you could get that error for other reasons too.
Is there a way to present FamilyActivityPicker on the guardian device but have it show apps on the child's phone? I don't see any thing in the API for selecting a child account to access with `FamilyActivityPicker', it seems to only show the phone's user's apps (or no apps if it's the guardian's phone).
After retrieving app tokens from 'FamilyActivityPicker' is there a recommended way to present to the user in the UI? The WWDC session shows an app icon and app name (i.e. "Books" and "Solar System"), but my understanding is that info is hidden from the developer for privacy reasons. So I'm wondering if the example in the session is really feasible.
During the "What’s new in managing Apple devices" session, you provided information about the "Not Now" option during Mac ABM Enrollment. We observed that this option was functional when enrolling a Mac through ABM using the "profiles renew -type enrollment" command. However, when attempting to enroll a Mac by erasing it through ABM, we couldn't find the "Not Now" option. Could you please confirm whether the "Not Now" option is intended to be available when enrolling a Mac by erasing it through ABM? Your clarification on this matter would be greatly appreciated.
Since a few days my Apple Business Manager Enterprise App in Azure was quarantined. I had no configuration changes, it just suddenly stopped. I have two groups which contain the users I want to sync. It seems it cannot use groups at all anymore. If I assign users directly it will work. But that's very inconvenient for us.
Was there any change lately to explain why this does not work anymore?
Group
User