Back to Collection Items
#import <CkoHttp.h>
#import <CkoJsonObject.h>
#import <CkoHttpResponse.h>
// This example assumes the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
CkoHttp *http = [[CkoHttp alloc] init];
BOOL success;
// Use this online tool to generate code from sample JSON: Generate Code to Create JSON
// The following JSON is sent in the request body.
// {
// "allOrNone": true,
// "compositeRequest": [
// {
// "method": "POST",
// "url": "/services/data/v{{version}}/sobjects/Carbon_Comparison__e",
// "referenceId": "event1",
// "body": {
// "Annual_Mileage__c": 12000,
// "Current_Vehicle__c": "Fast car 1",
// "Model_Year__c": 2019
// }
// },
// {
// "method": "POST",
// "url": "/services/data/v{{version}}/sobjects/Carbon_Comparison__e",
// "referenceId": "event2",
// "body": {
// "Annual_Mileage__c": 12000,
// "Current_Vehicle__c": "Fast car 2",
// "Model_Year__c": 2019
// }
// }
// ]
// }
CkoJsonObject *json = [[CkoJsonObject alloc] init];
[json UpdateBool: @"allOrNone" value: YES];
[json UpdateString: @"compositeRequest[0].method" value: @"POST"];
[json UpdateString: @"compositeRequest[0].url" value: @"/services/data/v{{version}}/sobjects/Carbon_Comparison__e"];
[json UpdateString: @"compositeRequest[0].referenceId" value: @"event1"];
[json UpdateInt: @"compositeRequest[0].body.Annual_Mileage__c" value: [NSNumber numberWithInt: 12000]];
[json UpdateString: @"compositeRequest[0].body.Current_Vehicle__c" value: @"Fast car 1"];
[json UpdateInt: @"compositeRequest[0].body.Model_Year__c" value: [NSNumber numberWithInt: 2019]];
[json UpdateString: @"compositeRequest[1].method" value: @"POST"];
[json UpdateString: @"compositeRequest[1].url" value: @"/services/data/v{{version}}/sobjects/Carbon_Comparison__e"];
[json UpdateString: @"compositeRequest[1].referenceId" value: @"event2"];
[json UpdateInt: @"compositeRequest[1].body.Annual_Mileage__c" value: [NSNumber numberWithInt: 12000]];
[json UpdateString: @"compositeRequest[1].body.Current_Vehicle__c" value: @"Fast car 2"];
[json UpdateInt: @"compositeRequest[1].body.Model_Year__c" value: [NSNumber numberWithInt: 2019]];
// Adds the "Authorization: Bearer <access_token>" header.
http.AuthToken = @"<access_token>";
CkoHttpResponse *resp = [http PostJson3: @"https://domain.com/services/data/v{{version}}/composite/" contentType: @"application/json" json: json];
if (http.LastMethodSuccess == NO) {
NSLog(@"%@",http.LastErrorText);
return;
}
NSLog(@"%d",[resp.StatusCode intValue]);
NSLog(@"%@",resp.BodyStr);
Curl Command
curl -X POST
-H "Authorization: Bearer <access_token>"
-d '{
"allOrNone": true,
"compositeRequest": [
{
"method": "POST",
"url": "/services/data/v{{version}}/sobjects/Carbon_Comparison__e",
"referenceId": "event1",
"body": {
"Annual_Mileage__c": 12000,
"Current_Vehicle__c": "Fast car 1",
"Model_Year__c": 2019
}
},
{
"method": "POST",
"url": "/services/data/v{{version}}/sobjects/Carbon_Comparison__e",
"referenceId": "event2",
"body": {
"Annual_Mileage__c": 12000,
"Current_Vehicle__c": "Fast car 2",
"Model_Year__c": 2019
}
}
]
}'
https://domain.com/services/data/v{{version}}/composite/
Postman Collection Item JSON
{
"name": "Publish multiple events",
"request": {
"method": "POST",
"header": [
],
"body": {
"mode": "raw",
"raw": "{\n \"allOrNone\": true,\n \"compositeRequest\": [\n {\n \"method\": \"POST\",\n \"url\": \"/services/data/v{{version}}/sobjects/Carbon_Comparison__e\",\n \"referenceId\": \"event1\",\n \"body\": {\n \"Annual_Mileage__c\": 12000,\n \"Current_Vehicle__c\": \"Fast car 1\",\n \"Model_Year__c\": 2019\n }\n },\n {\n \"method\": \"POST\",\n \"url\": \"/services/data/v{{version}}/sobjects/Carbon_Comparison__e\",\n \"referenceId\": \"event2\",\n \"body\": {\n \"Annual_Mileage__c\": 12000,\n \"Current_Vehicle__c\": \"Fast car 2\",\n \"Model_Year__c\": 2019\n }\n }\n ]\n}",
"options": {
"raw": {
"language": "json"
}
}
},
"url": {
"raw": "{{_endpoint}}/services/data/v{{version}}/composite/",
"host": [
"{{_endpoint}}"
],
"path": [
"services",
"data",
"v{{version}}",
"composite",
""
]
}
},
"response": [
]
}