2012-05-17 2 views
0

스크립트에 전달 된 이메일 주소와 DocumentID를 기반으로 외부 스프레드 시트의 기본 권한을 재설정하는 샘플 스크립트를 찾고 있습니다. 전자 메일 메시지의 정보를 구문 분석하여 DocumentID와 전자 메일을 수집하고 기본값이 인 사용자가 링크의 권한 변경을 실행 한 다음 해당 링크로 전자 메일을 보낼 수있는 스크립트를 만들겠습니다.Google Apps Script를 통해 문서 사용 권한 변경

perms는 DocList API로 제어되며 해당 API와 상호 작용하는 GAS 샘플을 찾지 못하는 것 같습니다.

답변

2

AFAIK DocsList Services에는 편집자와 뷰어 만 추가/제거하기 위해 개인/링크/공개 대상 사용자간에 공유 모드를 변경하는 기능이 없습니다. 그러나 이전에 특정 폴더의 공유 설정을 "링크가있는 모든 사용자"에게 수동으로 설정하여이 작업을 수행 할 수 있습니다. 그런 다음 공유 할 파일을 해당 폴더에 추가해야합니다.

스크립트는 특히 간단합니다. 예 :

function shareWithAnyoneAndEmail(documentID,email) { 
    var sharedFolder = DocsList.getFolderById('id-to-your-previously-shared-folder'); 
    var file = DocsList.getFileById(documentID); 
    file.addToFolder(sharedFolder); 
    MailApp.sendEmail(email, 'Here is your file', file.getName()+'\n'+file.getUrl()); 
} 
3

Google I/O 2013에서 DriveApp가 시작되었습니다.

var quizTemplate = DriveApp.getFileById(QUIZ_TEMPLATE_ID); 
    quizTemplate.setSharing(DriveApp.Access.DOMAIN_WITH_LINK, DriveApp.Permission.VIEW); 

또는

var openFile = DriveApp.getFileById(WIDE_OPEN_ID) 
    openFile.setSharing(DriveApp.Access.ANYONE_WITH_LINK, DriveApp.Permission.COMMENT); 
-이 개발자가 링크가있는 모든 사용자에게 공개로

https://developers.google.com/apps-script/reference/drive/

샘플 코드를 공유처럼 사용 사례를 구축 할 수 있습니다