Skip to main content
PATCH
/
v2
/
organizations
/
{entityId}
/
results
/
activity
Update Organization Results
curl --request PATCH \
  --url https://api.uat.frankie.one/v2/organizations/{entityId}/results/activity \
  --header 'Content-Type: application/json' \
  --header 'X-Frankie-CustomerID: <x-frankie-customerid>' \
  --header 'api_key: <api-key>' \
  --data '
{
  "processResults": [
    "3c90c3cc-0d44-4b50-8888-8dd25736052a"
  ],
  "tagIds": [
    "12345678-1234-1234-1234-123456789012",
    "87654321-4321-4321-4321-210987654321"
  ],
  "comment": {
    "text": "Update after speaking to customer over the phone directly.",
    "entityId": "3fa85f64-5717-4562-b3fc-2c963f66afa6"
  }
}
'
import requests

url = "https://api.uat.frankie.one/v2/organizations/{entityId}/results/activity"

payload = {
"processResults": ["3c90c3cc-0d44-4b50-8888-8dd25736052a"],
"tagIds": ["12345678-1234-1234-1234-123456789012", "87654321-4321-4321-4321-210987654321"],
"comment": {
"text": "Update after speaking to customer over the phone directly.",
"entityId": "3fa85f64-5717-4562-b3fc-2c963f66afa6"
}
}
headers = {
"api_key": "<api-key>",
"X-Frankie-CustomerID": "<x-frankie-customerid>",
"Content-Type": "application/json"
}

response = requests.patch(url, json=payload, headers=headers)

print(response.text)
const options = {
method: 'PATCH',
headers: {
api_key: '<api-key>',
'X-Frankie-CustomerID': '<x-frankie-customerid>',
'Content-Type': 'application/json'
},
body: JSON.stringify({
processResults: ['3c90c3cc-0d44-4b50-8888-8dd25736052a'],
tagIds: ['12345678-1234-1234-1234-123456789012', '87654321-4321-4321-4321-210987654321'],
comment: {
text: 'Update after speaking to customer over the phone directly.',
entityId: '3fa85f64-5717-4562-b3fc-2c963f66afa6'
}
})
};

fetch('https://api.uat.frankie.one/v2/organizations/{entityId}/results/activity', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));
<?php

$curl = curl_init();

