![]() |
Chilkat HOME Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi DLL Go Java JavaScript Node.js Objective-C PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(PowerShell) curl with OAuth2 Client CredentialsSee more CURL ExamplesThis example shows how to run a simple CURL command with an OAuth2 access token for authorization. We use CURL to retrieve a SharePoint site ID, and Chilkat automatically fetches the OAuth2 access token using the provided credentials.Note: This example requires Chilkat v11.5.0 or greater.
Add-Type -Path "C:\chilkat\ChilkatDotNet47-x64\ChilkatDotNet47.dll" $success = $false # This example will run the following curl command # curl -X GET "https://graph.microsoft.com/v1.0/sites/{{sharepoint_hostname}}:/sites/{{site_name}}" \ # -H "Authorization: Bearer ACCESS_TOKEN" \ # -H "Accept: application/json" $sb = New-Object Chilkat.StringBuilder $sb.AppendLn("curl -X GET `"https://graph.microsoft.com/v1.0/sites/{{sharepoint_hostname}}:/sites/{{site_name}}`" \`") $sb.AppendLn(" -H `"Authorization: Bearer ACCESS_TOKEN`" \`") $sb.AppendLn(" -H `"Accept: application/json`"") # Build the JSON that provides information for getting the OAuth2 access token using the OAuth2 client credentials flow. $jsonOAuth2 = New-Object Chilkat.JsonObject $jsonOAuth2.UpdateString("oauth2.client_id","CLIENT_ID") $jsonOAuth2.UpdateString("oauth2.client_secret","CLIENT_SECRET") $jsonOAuth2.UpdateString("oauth2.scope","https://graph.microsoft.com/.default") $jsonOAuth2.UpdateString("oauth2.token_endpoint","https://login.microsoftonline.com/TENANT_ID/oauth2/v2.0/token") $httpCurl = New-Object Chilkat.HttpCurl # Provide the information for getting the OAuth2 access token from the token endpoint # Note: The Authorization header specified in the curl command will be ignored and replaced using the OAuth2 access token obtained at runtime from the token endpoint. $httpCurl.SetAuth($jsonOAuth2) # The placeholders {{sharepoint_hostname}} and {{site_name}} represent variables that must be defined before execution. # When DoYourThing runs the curl command, it automatically substitutes these placeholders with their corresponding values. # Below are the values assigned to these variables: $httpCurl.SetVar("sharepoint_hostname","example.sharepoint.com") $httpCurl.SetVar("site_name","test") # Run the curl command. $success = $httpCurl.DoYourThing($sb.GetAsString()) if ($success -eq $false) { $($httpCurl.LastErrorText) exit } $responseJson = New-Object Chilkat.JsonObject $responseJson.EmitCompact = $false $httpCurl.GetResponseJson($responseJson) $statusCode = $httpCurl.StatusCode $("response status code: " + $statusCode) $($responseJson.Emit()) |
||||
© 2000-2026 Chilkat Software, Inc. All Rights Reserved.