Skip to content

Instantly share code, notes, and snippets.

@rmcdongit
Last active April 19, 2024 05:35
Show Gist options
  • Save rmcdongit/f66ff91e0dad78d4d6346a75ded4b751 to your computer and use it in GitHub Desktop.
Save rmcdongit/f66ff91e0dad78d4d6346a75ded4b751 to your computer and use it in GitHub Desktop.
Apple System Preferences URL Schemes

macOS 10.15 System Preference Panes

Below are a list of System Preference pane URLs and paths that can be accessed with scripting to assist users with enabling macOS security settings without having to walk them through launching System Preferences, finding panes, and scrolling to settings. Not all panes have an accessible anchor and some are OS specific.

To find the Pane ID of a specific pane, open the System Preferences app and select the desired Preference Pane. With the pane selected, open the ScriptEditor.app and run the following script to copy the current Pane ID to your clipboard and display any available anchors:

tell application "System Preferences"
	set CurrentPane to the id of the current pane
	set the clipboard to CurrentPane
	get the name of every anchor of current pane
end tell

Opening with URL Schemes

If the preference pane supports it, you can open them with a URL in terminal using the following syntax (replace <PaneID> with the desired pane ID):

open "x-apple.systempreferences:<PaneID>"

Open with System Preferences Bundle Identifier and Pane Path

You can also access the main preference panes using the file path to each pane from /System/Library/PreferencePanes/ using the open command with slightly different syntax (replace /Path/To/Pane with your desired pane):

open -b com.apple.systempreferences /Path/To/Pane

Preference Panes

Below are all the panes that display on most Macs running 10.15 Catalina but there are a few that are ommitted that are available on later versions of Apple hardware or installed plugins. If the pane supports being opened with URL then it is listed, otherwise you can use the path.

Apple ID Pane

/System/Library/PreferencePanes/AppleIDPrefPane.prefPane

Family Sharing Pane

/System/Library/PreferencePanes/FamilySharingPrefPane.prefPane

General Pane

/System/Library/PreferencePanes/Appearance.prefPane

Desktop & Screen Saver Pane

/System/Library/PreferencePanes/DesktopScreenEffectsPref.prefPane

Dock Pane

/System/Library/PreferencePanes/Dock.prefPane

Mission Control Pane

/System/Library/PreferencePanes/Expose.prefPane

Siri Pane

com.apple.preference.speech
/System/Library/PreferencePanes/Speech.prefPane

Spotlight Pane

/System/Library/PreferencePanes/Spotlight.prefPane

Language & Region Pane

/System/Library/PreferencePanes/Localization.prefPane

Notifications Pane

com.apple.preference.notifications
open -b com.apple.systempreferences /System/Library/PreferencePanes/Notifications.prefPane

Internet Accounts Pane

/System/Library/PreferencePanes/InternetAccounts.prefPane

Users & Groups Pane

/System/Library/PreferencePanes/Accounts.prefPane

Accessibility Pane

com.apple.preference.universalaccess
/System/Library/PreferencePanes/UniversalAccessPref.prefPane
  • Display com.apple.preference.universalaccess?Seeing_Display

  • Zoom com.apple.preference.universalaccess?Seeing_Zoom

  • VoiceOver com.apple.preference.universalaccess?Seeing_VoiceOver

  • Descriptions com.apple.preference.universalaccess?Media_Descriptions

  • Captions com.apple.preference.universalaccess?Captioning

  • Audio com.apple.preference.universalaccess?Hearing

  • Keyboard com.apple.preference.universalaccess?Keyboard

  • Mouse & Trackpad com.apple.preference.universalaccess?Mouse

  • Switch Control com.apple.preference.universalaccess?Switch

  • Dictation com.apple.preference.universalaccess?SpeakableItems

Screen Time

com.apple.preference.screentime
/System/Library/PreferencePanes/ScreenTime.prefPane

Extensions Pane

/System/Library/PreferencePanes/Extensions.prefPane