curl_setopt_array($curl, [
CURLOPT_URL => "https://api.uat.frankie.one/v2/organizations/{entityId}/results/activity",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PATCH",
CURLOPT_POSTFIELDS => json_encode([
'processResults' => [
'3c90c3cc-0d44-4b50-8888-8dd25736052a'
],
'tagIds' => [
'12345678-1234-1234-1234-123456789012',
'87654321-4321-4321-4321-210987654321'
],
'comment' => [
'text' => 'Update after speaking to customer over the phone directly.',
'entityId' => '3fa85f64-5717-4562-b3fc-2c963f66afa6'
]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"X-Frankie-CustomerID: <x-frankie-customerid>",
"api_key: <api-key>"
],
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
package main

import (
"fmt"
"strings"
"net/http"
"io"
)

func main() {

url := "https://api.uat.frankie.one/v2/organizations/{entityId}/results/activity"

payload := strings.NewReader("{\n \"processResults\": [\n \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\n ],\n \"tagIds\": [\n \"12345678-1234-1234-1234-123456789012\",\n \"87654321-4321-4321-4321-210987654321\"\n ],\n \"comment\": {\n \"text\": \"Update after speaking to customer over the phone directly.\",\n \"entityId\": \"3fa85f64-5717-4562-b3fc-2c963f66afa6\"\n }\n}")

req, _ := http.NewRequest("PATCH", url, payload)

req.Header.Add("api_key", "<api-key>")
req.Header.Add("X-Frankie-CustomerID", "<x-frankie-customerid>")
req.Header.Add("Content-Type", "application/json")

res, _ := http.DefaultClient.Do(req)

defer res.Body.Close()
body, _ := io.ReadAll(res.Body)

fmt.Println(string(body))

}
HttpResponse<String> response = Unirest.patch("https://api.uat.frankie.one/v2/organizations/{entityId}/results/activity")
.header("api_key", "<api-key>")
.header("X-Frankie-CustomerID", "<x-frankie-customerid>")
.header("Content-Type", "application/json")
.body("{\n \"processResults\": [\n \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\n ],\n \"tagIds\": [\n \"12345678-1234-1234-1234-123456789012\",\n \"87654321-4321-4321-4321-210987654321\"\n ],\n \"comment\": {\n \"text\": \"Update after speaking to customer over the phone directly.\",\n \"entityId\": \"3fa85f64-5717-4562-b3fc-2c963f66afa6\"\n }\n}")
.asString();
require 'uri'
require 'net/http'

url = URI("https://api.uat.frankie.one/v2/organizations/{entityId}/results/activity")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Patch.new(url)
request["api_key"] = '<api-key>'
request["X-Frankie-CustomerID"] = '<x-frankie-customerid>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"processResults\": [\n \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\n ],\n \"tagIds\": [\n \"12345678-1234-1234-1234-123456789012\",\n \"87654321-4321-4321-4321-210987654321\"\n ],\n \"comment\": {\n \"text\": \"Update after speaking to customer over the phone directly.\",\n \"entityId\": \"3fa85f64-5717-4562-b3fc-2c963f66afa6\"\n }\n}"

response = http.request(request)
puts response.read_body
{
  "requestId": "01HN9XHZN6MGXM9JXG50K59Q85",
  "processResults": [
    {
      "processResultId": "<string>",
      "schemaVersion": 123,
      "entityId": "<string>",
      "requestId": "01HN9XHZN6MGXM9JXG50K59Q85",
      "stepName": "<string>",
      "stepType": "<string>",
      "objectType": "<string>",
      "objectId": "<string>",
      "createdAt": "2023-11-07T05:31:56Z",
      "updatedAt": "2023-11-07T05:31:56Z",
      "groupId": "<string>",
      "providerResult": {
        "name": "<string>",
        "source": "<string>",
        "sourceNormalized": "<string>",
        "reference": "<string>",
        "fuzziness": {
          "normalized": 50,
          "actual": "<string>"
        },
        "confidence": {
          "normalized": 50,
          "actual": "<string>"
        },
        "riskScore": 123,
        "errorCode": "<string>",
        "errorMessage": "<string>"
      },
      "subClass": "<string>",
      "supplementaryData": {
        "serviceProvider": "<string>",
        "searchId": "<string>",
        "caseId": "<string>",
        "referenceId": "<string>",
        "originalStepSearchLevel": "<string>",
        "groupingId": "<string>",
        "reportUrl": "<string>",
        "fuzziness": {
          "normalized": 50,
          "actual": "<string>"
        },
        "matchData": {
          "spReferenceId": "<string>",
          "name": "<string>",
          "strength": 123,
          "givenName": "<string>",
          "otherName": "<string>",
          "familyName": "<string>",
          "date": "<string>",
          "address": "<string>",
          "countries": [
            {
              "code": "<string>",
              "matchType": "<string>"
            }
          ],
          "nationalId": {
            "idNumber": "<string>",
            "idType": "<string>",
            "idExpiry": "<string>",
            "issuingCountryCode": "<string>",
            "documentId": "<string>"
          },
          "imageUrl": "<string>",
          "isDeceased": true,
          "isAlias": true,
          "isRelated": true
        },
        "aliases": [
          "<string>"
        ],
        "relatedParties": [
          {
            "name": "<string>",
            "relationship": "<string>"
          }
        ],
        "referenceDocs": [
          {
            "url": "<string>",
            "description": "<string>"
          }
        ],
        "notes": {},
        "pepData": [
          {
            "countryCode": "<string>",
            "countryName": "<string>",
            "sourceName": "<string>",
            "level": "<string>",
            "sourceUrl": "<string>",
            "sourcePosition": "<string>",
            "position": "<string>",
            "positionDescription": "<string>",
            "status": "<string>",
            "listingStart": "<string>",
            "listingEnd": "<string>",
            "imageUrl": "<string>",
            "referenceDocs": [
              {
                "url": "<string>",
                "description": "<string>"
              }
            ],
            "additionalData": [
              {
                "key": "<string>",
                "value": "<string>"
              }
            ]
          }
        ],
        "sanctionData": [
          {
            "countryCode": "<string>",
            "countryName": "<string>",
            "sourceName": "<string>",
            "sourceUrl": "<string>",
            "sourceReason": "<string>",
            "listingStart": "<string>",
            "listingEnd": "<string>",
            "imageUrl": "<string>",
            "referenceDocs": [
              {
                "url": "<string>",
                "description": "<string>"
              }
            ],
            "additionalData": [
              {
                "key": "<string>",
                "value": "<string>"
              }
            ]
          }
        ],
        "watchlistData": [
          {
            "countryCode": "<string>",
            "countryName": "<string>",
            "sourceName": "<string>",
            "sourceUrl": "<string>",
            "sourceReason": "<string>",
            "listingStart": "<string>",
            "listingEnd": "<string>",
            "imageUrl": "<string>",
            "referenceDocs": [
              {
                "url": "<string>",
                "description": "<string>"
              }
            ],
            "additionalData": [
              {
                "key": "<string>",
                "value": "<string>"
              }
            ]
          }
        ],
        "mediaData": [
          {
            "title": "<string>",
            "source": "<string>",
            "snippet": "<string>",
            "sourceDate": "<string>",
            "sourceCountry": "<string>",
            "url": "<string>",
            "isCurrent": true
          }
        ]
      },
      "errors": [
        {
          "code": "<string>",
          "description": "<string>",
          "location": "<string>"
        }
      ],
      "notes": {},
      "systemStatus": "VALID",
      "riskFactors": [
        {
          "factor": "<string>",
          "value": "<string>"
        }
      ],
      "updatedBy": "<string>"
    }
  ],
  "taggedObjects": [
    {
      "objectId": "12345678-1234-1234-1234-123456789012",
      "tags": [
        {
          "tagId": "12345678-1234-1234-1234-123456789012",
          "label": "ROMANCE_SCAM",
          "mappingId": "12345678-1234-1234-1234-123456789012",
          "description": "Indicates a potential romance scam.",
          "category": "FRAUD",
          "domain": "ACTIVITY_MONITORING"
        }
      ]
    }
  ]
}
{
"errorCode": "<string>",
"errorMsg": "<string>",
"details": [
{
"issue": "<string>",
"issueLocation": "<string>",
"issueType": "<string>"
}
],
"requestId": "01HN9XHZN6MGXM9JXG50K59Q85"
}
{
"errorCode": "<string>",
"errorMsg": "<string>",
"details": [
{
"issue": "<string>",
"issueLocation": "<string>",
"issueType": "<string>"
}
],
"requestId": "01HN9XHZN6MGXM9JXG50K59Q85"
}
{
"errorCode": "<string>",
"errorMsg": "<string>",
"details": [
{
"issue": "<string>",
"issueLocation": "<string>",
"issueType": "<string>"
}
],
"requestId": "01HN9XHZN6MGXM9JXG50K59Q85"
}
{
"errorCode": "<string>",
"errorMsg": "<string>",
"details": [
{
"issue": "<string>",
"issueLocation": "<string>",
"issueType": "<string>"
}
],
"requestId": "01HN9XHZN6MGXM9JXG50K59Q85"
}
{
"errorCode": "<string>",
"errorMsg": "<string>",
"details": [
{
"issue": "<string>",
"issueLocation": "<string>",
"issueType": "<string>"
}
],
"requestId": "01HN9XHZN6MGXM9JXG50K59Q85"
}
{
"errorCode": "<string>",
"errorMsg": "<string>",
"details": [
{
"issue": "<string>",
"issueLocation": "<string>",
"issueType": "<string>"
}
],
"requestId": "01HN9XHZN6MGXM9JXG50K59Q85"
}

Authorizations

api_key
string
header
required

Headers

api_key
string
required

Your API key provided by FrankieOne

Example:

"245c765b124a098d09ef8765...."

X-Frankie-CustomerID
string
required

Your Customer ID provided by FrankieOne

Example:

"12345678-1234-1234-1234-123456789012"

X-Frankie-CustomerChildID
string

Your Customer Child ID provided by FrankieOne

Example:

"87654321-4321-4321-4321-210987654321"

X-Frankie-Channel
string

Open string that can be used to define the "channel" the request comes in from. It can potentially be used in routing and risk calculations upon request. Default values that can be used are: api portal smartui Any alphanumeric string is supported though. Anything over 64 characters will be truncated.

X-Frankie-Username
string

Username provided by API caller

Example:

"fred.flintstone@frankieone.com"

Path Parameters

entityId
string
required
read-only

Unique identifier for an entity Entities are assigned a FrankieOne auto-generated UUID to ensure global uniqueness, represented as entityId. The entityId allows for precise modification when required. To modify an entity, set the entityId of the entity you wish to update in an update request.

Example:

"3fa85f64-5717-4562-b3fc-2c963f66afa6"

Body

application/json
processResults
string<UUID>[]
required

The process result IDs to update. These are the results created when activities have been flagged for review.

manualStatus
enum<string>
required

The status of the result.

  • FALSE_POSITIVE: When the result is determined to be false positive and the activity is within the risk profile to continue.
  • TRUE_POSITIVE_ACCEPT: When the result is determined to be true positive and the activity is within the risk profile to continue.
  • TRUE_POSITIVE_REJECT: When the result is determined to be true positive and the activity is NOT within the risk profile to continue.
  • IN_REVIEW: When the activity has been picked up for review.
Available options:
FALSE_POSITIVE,
TRUE_POSITIVE_ACCEPT,
TRUE_POSITIVE_REJECT,
IN_REVIEW
tagIds
string<uuid>[]

Optional. Array of tag IDs to apply to the alert (process result) and its associated activity.

Tag IDs can be retrieved via the GET /v2/tags (Core V2 API) endpoint (filtered by domains=ACTIVITY).

All tags must exist and be accessible to the customer (SYSTEM or CUSTOMER-owned tags). Duplicate IDs are silently removed.

Ordering matters — the first tag in the array is treated as the primary reason when sending feedback to providers that only support a single classification (e.g. Sardine).

Validation rules:

Tags categorised as FALSE_POSITIVE or IN_REVIEW must not be mixed with tags from other categories — the intent cannot be reconciled and the request will be rejected with 400 Bad Request.

Example:
[
"12345678-1234-1234-1234-123456789012",
"87654321-4321-4321-4321-210987654321"
]
comment
object

Response

OK

requestId
string
required

The unique request identifier for the API call made.

Example:

"01HN9XHZN6MGXM9JXG50K59Q85"

processResults
object[]
taggedObjects
object[]

Current tags on both the alert (process result) and its associated activity, reflecting the state after this request. Present when tagIds were provided in the request.