Sample code for 30+ languages & platforms
B4X Requires Chilkat v11.0.0+

Refinitiv World-Check One - Synchronous Screening (POST)

See more Refinitiv Examples

Sends a signed POST request to do simple synchronous screening.

Chilkat B4X Downloads

B4X
Dim success As Boolean = False

'  This example assumes the Chilkat API to have been previously unlocked.
'  See Global Unlock Sample for sample code.

Dim json As ChilkatJsonObject
json.Initialize

'  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")

Dim http As ChilkatHttp
http.Initialize("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 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

Dim jsonBody As ChilkatJsonObject
jsonBody.Initialize
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")

Dim resp As ChilkatHttpResponse
resp.Initialize
success = http.HttpJson("POST", "https://api-worldcheck.refinitiv.com/v2/cases/screeningRequest", jsonBody, "application/json", resp)
If success = False Then
    Log(http.LastErrorText)
    Return
End If


Log("Response status code = " & resp.StatusCode)

Dim jsonResp As ChilkatJsonObject
jsonResp.Initialize
jsonResp.Load(resp.BodyStr)

jsonResp.EmitCompact = False
Log(jsonResp.Emit)

'  Use this online tool to generate parsing code from sample JSON: 
'  Generate Parsing Code from JSON