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
(PowerBuilder) Refinitiv World-Check One - Get Top Level GroupsSee more Refinitiv ExamplesSends a signed GET request to get the top level groups. Note: This example requires Chilkat v9.5.0.89 or later.
integer li_rc oleobject loo_Json integer li_Success oleobject loo_Http string ls_ResponseJson oleobject loo_Jarr oleobject loo_JsonObj string ls_Id string ls_Name string ls_ParentId integer li_HasChildren string ls_Status integer j integer li_Count_j integer i integer li_Count_i // This example assumes the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. loo_Json = create oleobject // Use "Chilkat_9_5_0.JsonObject" for versions of Chilkat < 10.0.0 li_rc = loo_Json.ConnectToNewObject("Chilkat.JsonObject") if li_rc < 0 then destroy loo_Json MessageBox("Error","Connecting to COM object failed") return end if // Create the following JSON: // // { // "keyId": "aaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", // "hmacKey": "xxxxzI3vi58xxxCBxxx1+P/d8tGxx7KuLqN/KMPNxxxxekhj8/bx83+1YQSUxxxxYyv939ceY06GvhYRKmxxxx==", // "algorithm": "hmac-sha256", // "headers": [ // "(request-target)", // "host", // "date" // ] // } // Substitute your actual API key and API secret in place of "api-key" and "api-secret" loo_Json.UpdateString("keyId","api-key") loo_Json.UpdateString("hmacKey","api-secret") loo_Json.UpdateString("algorithm","hmac-sha256") // Indicate the names of the headers to be included in the signature. // "(request-target)" is not actually a header name, but is a special name for HTTP signatures. // Copy the following three lines of code exactly as-is. // Do not replace "host", "date", or "(request-target)" with values. loo_Json.UpdateString("headers[0]","(request-target)") loo_Json.UpdateString("headers[1]","host") loo_Json.UpdateString("headers[2]","date") loo_Http = create oleobject // Use "Chilkat_9_5_0.Http" for versions of Chilkat < 10.0.0 li_rc = loo_Http.ConnectToNewObject("Chilkat.Http") // Setting the AuthSignature property causes the following header to be computed and added: // Authorization: Signature keyId="...", algorithm="hmac-sha256", headers="(request-target) host date", signature="..." loo_Http.AuthSignature = loo_Json.Emit() loo_Http.SetRequestHeader("Cache-Control","no-cache") // Chilkat will auto-add the Date header because it's needed by the HTTP Signature. ls_ResponseJson = loo_Http.QuickGetStr("https://api-worldcheck.refinitiv.com/v2/groups") if loo_Http.LastMethodSuccess = 0 then Write-Debug loo_Http.LastErrorText destroy loo_Json destroy loo_Http return end if Write-Debug ls_ResponseJson Write-Debug "----" // A 200 status code indicates success. Write-Debug "Status code = " + string(loo_Http.LastStatus) // Successful JSON looks like this: // [ // { // "id": "...", // "name": "Company Name", // "parentId": null, // "hasChildren": false, // "status": "ACTIVE", // "children": [] // } // ] // Use this online tool to generate parsing code from sample JSON: // Generate Parsing Code from JSON loo_Jarr = create oleobject // Use "Chilkat_9_5_0.JsonArray" for versions of Chilkat < 10.0.0 li_rc = loo_Jarr.ConnectToNewObject("Chilkat.JsonArray") li_Success = loo_Jarr.Load(ls_ResponseJson) i = 0 li_Count_i = loo_Jarr.Size do while i < li_Count_i loo_JsonObj = loo_Jarr.ObjectAt(i) ls_Id = loo_JsonObj.StringOf("id") ls_Name = loo_JsonObj.StringOf("name") ls_ParentId = loo_JsonObj.StringOf("parentId") li_HasChildren = loo_JsonObj.BoolOf("hasChildren") ls_Status = loo_JsonObj.StringOf("status") j = 0 li_Count_j = loo_JsonObj.SizeOfArray("children") do while j < li_Count_j loo_JsonObj.J = j j = j + 1 loop destroy loo_JsonObj i = i + 1 loop destroy loo_Json destroy loo_Http destroy loo_Jarr |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.