Objective-C Google Drive: Delete a Particular File Permission

Back to Index

Deletes the permission having an id = "anyoneWithLink". (In this example the file id = 1BXNQ4sMDD1WibOtcYqgQlwJa0MAa6rTQ)

Documentation: https://developers.google.com/drive/v3/reference/permissions/delete


#import <CkoRest.h>
#import <CkoOAuth2.h>
#import <CkoStringBuilder.h>

CkoRest *rest = [[CkoRest alloc] init];
BOOL success;

//   Provide a previously obtained OAuth2 access token.
CkoOAuth2 *oauth2 = [[CkoOAuth2 alloc] init];
oauth2.AccessToken = @"OAUTH2_ACCESS_TOKEN";
[rest SetAuthOAuth2: oauth2];

success = [rest Connect: @"www.googleapis.com" port: [NSNumber numberWithInt: 443] tls: YES autoReconnect: YES];
if (success != YES) {
    NSLog(@"%@",rest.LastErrorText);
    return;
}

[rest AddQueryParam: @"includeTeamDriveItems" value: @"true"];
[rest AddQueryParam: @"supportsTeamDrives" value: @"true"];

CkoStringBuilder *sbResponse = [[CkoStringBuilder alloc] init];
success = [rest FullRequestNoBodySb: @"DELETE" uriPath: @"/drive/v3/files/1BXNQ4sMDD1WibOtcYqgQlwJa0MAa6rTQ/permissions/anyoneWithLink" sb: sbResponse];
if (success != YES) {
    NSLog(@"%@",rest.LastErrorText);
    return;
}

if ([rest.ResponseStatusCode intValue] != 204) {
    NSLog(@"%@%d",@"Received error response code: ",[rest.ResponseStatusCode intValue]);
    NSLog(@"%@",@"Response body:");
    NSLog(@"%@",[sbResponse GetAsString]);
    return;
}

NSLog(@"%@",@"Example Completed.");