Security & Privacy Pane

Tip: The "Advanced" anchor will initially open S&P pane to your last used tab (General, FileValut, Firewall, Privacy)but if the pane is already open it triggers a the panel unlock wherever the user may be at in the Security and Privacy pane. So, if you want them to enable a specific Privacy setting, open the desired Privacy anchor first (e.g. ?Privacy_Contacts) and then open the Advanced anchor (?Advanced) to prompt the user password to unlock the preference pane.

Main Tabs

com.apple.preference.security
/System/Library/PreferencePanes/Security.prefPane
  • General com.apple.preference.security?General

  • Advanced com.apple.preference.security?Advanced

  • FileVault com.apple.preference.security?FDE

  • Firewall com.apple.preference.security?Firewall

  • Privacy Main com.apple.preference.security?Privacy

Privacy Anchors

  • Location Services com.apple.preference.security?Privacy_LocationServices

  • Contacts com.apple.preference.security?Privacy_Contacts

  • Calendars com.apple.preference.security?Privacy_Calendars

  • Reminders com.apple.preference.security?Privacy_Reminders

  • Photos com.apple.preference.security?Privacy_Photos

  • Camera com.apple.preference.security?Privacy_Camera

  • Microphone com.apple.preference.security?Privacy_Microphone

  • Speech Recognition com.apple.preference.security?Privacy_SpeechRecognition

  • Accessibility com.apple.preference.security?Privacy_Accessibility

  • Input Monitoring Not Available

  • Full Disk Access com.apple.preference.security?Privacy_AllFiles

  • Files and Folders Not Available

  • Screen Recording Not Available

  • Automation com.apple.preference.security?Privacy_Automation

  • Analytics and Improvements com.apple.preference.security?Privacy_Diagnostics

  • Advertising com.apple.preference.security?Privacy_Advertising

Software Update Pane

/System/Library/PreferencePanes/SoftwareUpdate.prefPane

Network Pane

/System/Library/PreferencePanes/Network.prefPane

Bluetooth Pane

/System/Library/PreferencePanes/Bluetooth.prefPane

Sound Pane

/System/Library/PreferencePanes/Sound.prefPane

Printers & Scanners Pane

/System/Library/PreferencePanes/PrintAndFax.prefPane
/System/Library/PreferencePanes/PrintAndScan.prefPane

Keyboard Pane

/System/Library/PreferencePanes/Keyboard.prefPane

  • Dictation com.apple.preference.speech?Dictation

Trackpad Pane

/System/Library/PreferencePanes/Trackpad.prefPane

Mouse Pane

/System/Library/PreferencePanes/Mouse.prefPane

Displays Pane

/System/Library/PreferencePanes/Displays.prefPane

Energy Saver Pane

/System/Library/PreferencePanes/EnergySaver.prefPane

Date & Time Pane

/System/Library/PreferencePanes/DateAndTime.prefPane

Sharing Preference Pane

com.apple.preferences.sharing
/System/Library/PreferencePanes/SharingPref.prefPane
  • Screen Sharing com.apple.preferences.sharing?Services_ScreenSharing

  • File Sharing com.apple.preferences.sharing?Services_PersonalFileSharing

  • Printer Sharing com.apple.preferences.sharing?Services_PrinterSharing

  • Remote Login com.apple.preferences.sharing?Services_RemoteLogin

  • Remote Management com.apple.preferences.sharing?Services_ARDService

  • Remote Apple Events com.apple.preferences.sharing?Services_RemoteAppleEvent

  • Internet Sharing com.apple.preferences.sharing?Internet

  • Bluetooth Sharing com.apple.preferences.sharing?Services_BluetoothSharing

Time Machine Pane

/System/Library/PreferencePanes/TimeMachine.prefPane

Startup Disk Pane

/System/Library/PreferencePanes/StartupDisk.prefPane

Profiles Pane

/System/Library/PreferencePanes/Profiles.prefPane

