bulkEndorseDraftInsurancePolicy(insurancePolicyBulkFieldMapInput)

Endorse draft policies in bulk for the specified insurance policy IDs.

API Version

67.0

Requires Chatter

No

Signature

public static ConnectApi.InsurancePolicyBulkOutputRepresentation bulkEndorseDraftInsurancePolicy(ConnectApi.InsurancePolicyBulkFieldMapInputRepresentation insurancePolicyBulkFieldMapInput)

Parameters

insurancePolicyBulkFieldMapInput
Type: ConnectApi.InsurancePolicyBulkFieldMapInputRepresentation
Input representation of the request to endorse draft policies in bulk.

Usage

Use this method to create endorsement drafts for insurance policies in bulk. The JSON input includes a field value map of insurance policy fields and a list of insurance policy IDs. After the request is successfully sent to the message queue, endorsement drafts are created asynchronously, and you receive either a success or failure notification after the completion of the request.

Example

The Apex example shows how to use the ConnectApi.InsuranceBrokerageFamily.bulkEndorseDraftInsurancePolicy() method to create endorsement drafts for multiple insurance policies in bulk.

Class Definition
This Apex example shows how to create endorsement drafts for multiple policies in bulk.
1global class BulkDraftEndorseConnectDriver {
2
3    global static void callBulkDraftEndorseConnectAPI() {
4        Map<String, Object> input = new Map<String, Object>();
5
6        ConnectApi.InsurancePolicyBulkFieldMapInputRepresentation bulkInput =
7            new ConnectApi.InsurancePolicyBulkFieldMapInputRepresentation();
8
9        // Each policy now carries its own field value map instead of one shared map.
10        List<Map<String, Object>> policies = new List<Map<String, Object>>();
11        policies.add(buildPolicy('0YTxx000000001dGAA', new Map<String, Object>{
12            'Name' => 'Bulk Draft Endorse 1'
13        }));
14        policies.add(buildPolicy('0YTxx000000002dGAA', new Map<String, Object>{
15            'Name' => 'Bulk Draft Endorse 2'
16        }));
17        policies.add(buildPolicy('0YTxx000000003dGAA', new Map<String, Object>{
18            'Name' => 'Bulk Draft Endorse 3'
19        }));
20        bulkInput.policies = policies;
21
22        input.put('bulkInput', bulkInput);
23
24        Map<String, Object> output = new Map<String, Object>();
25        Map<String, Object> args = new Map<String, Object>();
26        args.put('input', input);
27        args.put('output', output);
28
29        BulkDraftEndorseTestConnectAPI callable = new BulkDraftEndorseTestConnectAPI();
30        Object result = callable.call('bulkDraftEndorse', args);
31
32        ConnectApi.InsurancePolicyBulkOutputRepresentation bulkData =
33            (ConnectApi.InsurancePolicyBulkOutputRepresentation) result;
34        System.debug('Bulk Draft Endorse Data: ' + JSON.serializePretty(bulkData));
35
36        if (output.containsKey('error')) {
37            System.debug('Error: ' + output.get('error'));
38        }
39    }
40
41    // Builds a single { policyId, fieldValueMap } entry for the policies list.
42    private static Map<String, Object> buildPolicy(String policyId, Map<String, Object> fieldValueMap) {
43        Map<String, Object> policy = new Map<String, Object>();
44        policy.put('policyId', policyId);
45        policy.put('fieldValueMap', fieldValueMap);
46        return policy;
47    }
48}
Usage Example
Use the BulkDraftEndorseTestConnectAPI class to execute the bulkDraftEndorse action and process the result.
1public class BulkDraftEndorseTestConnectAPI implements System.Callable {
2
3    public Object call(String action, Map<String, Object> args) {
4        Map<String, Object> inputMap = (Map<String, Object>) args.get('input');
5        Map<String, Object> outputMap = (Map<String, Object>) args.get('output');
6
7        if (action == 'bulkDraftEndorse') {
8            ConnectApi.InsurancePolicyBulkFieldMapInputRepresentation bulkInput =
9                (ConnectApi.InsurancePolicyBulkFieldMapInputRepresentation) inputMap.get('bulkInput');
10            System.debug('Start of Connect API call to bulk draft endorse policies');
11
12            ConnectApi.InsurancePolicyBulkOutputRepresentation bulkData;
13            try {
14                bulkData = ConnectApi.InsuranceBrokerageFamily.bulkEndorseDraftInsurancePolicy(bulkInput);
15                System.debug('Policies bulk draft endorsed successfully: ' + bulkData);
16                outputMap.put('bulkData', bulkData);
17            } catch (Exception e) {
18                System.debug('Error while bulk draft endorsing policies: ' + e.getMessage());
19                outputMap.put('error', e.getMessage());
20            }
21            return bulkData;
22        }
23
24        return null;
25    }
26}
27
28// Execute
29BulkDraftEndorseConnectDriver.callBulkDraftEndorseConnectAPI();