Box: ファイル削除 (Box: Delete File)
この工程は、Box 上のファイルを削除します。一度に複数の削除が可能です。複数削除する場合、データ項目では 1 行につき 1 つずつ ID を書くようにしてください。
Configs:共通設定
  • 工程名
  • メモ
Configs
  • C1: OAuth2 設定 *
  • C2: 削除するファイル ID が保存されているデータ項目 *

Notes

  • ファイル ID は、URL に含まれています https://app.box.com/file/(ファイル ID)
  • Box のリフレッシュトークンには、期限があります

Capture

See also

Script (click to open)
  • 下記のスクリプトを記述した XML ファイルをダウンロードできます
    • box-file-delete.xml (C) Questetra, Inc. (MIT License)
    • Professional をご利用であればファイルの内容を改変することでオリジナルのアドオンとして活用できます

main();
function main() {
    const fileIds = engine.findDataByNumber(configs.get("conf_FileIds"));
    if (fileIds === "" || fileIds === null) {
        throw "File IDs aren't set.";
    }
    let linesArray = fileIds.split("\n");
    linesArray = linesArray.filter(lines => lines !== ""); // 空文字列を削除
    if (linesArray.length === 0) {
        throw "File IDs aren't set.";
    }
    const numOfLines = linesArray.length;
    if (numOfLines > httpClient.getRequestingLimit()) {
        throw "Number of File IDs is over the limit."
    }
    const oauth2 = configs.get("conf_OAuth2");
    for (let i = 0; i < numOfLines; i++) {
        deleteFile(oauth2, linesArray[i])
    }
}
function deleteFile(oauth2, fileId) {
    const url = `https://api.box.com/2.0/files/${fileId}`;
    const response = httpClient.begin()
        .authSetting(oauth2)
        .delete(url);

    const status = response.getStatusCode();
    const responseTxt = response.getResponseAsString();
    if (status >= 300) {
        engine.log(responseTxt)
        throw `Failed to delete. File ID: ${fileId}, status: ${status}`;
    } else {
        engine.log(`Succeeded to delete. File ID: ${fileId}`);
    }
}
%d人のブロガーが「いいね」をつけました。