@mfbx9da4
Copy link

@rmcdongit Is there anyway to list these programatically?

@dz0ny
Copy link

dz0ny commented Jun 7, 2022

@mfbx9da4 Kinda, via applescript tell application "System Preferences" to get name of anchors of current pane, however this changed in macOS 13 beta 1 as some of links no longer work.

@xmddmx
Copy link

xmddmx commented Jul 30, 2022

Anyone figured out how to open the Screen Savers pane in Ventura?

In macOS 13 System Settings, Desktop (Wallpapers) and Screen Savers are now separate items, but none of these seem to work:

open /System/Library/PreferencePanes/DesktopScreenEffectsPref.prefPane
open x-apple.systempreferences:com.apple.preference.desktopscreeneffect

@noah-nuebling
Copy link

I found this one for Ventura!

open x-apple.systempreferences:com.apple.LoginItems-Settings.extension

@bmitchelmore
Copy link

This one will launch the TouchID and Passwords pane:

open x-apple.systempreferences:com.apple.preferences.password

The old method of using:

open /System/Library/PreferencePanes/TouchID.prefPane

stopped working in Ventura.

@bmitchelmore
Copy link

@xmddmx Looks like this works:

open x-apple.systempreferences:com.apple.ScreenSaver-Settings.extension

Incidentally, I found this while spelunking through plists inside the System Settings binary, if anyone else needs other panes, take a look at this plist: /System/Applications/System Settings.app/Contents/Resources/Sidebar.plist

@nhojb
Copy link

nhojb commented Sep 1, 2022

It seems to work with any extension bundle id for settings extensions found in /System/Library/ExtensionKit/Extensions. For example:

open x-apple.systempreferences:com.apple.wifi-settings-extension

You can check the extension is a settings extension by checking that EXExtensionPointIdentifier == com.apple.Settings.extension.ui.

@eduard-kellerman
Copy link

So, on Ventura it works to open:
open x-apple.systempreferences:com.apple.LoginItems-Settings.extension which is awesome.

Has anyone tried if it's possible to disable/hide this entirely from the menu?

@Brambler
Copy link

Brambler commented Oct 6, 2022

So, on Ventura it works to open: open x-apple.systempreferences:com.apple.LoginItems-Settings.extension which is awesome.

Has anyone tried if it's possible to disable/hide this entirely from the menu?

I am also looking for this solution as well, so if anyone finds a way to hide it from the menu please let me know!

@xmddmx
Copy link

xmddmx commented Oct 6, 2022

@bmitchelmore : I can confirm that open x-apple.systempreferences:com.apple.ScreenSaver-Settings.extension works to open the Screen Saver panel. Thanks!

@yerbestpal
Copy link

x-apple.systempreferences:com.apple.Passwords-Settings.extension is used to open the Passwords settings pane which is the alternative view for keychain access.

@jim-sauer
Copy link

jim-sauer commented Oct 31, 2022

For Ventura:
open x-apple.systempreferences:com.apple.Sound-Settings.extension
for the Sound pane.

@scriptingmd
Copy link

open x-apple.systempreferences:com.apple.Desktop-Settings.extension opens the Desktop & Dock panel.
How might I find the value of the Default Browser in that extension, and if possible change the value to another browser?

@noah-nuebling
Copy link

noah-nuebling commented Nov 2, 2022

@scriptingmd I don't have too much experience with stuff like that but you might be able to automate navigating and clicking the user interface using Apple Script or the AXUI API. See this SO post.

You should also be able to change the default browser using the defaults command line tool. Here is a collection of examples. The problem with the defaults command line tool is that you usually have to restart the 'Dock' process or your entire computer for the changes to take effect.

@piarasj
Copy link

piarasj commented Nov 3, 2022

This is a list of Ventura Settings in the order of their presentation in 13.0 (22A380)

@ovrdrvn
Copy link

ovrdrvn commented Nov 15, 2022

