Overview
The following describes how to use Addigy's API to do a bulk wallpaper change to your iOS and iPadOS devices.
- The Public API Commands are documented here: https://documenter.getpostman.com/view/6033495/S17tPnJf#3254e151-4b05-4a96-9f82-0a874f491d75
- Apple Developer documentation here: https://developer.apple.com/documentation/devicemanagement/settingscommand/command/settings/wallpaper#properties
In order to perform this, you will need to run a custom script on your admin device and a few other requirements.
This script will return all the devices within your specified policy, parse through the results, and only queue MDM Commands for iOS Devices.
Requirements
- iOS and iPadOS Supervised Devices
- Requires iOS 8.0+
- Requires Addigy MDM
- Desired wallpaper encoded as a base64 image
- An Addigy API Client ID and Client Secret
- Policy ID of the Policy the command will be sent to
Applying the Wallpaper in Bulk
The following steps walk through how to use the attached script to set the wallpaper on groups of devices within a specified policy.
- Download the Script attached to this KB Article
- Create an API Key in Account > Integrations > Add API
- Insert your Client ID, Client Secret, and Policy ID into the variables at the top of the script called 'client_id', 'client_secret', and 'policy_id'
- Choose a location to set the background. You have three values to choose between:
- Lock Screen
- Home Screen
- Both
- Convert your desired wallpaper into a base64 image and copy it. The following is a useful site that can be helpful in encoding your wallpaper image: https://elmah.io/tools/base64-image-encoder/
- Paste the base64 encoded image text into the script. Do keep in mind that the encoded image text will contain a sizeable amount of lines
- Run the script on your admin machine from the terminal (e.g. 'sudo sh ios-wallpaper.sh')
- Verify that the wallpaper has changed
Additional Information
- The script should be used carefully as it will set the wallpaper on all iOS Devices within your specified policy.
- The script will contain your API keys, so do not share it publicly.