Dart Requires Chilkat v11.0.0+
Dart
Refinitiv World-Check One - Synchronous Screening (POST)
See more Refinitiv Examples
Sends a signed POST request to do simple synchronous screening.Chilkat Dart Downloads
import 'package:chilkat/chilkat.dart';
void main() {
// This example assumes the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
final json = CkJsonObject();
// 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"
json.updateString('keyId', 'api-key');
json.updateString('hmacKey', 'api-secret');
json.updateString('algorithm', 'hmac-sha256');
json.updateString('headers[0]', '(request-target)');
json.updateString('headers[1]', 'host');
json.updateString('headers[2]', 'date');
json.updateString('headers[3]', 'content-type');
json.updateString('headers[4]', 'content-length');
final http = CkHttp();
// 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="..."
http.authSignature = json.emit();
// 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
final jsonBody = CkJsonObject();
jsonBody.updateString('groupId', '{{group-id}}');
jsonBody.updateString('entityType', 'ORGANISATION');
jsonBody.updateString('caseId', '');
jsonBody.updateString('providerTypes[0]', 'WATCHLIST');
jsonBody.updateString('name', 'COMPANY NAME');
jsonBody.updateBool('nameTransposition', false);
jsonBody.updateNewArray('secondaryFields');
jsonBody.updateNewArray('customFields');
final resp = CkHttpResponse();
try {
http.httpJson('POST', 'https://api-worldcheck.refinitiv.com/v2/cases/screeningRequest', jsonBody, 'application/json', resp);
} on ChilkatException catch (e) {
print(e.lastErrorText);
return;
}
print('Response status code = ${resp.statusCode}');
final jsonResp = CkJsonObject();
jsonResp.load(resp.bodyStr);
jsonResp.emitCompact = false;
print(jsonResp.emit());
// Use this online tool to generate parsing code from sample JSON:
// Generate Parsing Code from JSON
}