anyone know the URL for private relay in Ventura? Need a shortcut to turn it off whenever using FTP clients as the servers with firewalls won't allow access by the masked IP

@Kamik423
Copy link

Kamik423 commented Jan 6, 2023

Security/Extensions screen are (interchangeably)

x-apple.systempreferences:com.apple.preferences.extensions
x-apple.systempreferences:com.apple.ExtensionsPreferences

The sub points I have found so far:

open "x-apple.systempreferences:com.apple.preferences.extensions?Sharing"
open "x-apple.systempreferences:com.apple.preferences.extensions?Photos"
# or 
open "x-apple.systempreferences:com.apple.ExtensionsPreferences?Sharing"
open "x-apple.systempreferences:com.apple.ExtensionsPreferences?Photos"

@gbrunow
Copy link

gbrunow commented Feb 1, 2023

/System/Applications/System Settings.app/Contents/Resources/Sidebar.plist has a list of ids on Ventura.

And this lists some other keys.

for pref in $(strings "/System/Applications/System Settings.app/Contents/MacOS/System Settings" | awk '/^com.apple./ {print $1 }'); do echo "$pref"; done

Source

@tt-tsquared
Copy link

x-apple.systempreferences:com.apple.systempreferences.AppleIDSettings?iCloud also works for showing iCloud settings (built upon all the suggestions in this article and the later comments)

@Shane-Bird
Copy link

@tt-tsquared were you only able to navigate into icloud or were you able to navigate a step deep too?

@tt-tsquared
Copy link

@tt-tsquared were you only able to navigate into icloud or were you able to navigate a step deep too?

Not sure what you mean. I don't see any levels deeper than iCloud. Every row I click on just opens some modal window. I didn't need to (or try to) open any of those.

@Shane-Bird
Copy link

Shane-Bird commented Apr 19, 2023 via email

@gase12
Copy link

gase12 commented May 7, 2023

hi. do you know how to find the id or name of a custom extension installed?
namely 'Cusrsorcerer' i need to switch to its pane.
thanks.

@gingerbeardman
Copy link

@gase12 look inside the prefpane at its Info.plist file

@searmstrong197
Copy link

searmstrong197 commented Jun 7, 2023

i can't seem to find any info on actions added to the url - ie.
open x-apple.systempreferences:com.apple.Software-Update-Settings.extension?action=showUpdate

**update if you throw it into a .sh file, the action item seems to work (showBetaUpdates) (showUpdates) (and no action) all seem to work

@Milksheyke
Copy link

open x-apple.systempreferences:com.apple.Software-Update-Settings.extension?action=showUpdate

**update if you throw it into a .sh file, the action item seems to work (showBetaUpdates) (showUpdates) (and no action) all seem to work

Confirmed to work on Ventura 13.3.

Has anyone found a way to get to this specifically on Monterey/Big Sur by any chance?
image

@keithgibson
Copy link

open x-apple.systempreferences:com.apple.Software-Update-Settings.extension?action=showUpdate

This is great @searmstrong197. Where or how did you find the action names? I'm also trying to find a way to access hide my email within iCloud like @Shane-Bird.

Also thank you to @tt-tsquared for piecing together the icloud xcallback!

@minhluong96
Copy link

For MacOS Ventura, if you want to open System Settings/Preferences to a specific app’s notification settings
open x-apple.systempreferences:com.apple.preference.notifications?id=(app-bundle-id)

Example:

open x-apple.systempreferences:com.apple.preference.notifications?id=com.apple.iCal
open x-apple.systempreferences:com.apple.preference.notifications?id=com.apple.Photos
open x-apple.systempreferences:com.apple.preference.notifications?id=com.google.Chrome

Ref: https://sporks.space/2023/06/19/opening-system-settings-preferences-to-a-specific-apps-notification-settings/

@wlew-via
Copy link

x-apple.systempreferences:com.apple.systempreferences.AppleIDSettings?iCloud also works for showing iCloud settings (built upon all the suggestions in this article and the later comments)

