Box: フォルダ削除

Box: フォルダ削除 (Box: Delete Folder)
Box 上のフォルダを削除します。一度に複数の削除が可能です。複数削除する場合、データ項目では1行につき1つずつIDを書くようにしてください。
2019-08-08 (C) Questetra, Inc. (MIT License)
Configs
  • C1: OAuth2 設定名 *
  • C2: 削除するフォルダ ID が保存されている文字型データ項目 *
Script
main();
function main(){
  const folderIds = engine.findDataByNumber(configs.get("FolderIdsItem"));
  if (folderIds == null) {
    throw "Folder IDs aren't set.";
  }
  const linesArray = folderIds.split("\n");
  const numOfLines = linesArray.length;
  if (numOfLines > httpClient.getRequestingLimit()){
  	throw "Number of File IDs is over the limit."
  }
  const token = httpClient.getOAuth2Token(configs.get("OAuth2"));
  for (let i = 0; i < numOfLines; i++){
    deleteFolder(token, linesArray[i])
  }
}
function deleteFolder(token, folderId) {
  const url = 'https://api.box.com/2.0/folders/' + folderId;
  let response = httpClient.begin()
    .bearer(token)
    .queryParam("recursive","true")
    .delete(url);
  const status = response.getStatusCode();
  if (status >= 300) {
    const error = "Failed to delete:" + folderId + "\n" + status + "\n" + response.getResponseAsString();
    throw error;
  }else{
    engine.log("Folder ID:" + folderId + "\n" + "status:" + status + "\n"+"delete successful" + "\n");
  }
}

Download

Capture

Notes

  1. フォルダ ID は、URL に含まれています。 https://{sub-domain}.app.box.com/folder/(Folder ID)
  2. Box のリフレッシュトークンには、期限があります。期限を超えないよう、定期的に利用する必要があります。(2019 年 7 月時点で、60日。 https://box-content.readme.io/docs/oauth-20)
%d人のブロガーが「いいね」をつけました。