1String salesforceHost = System.Url.getSalesforceBaseURL().toExternalForm();
2String url = salesforceHost + '/services/data/v45.0/actions/standard/generateWorkOrders';
3// Create HTTP request
4HttpRequest request = new HttpRequest();
5request.setEndpoint(url);
6request.setMethod('POST');
7request.setHeader('Content-Type', 'application/json;charset=UTF-8');
8request.setHeader('Authorization', 'OAuth ' + UserInfo.getSessionId());
9// Set the body as a JSON object
10request.setBody('{"inputs" : [{"recordId" : "1MPR000000000Bu"}]}');
11Http http = new Http();
12HttpResponse response = http.send(request);
13// Parse the JSON response
14if (response.getStatusCode() != 201) {
15 System.debug('The status code returned was not expected: ' +
16 response.getStatusCode() + ' ' + response.getStatus());
17} else {
18 System.debug(response.getBody());
19}