Infonity Tech
Published in

Infonity Tech

The Complete Beginner’s Guide to Apple Shortcut Deep Linking for Developers

Do you know you can use other apps’ Siri shortcuts in your app?

Apple opened SiriKit intents for limited domains based on the type of apps like Messaging, Lists and Notes, Workouts, Payments, VoIP Calling, Visual Codes, Photos, Ride Booking, Car Commands, CarPlay and Restaurant Reservations.

Apple introduced Siri Shortcuts in iOS 12 feature. Siri Shortcuts is breakthrough of SiriKit limitation. Now you can ask or can train Siri to perform your workflows.

Apple Shortcut app: https://itunes.apple.com/app/shortcuts/id915249334

We’ve all seen how to create workflows and also we can make our custom workflow from application as well, but most of us don’t know that we can deeplink in shortcut as well. Shortcut allows us to open or run shortcut, open gallery and search for specific kind of shortcut as well.

The URL Scheme for the Shortcut app is shortcuts: //

Deeplinking parameters

name — Name of the shortcut.

inputInput is the string input to the shortcut which you are going to run.

These are basic parameter which allow you to open or run any shortcut. Lets see how we can open or run any shortcut.

Open (not run) a specific shortcut

shortcuts://open-shortcut?name=[name]

Running a specific Shortcut

shortcuts://run-shortcut?name=[name]&input=[input]

Simple right?? But How can we know is shortcut run successfully or not. Well apple also provided this feature as well.

x-callback-urlCallback url is responsible for sending response back after excusion of shortcut.

shortcuts://x-callback-url/run-shortcut?name=[name]&x-success=[url]

Callback URL work with 3 parameters:

x-success — To handle Successful execution

x-cancel — To handle interruptions in execution

x-error — To handle errors in execution

You can specify your application URL Scheme to open app once shortcut execution completed

shortcuts://x-callback-url/run-shortcut?name=Make%20PDF&x-success=sampleapp://status=0

Note: URL should be URL-encoded and Shortcut should be added to the library.

https://www.icloud.com/shortcuts/c5e23f99886c42d7be3883bd5df8a973

Here is simple Bluetooth TurnOn shortcut file. Add this to library of your shortcut app.

Below is sample code to run shortcut and on success it will trigger ‘shortcutDemo://status=1’ (URL Scheme: shortcutDemo).

Shortcut for Bluetooth Turn on

Shortcut links

Import a Shortcut

shortcuts://import-shortcut?url=[url]&name=[name]

url — URL for a. shortcut file

name — Name of the shortcut

You can &silent=true in url for importing shortcut in library without opening Shortcut app.

Open the Shortcuts Gallery

shortcuts://gallery

Search the Shortcuts Gallery

shortcuts://gallery/search?query=[query]

Conclusion

You make any workflow related to your application and make SiriKit work for you OR you can call another application shortcut from your application.

Give your support

If you find this post helpful, please recommend it for others to read.

Follow me for the next interesting article. 😇
I hope you liked, have a good dev day 😀
Please leave comments below if you have new ideas or suggestions.

Thanks for the reading 👍

--

--

--

ARE YOU CURIOUS?

Recommended from Medium

YUP?.. Nope, [Validator] 2022 is your year!

yup validator stats screen: Bundle size 60.1kb minified

Mist NFT — Weekly Recap #3

OpenID Connect with .NET Core 2.2 with Keycloak , Google and Twitter .

Ray — A cluster computing ML framework for emerging applications

Creating a technology team that scales

Cookies and Session ID

Sharing Data Between Different Activities in Android Programming

Use Python Lists to the Fullest

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Darshit Shah

Darshit Shah

Sr. Software Developer, Passionate for App UI/UX, Blogger

More from Medium

Is Swift the Objective Choice now?

How could you set up live rendering? — UIKit Swift 5

App Tracking Transparency in iOS 15

Sending Message Error To Webhook Slack