This doesn't work, at least not in macos13.6. i can get to the appleid settings pane with x-apple.systempreferences:com.apple.systempreferences.AppleIDSettings but cannot go to the next iCloud with the ?iCloud. I tried ?icloud, *iCloud, *icloud and none of those work.

looking for a way to open the icloud pane on users macs so they can turn off FindMy option.

@yous
Copy link

yous commented Oct 2, 2023

Input Monitoring in Security Pane: com.apple.preference.security?Privacy_ListenEvent

@LuLuSaBee
Copy link

Bluetooth in Security Pane: com.apple.preference.security?Privacy_Bluetooth

@Jinlongning
Copy link

Files and Folders is Available。com.apple.preference.security?Privacy_FilesAndFolders

@MSBlueVn
Copy link

open "x-apple.systempreferences:com.apple.preference.security?Privacy_ScreenCapture"
For screen recording

@gmarnin
Copy link

gmarnin commented Feb 22, 2024

Open AppleCare & Warranty, in System Settings: General:

/usr/bin/open x-apple.systempreferences:com.apple.Coverage-Settings.extension

@NSExceptional
Copy link

Anyone know if there's a pane ID for the keyboard shortcuts submenu of keyboard settings?

@gingerbeardman
Copy link

gingerbeardman commented Feb 25, 2024

Anyone know if there's a pane ID for the keyboard shortcuts submenu of keyboard settings?

I guessed this using the info presented above.

open "x-apple.systempreferences:com.apple.preference.keyboard?Shortcuts"

To manage Keyboard Shortcuts > App Shortcuts, I use an app called CustomShortcuts https://www.houdah.com/customShortcuts/

@NSExceptional
Copy link

@gingerbeardman Sick! Didn't know that was a thing! Always wanted autocomplete for menu bar items like that.

Anyway, nice guess! Thanks!

@gingerbeardman
Copy link

@NSExceptional in any app you can also type Cmd+/ to get to Help > Search, and then you can type in the text of any menu item and invoke it directly. For times when there isn't a shortcut or you can't remember it.

And there's an app called FinBar that might be useful depending on how you work. https://www.roeybiran.com/apps/finbar

@decivilizator
Copy link

Is there a way to target Function Keys pane, since x-apple.systempreferences:com.apple.Keyboard-Settings.extension?Shortcuts opens Modifier Keys view?

function-keys-pane

@gingerbeardman
Copy link

gingerbeardman commented Mar 8, 2024

Is there a way to target Function Keys pane, since x-apple.systempreferences:com.apple.Keyboard-Settings.extension?Shortcuts opens Modifier Keys view?

After that one opens to Modifier Keys simply press up cursor to get to Function Keys. Easy.

Edit: figured it out, using the info at this page: https://gist.github.com/dvessel/2b6ad97b2da16d445671b39618221aab

open "x-apple.systempreferences:com.apple.Keyboard-Settings.extension?FunctionKeys"

@decivilizator if you change that Function Keys preference often, you might find the app Fluor useful. It allows you to set that preference per-app so you can set and forget. https://github.com/Pyroh/Fluor

@decivilizator
Copy link

@gingerbeardman That's the one! Thanks, Matt!

@drandomuser
Copy link

Can we pass parameters through this URL to update text-replacement section automatically?

open "x-apple.systempreferences:com.apple.Keyboard-Settings.extension?TextReplacements"

@gingerbeardman
Copy link

gingerbeardman commented Apr 16, 2024

No, but you could most likely AppleScript that sort of change.

Easily because it can all be done with the keyboard, no need to do any UI scripting.

open "x-apple.systempreferences:com.apple.Keyboard-Settings.extension?TextReplacements"

  1. type the shortcut "replace" text you want to change
  2. type enter to change that
  3. type tab to move to the "with"
  4. type the new text
  5. type enter

repeat steps 1-5 for any further changes

type escape to get out

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment