Pulsar Deep Links
You’re able to interact with Pulsar from other apps on your device through the use of deep links. Deep links are a uniform resource identifier (URI) that your device will route to our app where they will be recognized and enacted.
Starting with Pulsar version 13.0.0, Pulsar supports two forms of deep links:
App-specific schemes (URI’s prefixed with the
pulsar://
scheme):
pulsar://{action}/{objectType}?parameter1=value1¶meter2=value2
Universal Links (URI’s prefixed with the Luminix website and
https://
scheme:
https://www.luminixinc.com/pulsarapp/{action}/{objectType}?parameter1=value1¶meter2=value2
The below documentation uses the App-specific scheme, but in all examples below, replacing pulsar://
with https://www.luminixinc.com/pulsarapp/
will use the Universal Link form of the deep link.
// General Pulsar Deep Link Format
pulsar://{action}/{objectType}?parameter1=value1¶meter2=value2
// or //
pulsar://{action}/{objectType}/{objectId}?parameter1=value1¶meter2=value2
In the above URI, {action} must be one of our supported actions (view, edit, update, create, list, launchdocument, quickaction, flow) and {objectType} must be a Salesforce object type that you have sync’d with Pulsar.
ObjectType is case sensitive. Please use WorkOrderLineItem and not workOrderLineItem or workorderlineitem.
In the second example above there is an optional value that must be a valid Salesforce object Id for the provided object type. This is one of the way you can let Pulsar know what object you’d like to perform the action on.
Parameters
Parameters allow you to provide the action with a set of arguments. Pulsar has a set of special parameters that are important to know about:
__show: can be true or false, and the default is false. When set to true, Pulsar will display the resulting object after performing the action. This is relevant for edit, update, create and possible quickaction.
id: While not actually a special field, id can be used to specify what object to perform your action on. The value that you choose should match a Salesforce object Id that you have sync’d to your device through Pulsar. [object selector]
__field: This parameter is for indicating to pulsar a specific field to use as a selector when determining which object we should perform the action on. Specify a field that exists on the object type you provided. [object selector]
__value: This parameter is used in conjunction with __field. It provides us the expected value of the field you’d like to use to find the object you want to perform this action on. The following three are equivalent statements. [object selector]
__create: This parameter can be set to true or false and is false by default. When set to true, if the provided object location parameters fail to find an object, Pulsar will create a new object for you with the provided parameters and values.
qa: This parameter is used specifically with the quickaction action. It defines the quick action to use. This quick action must be present on the object type provided and the context for the quick action will be determined by your object selectors.
Parameters are also case sensitive!
Supported Actions:
View
Opens a Pulsar page to view the object in display mode. This is just like using the Pulsar app to navigate to this object. Any parameters passed to this action will be used as elements of a search. All parameters passed in must be matched in order to show the object. If more than one match is found, a list view will be presented and you can select the object you wish to view.
Edit
Opens a Pulsar page to edit the object. This is just like using the Pulsar app to navigate to an object and tapping the edit button. Any parameters passed to this action will be considered changes you’d like to make to the objects field/value pairs. Use the object selectors discussed above to target an object for editing. If the object selectors find more than one object, you will be presented with a list of objects to choose from that match the selectors.
Update
Like edit, update modifies an object determined by the object selectors provided with the changes supplied in the parameters. Unlike edit, update does so without presenting an edit screen with which to make additional changes.
Create
Create does not use object selectors. All parameters passed to create are used as initial values for the object. You can even pass no parameters an open an unpopulated create page for an object of the provided object type.
List
List is very similar to view. All parameters are used as a filter on the provided object type. All objects which satisfy all the parameter filters are displayed to the user in a list.
QuickAction
Quick action launches a quick action specified by the special parameter qa. The value of this parameter must match the QuickActionName (API Name) of a quick action defined on objects of the provided object type. A valid object context must also be determined by the provided object selectors.
Launch Document
Opens a Pulsar page to view the specified document from the Content Library. The Id of the document can be provided as a parameter or as part of the path, but in the case of web content (HTML documents), all parameters will be passed along as URL parameters. Note: The launchdocument action works for Content Library documents, but other types of documents (Attachments and Salesforce Files not in the shared Content Libraries) should be opened using the view API.
Custom OAuth
This form of deep link is used solely as a callback/redirect URI related to external or internal custom OAuth 2.0 flows. Upon receiving this deep link, Pulsar will call any registered custom_oauth
handlers. When it is used, any information added to the deep link as a hash fragment or parameters will be passed in the handler, for use by the custom application that set up the handler. For example the following custom application code will use this deep link behavior:
Â
Examples
The following are examples of deep links
View
pulsar://view/WorkOrder?WorkOrderNumber=00000221
pulsar://view/WorkOrder/0WO3s000000K2YwGAK
pulsar://view/WorkOrder?Id=0WO3s000000K2YwGAK
pulsar://view/WorkOrder?__field=Id&__value=0WO3s000000K2YwGAK
pulsar://view/WorkOrder?WorkOrderNumber=455&__create=true
Edit
pulsar://edit/WorkOrder/0WO3s000000K2YwGAK?Priority=Medium
pulsar://edit/WorkOrder?Id=0WO3s000000K2YwGAK&Priority=Low
pulsar://edit/WorkOrder?__field=Id&__value=0WO3s000000K2YwGAK&Priority=High
pulsar://edit/WorkOrder?__field=Status&__value=New&Priority=Medium
pulsar://edit/WorkOrder?__field=Status&__value=New&Priority=Medium&__show=true
Update
pulsar://update/WorkOrder/0WO3s000000K2YwGAK?Priority=Medium
pulsar://update/WorkOrder?Id=0WO3s000000K2YwGAK&Priority=Low
pulsar://update/WorkOrder?__field=Id&__value=0WO3s000000K2YwGAK&Priority=High
pulsar://update/WorkOrder?__field=Status&__value=New&Priority=Medium
pulsar://update/WorkOrder?__field=Status&__value=New&Priority=Medium&__show=true
Create
pulsar://create/WorkOrder
pulsar://create/WorkOrder?Priority=Medium&Oops=thiswontappear&Description=New%20thing
pulsar://create/WorkOrder?__show=true
List
pulsar://list/WorkOrder?Priority=Medium
pulsar://list/WorkOrder?Priority=High&__create=true
pulsar://list/WorkOrder?Status=New&Priority=Low
QuickAction
pulsar://quickaction/WorkOrder?qa=GeneratePdf&Id=0WO3s000000K2YwGAK
pulsar://quickaction/WorkOrder/0WO3s000000K2YwGAK?qa=GeneratePdf
pulsar://quickaction/WorkOrder?Status=New&qa=GeneratePdf
Launch Document
pulsar://launchdocument/?Id=0693s00000CrVuxAAF
pulsar://launchdocument/0693s00000CrVuxAAF
pulsar://launchdocument/?Id=0693s00000CrVuxAAF&ref_id=0WO6A000001Anr4WAC
pulsar://launchdocument/0693s00000CrVuxAAF?ref_id=0WO6A000001Anr4WAC
Â
Â