Preference Structure
The JSON schema profile is comprised of three main preference dictionaries; the General Options, the Scheduled Update Options and the Forced Update Options.
Schema Preference Key Guide
General Options
Activation Token
Activation Token
Public Key
Public Key
Allow Hourly Attempt Updates
Allow Hourly Attempt Updates
true
by default.Allow Recurring Update Prompts
Allow Recurring Update Prompts
true
by default.Automatic Self Updates
Automatic Self Updates
true
by default.Allowed Installs
Allowed Installs

Example | Only Zoom, Google Chrome and Microsoft Excel are allowed installs and any other App installs will not be allowed via Zappl.
Excluded Installs
Excluded Installs

Example | All Apps in the catalog can be installed by Zappl with the exception of WhatsApp and Facebook Messenger.
Allowed Updates
Allowed Updates

Example | Zappl will only update Zoom, Google Chrome and Microsoft Excel and all other Apps will be ignored.
Excluded Updates
Excluded Updates

Example | All Apps within the App Catalog will be updated by Zappl if installed, with the exception of Jamf Connect and Cato Client.
ONLY Scheduled Options
Run Frequency Options
Run Frequency Options
First, use the Run Frequency Option dropdown to define a method of frequently prompting users to update.

Specify Patch Frequency
Select this option if you prefer not to tie the updates to a specified weekday and instead run updates on a recurring frequency, e.g. once every day, once every week etc.Specify Recurring Patch Day
Select this option if you want to specify a day of each week to prompt users if they have pending updates, e.g. every Tuesday.When you select one of these two options, preferences that relate to each option automatically populate.

Specific Patch Frequency Preferences
Specific Patch Frequency Preferences
Frequency to Prompt Users
Use this dropdown to select how often you want to prompt users to update.
Frequency Elapsed Behaviour
This dropdown determines how Zappl should behave if the user defers the update. Selecting the Single Prompt Mode
option will ensure that if the user defers the update, they will not get prompted to update again until the configured frequency has elapsed again, e.g. one week later.Alternatively, select
Recurring Prompt Mode
if you prefer to prompt the user on a recurring basis after deferring until the update is installed.
Recurring Prompt Mode
, the ‘Recurring Prompt Mode Deferral Window - Patch Frequency’ field appears and allows you to define a minimum deferral period in minutes. 
Specific Patch Day Preferences
Specific Patch Day Preferences
Patch Day
Use this dropdown to select a day of the week to prompt users to update when updates are pending.
Missed Update Prompts
Selecting this option ensures that if a computer is offline on the defined weekly patch day, the user can be prompted to update at the next available opportunity as opposed to waiting until the next patch day. Leave this unchecked if you prefer to ensure that prompts are only ever displayed on the configured patch day.
Patch Day Prompt Frequency
This dropdown helps you determine how frequently users are prompted to update on the configured patch day when they defer an update.Selecting the
Single Prompt Mode
option ensures that when a user defers the update, they won’t get prompted to update until the following week on the configured patch day.If you prefer to prompt the user to update on a recurring basis on the configured patch day, select the
Recurring Prompt Mode
option. 
Recurring Prompt Mode
, the Recurring Prompt Mode Deferral Window (Patch Day)
field appears and allows you to define a minimum deferral period in minutes. 
Deferral Options
Deferral Options
Specify Deferral Limit
Configuring a deferral limit for updates ensures that users cannot defer the update indefinitely. The deferral limit you configure here is how many times the user will be allowed to defer the update before being forced to install the update. Use the Deferral Limit field to specify your desired deferral limit.
Disable Deferral Limit
Selecting this option will allow users to defer the update indefinitely. We recommend only using this option if you plan to create a workflow which utilises forcing the update on demand.
Disable Deferrals
Selecting this option will mean that users will not be given any opportunity to defer and will instead be given a Grace Period to save any work before the updates are automatically installed.
Grace Period
Grace Period
By default this value is
15
minutes, therefore you only need to configure this preference if you wish to decrease or increase the default grace period.
Custom Multiple Apps Title
Custom Multiple Apps Title

Custom Self Service Skip Button
Custom Self Service Skip Button
App List Type
App List Type

Vertical List

Horizontal List
Select this option if you prefer to display Apps in a basic comma separated list.
Scheduled AND Forced Options
Run Limitation Options
Run Limitation Options
A checkbox is available and by default ticked for each day of the week. If there is a particular day of the week you want to ensure update prompts are never displayed to the user, simply uncheck the box next to the day. This is useful when using the Specify Patch Frequency option, or when specifying a patch day with the Missed Update Prompts option checked.

By default, the start time is
12.00am
and the end time is 11.59pm
, but you can easily change this on a per-day basis by modifying the values in the fields.
2pm
and 4pm
but allow prompts for the rest of the day, simply reverse the timestamps as shown below.
Custom Icon
Custom Icon


Initial Prompt Icon Overlay
Initial Prompt Icon Overlay
.png
, .jpg
or .icns
file here to add one. To use the Jamf Self Service icon as the overlayed icon, type in selfService
.

