Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(Visual Basic 6.0) OneDrive -- List DrivesSee more OneDrive ExamplesExample to retrieve the list of Drive resources available for a target User or Group. Note: This example requires Chilkat v9.5.0.97 or greater. For more information, see https://learn.microsoft.com/en-us/onedrive/developer/rest-api/api/drive_list?view=odsp-graph-online
' This example requires the Chilkat API to have been previously unlocked. ' See Global Unlock Sample for sample code. ' This example uses the OAuth client credentials flow. ' See How to Create an Azure App Registration for OAuth 2.0 Client Credentials ' Use your client ID, client secret, and tenant ID in the following lines Dim json As New ChilkatJsonObject success = json.UpdateString("client_id","2871da2c-8176-4b7f-869b-2311aa82e743") success = json.UpdateString("client_secret","2hu9Q~r5QuryUcEkNbg1btLtnfU1VUXzhSCG6brH") success = json.UpdateString("scope","https://graph.microsoft.com/.default") success = json.UpdateString("token_endpoint","https://login.microsoftonline.com/114d7ed6-71bf-4dbe-a866-748364121bf2/oauth2/v2.0/token") Dim http As New ChilkatHttp http.AuthToken = json.Emit() ' List drives. ' You can specify a {siteId}, {groupId}, or {userId} in the URL ' to access document libraries for a group, a site, or a specific user. ' Use your specific Id instead of what we're using here: success = http.SetUrlVar("userId","4fe732c3-322e-4a6b-b729-2fd1eb5c6104") Dim resp As String resp = http.QuickGetStr("https://graph.microsoft.com/v1.0/users/{$userId}/drives") If (http.LastMethodSuccess <> 1) Then Debug.Print http.LastErrorText Exit Sub End If ' The response should be JSON. json.EmitCompact = 0 success = json.Load(resp) ' A successful response should return a status code of 200. If (http.LastStatus <> 200) Then Debug.Print json.Emit() Debug.Print "Response status = " & http.LastStatus Exit Sub End If Debug.Print json.Emit() ' Sample output: ' { ' "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#drives", ' "value": [ ' { ' "id": "3a33fceb9b74cc15", ' "driveType": "personal", ' "owner": { ' "user": { ' "displayName": "Matt Smith", ' "id": "3a33fceb9b74cc15" ' } ' }, ' "quota": { ' "deleted": 0, ' "remaining": 1114571275977, ' "state": "normal", ' "total": 1115617755136, ' "used": 1046479159 ' } ' } ' ] ' } ' Iterate over the drives in the JSON response: Dim i As Long i = 0 Dim numDrives As Long numDrives = json.SizeOfArray("value") Do While i < numDrives json.I = i Debug.Print "-- Drive " & (i + 1) Debug.Print "id: " & json.StringOf("value[i].id") ' The size will be a number larger than what can fit in a 32-bit integer. ' Get the integer as a string.. Debug.Print "total: " & json.StringOf("value[i].quota.total") i = i + 1 Loop |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.