API Script - Inventory Update via Smart Device Group - "Unknown Error Submitting PUT XML"

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Posted on
06-15-2018
01:59 AM
- last edited on
03-04-2025
05:41 AM
by
kh-richa_mig
Hi all,
I am having some issues with a python script to update inventory in a smart group.
I am using the Jamf pre made script from GITHUB. My environment is Jamf 10.5 on Windows Server 2016, I have tried to run this script from both a Windows and Mac machine. The script finds the smart group, finds the devices in that smart group via JSS device ID, however get an error "Unknown Error Submitting PUT XML"
I have spent the last couple of days with Hayden from Jamf support who has been fantastic. I am new to python and keen to see if anyone has a fix out there.
Thanks heaps,
Aaron
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Posted on 06-15-2018 08:45 AM
That's a very generic response from the API. There is no troubleshooting information from that response. I would verify a couple things.
1. Device ID Exists
2. Check XML that you are submitting to the devices for errors.
The Error itself basically says it doesn't know what to report.

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Posted on 06-15-2018 09:06 AM
Looks like it's failing within the submitDataToJSS function in that script, so I would try to replicate what it's doing there via curl or Postman. Should be something like this in curl:
curl -X PUT https://yourjssurl.com/JSSResource/mobiledevices/id/{id} --header 'content-type: application/xml' --header 'authorization: Basic {BASE64_ENCODED_CREDS}' --data '<mobile_device><command>UpdateInventory</command></mobile_device>'
Replace {id} with the id of a device and stick your base64 encoded credentials into the authorization header. That should display a better error message for troubleshooting.
