Defining resource and processing details for a Service REST rule
Use the Service tab of the Service REST rule to configure the mapping of the URL path parameters, data transforms, and other configuration options for your service.
-
On the Service tab of your Service REST rule, in the
Resource properties section, specify the following
information:
-
In the Resource field, enter the class of the primary page
for this service.
Note: Prior to Pega Platform 8.4, the name of the Resource field was Page class. For more information, see Defining resource and processing details for a Service REST rule created prior to Pega Platform 8.4.
- In the Name field, enter the name of the variable resource parameter in the resource path.
- In the Description field, enter a description for the variable resource parameter.
-
In the Map to field, select the destination or the type of
destination for the value in Pega Platform.
- Clipboard – Map to the page name or a property on the clipboard specified by the Map to key field.
- Automation input – Use an automation to implement the method. If you select this option for any resource path parameters, you must use an automation as your implementation for each method that you implement in your rule.
-
In the Map to key field, specify the key used to locate the
property or the rule in the destination that you specify in the Map
to field.
- If the Map to value is Clipboard, enter the property name to which to map the data at run time.
- If the Map to value is Automation input, this field is not editable. You specify the Map to key values on the Request tab of the method that you want to implement.
Note: The following fields are read-only:- Service endpoint URL – Displays the complete URL for the REST endpoint.
- URI template – Displays the name of the URI template that was created or edited on the Create Service REST page.
- URI path parameters – URI path parameters are automatically populated from the URI template that was created or edited on the Create Service REST page. These parameters can be literal or variable values. Variable parameters are populated with values at run time.
-
In the Resource field, enter the class of the primary page
for this service.
-
In the Processing options section, specify the following
configurations:
- End Requestor When Done – When the Processing mode field on the service package is set to Stateful, you can select this option to have the system end the requestor after the activity ends and the response is sent. If the services are stateless, the value in this field is ignored. For more information, see Service Package form – Completing the Context tab.
- Method is read-only – You can select this option to indicate that each use of this service does not count as a service invocation under the terms of your license agreement. For more information, see License compliance.
- Enable service SLA with fallback activity – This option is
displayed for asynchronous execution modes. You can select this option to configure a
fallback activity for a time-out. For example, when the service activity is not finished
after a configured amount of time and the maximum number of violations has occurred, the
fallback activity is called. No further requests are attempted until the retry interval
has passed. If the next attempt is successful, normal processing is resumed.If you select Enable service SLA with fallback activity, the following options are displayed:
- Maximum duration for service activity (milliseconds) – Enter the amount of time, in milliseconds, after which the service activity is considered to have failed. The default is 500 milliseconds.
- Maximum consecutive violations – Enter the number of SLA violations that must occur before the fallback activity is called. The default is 3.
- Retry interval (seconds) – Enter the amount of time, in seconds, to wait before attempting to process the service activity. The default is 10 seconds.
- Optional:
If you select Enable service SLA with fallback activity, you can
choose the method for setting the values in the Maximum duration for service
activity (milliseconds), Maximum consecutive
violations, and Retry internal (seconds)
fields.
- Provide values – Select this option to manually enter
values in the Maximum duration for service activity
(milliseconds), Maximum consecutive violations, and
Retry internal (seconds) fields, or keep the default
values.Note: For services created prior to Pega Platform 8.3, this option is selected by default.
- Use application settings – Select this option to use the
application settings to define the values in the Maximum duration for service
activity (milliseconds), Maximum consecutive
violations, and Retry internal (seconds) fields.
Use the Down arrow key in each field to select an existing application setting from the
list.
At run time, the application uses the values in the application setting that correspond with the current environment. For example, if you specify 30 seconds for the retry interval for the Development value, the application uses a 30-second retry interval in your Development environment at run time. If no values are specified, the application uses default values.
- Provide values – Select this option to manually enter
values in the Maximum duration for service activity
(milliseconds), Maximum consecutive violations, and
Retry internal (seconds) fields, or keep the default
values.
-
To run the service with lightweight clipboard pages, in the Lightweight
clipboard mode section, select the clipboard page that you want to use.
- Select Use application settings.
- In the Setting name field, press the Down arrow key and select a clipboard page.
Note: The following clipboard features are supported:- Hierarchical structure – Arbitrarily deep and complex tree structure formed by pages, lists, groups, and so on.
- JAVA objects – Pages can be wrapped around Java objects.
- Complex references – APIs on the page support arbitrarily complex property reference strings, including list subscript symbolics such as <APPEND>, <FIRST>, and so on.
- Messaging – Message metadata can be attached to properties and pages, for example, as a result of validation, Rule-Declare-Constraints, or various APIs and activity methods
- Dictionary – Information specified on the Property rule form is available during clipboard processing.
- Serialization/deserialization – Save page structure and contents for storage on disk or in a database, then later restore the page into memory.
The following clipboard features are not supported:- Properties referencing a data page
- Linked properties
- Referenced properties
- Limited support for declaratives
- Limited support for declare expressions/backward and forward chained
- Change tracking for property value updates in the user interface
-
In the Execution mode field, choose from the following
options:
- Execute synchronously – Select this option if you want the service to run the request immediately.
- Execute synchronously (queue on error) – Select this option
when you want the service to queue the request for asynchronous execution only if
processing fails while executing the service activity. Note: If no processing errors occur, the result is the same as a normal synchronous request. If a processing error occurs, the error details are stored in a Service Request Processor data instance (Data-Admin-RequestProcessor-Serviceclass), along with the request data that was originally mapped to the clipboard. The service returns the Queue Item ID to the external application, and the request is either reprocessed automatically by an Agent configured for queue processing, or manually by a system administrator.
- Execute asynchronously (queue for execution) – Select this
option when you want the service to queue the request for asynchronous execution, return
the Queue Item ID to the external application, and end the service call while the
processing starts. Note: Choose this option only when a Service Request Processor data instance (Data-Admin-RequestProcessor-Serviceclass) exists with a key that matches the Service Package key part of the service rule. This means that when the queued service request executes, the execution is performed with the authorization profile of the service.
-
In the Request processor field, select a request
processor.
The list in this field displays only the request processors that are defined for the same service package as this service rule.Note: If you select Execute asynchronously (queue for execution) in the Execution mode field, or you configured a
Queue When
condition on the Response tab of the service rule, you must also select the name of the service request processor (the instance of (Data-Admin-RequestProcessor-Serviceclass)). -
To specify whether to monitor this rule, and whether to include the clipboard state
when monitoring, in the Service monitoring field, click
Properties.
Note: Service package monitoring configuration settings are used only if the service/EnableGlobalMonitoring dynamic system setting is set to Deferred and the service package is set to As defined on service rule.
- To enable monitoring for this rule, in the Select service monitoring field, select Yes.
- If you enable monitoring and you want to include the state of the primary data page in the monitoring results, in the Capture clipboard state field, select Yes.
- Click Submit.
- Optional: The Service package (includes additional processing options) displays a link to the service package that contains your service REST rule. To easily navigate to the service package if you need to make changes, click the link.
- Click Save.