Close popover
Shankar Dinesh Bhaniga (Dineshsb1)
JP Morgan Chase
Lead System Architect
JP Morgan Chase
Dineshsb1 Member since 2013 25 posts
JP Morgan Chase
Posted: November 4, 2019
Last activity: November 5, 2019

How to Support Service versioning in Pega

Hi All,

We are on Pega 8.1 and we have been requested to support multiple versions for our REST service simultaneously . The service is authenticated using OAuth2.0 . We could think of 2 approaches

1) Same Access Group / Application :- Using this approach , we would have the same access group and application but different activities with different code for each version of the service . This is how Pega Marketing application did it for "Container" service. They had 2 different activities Handlecontainer and HandleContainer_v2 for 2 service versions .

Pros :-

Easy to maintain and easy to understand for the developers .

Multiple access groups and applications creation not necessary which has impact on the application score.


Becomes a little challenging for some logic i.e if there are decision tables used in the logic ,we have to end up maintaining multiple rules like DecisionTable_v1 , DecisionTable_v2 .

2) Different Access Group / Application :- Using this approach, we create multiple access groups and applications . This

Pros :-

Rule Resolution takes care of executing the code as per the application definition.


Defect fixing / enhancements will be challenging as we have to leave gap between the rsv versions to support multiple service versions .

My understanding is that when we do OAuth2.0 we are providing access to a resource . Does it make sense to use Approach 1 if our service just does a BRE logic and nothing related to case processing ? Also i would like to know best practices from Pega standpoint to handle various scenario's like Case Creations / Headless Engine etc .

Appreciate your responses.



Low-Code App Development
Moderation Team has archived post,
Close popover This thread is closed to future replies. Content and links will no longer be updated. If you have the same/similar Question, please write a new Question.