Sample code for 30+ languages & platforms
Visual Basic 6.0

OneDrive -- Upload Binary Data from Memory

See more OneDrive Examples

Demonstrates how to upload binary data directly from memory to the signed-in user's OneDrive. This uses OneDrive's simple upload API to upload in a single API call, which only supports uploads up to 4MB in size. (See the other example(s) for uploading larger files.)

Chilkat Visual Basic 6.0 Downloads

Visual Basic 6.0
Dim success As Long
success = 0

' 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()

' First, let's download a PDF from the web directly into memory.  Then upload the PDF
' to OneDrive.
Dim pdfBytes As New ChilkatBinData
success = http.QuickGetBd("https://www.chilkatsoft.com/data/pdf/sample.pdf",pdfBytes)
If (success = 0) Then
    Debug.Print http.LastErrorText
    Exit Sub
End If

' Upload the PDF to our OneDrive to /TestDir/sample.pdf
Dim req As New ChilkatHttpRequest
req.HttpVerb = "PUT"

' Use your actual user-id instead of "4fe732c3-322e-4a6b-b729-2fd1eb5c6104"
req.Path = "/v1.0/users/4fe732c3-322e-4a6b-b729-2fd1eb5c6104/drive/root:/TestDir/sample.pdf:/content"
success = req.LoadBodyFromBd(pdfBytes)
' If you're uploading a file and don't know what the Content-Type should be,
' just use "application/octet-stream".  
req.ContentType = "application/pdf"

Dim resp As New ChilkatHttpResponse
success = http.HttpSReq("graph.microsoft.com",443,1,req,resp)
If (success = 0) Then
    Debug.Print http.LastErrorText
    Exit Sub
End If

' If successful, a 201 status code is returned, with the driveItem object in the response body for the newly created file.
json.EmitCompact = 0
success = json.Load(resp.BodyStr)

If (resp.StatusCode <> 201) Then
    Debug.Print json.Emit()
    Debug.Print "Response status = " & resp.StatusCode
    Exit Sub
End If

' Success.  Examine the driveItem JSON object:
Debug.Print json.Emit()
Debug.Print "-- Success --"

' Here is a sample successful response:

' {
'   "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#users('me')/drive/root/$entity",
'   "@microsoft.graph.downloadUrl": "https://s5ucmg.dm2301.livefilestore.com/y4ppZYP8kjqVleyrDvphxvO8vSRxNRcYn75t5K6gNARH1cDMI3CBH3XvZ7nNHJoKMg7lQo41XLaaYiQDw1EdRg9QNTv_rtDXOnUwaipJfJyTlNXh6WOljIXOm1R2fHDk2tDq_9C9gB-prnN2NxhnXZw08YQyTnpHZXIz1w9xBxqkPn0tzF-aQSldx5e15t93Ftd1AqigReYgpF1gXtIISQs7hk2JRAYhW2d84HxEuqDXdw",
'   "createdBy": {
'     "application": {
'       "displayName": "Chilkat",
'       "id": "441c9990"
'     },
'     "user": {
'       "displayName": "Matt Smith",
'       "id": "3a33fceb9b74cc15"
'     }
'   },
'   "createdDateTime": "2017-06-03T18:18:17.7Z",
'   "cTag": "aYzozQTMzRkNFQjlCNzRDQzE1ITQ4NjcuMjU3",
'   "eTag": "aM0EzM0ZDRUI5Qjc0Q0MxNSE0ODY3LjA",
'   "id": "3A33FCEB9B74CC15!4867",
'   "lastModifiedBy": {
'     "application": {
'       "displayName": "Chilkat",
'       "id": "441c9990"
'     },
'     "user": {
'       "displayName": "Matt Smith",
'       "id": "3a33fceb9b74cc15"
'     }
'   },
'   "lastModifiedDateTime": "2017-06-03T18:18:17.7Z",
'   "name": "sample.pdf",
'   "parentReference": {
'     "driveId": "3a33fceb9b74cc15",
'     "id": "3A33FCEB9B74CC15!4862",
'     "name": "someFolder",
'     "path": "/drive/root:/someFolder"
'   },
'   "size": 178399,
'   "webUrl": "https://1drv.ms/b/s!ABXMdJvr_DM6pgM",
'   "file": {
'     "hashes": {
'       "sha1Hash": "1456955C84C2DAC9DA613DC80E3017533BDC368A"
'     },
'     "mimeType": "application/pdf"
'   },
'   "fileSystemInfo": {
'     "createdDateTime": "2017-06-03T18:18:17.7Z",
'     "lastModifiedDateTime": "2017-06-03T18:18:17.7Z"
'   }
' }