Here we're using this feature with a custom App Store icon.
Custom Prompt Sizes
Custom Prompt Sizes
Custom Initial Prompt Size
The prompt shown when deferrals are available (Available in the Scheduled and Forced Updates dictionaries).Custom Grace Period Prompt Size
The prompt shown when deferrals are not available or not configured (Available in the Scheduled and Forced Updates dictionaries).Custom Self Service Prompt Size
The prompt shown when a user initiated the Self Service Updates policy (Available in the Scheduled Update options dictionary).The default size of the update prompts is set to provide enough space for the default text. If you change the text, the prompt size might become too small or too large. If it’s too large, you’ll see a lot of white space. If it’s too small, you’ll need to scroll to read all the text.To remediate this, use the custom prompt size preferences listed above to adjust the size of various prompts displayed to users.
Vertical List
as the app list option, Zappl automatically adds on the required prompt height to your custom prompt height to allow enough space for the App list to be shown beneath the prompt message. When configuring your custom prompt size, first switch the App List Type to the Horizontal List
option, and ensure your prompt message fits perfectly into the custom prompt size. Once you are happy with the size, change the App list type back to Vertical List
mode.
Custom Single App Title
Custom Single App Title
appName
variable.
Custom Title
. This is because forced updates are always performed on a per-App basis, so all forced update prompts relate to a single App.Custom Prompt Messages
Custom Prompt Messages
When customising prompt text, ensure that you customise the text on the keys outlined below.
Single App Initial Quit Prompt Message
This message will be displayed on the prompt shown when there is 1 pending App update and deferrals are available.Multiple Apps Initial Quit Prompt Message
This message will be displayed on the prompt shown when there are multiple App updates pending and deferrals are available.Single App Self Service Quit Prompt Message
This message will be displayed on the prompt shown when a user initiates the Self Service Application Updates policy and there is 1 pending App update which requires a quit.Multiple App Self Service Quit Prompt Message
This message will be displayed on the prompt shown when a user initiates the Self Service Application Updates policy and there are multiple pending App updates which require a quit.Single App Grace Period Quit Prompt Message
This message will be displayed on the prompt shown when there is 1 pending App update and deferrals are either not available or not configured.Multiple Apps Grace Period Quit Prompt Message
This message will be displayed on the prompt shown when there are multiple App updates pending and deferrals are either not available or not configured.
Custom Defer Button
Custom Defer Button
Custom Update Button
Custom Update Button
Prompt Refresh Interval
Prompt Refresh Interval
20
seconds. If you find this too aggressive, you can change the value to suit your needs. The minimum allowed value is 10
seconds.
Do Not Disturb Applications
Do Not Disturb Applications
It is recommended that you configure this preference and add any video conferencing or presentation software used across your estate. This will ensure that users don’t get prompted to update whilst on a conference call or when presenting.
To define an App, you must first get the bundle identifier of the App. To do so, paste the below command into Terminal on a macOS computer that has the App installed (replacing
zoom.us.app
with the name of the App you want to define). Alternatively, if it’s an app supported in our App Catalog you can find the Bundle Identifier there.Do Not Disturb Application Bundle ID
preference. You can add as many App bundle identifiers as you require by clicking the Add Do Not Disturb Application Bundle ID button.
Do Not Disturb Application Assertions
Do Not Disturb Application Assertions
This is useful in scenarios where a user may be in a meeting using a web-based client like Google Meets without a camera on, as the assertion used by the web browser would prevent the update from interrupting the meeting.
You can add as many assertion apps as you wish, ensuring to use the correct assertion name format. To get the required assertion name format, run
/usr/bin/pmset -g assertions
in Terminal while the application is running and using assertions.
Respect Do Not Disturb Mode
Respect Do Not Disturb Mode
Setting this as
true
will skip the update prompts, setting as false
will prompt users while Do Not Disturb mode is detected.
Do Not Disturb Camera Usage
Do Not Disturb Camera Usage
We recommend setting this as
true
to ensure that users are not interrupted whilst on conference calls.
Do Not Disturb Screen Sharing
Do Not Disturb Screen Sharing
We recommend setting this as true to ensure that users are not interrupted whilst sharing their screen on conference calls or whilst recording their screen.

Update Progress Prompt Position
Update Progress Prompt Position

top right
corner of the screen. This position can be modified using the dropdown within this preference.
Update Progress Prompt Behaviour
Update Progress Prompt Behaviour
Prompt without focus
Prompt with focus
This option ensures that the update progress prompt always stays visible on top of any apps the user is using during updates.Don't show a prompt
This option ensures no update progress prompt is displayed. With this configured, a reminder prompt will be displayed to the user if they attempt to open an app which is being updated.
Update Progress Prompt Overlay Icon
Update Progress Prompt Overlay Icon
You can specify either a path to a valid
.png
, .jpg
or .icns
file, or use the selfService
variable for the Jamf Self Service icon.

Automatically Relaunch Apps
Automatically Relaunch Apps
true
, Zappl silently relaunches the app as soon as the update completes providing that the app was in use prior to the update.Set this as
false
to skip relaunching apps.
Display Complete Message
Display Complete Message
The complete message prompt is the same size as the update progress prompt and inherits the same screen position.

true
, or alternatively to disable the prompt set this as false
.