![]() |
Chilkat HOME Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi DLL Go Java 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
(PowerBuilder) Azure OAuth2 Client Credentials Grant FlowSee more OAuth2 ExamplesDemonstrates how to get an OAuth2 access token for an Azure Registered App using the Client Credentials Grant Flow.Note: Your Azure app must be registered as a single-tenant app to use client credentials. For more information, see https://docs.microsoft.com/en-us/azure/active-directory/develop/v2-oauth2-client-creds-grant-flow
integer li_rc oleobject loo_Http oleobject loo_Req string ls_Url oleobject loo_Resp integer li_StatusCode oleobject loo_Json // This example requires the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. loo_Http = create oleobject // Use "Chilkat_9_5_0.Http" for versions of Chilkat < 10.0.0 li_rc = loo_Http.ConnectToNewObject("Chilkat.Http") if li_rc < 0 then destroy loo_Http MessageBox("Error","Connecting to COM object failed") return end if loo_Req = create oleobject // Use "Chilkat_9_5_0.HttpRequest" for versions of Chilkat < 10.0.0 li_rc = loo_Req.ConnectToNewObject("Chilkat.HttpRequest") loo_Req.AddParam("client_secret","CLIENT_SECRET") loo_Req.AddParam("client_id","CLIENT_ID") // See Understanding Scopes in Azure OAuth2 Client Credentials Flow loo_Req.AddParam("scope","https://graph.microsoft.com/.default") loo_Req.AddParam("grant_type","client_credentials") // Note: Your Azure app must be registered as a single-tenant app to use client credentials. // Use your own tenant ID, for example 4d8fdd66-66d1-43b0-ae5c-e31b4b7de5cd ls_Url = "https://login.microsoftonline.com/TENANT_ID/oauth2/v2.0/token" loo_Resp = loo_Http.PostUrlEncoded(ls_Url,loo_Req) if loo_Http.LastMethodSuccess <> 1 then Write-Debug loo_Http.LastErrorText destroy loo_Http destroy loo_Req return end if li_StatusCode = loo_Resp.StatusCode Write-Debug "Response status code = " + string(li_StatusCode) loo_Json = create oleobject // Use "Chilkat_9_5_0.JsonObject" for versions of Chilkat < 10.0.0 li_rc = loo_Json.ConnectToNewObject("Chilkat.JsonObject") loo_Json.Load(loo_Resp.BodyStr) destroy loo_Resp loo_Json.EmitCompact = 0 Write-Debug loo_Json.Emit() // Sample successful output: // { // "token_type": "Bearer", // "expires_in": 3599, // "ext_expires_in": 3599, // "access_token": "eyJ0eX...K0jOERg" // } if li_StatusCode = 200 then loo_Json.WriteFile("qa_data/tokens/azureClientCredentialsToken.json") Write-Debug "Success." else Write-Debug "Failed." end if destroy loo_Http destroy loo_Req destroy loo_Json |
© 2000-2025 Chilkat Software, Inc. All Rights Reserved.