Chilkat HOME Android™ Classic ASP C C++ C# Mono C# .NET Core C# C# UWP/WinRT DataFlex Delphi ActiveX Delphi DLL Visual FoxPro Java Lianja MFC Objective-C Perl PHP ActiveX PHP Extension PowerBuilder PowerShell PureBasic CkPython Chilkat2-Python Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ Visual Basic 6.0 VB.NET VB.NET UWP/WinRT VBScript Xojo Plugin Node.js Excel Go
(Excel) OneDrive -- Create a New FolderDemonstrates how to create a new folder. Note: This example requires Chilkat v9.5.0.68 or greater.
' This example requires the Chilkat API to have been previously unlocked. ' See Global Unlock Sample for sample code. Dim http As Chilkat.Http Set http = Chilkat.NewHttp ' Use your previously obtained access token here: ' See the following examples for getting an access token: ' Get Microsoft Graph OAuth2 Access Token (Azure AD v2.0 Endpoint). ' Get Microsoft Graph OAuth2 Access Token (Azure AD Endpoint). ' Refresh Access Token (Azure AD v2.0 Endpoint). ' Refresh Access Token (Azure AD Endpoint). ' (Make sure your token was obtained with the Files.ReadWrite scope.) http.AuthToken = "MICROSOFT_GRAPH_ACCESS_TOKEN" ' To create a new folder, send a POST request like this: ' POST /me/drive/items/{parent-item-id}/children ' We first need to get the item-id for the folder where the new folder will be created. ' This example will create a new folder named "abc" within /someFolder, ' so we need the item-id for /someFolder. Dim json As Chilkat.JsonObject Set json = Chilkat.NewJsonObject json.EmitCompact = False resp = http.QuickGetStr("https://graph.microsoft.com/v1.0/me/drive/root:/someFolder") If (http.LastMethodSuccess <> True) Then Debug.Print http.LastErrorText Exit Sub End If Dim success As Boolean success = json.Load(resp) If (http.LastStatus <> 200) Then Debug.Print "Failed to get parent folder item id, status code = "; http.LastStatus Exit Sub End If ' Set the URL var for the next request which will create the new folder. success = http.SetUrlVar("parent_item_id",json.StringOf("id")) ' The HTTP request body should contain JSON like this: ' { ' "name": "abc", ' "folder": { } ' } Dim jsonReqBody As Chilkat.JsonObject Set jsonReqBody = Chilkat.NewJsonObject success = jsonReqBody.AppendString("name","abc") Set jObj = jsonReqBody.AppendObject("folder") Debug.Print "JSON body:" Debug.Print jsonReqBody.Emit() url = "https://graph.microsoft.com/v1.0/me/drive/items/{$parent_item_id}/children" Set resp = http.PostJson2(url,"application/json",jsonReqBody.Emit()) If (http.LastMethodSuccess <> True) Then Debug.Print http.LastErrorText Exit Sub End If success = json.Load(resp.BodyStr) Debug.Print "Response:" Debug.Print json.Emit() ' A 201 response indicates success. If (resp.StatusCode <> 201) Then Debug.Print "Failed to create folder." Debug.Print "Response status code = "; resp.StatusCode Else Debug.Print "Successfully created folder." End If ' A successful response: ' { ' "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#users('me')/drive/items('3A33FCEB9B74CC15%214862')/children/$entity", ' "createdBy": { ' "application": { ' "displayName": "Chilkat", ' "id": "441c9990" ' }, ' "user": { ' "displayName": "Matt Smith", ' "id": "3a33fceb9b74cc15" ' } ' }, ' "createdDateTime": "2017-06-04T16:02:22.203Z", ' "cTag": "adDozQTMzRkNFQjlCNzRDQzE1ITQ4NzAuNjM2MzIxODg5NDIyMDMwMDAw", ' "eTag": "aM0EzM0ZDRUI5Qjc0Q0MxNSE0ODcwLjA", ' "id": "3A33FCEB9B74CC15!4870", ' "lastModifiedBy": { ' "application": { ' "displayName": "Chilkat", ' "id": "441c9990" ' }, ' "user": { ' "displayName": "Matt Smith", ' "id": "3a33fceb9b74cc15" ' } ' }, ' "lastModifiedDateTime": "2017-06-04T16:02:22.203Z", ' "name": "abc", ' "parentReference": { ' "driveId": "3a33fceb9b74cc15", ' "id": "3A33FCEB9B74CC15!4862", ' "name": "someFolder", ' "path": "/drive/root:/someFolder" ' }, ' "size": 0, ' "webUrl": "https://1drv.ms/f/s!ABXMdJvr_DM6pgY", ' "fileSystemInfo": { ' "createdDateTime": "2017-06-04T16:02:22.203Z", ' "lastModifiedDateTime": "2017-06-04T16:02:22.203Z" ' }, ' "folder": { ' "childCount": 0 ' } ' } ' ' Successfully created folder. |
© 2000-2022 Chilkat Software, Inc. All Rights Reserved.