What this enables
- Force-install the extension for users (no manual install).
- Pre-configure managed settings (via
chrome.storage.managed) so the extension knows which ScreenSteps “setup page” to use.
The extension currently supports one managed setting:
setupUrl(string): Full URL to your ScreenSteps extension setup page (example:https://help.yourdomain.com/extension/setup).
Managed storage schema (copy/paste)
This is the extension’s managed storage schema:
{
"type": "object",
"properties": {
"setupUrl": {
"title": "ScreenSteps Setup URL",
"description": "The full URL to your ScreenSteps extension setup page (e.g., 'https://acme.screenstepslive.com/extension/setup' or 'https://help.yourcustomdomain.com/extension/setup')",
"type": "string"
}
}
}Extension IDs (choose the correct one)
Use the ID that matches the store listing you deploy.
- Chrome Web Store:
kjnpdblaciideghjecicchjnjpmodnfp - Microsoft Edge Add-ons:
mmhfdlbngmgnfphepihackgejcjepmkj
Deployment checklist
- Decide browser: Chrome/Edge
- Force-install the extension
- Set managed configuration (
setupUrl) - Deploy force-install (
ExtensionSettings) and managedsetupUrl(3rd-party policy) — both are usually required for a silent, pre-configured install. - Verify in the extension service worker console
- Force-install the extension (Chrome / Edge)
Use your MDM / policy tooling to force-install the extension by ID.
You’ll need:
- Chrome update URL (Chrome Web Store):
https://clients2.google.com/service/update2/crx - Edge update URL (Edge Add-ons):
https://edge.microsoft.com/extensionwebstorebase/v1/crx
If your environment uses offline CRX distribution or a private store, use your standard method for that and still apply the managed configuration in the next section.
Example:
ExtensionSettings(copy/paste)Chrome (Chrome Web Store):
{ "kjnpdblaciideghjecicchjnjpmodnfp": { "installation_mode": "force_installed", "update_url": "https://clients2.google.com/service/update2/crx" } }Edge (Edge Add-ons):
{ "mmhfdlbngmgnfphepihackgejcjepmkj": { "installation_mode": "force_installed", "update_url": "https://edge.microsoft.com/extensionwebstorebase/v1/crx" } }Note on
ExtensionSettingsin the registry (no Group Policy)If you deploy policies without Group Policy (for example by importing a .reg file, running a script, or using MDM “custom registry”), force-install still uses the same JSON as above, but on Windows it must be stored as a single registry value:
- Chrome — Key:
HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Google\Chrome - Edge — Key:
HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Edge
Value name:
ExtensionSettings
Value type:REG_SZ (string)
Value data: the JSON object, on one line is fine (minified).Important: If ExtensionSettings already exists for other extensions, merge this extension into the existing JSON. Replacing the entire value with only Sidekick will remove policy for other extensions.
- Chrome update URL (Chrome Web Store):
- Configure managed storage (setupUrl)
The extension reads managed settings from
chrome.storage.managed(Chromium browsers).Set the value:
- Key:
setupUrl - Value:
https://<your-domain>/extension/setup
Windows (Registry / GPO) — managed storage keys
The registry paths below apply only to managed storage (
setupUrl). They do not force-install the extension. To force-install without GPO, setExtensionSettingsas described in the previous section, or use your MDM/GPO extension policy features.Managed extension storage is written under the browser policy hive:
- Chrome:
HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Google\Chrome\3rdparty\extensions\<extension_id>\policy
- Edge:
HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Edge\3rdparty\extensions\<extension_id>\policy
Example
.reg(copy/paste and customize):Windows Registry Editor Version 5.00 ; ScreenSteps Sidekick managed storage policy ; Requires Administrator privileges ; Chrome [HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Google\Chrome\3rdparty\extensions\<CHROME_EXTENSION_ID>\policy] "setupUrl"="https://<your-domain>/extension/setup" ; Edge [HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Edge\3rdparty\extensions\<EDGE_EXTENSION_ID>\policy] "setupUrl"="https://<your-domain>/extension/setup"macOS (Configuration Profile /
.mobileconfig) — Chrome managed storageOn macOS, extension managed storage must be delivered by a configuration profile (MDM).
Chrome extension managed settings use the preference domain:
com.google.Chrome.extensions.<extension_id>
Within that, use a
Forcedpayload and set:mcx_preference_settings.setupUrl = "https://<your-domain>/extension/setup"
Example payload snippet (copy/paste and customize):
<key>PayloadContent</key> <array> <dict> <key>PayloadContent</key> <dict> <key>com.google.Chrome.extensions.<CHROME_EXTENSION_ID></key> <dict> <key>Forced</key> <array> <dict> <key>mcx_preference_settings</key> <dict> <key>setupUrl</key> <string>https://your-domain/extension/setup</string> </dict> </dict> </array> </dict> </dict> <key>PayloadType</key> <string>com.apple.ManagedClient.preferences</string> </dict> </array> - Key:
- Verify the policy is applied
Verify in the browser
- Chrome: open
chrome://policyand confirm policies are present. - Edge:
edge://policyoften does not show extension-level managed storage. Use the runtime verification below.
Verify from the extension (recommended)
- Open
chrome://extensions/(Chrome) oredge://extensions/(Edge) - Enable Developer mode
- Find “ScreenSteps Sidekick” and click Service worker to open DevTools for the background context
- In the console, run:
chrome.storage.managed.get(null, console.log);Expected output includes:
{ setupUrl: "https://<your-domain>/extension/setup" } - Chrome: open
Troubleshooting
- Policy changes not taking effect:
- Fully quit and relaunch the browser (on macOS: Cmd+Q)
- On Windows, ensure policies are set in HKLM (machine-level) if you expect them to apply to all users
- Wrong extension ID:
- Confirm the ID in
chrome://extensions//edge://extensions/(Developer mode shows it) - Ensure you used the correct Chrome vs Edge ID for the store listing you deployed
- Confirm the ID in
- Managed settings are empty (
{}):- Confirm the policy path/domain exactly matches the extension ID
- Confirm your MDM/GPO is actually deploying the payload to the target device/user group
- Extension never installs: Confirm
ExtensionSettingsis deployed (GPO/MDM or theExtensionSettingsREG_SZ on the correct Chrome vs Edge key), JSON is valid, and you used the extension ID and update URL for the store you chose (Chrome Web Store vs Edge Add-ons). - setupUrl is empty in chrome.storage.managed: Confirm only the 3rd-party registry path and extension ID;
ExtensionSettingsdoes not setsetupUrl. - Edge on Windows: Use the Edge Add-ons ID and Edge update URL when standardizing on Edge.