Sample code for 30+ languages & platforms
Swift

Refinitiv World-Check One - Archive Case (PUT)

See more Refinitiv Examples

Sends a signed PUT request to archive a case.

Chilkat Swift Downloads

Swift

func chilkatTest() {
    var success: Bool = false

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

    let json = CkoJsonObject()!

    // 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"
    // Note: This particular API call is a PUT with an empty request body.
    // Because the request body is empty, we don't include the content-type and content-length headers.
    json.updateString(jsonPath: "keyId", value: "api-key")
    json.updateString(jsonPath: "hmacKey", value: "api-secret")
    json.updateString(jsonPath: "algorithm", value: "hmac-sha256")
    json.updateString(jsonPath: "headers[0]", value: "(request-target)")
    json.updateString(jsonPath: "headers[1]", value: "host")
    json.updateString(jsonPath: "headers[2]", value: "date")

    let http = CkoHttp()!

    // 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="..."
    http.authSignature = json.emit()

    let resp = CkoHttpResponse()!
    success = http.httpStr(verb: "PUT", url: "https://api-worldcheck.refinitiv.com/v2/cases/{{case-system-id}}/archive", bodyStr: "", charset: "", contentType: "", response: resp)
    if success == false {
        print("\(http.lastErrorText!)")
        return
    }

    print("Response status code = \(resp.statusCode.intValue)")
    print("\(resp.bodyStr!)")

    // If successful, the response status code will equal 204, and the response body will be empty JSON "{}"

}