Sample code for 30+ languages & platforms
Tcl

OneDrive -- Download to File

See more OneDrive Examples

Downloads the contents of a DriveItem directly to a file in the local filesystem.

Note: This example requires Chilkat v9.5.0.97 or greater.

Chilkat Tcl Downloads

Tcl

load ./chilkat.dll

set 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
set json [new_CkJsonObject]

CkJsonObject_UpdateString $json "client_id" "2871da2c-8176-4b7f-869b-2311aa82e743"
CkJsonObject_UpdateString $json "client_secret" "2hu9Q~r5QuryUcEkNbg1btLtnfU1VUXzhSCG6brH"
CkJsonObject_UpdateString $json "scope" "https://graph.microsoft.com/.default"
CkJsonObject_UpdateString $json "token_endpoint" "https://login.microsoftonline.com/114d7ed6-71bf-4dbe-a866-748364121bf2/oauth2/v2.0/token"

set http [new_CkHttp]

CkHttp_put_AuthToken $http [CkJsonObject_emit $json]

# Download the file.
CkHttp_SetUrlVar $http "item_path" "Pictures/three_penguins.jpg"
CkHttp_SetUrlVar $http "user_id" "4fe732c3-322e-4a6b-b729-2fd1eb5c6104"
set url "https://graph.microsoft.com/v1.0/users/{$user_id}/drive/root:/{$item_path}:/content"
set localFilePath "c:/temp/qa_output/three_penguins.jpg"
set success [CkHttp_Download $http $url $localFilePath]
if {$success != 1} then {
    puts [CkHttp_lastErrorText $http]
    delete_CkJsonObject $json
    delete_CkHttp $http
    exit
}

puts "Successfully downloaded a OneDrive file to the local filesystem."

delete_CkJsonObject $json
delete_CkHttp $http