Updating Plan in Request Object

Hello Experts,

I have a request object with a provisioning plan and workflow details to be executed on a future date. Now the use case is to retrieve this request object and update the plan in it. By update, i mean, we need to remove some account requests of particular applications and then save this plan and request object. Could you please help me with a snippet for this. For ex a request object looks like:

<?xml version=‘1.0’ encoding=‘UTF-8’?>
<!DOCTYPE Request PUBLIC “sailpoint.dtd” “sailpoint.dtd”>
<Request created=“1648449287843” id=“0a8d89117fce1f4c817fcf3bf6a3013e” launcher=“CIDMJMLG” name=“RequestObjectTerminateDay30Action CONSULTO” nextLaunch=“1651041287843”>
<Attributes>
<Map>
<entry key=“approvalScheme” value=“none”/>
<entry key=“flow” value=“Leaver”/>
<entry key=“identityDisplayName” value=“CONSULTO”/>
<entry key=“identityName” value=“CONSULTO”/>
<entry key=“launcher” value=“CIDMJMLG”/>
<entry key=“manualActionsEmailTemplate” value=“SSEmailTemplatePendingManualChanges”/>
<entry key=“notificationScheme” value=“none”/>
<entry key=“plan”>
<value>
<ProvisioningPlan>
<AccountRequest application=“Active Directory (RCH)” nativeIdentity=“CN=consulto,OU=Users,OU=Other,OU=SanFrancisco,OU=AdminUnits,DC=nala,DC=sstest,DC=com” op=“Delete”/>
<AccountRequest application=“GDC_Google_Apps” nativeIdentity=“109190363868686503468” op=“Modify”>
<AttributeRequest name=“organizationUnit” op=“Set” value=“/SS/Suspended_Accounts”/>
</AccountRequest>
<Attributes>
<Map>
<entry key=“eventType” value=“Leaver”/>
<entry key=“flow” value=“Leaver”/>
<entry key=“launcher” value=“CIDMJMLG”/>
</Map>
</Attributes>
</ProvisioningPlan>
</value>
</entry>
<entry key=“requestDefinition” value=“Workflow Request”/>
<entry key=“requestName” value=“RequestObjectTerminateDay30Action CONSULTO”/>
<entry key=“requester” value=“CIDMJMLG”/>
<entry key=“sessionOwner” value=“CIDMJMLG”/>
<entry key=“workflow” value=“SSWorkflowJMLTerminationValidatePlan”/>
</Map>
</Attributes>
<Definition>
<Reference class=“sailpoint.object.RequestDefinition” id=“8a0809ef76e14c390176e14d4147019c” name=“Workflow Request”/>
</Definition>
</Request>

Now i would like to retrieve this request object and then retrieve the plan in it and check if application: “GDC_Google_Apps” exists or not, if it exists , remove it from the plan and save the request object. What would be the snippet for this, pls help

Thanks

@pvr  pls help me with this..

Regards,
Chirag

Request object modification in this way seemed to be dirty. What is the business requirement? Can’t we make all changes to the plan in the before provisioning rule?