{"id":86175,"date":"2024-01-16T09:30:00","date_gmt":"2024-01-16T00:30:00","guid":{"rendered":"https:\/\/support.questetra.com\/?p=86175"},"modified":"2024-01-16T09:37:19","modified_gmt":"2024-01-16T00:37:19","slug":"onedrive-file-upload","status":"publish","type":"post","link":"https:\/\/support.questetra.com\/en\/bpmn-icons\/onedrive-file-upload\/","title":{"rendered":"Microsoft 365 OneDrive for Business: Upload File"},"content":{"rendered":"\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<figure class=\"wp-block-image size-large\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"58\" data-attachment-id=\"113160\" data-permalink=\"https:\/\/support.questetra.com\/en\/developer-blog\/how-to-use-timer-start-event\/attachment\/advanced-banner-new-en\/\" data-orig-file=\"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/05\/advanced-banner-new-en.png?fit=1200%2C68&amp;ssl=1\" data-orig-size=\"1200,68\" data-comments-opened=\"0\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"advanced-banner-new-en\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/05\/advanced-banner-new-en.png?fit=1024%2C58&amp;ssl=1\" src=\"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/05\/advanced-banner-new-en-1024x58.png?resize=1024%2C58&#038;ssl=1\" alt=\"\" class=\"wp-image-113160\" srcset=\"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/05\/advanced-banner-new-en.png?resize=1024%2C58&amp;ssl=1 1024w, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/05\/advanced-banner-new-en.png?resize=600%2C34&amp;ssl=1 600w, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/05\/advanced-banner-new-en.png?resize=768%2C44&amp;ssl=1 768w, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/05\/advanced-banner-new-en.png?w=1200&amp;ssl=1 1200w\" sizes=\"auto, (max-width: 1000px) 100vw, 1000px\" \/><\/figure>\n\n\n\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h4 class=\"wp-block-heading has-background\" style=\"background-color:#ccffcc;margin-top:var(--wp--preset--spacing--30);margin-right:0;margin-bottom:0;margin-left:0;padding-top:0;padding-right:var(--wp--preset--spacing--20);padding-bottom:0;padding-left:var(--wp--preset--spacing--20)\"><strong>Microsoft 365 OneDrive for Business: Upload File<\/strong><\/h4>\n\n\n\n<p class=\"has-text-align-right has-background has-small-font-size mt-0 pt-0 wp-block-paragraph\" style=\"background-color:#ccffcc;margin-top:0;margin-right:0;margin-bottom:0;margin-left:0;padding-top:0;padding-right:var(--wp--preset--spacing--30);padding-bottom:0;padding-left:var(--wp--preset--spacing--30)\"><a href=\"https:\/\/support.questetra.com\/en\/bpmn-icons\/onedrive-file-upload\/\">Microsoft 365 OneDrive for Business: \u30d5\u30a1\u30a4\u30eb\u30a2\u30c3\u30d7\u30ed\u30fc\u30c9<\/a><\/p>\n\n\n\n<p class=\"has-background mt-0 pt-0 wp-block-paragraph\" style=\"background-color:#f0fff0;margin-top:0;margin-right:0;margin-bottom:var(--wp--preset--spacing--60);margin-left:0;padding-top:var(--wp--preset--spacing--20);padding-right:var(--wp--preset--spacing--30);padding-bottom:var(--wp--preset--spacing--20);padding-left:var(--wp--preset--spacing--40)\">This item uploads files to the specified folder on OneDrive.<\/p>\n\n\n\n<figure class=\"wp-block-image alignright has-custom-border is-style-default\"><img decoding=\"async\" src=\"data:image;base64,\n        iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAADXUlEQVRYR8WXW0hUURSG\/33GbC5e\n        8pJJF6nM6YKUmsFAIAZSONOM4FtqL\/mQVg9GhXR5iCIiEAqF9KEMsvKpi06OZoRPGaRmVoSGU4om\n        aqaMzeXYOLPjTJ7R41w8k8bZLwNn1r\/Wt9dee+29CSQeRHR8vVEpd7vzGTAHKKXpADYDiJnTTwEY\n        IIR0u+FuYxnmCYx6uxjfSwKotE2JbuoqB0EJALkYpwBYUNQwRHbDZtKNBtMEBVBqG0ooSAUAlcjA\n        i81sBPSs3ZRXE0gfEECuM94mlJb+Y2CBjBJSzTbpT\/jz5RdAoTU+BGjBSgSf90EeOUz6wsU+fQBW\n        cuaLg\/nLhABgbs2rV3bmQm8EtHRhTXgBPNUOV\/8yCk4st42BbBu\/O7wAitzGmyAoE+tlWXYUtxzN\n        htOcj78AeqNS4aI\/Q9jneH5Ng0x1DCLkMlhZFz59m0ZZ9UfPr4jBOmQkjmtWHgC5rqGIUFIXTHih\n        QI3UzVHoH7HhsCYROzZF+JgPjNqxq\/iViPgAJfQo25T3wAOg1BnvUkqP+VNGKsLQXpmF5PXCXmR1\n        zKJvyAqL3Yn4qHCoN0ZCHs6gvm0YxRXdS0IQQmrtTfpiD4BC2\/gOANfffUbjVQ1yMtYKvnNZGJlg\n        kZESDeVqGSy2WbzoHPdkpdtswcnKniUBAHQ7TIYMHmBywcEiEPfey0FSgsL7zWJzosc8jazdcQI7\n        l5tiwvIbUaowTE47UfXMjMqnX4OBTDlMhlgegC62TNmgwp0z6UhLjsaqMMbzN5f25o4x5O5bhwhF\n        WNBZ2mdcyDn3Gu\/NloB2DpOBBAToqs7GzqRIr\/j7BIu+4V9I2xqN2KhwMSlGbcsgTlV9EAXgswSW\n        Bp135pQCrV3jOJSZICowb2RjXWjtHEfh9U5\/OsES+BThj8daqOQyb+q\/DFuRkbImJADOmKuNg+Xt\n        ePOZm6NgzBehv21YfzETek0iGIZgxun2OMjeEx8yACfIv\/wWLR1jAq1gGwZqROePqLE\/NRZjUzOo\n        ezmE++V7ER8tbv35aFzm0o63+YALGlEorfhS0XZsSVSKysTgmANX6nr92QpbMWch7WHEncFSH8dc\n        FiS9kPALJemVjIeQ9FL6PzIR8rWch5D0YcJDSPo0E3QQqR6nolreMoz+ACVfiTBvFfnjAAAAAElF\n        TkSuQmCC\n    \" alt=\"Auto Step icon\" class=\"has-border-color has-ast-global-color-4-border-color\" style=\"border-width:0.5em\"\/><\/figure>\n\n\n\n<div class=\"wp-block-coblocks-accordion\">\n<div class=\"wp-block-coblocks-accordion-item\"><details open><summary class=\"wp-block-coblocks-accordion-item__title\">Configs for All Step<\/summary><div class=\"wp-block-coblocks-accordion-item__content\">\n<dl style=\"0 0 -0.7em 0\">\n<dt style=\"font-weight: 300; font-size: 50%; margin: -1em 0 0 0; color: #C3C3C3;\"><\/dt><dd style=\"margin: -0.5em 0 0.1em 1em\">Step Name<\/dd>\n<dt style=\"font-weight: 300; font-size: 50%; margin: -1em 0 0 0; color: #C3C3C3;\"><\/dt><dd style=\"margin: -0.5em 0 0.1em 1em\">Note<\/dd>\n<\/dl>\n<\/div><\/details><\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-coblocks-accordion\">\n<div class=\"wp-block-coblocks-accordion-item\"><details open><summary class=\"wp-block-coblocks-accordion-item__title\">Configs for this Auto Step<\/summary><div class=\"wp-block-coblocks-accordion-item__content\">\n<dl style=\"0 0 -0.7em 0\">\n<dt style=\"font-weight: 300; font-size: 50%; margin: -1em 0 0 0; color: #C3C3C3;\">conf_OAuth2<\/dt><dd style=\"margin: -0.5em 0 0.1em 1em\">C1: OAuth2 Setting<span style=\"color:#990000;\"> *<\/span><\/dd>\n<dt style=\"font-weight: 300; font-size: 50%; margin: -1em 0 0 0; color: #C3C3C3;\">conf_uploadedFile<\/dt><dd style=\"margin: -0.5em 0 0.1em 1em\">C2: Data item whose attached files will be uploaded<span style=\"color:#990000;\"> *<\/span><\/dd>\n<dt style=\"font-weight: 300; font-size: 50%; margin: -1em 0 0 0; color: #C3C3C3;\">conf_folderUrl<\/dt><dd style=\"margin: -0.5em 0 0.1em 1em\">C3: Folder URL files will be uploaded (Root folder if blank)<\/dd>\n<dt style=\"font-weight: 300; font-size: 50%; margin: -1em 0 0 0; color: #C3C3C3;\">conf_shouldReplace<\/dt><dd style=\"margin: -0.5em 0 0.1em 1em\">C4: Replace if the file with the same name already exists<\/dd>\n<dt style=\"font-weight: 300; font-size: 50%; margin: -1em 0 0 0; color: #C3C3C3;\">conf_fileUrl<\/dt><dd style=\"margin: -0.5em 0 0.1em 1em\">C5: Data item to save uploaded file URLs<\/dd>\n\n<\/dl>\n<\/div><\/details><\/div>\n<\/div>\n\n\n\n<h3 class=\"wp-block-heading\"><i class=\"fal fa-lightbulb-exclamation\"><\/i> Notes<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>This Auto Step is for OneDrive for Business of Microsoft 365<ul><li>It does not work for OneDrive personal<\/li><\/ul><\/li>\n\n\n\n<li>To get the URL of a file\/folder on OneDrive, open the Details window of the file\/folder by clicking the Information icon, proceed to &#8220;More details&#8221;, and click the icon next to &#8220;Path&#8221;<br><img data-recalc-dims=\"1\" decoding=\"async\" src=\"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2020\/06\/OneDrive_howtogetURL_en.png?ssl=1\" alt=\"How to get URL of file\/folder\" style=\"width: 200px; border:3px solid #aaaaaa; padding:5px; margin:5px;\"><\/li>\n\n\n\n<li>Files over 4MB will be divided into 10MB parts\n<ul class=\"wp-block-list\">\n<li>In this case, number of sending requests is expressed by the expression (file size \u00f7 10MB) + 1 (you should round up the result of calculation in parenthesis)<\/li>\n\n\n\n<li>1MB = 1,048,576 (1024 * 1024) byte<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\"><i class=\"fal fa-images\"><\/i> Capture<\/h3>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img data-recalc-dims=\"1\" decoding=\"async\" src=\"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2023\/04\/onedrive-file-upload_capture_en.png?ssl=1\" alt=\"\" style=\"border:10px solid #aaaaaa; padding:5px; margin:5px;\"><\/figure><\/div>\n\n\n\n<h3 class=\"wp-block-heading\"><i class=\"fal fa-balance-scale\"><\/i> See also<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/support.questetra.com\/en\/developer-blog\/onedrive-workflow-tutorial\/\" target=\"_blank\" rel=\"noreferrer noopener\" aria-label=\"Utilising OneDrive from Your Workflow\n(opens in a new tab)\">Utilising OneDrive from Your Workflow<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/support.questetra.com\/en\/bpmn-icons\/intermediate-error-catch-event-boundary-type\/\" target=\"_blank\" rel=\"noreferrer noopener\" aria-label=\"Intermediate Error Catch Event (Boundary Type)\n(opens in a new tab)\">Intermediate Error Catch Event (Boundary Type)<\/a><\/li>\n<\/ul>\n\n\n\n<div class=\"wp-block-coblocks-accordion\">\n<div class=\"wp-block-coblocks-accordion-item\"><details><summary class=\"wp-block-coblocks-accordion-item__title\">Script (click to open)<\/summary><div class=\"wp-block-coblocks-accordion-item__content\">\n<ul class=\"wp-block-list\">\n<li>An XML file that contains the code below is available to download\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/raw.githubusercontent.com\/Questetra\/Addon-XML\/release-2023-12-19\/onedrive-file-upload.xml\" target=\"_blank\" rel=\"noreferrer noopener\">onedrive-file-upload.xml<\/a> (C) Questetra, Inc. (MIT License)<\/li>\n\n\n\n<li>If you are using Professional, you can modify the contents of this file and use it as your own add-on auto step<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-js\" data-lang=\"JavaScript\"><code>\n\/\/ OAuth2 config sample at [OAuth 2.0 Setting]\n\/\/ - Authorization Endpoint URL: https:\/\/login.microsoftonline.com\/common\/oauth2\/v2.0\/authorize\n\/\/ - Token Endpoint URL: https:\/\/login.microsoftonline.com\/common\/oauth2\/v2.0\/token\n\/\/ - Scope: https:\/\/graph.microsoft.com\/Files.ReadWrite.All offline_access\n\/\/ - Consumer Key: (Get by Microsoft Azure Active Directory)\n\/\/ - Consumer Secret: (Get by Microsoft Azure Active Directory)\n\nconst LIMIT_SIZE = 4194304; \/\/File size border of Microsoft Graph\nconst PACKET_MAX_SIZE = 10485760; \/\/size of each packet,must be a multiple of 327680(320KiB): 10485760=10MiB\nconst GRAPH_URI = &quot;https:\/\/graph.microsoft.com\/v1.0\/&quot;;\n\nfunction main() {\n    \/\/\/\/ == \u5de5\u7a0b\u30b3\u30f3\u30d5\u30a3\u30b0\u306e\u53c2\u7167 \/ Config Retrieving ==\n    const oauth2 = configs.getObject(&quot;conf_OAuth2&quot;);\n    const folderUrl = retrieveFolderUrl();\n    const urlDataDef = configs.getObject(&quot;conf_fileUrl&quot;);\n    const shouldReplace = configs.getObject(&quot;conf_shouldReplace&quot;);\n\n    \/\/\/\/ == \u30ef\u30fc\u30af\u30d5\u30ed\u30fc\u30c7\u30fc\u30bf\u306e\u53c2\u7167 \/ Data Retrieving ==\n    const files = engine.findData(configs.getObject(&quot;conf_uploadedFile&quot;));\n    if (files === null) {\n        setData(urlDataDef, [&quot;&quot;]);\n        return;\n    }\n\n    \/\/\/\/ == \u6f14\u7b97 \/ Calculating ==\n    fileCheck(files, urlDataDef, folderUrl);\n    const folderInfo = getFolderInfoByUrl(folderUrl, oauth2);\n    const uploadedFileUrl = [];\n\n    files.forEach(file =&gt; {\n        engine.log(`Uploading: ${file.getName()}`);\n        if (file.getLength() &gt; LIMIT_SIZE) {\n            \/\/over 4MB\n            processLargeFile(oauth2, file, folderInfo, shouldReplace, uploadedFileUrl);\n        } else {\n            \/\/under 4MB\n            upload(oauth2, file, folderInfo, shouldReplace, uploadedFileUrl);\n        }\n    });\n\n    \/\/\/\/ == \u30ef\u30fc\u30af\u30d5\u30ed\u30fc\u30c7\u30fc\u30bf\u3078\u306e\u4ee3\u5165 \/ Data Updating ==\n    setData(urlDataDef, uploadedFileUrl);\n}\n\n\/**\n  * config\u304b\u3089\u30d5\u30a9\u30eb\u30c0URL\u306e\u5024\u3092\u8aad\u307f\u51fa\u3059\n  * @return {String} config\u306e\u5024\n  *\/\nfunction retrieveFolderUrl() {\n    const folderUrlDef = configs.getObject(&quot;conf_folderUrl&quot;);\n    let folderUrl = &quot;&quot;;\n    if (folderUrlDef === null) {\n        folderUrl = configs.get(&quot;conf_folderUrl&quot;);\n    } else {\n        folderUrl = engine.findData(folderUrlDef);\n    }\n    return folderUrl;\n}\n\n\/**\n  * \u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u3057\u3088\u3046\u3068\u3059\u308b\u30d5\u30a1\u30a4\u30eb\u306e\u540d\u524d\u30fb\u6570\u30fb\u30b5\u30a4\u30ba\u304c\u9069\u5207\u304b\u3069\u3046\u304b\u30c1\u30a7\u30c3\u30af\u3059\u308b\n  * \u30d5\u30a1\u30a4\u30eb\u6570\u3001\u901a\u4fe1\u5236\u9650\u3092\u30c1\u30a7\u30c3\u30af\n  * \u901a\u4fe1\u6570=4MB\u4ee5\u4e0b\u306e\u30d5\u30a1\u30a4\u30eb\u306e\u6570 + &lt;4MB\u3092\u8d85\u3048\u308b\u30d5\u30a1\u30a4\u30eb\u305d\u308c\u305e\u308c\u306b\u3064\u3044\u3066&gt;(ceil(\u30d5\u30a1\u30a4\u30eb\u30b5\u30a4\u30ba\/\u30d1\u30b1\u30c3\u30c8\u306e\u6700\u5927\u30b5\u30a4\u30ba) + 1)\n  * \u305d\u306e\u5f8c\u30d5\u30a1\u30a4\u30eb\u540d\u3092\u30c1\u30a7\u30c3\u30af\n  * @param {Array&lt;File&gt;} files  \u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u3057\u3088\u3046\u3068\u3059\u308b\u30d5\u30a1\u30a4\u30eb\n  * @param {ProcessDataDefinitionView} urlDataDef  URL \u3092\u4fdd\u5b58\u3059\u308b\u30c7\u30fc\u30bf\u9805\u76ee\u306e ProcessDataDefinitionView\n  * @param {String} folderUrl  \u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u5148\u30d5\u30a9\u30eb\u30c0\u306e URL\n  *\/\nfunction fileCheck(files, urlDataDef, folderUrl) {\n    fileNumCheck(urlDataDef, files.size());\n    let requestNum = 0;\n    files.forEach(file =&gt; {\n        const size = file.getLength();\n        if (size &gt; LIMIT_SIZE) {\n            requestNum += (Math.ceil(size \/ PACKET_MAX_SIZE) + 1);\n        } else {\n            requestNum++;\n        }\n    });\n    if (folderUrl !== &quot;&quot; &amp;&amp; folderUrl !== null) {\n        requestNum++;\n    }\n    if (requestNum &gt; httpClient.getRequestingLimit()) {\n        throw &quot;Necessary HTTP requests exceeds the limit.&quot;;\n    }\n    checkFileNameOverlap(files);\n}\n\n\/**\n  * \u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u3059\u308b\u30c7\u30fc\u30bf\u304c\u8907\u6570\u3067 URL \u51fa\u529b\u5148\u306e\u30c7\u30fc\u30bf\u9805\u76ee\u304c\u5358\u4e00\u884c\u306a\u3089\u30a8\u30e9\u30fc\u306b\u3059\u308b\n  * @param {ProcessDataDefinitionView} dataDef  \u30c7\u30fc\u30bf\u9805\u76ee\u306e ProcessDataDefinitionView\n  * @param {Number} fileNum  \u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u3057\u3088\u3046\u3068\u3057\u3066\u3044\u308b\u30d5\u30a1\u30a4\u30eb\u306e\u500b\u6570\n  *\/\nfunction fileNumCheck(dataDef, fileNum) {\n    if (dataDef !== null) {\n        \/\/Multiple Judge\n        if (dataDef.matchDataType(&quot;STRING_TEXTFIELD&quot;) &amp;&amp; fileNum &gt; 1) {\n            throw &quot;Multiple files are set though the Data Item to save the output is Single-line String.&quot;\n        }\n    }\n}\n\n\/**\n * \u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u3059\u308b\u30d5\u30a1\u30a4\u30eb\u306e\u4e2d\u306b\u540c\u3058\u30d5\u30a1\u30a4\u30eb\u540d\u306e\u3082\u306e\u304c2\u3064\u4ee5\u4e0a\u3042\u308c\u3070\u30a8\u30e9\u30fc\n * @param {Array&lt;File&gt;}  \u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u3057\u3088\u3046\u3068\u3059\u308b\u30d5\u30a1\u30a4\u30eb\u306e\u914d\u5217\n *\/\nfunction checkFileNameOverlap(files) {\n    const fileNames = new Set();\n    files.forEach(file =&gt; {\n        if (fileNames.has(file.getName())) {\n            throw &quot;Two or more files to upload have the same name.&quot;;\n        }\n        fileNames.add(file.getName());\n    });\n}\n\n\/**\n  * \u30d5\u30a9\u30eb\u30c0\u306eURL\u304b\u3089\u30d5\u30a9\u30eb\u30c0\u60c5\u5831\uff08\u30c9\u30e9\u30a4\u30d6ID\u3068\u30d5\u30a9\u30eb\u30c0ID\uff09\u3092\u53d6\u5f97\u3057\u3001\n  * \u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3067\u8fd4\u3059\uff08URL\u304c\u7a7a\u306e\u5834\u5408\u306f\u30c9\u30e9\u30a4\u30d6ID\u3092me\/drive\u3001\u30d5\u30a9\u30eb\u30c0ID\u3092root\u306b\u3059\u308b\uff09\n  * @param {String} folderUrl  \u30d5\u30a9\u30eb\u30c0\u306eURL\n  * @param {AuthSettingWrapper} oauth2  OAuth2 \u8a8d\u8a3c\u8a2d\u5b9a\n  * @return {Object} folderInfo  \u30d5\u30a9\u30eb\u30c0\u60c5\u5831 {driveId, folderId}\n  *\/\nfunction getFolderInfoByUrl(folderUrl, oauth2) {\n    let folderInfo = { driveId: &quot;me\/drive&quot;, folderId: &quot;root&quot; };\n    if (folderUrl !== &quot;&quot; &amp;&amp; folderUrl !== null) {\n        \/\/ \u5206\u5272\u4ee3\u5165\n        const {\n            id,\n            parentReference: {\n                driveId\n            }\n        } = getObjBySharingUrl(folderUrl, oauth2);\n        folderInfo = { driveId: `drives\/${driveId}`, folderId: id };\n    }\n    return folderInfo;\n}\n\n\/**\n  * OneDrive\u306e\u30c9\u30e9\u30a4\u30d6\u30a2\u30a4\u30c6\u30e0\uff08\u30d5\u30a1\u30a4\u30eb\u3001\u30d5\u30a9\u30eb\u30c0\uff09\u306e\u30e1\u30bf\u30c7\u30fc\u30bf\u3092\u53d6\u5f97\u3057\u3001JSON\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3092\u8fd4\u3059\n  * API\u306e\u4ed5\u69d8: https:\/\/docs.microsoft.com\/ja-jp\/onedrive\/developer\/rest-api\/api\/shares_get?view=odsp-graph-online\n  * @param {String} sharingUrl  \u30d5\u30a1\u30a4\u30eb\u306e\u5171\u6709URL\n  * @param {AuthSettingWrapper} oauth2  OAuth2 \u8a8d\u8a3c\u8a2d\u5b9a\n  * @return {Object} responseObj  \u30c9\u30e9\u30a4\u30d6\u30a2\u30a4\u30c6\u30e0\u306e\u30e1\u30bf\u30c7\u30fc\u30bf\u306eJSON\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\n  *\/\nfunction getObjBySharingUrl(sharingUrl, oauth2) {\n    if (sharingUrl === &quot;&quot; || sharingUrl === null) {\n        throw &quot;Sharing URL is empty.&quot;;\n    }\n\n    \/\/ encoding sharing URL\n    const encodedSharingUrl = encodeSharingUrl(sharingUrl);\n\n    \/\/ preparing for API Request\n    const response = httpClient.begin()\n        .authSetting(oauth2)\n        .get(`${GRAPH_URI}shares\/${encodedSharingUrl}\/driveItem`);\n    const status = response.getStatusCode();\n    const responseStr = response.getResponseAsString();\n    if (status &gt;= 300) {\n        engine.log(`status: ${status}`);\n        engine.log(responseStr);\n        throw &quot;Failed to get drive item.&quot;;\n    }\n    return JSON.parse(responseStr);\n}\n\n\/**\n  * \u5171\u6709URL\u3092unpadded base64url \u5f62\u5f0f\u306b\u30a8\u30f3\u30b3\u30fc\u30c9\u3059\u308b\n  * @param {String} sharingUrl  \u5171\u6709URL\n  * @return {String} encodedSharingUrl  \u30a8\u30f3\u30b3\u30fc\u30c9\u3055\u308c\u305f\u5171\u6709URL\n  *\/\nfunction encodeSharingUrl(sharingUrl) {\n    let encodedSharingUrl = base64.encodeToUrlSafeString(sharingUrl);\n    while (encodedSharingUrl.slice(-1) === &apos;=&apos;) {\n        encodedSharingUrl = encodedSharingUrl.slice(0, -1);\n    }\n    return `u!${encodedSharingUrl}`;\n}\n\n\/**\n  * \u30d5\u30a1\u30a4\u30eb\u3092\u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u3059\u308b\u3002\u4e00\u56de\u306b\u3064\u304d\u4e00\u3064\u306e\u307f\u3002\n  * @param {AuthSettingWrapper} oauth2  OAuth2 \u8a8d\u8a3c\u8a2d\u5b9a\n  * @param {File} file  \u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u3059\u308b\u30d5\u30a1\u30a4\u30eb\n  * @param {String,String} driveId,folderId  \u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u5148\u30c9\u30e9\u30a4\u30d6\u3001\u30d5\u30a9\u30eb\u30c0\u306eID\n  * @param {boolean} shouldReplace  \u4e0a\u66f8\u304d\u3059\u308b\u304b\u3069\u3046\u304b\n  * @param {Array&lt;String&gt;} uploadedFileUrl  \u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u3057\u305f\u30d5\u30a1\u30a4\u30eb\u306eURL\u3092\u683c\u7d0d\u3059\u308b\u914d\u5217\n  *\/\nfunction upload(oauth2, file, {\n    driveId,\n    folderId\n}, shouldReplace, uploadedFileUrl) {\n    const url = `${GRAPH_URI}${driveId}\/items\/${folderId}:\/${encodeURIComponent(file.getName())}:\/content`;\n    let request = httpClient.begin()\n        .authSetting(oauth2)\n        .body(file, &quot;application\/octet-stream&quot;);\n    if (!shouldReplace) { \/\/ \u30c7\u30d5\u30a9\u30eb\u30c8\u306f replace\n        request = request.queryParam(&quot;@microsoft.graph.conflictBehavior&quot;, &quot;fail&quot;);\n    }\n    const response = request.put(url);\n\n    const responseStr = response.getResponseAsString();\n    const status = response.getStatusCode();\n\n    if (status &gt;= 300) {\n        \/\/when error thrown\n        engine.log(`Status: ${status}`);\n        engine.log(responseStr);\n        throw &quot;Failed to upload&quot;;\n    }\n    engine.log(&quot;Succeeded to upload.&quot;);\n    outputDataSet(responseStr, uploadedFileUrl);\n}\n\n\/**\n  * 4MB\u3092\u8d85\u3048\u308b\u30d5\u30a1\u30a4\u30eb\u306e\u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u51e6\u7406\u3092\u884c\u3046\n  * @param {AuthSettingWrapper} oauth2  OAuth2 \u8a8d\u8a3c\u8a2d\u5b9a\n  * @param {File} file  \u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u3059\u308b\u30d5\u30a1\u30a4\u30eb\n  * @param {String,String} driveId,folderId  \u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u5148\u30c9\u30e9\u30a4\u30d6\u3001\u30d5\u30a9\u30eb\u30c0\u306eID\n  * @param {boolean} shouldReplace  \u4e0a\u66f8\u304d\u3059\u308b\u304b\u3069\u3046\u304b\n  * @param {Array&lt;String&gt;} uploadedFileUrl  \u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u3057\u305f\u30d5\u30a1\u30a4\u30eb\u306eURL\u3092\u683c\u7d0d\u3059\u308b\u914d\u5217\n  *\/\nfunction processLargeFile(oauth2, file, {\n    driveId,\n    folderId\n}, shouldReplace, uploadedFileUrl) {\n    const upUrl = createSession(oauth2, file.getName(), {\n        driveId,\n        folderId\n    }, shouldReplace);\n    let range = 0;\n    const fileSize = file.getLength();\n\n    fileRepository.readFile(file, PACKET_MAX_SIZE, function (packet) {\n        \/\/upload each fragment of file\n        range = uploadLarge(upUrl, range, packet, fileSize, uploadedFileUrl);\n    });\n}\n\n\/**\n  * \u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u7528\u306e\u30bb\u30c3\u30b7\u30e7\u30f3\u3092\u4f5c\u6210\u3059\u308b\n  * @param {AuthSettingWrapper} oauth2  OAuth2 \u8a8d\u8a3c\u8a2d\u5b9a\n  * @param {String} fileName  \u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u3059\u308b\u30d5\u30a1\u30a4\u30eb\u306e\u30d5\u30a1\u30a4\u30eb\u540d\n  * @param {String,String} driveId,folderId  \u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u5148\u30c9\u30e9\u30a4\u30d6\u3001\u30d5\u30a9\u30eb\u30c0\u306eID\n  * @param {boolean} shouldReplace  \u4e0a\u66f8\u304d\u3059\u308b\u304b\u3069\u3046\u304b\n  * @return {String}  \u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u5148 URL\n  *\/\nfunction createSession(oauth2, fileName, {\n    driveId,\n    folderId\n}, shouldReplace) {\n    const url = `${GRAPH_URI}${driveId}\/items\/${folderId}:\/${encodeURIComponent(fileName)}:\/createUploadSession`;\n    let request = httpClient.begin()\n        .authSetting(oauth2);\n    if (!shouldReplace) { \/\/ \u30c7\u30d5\u30a9\u30eb\u30c8\u306f replace\n        const body = {\n            &quot;item&quot;: {\n                &quot;@microsoft.graph.conflictBehavior&quot;: &quot;fail&quot;\n            }\n        }\n        request = request.body(JSON.stringify(body), &quot;application\/json; charset=UTF-8&quot;);\n    }\n    const response = request.post(url);\n\n    const status = response.getStatusCode();\n    const responseStr = response.getResponseAsString();\n\n    if (status &gt;= 300) {\n        engine.log(`Status: ${status}`);\n        engine.log(responseStr);\n        throw &quot;Failed to create upload session&quot;;\n    }\n    return JSON.parse(responseStr).uploadUrl;\n}\n\n\/**\n  * 4MB\u3092\u8d85\u3048\u308b\u30d5\u30a1\u30a4\u30eb\u306b\u3064\u3044\u3066\u3001\u5404\u90e8\u5206\u306e\u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u3092\u5b9f\u884c\u3059\u308b\n  * @param {String} upUrl  \u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u5148 URL\n  * @param {Number} range  \u3053\u308c\u307e\u3067\u306b\u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u3057\u305f\u30b5\u30a4\u30ba\n  * @param {ByteArrayWrapper} packet  \u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u3059\u308b\u30d0\u30a4\u30ca\u30ea\n  * @param {Number} fileSize  \u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u3059\u308b\u30d5\u30a1\u30a4\u30eb\u306e\u30b5\u30a4\u30ba\n  * @param {Array&lt;String&gt;} uploadedFileUrl  \u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u3057\u305f\u30d5\u30a1\u30a4\u30eb\u306eURL\u3092\u683c\u7d0d\u3059\u308b\u914d\u5217\n  * @return {Number}  \u65b0\u3057\u3044 range\n  *\/\nfunction uploadLarge(upUrl, range, packet, fileSize, uploadedFileUrl) {\n    const packetSize = packet.getLength();\n    const rangetxt = `bytes ${range}-${range + packetSize - 1}\/${fileSize}`;\n    const response = httpClient.begin()\n        .header(&quot;Content-Range&quot;, rangetxt)\n        .body(packet, &quot;application\/octet-stream&quot;)\n        .put(upUrl);\n\n    const status = response.getStatusCode();\n    const responseStr = response.getResponseAsString();\n\n    if (status &gt;= 300) {\n        engine.log(`Status: ${status}`);\n        engine.log(responseStr);\n        throw &quot;Failed to upload&quot;;\n    } else if (status === 202) {\n        range += packetSize;\n        return range;\n    } else {\n        engine.log(&quot;Succeeded to upload.&quot;);\n        outputDataSet(responseStr, uploadedFileUrl);\n        return range;\n    }\n}\n\n\/**\n  * \u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u3057\u305f\u30c7\u30fc\u30bf\u306eURL\u3092\u914d\u5217\u306b\u30bb\u30c3\u30c8\u3059\u308b\u3002\n  * @param {String} responseStr  \u9001\u4fe1\u6642\u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3092\u30c6\u30ad\u30b9\u30c8\u51fa\u529b\u3057\u305f\u3082\u306e\n  * @param {Array&lt;String&gt;} uploadedFileUrl  \u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u3057\u305f\u30d5\u30a1\u30a4\u30eb\u306eURL\u3092\u683c\u7d0d\u3059\u308b\u914d\u5217\n  *\/\nfunction outputDataSet(responseStr, uploadedFileUrl) {\n    const json = JSON.parse(responseStr);\n    uploadedFileUrl.push(json.webUrl);\n}\n\n\/**\n  * \u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u3057\u305f\u30c7\u30fc\u30bf\u306eURL\u3092\u30c7\u30fc\u30bf\u9805\u76ee\u306b\u51fa\u529b\u3059\u308b\u3002\n  * @param {ProcessDataDefinitionView} dataDef  \u30c7\u30fc\u30bf\u9805\u76ee\u306e ProcessDataDefinitionView\n  * @param {Array&lt;String&gt;} uploadedFileUrl  \u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u3057\u305f\u30d5\u30a1\u30a4\u30eb\u306eURL\u3092\u683c\u7d0d\u3059\u308b\u914d\u5217\n  *\/\nfunction setData(dataDef, uploadedFileUrl) {\n    if (dataDef !== null) {\n        engine.setData(dataDef, uploadedFileUrl.join(&apos;\\n&apos;));\n    }\n}\n\n  \n    <\/code><\/pre><\/div>\n<\/div><\/details><\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>This item uploads files to the specified folder on OneDrive.<\/p>\n","protected":false},"author":17,"featured_media":110810,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_coblocks_attr":"","_coblocks_dimensions":"","_coblocks_responsive_height":"","_coblocks_accordion_ie_support":"","_uag_custom_page_level_css":"","advanced_seo_description":"","jetpack_seo_html_title":"","jetpack_seo_noindex":false,"jetpack_seo_schema_type":"","_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_wpcom_ai_launchpad_first_post":false,"_jetpack_feature_clip_id":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2},"_wpas_customize_per_network":false,"jetpack_post_was_ever_published":false},"categories":[551],"tags":[3160,3158],"class_list":["post-86175","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-bpmn-icons","tag-microsoft-365","tag-microsoft-onedrive"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/06\/bpmn-icon-service-task-one_drive.png?fit=1200%2C675&ssl=1","uagb_featured_image_src":{"full":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/06\/bpmn-icon-service-task-one_drive.png?fit=1200%2C675&ssl=1",1200,675,false],"thumbnail":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/06\/bpmn-icon-service-task-one_drive.png?resize=440%2C440&ssl=1",440,440,true],"medium":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/06\/bpmn-icon-service-task-one_drive.png?fit=560%2C315&ssl=1",560,315,true],"medium_large":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/06\/bpmn-icon-service-task-one_drive.png?fit=768%2C432&ssl=1",768,432,true],"large":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/06\/bpmn-icon-service-task-one_drive.png?fit=1024%2C576&ssl=1",1024,576,true],"1536x1536":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/06\/bpmn-icon-service-task-one_drive.png?fit=1200%2C675&ssl=1",1200,675,true],"2048x2048":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/06\/bpmn-icon-service-task-one_drive.png?fit=1200%2C675&ssl=1",1200,675,true],"newspack-article-block-landscape-large":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/06\/bpmn-icon-service-task-one_drive.png?resize=1200%2C675&ssl=1",1200,675,true],"newspack-article-block-portrait-large":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/06\/bpmn-icon-service-task-one_drive.png?resize=900%2C675&ssl=1",900,675,true],"newspack-article-block-square-large":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/06\/bpmn-icon-service-task-one_drive.png?resize=1200%2C675&ssl=1",1200,675,true],"newspack-article-block-landscape-medium":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/06\/bpmn-icon-service-task-one_drive.png?resize=800%2C600&ssl=1",800,600,true],"newspack-article-block-portrait-medium":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/06\/bpmn-icon-service-task-one_drive.png?resize=600%2C675&ssl=1",600,675,true],"newspack-article-block-square-medium":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/06\/bpmn-icon-service-task-one_drive.png?resize=800%2C675&ssl=1",800,675,true],"newspack-article-block-landscape-intermediate":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/06\/bpmn-icon-service-task-one_drive.png?resize=600%2C450&ssl=1",600,450,true],"newspack-article-block-portrait-intermediate":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/06\/bpmn-icon-service-task-one_drive.png?resize=450%2C600&ssl=1",450,600,true],"newspack-article-block-square-intermediate":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/06\/bpmn-icon-service-task-one_drive.png?resize=600%2C600&ssl=1",600,600,true],"newspack-article-block-landscape-small":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/06\/bpmn-icon-service-task-one_drive.png?resize=400%2C300&ssl=1",400,300,true],"newspack-article-block-portrait-small":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/06\/bpmn-icon-service-task-one_drive.png?resize=300%2C400&ssl=1",300,400,true],"newspack-article-block-square-small":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/06\/bpmn-icon-service-task-one_drive.png?resize=400%2C400&ssl=1",400,400,true],"newspack-article-block-landscape-tiny":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/06\/bpmn-icon-service-task-one_drive.png?resize=200%2C150&ssl=1",200,150,true],"newspack-article-block-portrait-tiny":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/06\/bpmn-icon-service-task-one_drive.png?resize=150%2C200&ssl=1",150,200,true],"newspack-article-block-square-tiny":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/06\/bpmn-icon-service-task-one_drive.png?resize=200%2C200&ssl=1",200,200,true],"newspack-article-block-uncropped":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/06\/bpmn-icon-service-task-one_drive.png?fit=1200%2C675&ssl=1",1200,675,true]},"uagb_author_info":{"display_name":"Shiho Tatsumi","author_link":"https:\/\/support.questetra.com\/en\/author\/tatsumi48c607ec82\/"},"uagb_comment_info":3,"uagb_excerpt":"This item uploads files to the specified folder on OneDrive.","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/p9DiIh-mpV","jetpack_likes_enabled":true,"jetpack-related-posts":[{"id":94292,"url":"https:\/\/support.questetra.com\/ja\/developer-blog\/onedrive-workflow-tutorial\/","url_meta":{"origin":86175,"position":0},"title":"\u30ef\u30fc\u30af\u30d5\u30ed\u30fc\u304b\u3089 OneDrive \u3092\u6d3b\u7528\u3059\u308b","author":"Hirotaka NISHI","date":"2020-10-06","format":false,"excerpt":"Microsoft 365 OneDrive for Business \u306b\u95a2\u3059\u308b\u81ea\u52d5\u5de5\u7a0b\u306b\u3064\u3044\u3066\u8aac\u660e\u3057\u307e\u3059\u3002OneDirve \u3078\u306e\u300c\u30d5\u30a9\u30eb\u30c0\u4f5c\u6210\u300d\u3084\u300c\u30d5\u30a1\u30a4\u30eb\u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u300d\u306a\u3069\u304c\u53ef\u80fd\u3067\u3059\u3002","rel":"","context":"In &quot;Questetra Developers Blog&quot;","block_context":{"text":"Questetra Developers Blog","link":"https:\/\/support.questetra.com\/en\/category\/developer-blog\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2020\/09\/OneDrive-1.png?fit=1200%2C675&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2020\/09\/OneDrive-1.png?fit=1200%2C675&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2020\/09\/OneDrive-1.png?fit=1200%2C675&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2020\/09\/OneDrive-1.png?fit=1200%2C675&ssl=1&resize=700%2C400 2x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2020\/09\/OneDrive-1.png?fit=1200%2C675&ssl=1&resize=1050%2C600 3x"},"classes":[]},{"id":74283,"url":"https:\/\/support.questetra.com\/ja\/developer-blog\/onedrive-questetra\/","url_meta":{"origin":86175,"position":1},"title":"OneDrive \u3078\u30af\u30e9\u30a6\u30c9\u30ef\u30fc\u30af\u30d5\u30ed\u30fc Questetra \u304b\u3089\u30d5\u30a1\u30a4\u30eb\u51fa\u529b\u3059\u308b\u65b9\u6cd5","author":"Tsuyoshi Kusaka","date":"2019-02-04","format":false,"excerpt":"Questetra BPM Suite \u2192 OneDrive \u3078\u306e\u9023\u643a\uff08\u30d5\u30a1\u30a4\u30eb\u51fa\u529b\uff09\u306e\u8a2d\u5b9a\u306b\u3064\u3044\u3066\u307e\u3068\u3081\u307e\u3057\u305f","rel":"","context":"In &quot;Questetra Developers Blog&quot;","block_context":{"text":"Questetra Developers Blog","link":"https:\/\/support.questetra.com\/ja\/category\/developer-blog\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2019\/03\/onedrive-questetra-1200x675-1.png?fit=1200%2C675&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2019\/03\/onedrive-questetra-1200x675-1.png?fit=1200%2C675&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2019\/03\/onedrive-questetra-1200x675-1.png?fit=1200%2C675&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2019\/03\/onedrive-questetra-1200x675-1.png?fit=1200%2C675&ssl=1&resize=700%2C400 2x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2019\/03\/onedrive-questetra-1200x675-1.png?fit=1200%2C675&ssl=1&resize=1050%2C600 3x"},"classes":[]},{"id":86670,"url":"https:\/\/support.questetra.com\/ja\/bpmn-icons\/onedrive-folder-create\/","url_meta":{"origin":86175,"position":2},"title":"Microsoft 365 OneDrive for Business: \u30d5\u30a9\u30eb\u30c0\u4f5c\u6210","author":"Shiho Tatsumi","date":"2024-01-16","format":false,"excerpt":"OneDrive \u306e\u6307\u5b9a\u30d5\u30a9\u30eb\u30c0\u5185\u306b\u30d5\u30a9\u30eb\u30c0\u3092\u4f5c\u6210\u3057\u307e\u3059\u3002","rel":"","context":"In &quot;BPMN\u30a2\u30a4\u30b3\u30f3&quot;","block_context":{"text":"BPMN\u30a2\u30a4\u30b3\u30f3","link":"https:\/\/support.questetra.com\/ja\/category\/bpmn-icons\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/06\/bpmn-icon-service-task-one_drive.png?fit=1200%2C675&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/06\/bpmn-icon-service-task-one_drive.png?fit=1200%2C675&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/06\/bpmn-icon-service-task-one_drive.png?fit=1200%2C675&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/06\/bpmn-icon-service-task-one_drive.png?fit=1200%2C675&ssl=1&resize=700%2C400 2x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/06\/bpmn-icon-service-task-one_drive.png?fit=1200%2C675&ssl=1&resize=1050%2C600 3x"},"classes":[]},{"id":88847,"url":"https:\/\/support.questetra.com\/ja\/bpmn-icons\/onedrive-file-delete\/","url_meta":{"origin":86175,"position":3},"title":"Microsoft 365 OneDrive for Business: \u30d5\u30a1\u30a4\u30eb \/ \u30d5\u30a9\u30eb\u30c0\u524a\u9664","author":"Shiho Tatsumi","date":"2024-01-16","format":false,"excerpt":"OneDrive \u4e0a\u306e\u30d5\u30a1\u30a4\u30eb \/ \u30d5\u30a9\u30eb\u30c0\u3092\u524a\u9664\u3057\u307e\u3059\u3002\u4e00\u5ea6\u306b\u8907\u6570\u306e\u524a\u9664\u304c\u53ef\u80fd\u3067\u3059\u3002\u8907\u6570\u524a\u9664\u3059\u308b\u5834\u5408\u3001\u30c7\u30fc\u30bf\u9805\u76ee\u3067\u306f1\u884c\u306b\u3064\u304d1\u3064\u305a\u3064 URL \u3092\u66f8\u304f\u3088\u3046\u306b\u3057\u3066\u304f\u3060\u3055\u3044\u3002","rel":"","context":"In &quot;BPMN\u30a2\u30a4\u30b3\u30f3&quot;","block_context":{"text":"BPMN\u30a2\u30a4\u30b3\u30f3","link":"https:\/\/support.questetra.com\/ja\/category\/bpmn-icons\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/06\/bpmn-icon-service-task-one_drive.png?fit=1200%2C675&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/06\/bpmn-icon-service-task-one_drive.png?fit=1200%2C675&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/06\/bpmn-icon-service-task-one_drive.png?fit=1200%2C675&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/06\/bpmn-icon-service-task-one_drive.png?fit=1200%2C675&ssl=1&resize=700%2C400 2x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/06\/bpmn-icon-service-task-one_drive.png?fit=1200%2C675&ssl=1&resize=1050%2C600 3x"},"classes":[]},{"id":88743,"url":"https:\/\/support.questetra.com\/ja\/bpmn-icons\/onedrive-file-copy\/","url_meta":{"origin":86175,"position":4},"title":"Microsoft 365 OneDrive for Business: \u30d5\u30a1\u30a4\u30eb \/ \u30d5\u30a9\u30eb\u30c0\u30b3\u30d4\u30fc","author":"Shiho Tatsumi","date":"2023-12-14","format":false,"excerpt":"\u3053\u306e\u5de5\u7a0b\u306f\u3001OneDrive \u4e0a\u306e\u30d5\u30a1\u30a4\u30eb \/ \u30d5\u30a9\u30eb\u30c0\u3092\u8907\u88fd\u3057\u3001\u6307\u5b9a\u30d5\u30a9\u30eb\u30c0\u306b\u65b0\u898f\u4fdd\u5b58\u3057\u307e\u3059\u3002","rel":"","context":"In &quot;BPMN\u30a2\u30a4\u30b3\u30f3&quot;","block_context":{"text":"BPMN\u30a2\u30a4\u30b3\u30f3","link":"https:\/\/support.questetra.com\/ja\/category\/bpmn-icons\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/06\/bpmn-icon-service-task-one_drive.png?fit=1200%2C675&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/06\/bpmn-icon-service-task-one_drive.png?fit=1200%2C675&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/06\/bpmn-icon-service-task-one_drive.png?fit=1200%2C675&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/06\/bpmn-icon-service-task-one_drive.png?fit=1200%2C675&ssl=1&resize=700%2C400 2x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/06\/bpmn-icon-service-task-one_drive.png?fit=1200%2C675&ssl=1&resize=1050%2C600 3x"},"classes":[]},{"id":87452,"url":"https:\/\/support.questetra.com\/ja\/bpmn-icons\/onedrive-file-upload\/","url_meta":{"origin":86175,"position":5},"title":"Microsoft 365 OneDrive for Business: \u30d5\u30a1\u30a4\u30eb\u30a2\u30c3\u30d7\u30ed\u30fc\u30c9","author":"Shiho Tatsumi","date":"2024-01-16","format":false,"excerpt":"\u3053\u306e\u5de5\u7a0b\u306f\u3001OneDrive \u306e\u6307\u5b9a\u30d5\u30a9\u30eb\u30c0\u306b\u30d5\u30a1\u30a4\u30eb\u3092\u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u3057\u307e\u3059\u3002","rel":"","context":"In &quot;BPMN\u30a2\u30a4\u30b3\u30f3&quot;","block_context":{"text":"BPMN\u30a2\u30a4\u30b3\u30f3","link":"https:\/\/support.questetra.com\/ja\/category\/bpmn-icons\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/06\/bpmn-icon-service-task-one_drive.png?fit=1200%2C675&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/06\/bpmn-icon-service-task-one_drive.png?fit=1200%2C675&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/06\/bpmn-icon-service-task-one_drive.png?fit=1200%2C675&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/06\/bpmn-icon-service-task-one_drive.png?fit=1200%2C675&ssl=1&resize=700%2C400 2x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/06\/bpmn-icon-service-task-one_drive.png?fit=1200%2C675&ssl=1&resize=1050%2C600 3x"},"classes":[]}],"amp_enabled":false,"_links":{"self":[{"href":"https:\/\/support.questetra.com\/en\/wp-json\/wp\/v2\/posts\/86175","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/support.questetra.com\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/support.questetra.com\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/support.questetra.com\/en\/wp-json\/wp\/v2\/users\/17"}],"replies":[{"embeddable":true,"href":"https:\/\/support.questetra.com\/en\/wp-json\/wp\/v2\/comments?post=86175"}],"version-history":[{"count":37,"href":"https:\/\/support.questetra.com\/en\/wp-json\/wp\/v2\/posts\/86175\/revisions"}],"predecessor-version":[{"id":156697,"href":"https:\/\/support.questetra.com\/en\/wp-json\/wp\/v2\/posts\/86175\/revisions\/156697"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/support.questetra.com\/en\/wp-json\/wp\/v2\/media\/110810"}],"wp:attachment":[{"href":"https:\/\/support.questetra.com\/en\/wp-json\/wp\/v2\/media?parent=86175"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/support.questetra.com\/en\/wp-json\/wp\/v2\/categories?post=86175"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/support.questetra.com\/en\/wp-json\/wp\/v2\/tags?post=86175"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}