title: Error Code Software Update Required description: An error response that indicates the system requires a software update. payload: supportedOS: iOS: introduced: '17.0' macOS: introduced: '14.0' tvOS: introduced: n/a visionOS: introduced: '26.0' watchOS: introduced: n/a payloadkeys: - key: code type: presence: required rangelist: - com.apple.softwareupdate.required content: Indicates that the device needs to perform a software update before enrollment and setup can proceed. - key: description type: presence: optional content: A description of the error. Only use this for logging purposes and don't display it to the user. - key: message type: presence: optional content: A description of the error to display to the user. - key: details type: presence: required content: A dictionary that contains additional data about the error code. subkeys: - key: OSVersion type: presence: required content: The OS version that the device needs to update to, for example, "16.1". This identifier can include a supplemental version identifier, for example, "16.1 (a)". - key: BuildVersion type: presence: optional content: The build version that the device needs to update to, for example, "20A242. The systems uses the build version for testing during seeding periods. This identifier can include a supplemental version identifier, for example, "20A242a". If the `BuildVersion` isn't consistent with the `OSVersion`, `OSVersion` take precedence. - key: RequireBetaProgram supportedOS: iOS: introduced: '17.5' macOS: introduced: '14.5' type: presence: optional content: The device enrolls in the beta program, allowing enforced software updates to beta program OS versions. The device remains in the beta program after the system completes the enforced software update. subkeys: - key: Description type: presence: required content: A human readable description of the beta program. - key: Token type: presence: required content: The AxM seeding service token for the AxM organization the MDM server is part of. The system uses this token to enroll the device in the corresponding beta program. notes: - title: '' content: |- The schema for a JSON or property list XML document that an MDM server's 403 response body contains. The response headers need to include a "Content-Type" header that indicates whether the response returns JSON or XML. The MDM server returns this response when a device enrolls in MDM during Setup Assistant and it requires the device to perform a software update before it can continue with enrollment and setup.