Managing exposed process values (EPVs)

Exposed process values (EPVs) are variables that certain users can change when processes are running on the playback server or a workflow server in your test, production, or other runtime environment.

To view and manage a specific EPV, the EPV must be exposed to you as described in Creating exposed process values (EPVs).

The users who can manage EPVs is determined during process design. When a process author creates an EPV, the exposure setting is used to select the users who can alter the EPV. If you are included in the exposure setting, you can manage EPVs as described in the following procedure.

You can use the Process Admin Console or REST API calls to manage EPVs.

Important: To avoid an impact on performance, delete old values that have taken effect in the past and are no longer the current value, as described in the following procedure.

Using the Process Admin Console

  1. In the Server Admin area of the Process Admin Console, click the indicator next to Admin Tools to list the available options.
  2. Click the Manage EPVs option.
  3. Using the drop-down menu, select the process application snapshot that contains the EPV that you want to modify. Each process application snapshot listed also includes the track name. Current working versions of process applications are listed as Tip, enabling you to test EPVs on the playback server without creating a snapshot.
  4. Using the drop-down menu, select the EPV that you want to edit. The Process Admin Console displays the variable values in the EPV that you can modify.
  5. Complete the following steps for each variable that you want to modify:
    1. Click the row of the variable that you want to change, and then click New.
    2. In the Exposed Process Value window, enter a new value, set the date and time at which you want the new value to take effect, and click OK.
      Note: The EPV can't be a blank value when it's set or changed in the Process Admin Console.
    Note: You can enter multiple values for the same variable, each taking effect at a different time. The Process Admin Console displays all modifications for each variable in a separate table.
  6. To edit or delete EPVs that have an effective date in the future, select the row in the table and then use the Edit or Delete buttons to change or remove the modifications. You cannot edit or delete the current EPV value.

    You can also delete old EPVs that have an effective date in the past and are not the current EPV value.

Using a REST API call

Call the operations REST API ACTION https://host:port/ops/std/bpm/containers/container_acronym/versions/version_acronym/epvs where ACTION is either GET or POST, container_acronym is the acronym of the application or toolkit that contains the targeted snapshot, and version_acronym is the acronym of the targeted snapshot.

Important: For details about the operations REST APIs and to try invoking them from a browser, use the Swagger interface. The Swagger interface is available at https://server:port/ops/explorer where server is the host name of your workflow server and port is the port number that is used by workflow server, for example, https://localhost:9443/ops/explorer.
The following examples illustrate how to use the REST API to manage EPVs.
  • Retrieve a list of EPVs for snapshot S1 of application APP1:

    GET http://host:port/ops/std/bpm/containers/APP1/versions/S1/epvs
  • For application APP1, snapshot S1, exposed process value E1, set the variable PORT to the value of 9090:
    POST http://host:port/ops/std/bpm/containers/APP1/versions/S1/epvs
    {
      "variable_value_details": [
        {
          "epv_name": "E1",
          "epv_variable_name": "PORT",
          "epv_variable_value": "9090"
        }
      ]
    }
    
  • Copy the exposed process values from snapshot S1 to snapshot S2 of application APP1:
    POST http://host:port/ops/std/bpm/containers/APP1/versions/S1/epvs/sync?target_version=S2
Important: All calls to the Operations REST API require that the HTTP header BPMCSRFToken is set with every request. For information about how to obtain a token, see Preventing cross site request forgery.