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
(Delphi DLL) Refinitiv World-Check One - Synchronous Screening (POST)See more Refinitiv ExamplesSends a signed POST request to do simple synchronous screening. Note: This example requires Chilkat v9.5.0.89 or later.
uses Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics, Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Http, HttpResponse, JsonObject; ... procedure TForm1.Button1Click(Sender: TObject); var json: HCkJsonObject; success: Boolean; http: HCkHttp; jsonBody: HCkJsonObject; resp: HCkHttpResponse; jsonResp: HCkJsonObject; begin // This example assumes the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. json := CkJsonObject_Create(); // 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", // "content-type", // "content-length" // ] // } // Substitute your actual API key and API secret in place of "api-key" and "api-secret" CkJsonObject_UpdateString(json,'keyId','api-key'); CkJsonObject_UpdateString(json,'hmacKey','api-secret'); CkJsonObject_UpdateString(json,'algorithm','hmac-sha256'); CkJsonObject_UpdateString(json,'headers[0]','(request-target)'); CkJsonObject_UpdateString(json,'headers[1]','host'); CkJsonObject_UpdateString(json,'headers[2]','date'); CkJsonObject_UpdateString(json,'headers[3]','content-type'); CkJsonObject_UpdateString(json,'headers[4]','content-length'); http := CkHttp_Create(); // Setting the AuthSignature property causes the following header to be computed and added: // Authorization: Signature keyId="...", algorithm="hmac-sha256", headers="(request-target) host date content-type content-length", signature="..." CkHttp_putAuthSignature(http,CkJsonObject__emit(json)); // Build the following JSON to be sent in the POST request body. // { // "groupId": "{{group-id}}", // "entityType": "ORGANISATION", // "caseId": "", // "providerTypes": [ // "WATCHLIST" // ], // "name": "COMPANY NAME", // "nameTransposition": false, // "secondaryFields": [], // "customFields": [] // } // Use this online tool to generate code from sample JSON: // Generate Code to Create JSON jsonBody := CkJsonObject_Create(); CkJsonObject_UpdateString(jsonBody,'groupId','{{group-id}}'); CkJsonObject_UpdateString(jsonBody,'entityType','ORGANISATION'); CkJsonObject_UpdateString(jsonBody,'caseId',''); CkJsonObject_UpdateString(jsonBody,'providerTypes[0]','WATCHLIST'); CkJsonObject_UpdateString(jsonBody,'name','COMPANY NAME'); CkJsonObject_UpdateBool(jsonBody,'nameTransposition',False); CkJsonObject_UpdateNewArray(jsonBody,'secondaryFields'); CkJsonObject_UpdateNewArray(jsonBody,'customFields'); resp := CkHttp_PostJson3(http,'https://api-worldcheck.refinitiv.com/v2/cases/screeningRequest','application/json',jsonBody); if (CkHttp_getLastMethodSuccess(http) <> True) then begin Memo1.Lines.Add(CkHttp__lastErrorText(http)); Exit; end; Memo1.Lines.Add('Response status code = ' + IntToStr(CkHttpResponse_getStatusCode(resp))); jsonResp := CkJsonObject_Create(); CkJsonObject_Load(jsonResp,CkHttpResponse__bodyStr(resp)); CkJsonObject_putEmitCompact(jsonResp,False); Memo1.Lines.Add(CkJsonObject__emit(jsonResp)); // Use this online tool to generate parsing code from sample JSON: // Generate Parsing Code from JSON CkJsonObject_Dispose(json); CkHttp_Dispose(http); CkJsonObject_Dispose(jsonBody); CkJsonObject_Dispose(jsonResp); end; |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.