C++
C++
MS Graph Calendar Update Event
See more Microsoft Calendar Examples
Update the properties of an event object.Chilkat C++ Downloads
#include <CkHttp.h>
#include <CkJsonObject.h>
#include <CkStringBuilder.h>
#include <CkHttpResponse.h>
void ChilkatSample(void)
{
bool success = false;
// This example assumes the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
CkHttp http;
// Implements the following CURL command:
// curl -X PATCH https://graph.microsoft.com/v1.0/me/events/{id} \
// -H "Content-type: application/json" \
// -d '{
// "originalStartTimeZone": "originalStartTimeZone-value",
// "originalEndTimeZone": "originalEndTimeZone-value",
// "responseStatus": {
// "response": "",
// "time": "datetime-value"
// },
// "recurrence": null,
// "iCalUId": "iCalUId-value",
// "reminderMinutesBeforeStart": 99,
// "isOnlineMeeting": true,
// "onlineMeetingProvider": "teamsForBusiness",
// "isReminderOn": true,
// "categories": ["Red category"]
// }'
// Use the following online tool to generate HTTP code from a CURL command
// Convert a cURL Command to HTTP Source Code
// Use this online tool to generate code from sample JSON:
// Generate Code to Create JSON
// The following JSON is sent in the request body.
// {
// "originalStartTimeZone": "originalStartTimeZone-value",
// "originalEndTimeZone": "originalEndTimeZone-value",
// "responseStatus": {
// "response": "",
// "time": "datetime-value"
// },
// "recurrence": null,
// "iCalUId": "iCalUId-value",
// "reminderMinutesBeforeStart": 99,
// "isOnlineMeeting": true,
// "onlineMeetingProvider": "teamsForBusiness",
// "isReminderOn": true,
// "categories": [
// "Red category"
// ]
// }
CkJsonObject json;
json.UpdateString("originalStartTimeZone","originalStartTimeZone-value");
json.UpdateString("originalEndTimeZone","originalEndTimeZone-value");
json.UpdateString("responseStatus.response","");
json.UpdateString("responseStatus.time","datetime-value");
json.UpdateNull("recurrence");
json.UpdateString("iCalUId","iCalUId-value");
json.UpdateInt("reminderMinutesBeforeStart",99);
json.UpdateBool("isOnlineMeeting",true);
json.UpdateString("onlineMeetingProvider","teamsForBusiness");
json.UpdateBool("isReminderOn",true);
json.UpdateString("categories[0]","Red category");
http.SetRequestHeader("Content-type","application/json");
CkStringBuilder sbRequestBody;
json.EmitSb(sbRequestBody);
CkHttpResponse resp;
success = http.HttpSb("PATCH","https://graph.microsoft.com/v1.0/me/events/{id}",sbRequestBody,"utf-8","application/json",resp);
if (success == false) {
std::cout << http.lastErrorText() << "\r\n";
return;
}
CkStringBuilder sbResponseBody;
resp.GetBodySb(sbResponseBody);
CkJsonObject jResp;
jResp.LoadSb(sbResponseBody);
jResp.put_EmitCompact(false);
std::cout << "Response Body:" << "\r\n";
std::cout << jResp.emit() << "\r\n";
int respStatusCode = resp.get_StatusCode();
std::cout << "Response Status Code = " << respStatusCode << "\r\n";
if (respStatusCode >= 400) {
std::cout << "Response Header:" << "\r\n";
std::cout << resp.header() << "\r\n";
std::cout << "Failed." << "\r\n";
return;
}
// Sample JSON response:
// (Sample code for parsing the JSON response is shown below)
// {
// "originalStartTimeZone": "originalStartTimeZone-value",
// "originalEndTimeZone": "originalEndTimeZone-value",
// "responseStatus": {
// "response": "",
// "time": "datetime-value"
// },
// "recurrence": null,
// "iCalUId": "iCalUId-value",
// "reminderMinutesBeforeStart": 99,
// "isOnlineMeeting": true,
// "onlineMeetingProvider": "teamsForBusiness",
// "isReminderOn": true,
// "onlineMeeting": {
// "joinUrl": "https://teams.microsoft.com/l/meetup-join/19%3ameeting_NzIyNzhlMGEtM2YyZC00ZmY0LTlhNzUtZmZjNWFmZGNlNzE2%40thread.v2/0?context=%7b%22Tid%22%3a%2272f988bf-86f1-41af-91ab-2d7cd011db47%22%2c%22Oid%22%3a%22bc55b173-cff6-457d-b7a1-64bda7d7581a%22%7d",
// "conferenceId": "177513992",
// "tollNumber": "+91 22 6241 6885"
// }
// }
// Sample code for parsing the JSON response...
// Use the following online tool to generate parsing code from sample JSON:
// Generate Parsing Code from JSON
// Chilkat functions returning "const char *" return a pointer to temporary internal memory owned and managed by Chilkat.
// See this example explaining how this memory should be used: const char * functions.
const char *originalStartTimeZone = jResp.stringOf("originalStartTimeZone");
const char *originalEndTimeZone = jResp.stringOf("originalEndTimeZone");
const char *responseStatusResponse = jResp.stringOf("responseStatus.response");
const char *responseStatusTime = jResp.stringOf("responseStatus.time");
const char *recurrence = jResp.stringOf("recurrence");
const char *iCalUId = jResp.stringOf("iCalUId");
int reminderMinutesBeforeStart = jResp.IntOf("reminderMinutesBeforeStart");
bool isOnlineMeeting = jResp.BoolOf("isOnlineMeeting");
const char *onlineMeetingProvider = jResp.stringOf("onlineMeetingProvider");
bool isReminderOn = jResp.BoolOf("isReminderOn");
const char *onlineMeetingJoinUrl = jResp.stringOf("onlineMeeting.joinUrl");
const char *onlineMeetingConferenceId = jResp.stringOf("onlineMeeting.conferenceId");
const char *onlineMeetingTollNumber = jResp.stringOf("onlineMeeting.tollNumber");
}