Objective-C
Objective-C
MS Graph Create Calendar
See more Microsoft Calendar Examples
Creates a new calendar.For more details, see https://docs.microsoft.com/en-us/graph/api/user-post-calendars?view=graph-rest-1.0
Chilkat Objective-C Downloads
#import <CkoHttp.h>
#import <CkoJsonObject.h>
#import <CkoHttpResponse.h>
#import <NSString.h>
BOOL success = NO;
// This example requires the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
CkoHttp *http = [[CkoHttp alloc] init];
// Use your previously obtained access token as shown here:
// Get Microsoft Graph OAuth2 Access Token with Calendars.ReadWrite scope.
CkoJsonObject *jsonToken = [[CkoJsonObject alloc] init];
success = [jsonToken LoadFile: @"qa_data/tokens/msGraphCalendar.json"];
if (success == NO) {
NSLog(@"%@",jsonToken.LastErrorText);
return;
}
http.AuthToken = [jsonToken StringOf: @"access_token"];
// Create a JSON body for the HTTP POST
// {
// "name": "Work"
// }
CkoJsonObject *json = [[CkoJsonObject alloc] init];
[json UpdateString: @"name" value: @"Work"];
// POST the JSON to https://graph.microsoft.com/v1.0/me/calendars
CkoHttpResponse *resp = [[CkoHttpResponse alloc] init];
success = [http HttpJson: @"POST" url: @"https://graph.microsoft.com/v1.0/me/calendars" json: json contentType: @"application/json" response: resp];
if (success == NO) {
NSLog(@"%@",http.LastErrorText);
return;
}
[json Load: resp.BodyStr];
json.EmitCompact = NO;
if ([resp.StatusCode intValue] != 201) {
NSLog(@"%@",[json Emit]);
NSLog(@"%@%d",@"Failed, response status code = ",[resp.StatusCode intValue]);
return;
}
NSLog(@"%@",[json Emit]);
// A sample response:
// {
// "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#users('admin%40chilkat.io')/calendars/$entity",
// "id": "AQMkAD...TgAAAA==",
// "name": "Work",
// "color": "auto",
// "changeKey": "5+vF7T...HjDcA==",
// "canShare": true,
// "canViewPrivateItems": true,
// "canEdit": true,
// "owner": {
// "name": "...",
// "address": "outlook_3A33...4CC15@outlook.com"
// }
// }
// Use this online tool to generate parsing code from sample JSON:
// Generate Parsing Code from JSON
NSString *odataContext = [json StringOf: @"\"@odata.context\""];
NSString *id = [json StringOf: @"id"];
NSString *name = [json StringOf: @"name"];
NSString *color = [json StringOf: @"color"];
NSString *changeKey = [json StringOf: @"changeKey"];
NSString *canShare = [json BoolOf: @"canShare"];
NSString *canViewPrivateItems = [json BoolOf: @"canViewPrivateItems"];
NSString *canEdit = [json BoolOf: @"canEdit"];
NSString *ownerName = [json StringOf: @"owner.name"];
NSString *ownerAddress = [json StringOf: @"owner.address"];
NSLog(@"%@",@"Success.");