Before
An administrator likely had to identify each requested Chrome extension manually, retrieve its extension ID, and check the current JAMF Pro configuration profile. They then had to merge the new entries into the existing blocklist, update the profile, and notify the responsible team separately.
How it works
- Receive the extension request, extract its contents, and verify that the requester matches the configured authorization value.
- Identify the requested extension IDs, retrieve the relevant JAMF Pro profile, and preserve its existing blocklist entries.
- Submit the updated profile and send a Slack completion notification.
Workflow details
- Request intake and authorization: The workflow starts from an emailhook containing extension information and a user identifier. It extracts the request text and only continues when the identifier matches the configured authorization value.
- Extension identification: An AI-assisted step converts the requested Chrome extension names into extension IDs using a defined XML-style response structure, while the workflow prepares the returned values for insertion into the configuration profile.
- Profile discovery and validation: The automation authenticates to JAMF Pro, retrieves the available macOS configuration profiles, selects the targeted profile, and reads its existing Chrome extension blocklist entries.
- Configuration update: It combines the current blocklist with the newly identified extension IDs, formats the result as the required macOS configuration profile payload, and submits an update to the selected JAMF Pro profile.
- Operational notification: After the update request completes, the workflow sends a Slack message stating that the blocklist update has been implemented and distributed.
What changed
The request now moves through authorization, extension-ID identification, profile retrieval, list preservation, configuration update, and notification automatically. The human handoff changes from assembling and applying the update to submitting a request and receiving the resulting Slack status message.
Work removed
Manually checking requester authorization, looking up Chrome extension IDs, retrieving the applicable configuration profile, reviewing existing blocklist entries, building the updated profile payload, submitting the profile change, and sending the completion notification.
Expected outcome
Each request can conservatively remove approximately six to seven recurring administrative actions from the update process, with the resulting blocklist change and notification produced through one workflow.

