Recalling Bulk Approval Requests
With this API, you can cancel or recall previously submitted bulk approval requests. This API accepts the object type and the object ID of the context object as input parameters. You can also add comments to your cancel requests.
If you submit previously submitted or approved approvals as part of bulk cancel requests, all the approvals are canceled.
The cancelApprovalsBulk API supports up to 50 context object records. Beyond this limit, Salesforce throws a SOQL error.
API |
Signature |
---|---|
cancelApprovalsBulk |
webService static Boolean cancelApprovalsBulk(List ctxObjParams) |
Request Parameters | |||
---|---|---|---|
Name |
Type |
Required? |
Description |
approvalParams | Object |
Yes |
Object containing all the approval parameters |
approvalParams | |||
---|---|---|---|
Name |
Type |
Required? |
Description |
approvalObjectId | ID |
Yes |
ID of the approval context object. |
approvalObjectType | String |
Yes |
Type of the approval context object. |
approvalCommentsObject | Object |
No |
The approval comment object |
Response Parameter | ||
---|---|---|
Name |
Type |
Description |
result | Boolean |
Returns true if the API is executed successfully. |
// multiple context object type and ids
String agmtType = 'Apttus__APTS_Agreement__c';
ID agmtId1 = 'a07R000000APxGG';
ID agmtId2 = 'a07R000000AS9nJ';
ID agmtId3 = 'a07R000000AS9nO';
// create list of context objects
List<Apttus_Approval.BulkCtxObjectParam> ctxParams = new List<Apttus_Approval.BulkCtxObjectParam>();
Apttus_Approval.BulkCtxObjectParam ctxParam1 = new Apttus_Approval.BulkCtxObjectParam();
ctxParam1.ctxSObjectType = agmtType;
ctxParam1.ctxSObjectId = agmtId1;
ctxParam1.comments = submitComments1;
ctxParams.add(ctxParam1);
Apttus_Approval.BulkCtxObjectParam ctxParam2 = new Apttus_Approval.BulkCtxObjectParam();
ctxParam2.ctxSObjectType = agmtType;
ctxParam2.ctxSObjectId = agmtId2;
ctxParam2.comments = submitComments2;
ctxParams.add(ctxParam2);
Apttus_Approval.BulkCtxObjectParam ctxParam3 = new Apttus_Approval.BulkCtxObjectParam();
ctxParam3.ctxSObjectType = agmtType;
ctxParam3.ctxSObjectId = agmtId3;
ctxParam3.comments = submitComments3;
ctxParams.add(ctxParam3);
// bulk submit
Boolean ok = Apttus_Approval.ApprovalsWebService.cancelApprovalsBulk(ctxParams);
Integration Details
Use the following information in your integrations with Conga Approvals API. Refer to Integrating Conga with External Systems to get started.
API Prerequisites
None.
Response/Request XML
Example Request<soapenv:Envelope
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:app="http://soap.sforce.com/schemas/class/Apttus_Approval/ApprovalsWebService"
xmlns:bul="http://soap.sforce.com/schemas/class/Apttus_Approval/BulkCtxObjectParam"
xmlns:sub="http://soap.sforce.com/schemas/class/Apttus_Approval/SubmissionComments">
<soapenv:Header>
<app:SessionHeader>
<app:sessionId>00DR0000001nyVR!ARYAQOruA8X3nIS2hgZgZxEZkUDHDMlzIfBNGDey8s_.AcTbbEghNGUnMEh5oGcG5mkmrVuHp1F9gHzfIfYAvzuRDU6zg7kO</app:sessionId>
</app:SessionHeader>
</soapenv:Header>
<soapenv:Body>
<app:cancelApprovalsBulk>
<!--Zero or more repetitions:-->
<app:ctxObjParams>
<bul:comments>
<sub:commentsCount>1</sub:commentsCount>
<sub:commentsLevel>Process</sub:commentsLevel>
<sub:processComment>?</sub:processComment>
<sub:processCommentLabel>ProcessLabel</sub:processCommentLabel>
<sub:processCommentMandatory>false</sub:processCommentMandatory>
<sub:processName>ProcessName</sub:processName>
<!--Zero or more repetitions:-->
<sub:stepCommentList>
</sub:stepCommentList>
</bul:comments>
<bul:ctxSObjectId>a07R000000AiYQX</bul:ctxSObjectId>
<bul:ctxSObjectType>Apttus__APTS_Agreement__c</bul:ctxSObjectType>
</app:ctxObjParams>
<app:ctxObjParams>
<bul:comments />
<bul:ctxSObjectId>a07R000000Aj68Y</bul:ctxSObjectId>
<bul:ctxSObjectType>Apttus__APTS_Agreement__c</bul:ctxSObjectType>
</app:ctxObjParams>
</app:cancelApprovalsBulk>
</soapenv:Body>
</soapenv:Envelope>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns="http://soap.sforce.com/schemas/class/Apttus_Approval/ApprovalsWebService">
<soapenv:Body>
<cancelApprovalsBulkResponse>
<result>true</result>
</cancelApprovalsBulkResponse>
</soapenv:Body>
</soapenv:Envelope>