Tutorial: Exposing Services to External Participants

Exposing Services to External Participants

SPARK External Participant Toolkit - Exposing Tasks Externally

Overview

The SPARK External Participant toolkit has two very similar methods for exposing services to non-bpm users. Both General System Services, the primary distinction between these two services is their outcomes. The "Register Service EPS Request" system service will return a URL for accessing the service, which can then be sent to the external user to give them access. The "Assign And Notify External Service Participant" system service will both, create the URL to send to the external user, and also email them the URL in the form of a link.

Register Service EPS Request

To expose a service (such as a startable service) to a non-bpm user, you only need two pieces of information: the service name, and the process app acronym (which can be found under the Overview tab of the Process App Settings). Once you have these pieces of information, you just need to set them under the data mapping configuration options, as well as any other optional configuration options you wish to use. The details of these options are listed below

Register Service EPS Request Data Mapping Options

  • serviceName (String): The name of the service you wish to expose
  • appAcronym (String): Acronym for the process app the service resides in
  • serviceContext (List of NameValuePair): (Optional) Any extra context and information the service may need
  • exposedTo (String): (Optional) Group the service is exposed to. The temporary user will be assigned to this group if set
  • clientSideHumanService (Boolean): (Optional. Defaults to false) Set to true if the service being run is a client side human service
  • runAsUser (String): Set your own user id for external participant. Note that if this is left blank, the toolkit will automatically generate a unique id
  • maxReqs (Integer): The maximum number of times an external user may run this service
  • validUntil (Date): Date at which the link becomes invalid for running the service
After running, the service will return a URL in a String object, which may be used by the external user to access the exposed service.

Assign And Notify External Service Participant

This service goes an extra step in exposing services to external participants by sending them the generated URL via email. This service effectively acts as a wrapper for the "Register Service EPS Request" service, followed by an email to the specified recipient. As such, it has all of the data mapping configuration options present in the "Register Service EPS Request", as well as several options for the email that is sent.

Assign And Notify External Service Participant Data Mapping Options

  • serviceName (String): The name of the service you wish to expose
  • appAcronym (String): Acronym for the process app the service resides in
  • serviceContext (List of NameValuePair): (Optional) Any extra context and information the service may need
  • exposedTo (String): (Optional) Group the service is exposed to. The temporary user will be assigned to this group if set
  • clientSideHumanService (Boolean): (Optional. Defaults to false) Set to true if the service being run is a client side human service
  • runAsUserId (String): Set your own user id for external participant. Note that if this is left blank, the toolkit will automatically generate a unique id
  • notificationRecipient (String): email address to send notification to
  • notificationSubject (String): Subject to send email with
  • notificationMessage (String): Message to send in notification email. The External Participant Toolkit allows for the custom tag <link> to be used here (e.g. <link>Link Text</link>). The service will automatically insert the correct URL as a link when this tag is used.
  • maxReqs (Integer): The maximum number of times an external user may run this service
  • validUntil (Date): Date at which the link becomes invalid for running the service
Once the service completes, the external user should recieve an email with a link to the service.