var request = gapi.client.drive.permissions.insert({ fileid: fileid, resource: { value:"user@gmail.com", type:"user", role:"reader" } });
this code sent 1 email "user@gmail.com" shares 1 file: how can same multiple fileid in 1 time / 1 email?
can't find answer here https://developers.google.com/drive/v2/reference/permissions/insert#request
it seems you'll needing perform batch requests multiple permissions. drive docs states:
we recommend using batch requests modify multiple permissions.
here's snippet batch requests in java:
string fileid = "1stwaj_j7pkjzabwtnc3izovk5hqf21fbow9yleelpnq"; jsonbatchcallback<permission> callback = new jsonbatchcallback<permission>() { @override public void onfailure(googlejsonerror e, httpheaders responseheaders) throws ioexception { // handle error system.err.println(e.getmessage()); } @override public void onsuccess(permission permission, httpheaders responseheaders) throws ioexception { system.out.println("permission id: " + permission.getid()); } }; batchrequest batch = driveservice.batch(); permission userpermission = new permission() .settype("user") .setrole("writer") .setemailaddress("example@appsrocks.com"); driveservice.permissions().create(fileid, userpermission) .setfields("id") .queue(batch, callback); permission domainpermission = new permission() .settype("domain") .setrole("reader") .setdomain("appsrocks.com"); driveservice.permissions().create(fileid, domainpermission) .setfields("id") .queue(batch, callback); batch.execute();