Data-Load-API (4.0)
Download OpenAPI specification:
The Data Load API allows you to automate a number of AML processes via REST API:
- Loading or amending Customer, Account and Transaction (CAT) information
- Watchlist screening tasks via a REST API
- Real-time transaction monitoring
- Loading Suspicious Matter Reports
- On demand applicant and customer screening
This API is hosted in Amazon Web Services (AWS), so can be integrated into any API based system relatively easily. It supports bulk loading of customer, account, and transaction data. After data is loaded, predefined rule processing jobs and screening jobs are executed. These jobs will generate any relevant alerts or reports in Jade Thirdeye, based on your risk-based configuration decisions.
Authentication
This API uses a dual authentication mechanism:
- API Key Authentication: All requests require a valid API key in the x-api-key header provided by Jade ThirdEye.
-
Bearer Token Authentication: Requests must include a valid JWT
token in the
Authorizationheader with the formatBearer {token}.
This token, along with the required Client-Id and
Reporting-Entity headers, is used to authorize access to specific API
resources. For OAuth 2.0 flows, the API supports the authorization code flow that
enables secure user authentication through an external identity provider.
Create or Update Customers
Create, update, and screen customer records in Jade ThirdEye. The customer API will update an existing customer if the customerNumber exists, otherwise it will create a new record. Up to 1000 new or updated customers can be batched in a call.
Authorizations:
header Parameters
|
Client-Id
required
|
string
Your unique client identifier supplied by Jade Thirdeye. |
|
Reporting-Entity
required
|
string
The name of reporting entity. |
Request Body schema: application/json
required
|
required
|
Array of EntityCustomer (object) or PersonCustomer (object)
[ 1 .. 1000 ] items
Customers can be loaded in batches of up to 1000 |
Responses
Request samples
- Payload
{
-
"customers":
[
-
{
-
"customerNumber":
"ABC123",
-
"effectiveFrom":
"2021-06-30T13:45:00Z",
-
"type":
"P",
-
"firstName":
"Alice",
-
"lastName":
"Anderson",
-
"dateOfBirth":
"1999-11-21",
-
"gender":
"F",
-
"additionalProperties":
{
-
"addressLine1":
"221B
Baker
Street",
-
"addressLine2":
"Baker
Street",
-
"suburb":
"London",
-
"state":
"London",
-
"countryCode":
"GB"
}
},
-
{
-
"customerNumber":
"1003",
-
"effectiveFrom":
"2021-12-01T12:02:00Z",
-
"type":
"E",
-
"entityName":
"ABC
Enterprises
Limited",
-
"additionalProperties":
{
-
"addressLine1":
"123
Main
Street",
-
"addressLine2":
"Thames
Street",
-
"suburb":
"London",
-
"state":
"London",
-
"countryCode":
"GB"
}
}
]
}
Create or Update Accounts
Create and update account records in Jade ThirdEye. The account API will update an existing account if the accountNumber exists, otherwise it will create a new record. Up to 1000 new or updated accounts can be batched in a call.
Authorizations:
header Parameters
|
Client-Id
required
|
string
Your unique client identifier supplied by Jade Thirdeye. |
|
Reporting-Entity
required
|
string
The name of reporting entity. |
Request Body schema: application/json
|
required
|
Array of objects
(Account)
[ 1 .. 1000 ] items
Accounts can be loaded in batches of up to 1000 |
Responses
Request samples
- Payload
{
-
"accounts":
[
-
{
-
"effectiveFrom":
"string",
-
"accountNumber":
"123405678910-01",
-
"customerNumbers":
[
-
"123ABC"
],
-
"openDate":
"2021-06-30T13:45:00Z",
-
"closeDate":
"string",
-
"accountName":
"Generic
Trading Ltd
Operations
Account
1"
}
]
}
Create Transactions
Create transaction records in JTE.
Authorizations:
header Parameters
|
Client-Id
required
|
string
Your unique client identifier supplied by Jade Thirdeye. |
|
Reporting-Entity
required
|
string
The name of reporting entity. |
Request Body schema: application/json
|
required
|
Array of objects
(Transaction)
[ 1 .. 1000 ] items
Transactions can be loaded in batches of up to 1000 |
Responses
Request samples
- Payload
{
-
"transactions":
[
-
{
-
"accountNumber":
"123405678910-01",
-
"amount":
"1200.50",
-
"debit":
false,
-
"transactionDateTime":
"2021-06-30T13:45:00Z",
-
"transactionId":
"ba1834cc-9ed4-4511-868a-6b8f30edf284",
-
"transactionType":
"CCPI"
}
]
}
Load and create a Suspicious Matter Report
Load details into Jade ThirdEye for a single suspicious-matter-reports.
Authorizations:
header Parameters
|
Client-Id
required
|
string
Your unique client identifier supplied by Jade Thirdeye. |
|
Reporting-Entity
required
|
string
The name of reporting entity. |
Request Body schema: application/json
required
|
required
|
Array of objects
(Entity)
<= 50 items
IDs for customers, accounts and transaction associated with this report. |
|
ReportType
required
|
stringSMR
The type of report being loaded. |
|
required
|
object
The report content. |
Responses
Request samples
- Payload
{
-
"Entities":
[
-
{
-
"EntityId":
"12345",
-
"EntityType":
"Customer"
}
],
-
"ReportType":
"SMR",
-
"Report":
{
-
"ReportingEntityDetails":
{
-
"BranchId":
"200",
-
"BranchName":
"branchA",
-
"Address":
{
-
"CountryCode":
"GB",
-
"Address":
"17
George
Street",
-
"Suburb":
"Downtown",
-
"State":
"London",
-
"Postcode":
"9999"
}
},
-
"CustomerSuspicionDetails":
[
-
{
-
"EntityId":
"123456789",
-
"IsSuspicious":
false,
-
"IsAuthorisedAgent":
false,
-
"Relationship":
"Grandpa",
-
"Evidence":
"This
person
came
into
the
branch
and
was
acting
extremely
nervous
and
asking
very
strange
questions."
}
],
-
"SuspiciousMatterDetails":
{
-
"OtherSuspiciousReason":
"When
asked for ID he
left
quickly.",
-
"DesignatedServices":
[
-
"BET_ACC",
-
"BULSER"
],
-
"SuspiciousReasons":
[
-
"AT",
-
"AF"
],
-
"GroundsForSuspicion":
"Did not
like
him",
-
"DesignatedServicesType":
"Provided",
-
"GrandTotal":
2678
},
-
"UnknownPersons":
[
-
{
-
"Description":
"Extremely
bad
guy",
-
"SupportingDoc":
true,
-
"DocDescription":
"Photos
of
the
person
at
the
branch."
},
-
{
-
"Description":
"Extremely
bad
girl",
-
"SupportingDoc":
true,
-
"DocDescription":
"Photos
and
video
of
the
person
at
the
branch."
}
],
-
"AdditionalDetails":
{
-
"OffenceType":
"TF",
-
"PriorReports":
[
-
{
-
"PreviousReportDate":
"2022-07-29",
-
"PreviousReportId":
"123456-ABC"
}
],
-
"GovernmentBodies":
[
-
{
-
"Address":
{
-
"Address":
"23
Green
Street",
-
"Suburb":
"Ekatahuna",
-
"State":
"Kantaberry",
-
"Postcode":
"9999",
-
"CountryCode":
"AU"
},
-
"DateReported":
"2022-08-01",
-
"Name":
"SISO",
-
"RelatedInfo":
"Police
confirmed
a
man,
27,
had
been
arrested
following
the
attack
and
is
due
to
appear
in
Counties
Manukau
District
Court
today
charged
with
intent
to
injure.The
man
was
Tasered
after
fleeing
from
police
on
foot
and
assaulting
the
officer."
}
]
},
-
"SuspectedTerrorism":
false
}
}
Get Report Response Messages
Get report response messages for a specific request.
Authorizations:
path Parameters
|
requestId
required
|
string
The unique identifier of request |
header Parameters
|
Client-Id
required
|
string
Your unique client identifier supplied by Jade Thirdeye. |
|
Reporting-Entity
required
|
string
The name of reporting entity. |
Responses
Response samples
- 200
{
-
"requestId":
"c4a13434-3a35-46b8-9a4c-5gt43e251fc5",
-
"reportId": 102,
-
"client":
"string",
-
"reportingEntity":
"string",
-
"reportType":
"SMR",
-
"requestReceived":
"2022-03-20T14:17:45Z",
-
"reportLoaded": true,
-
"reportStatus":
"InformationRequired",
-
"errors":
[
-
{
-
"fieldPath":
"entities/cust001",
-
"type":
"input",
-
"message":
"Customer
cust001 not
found"
},
-
{
-
"fieldPath":
"entities/tran001",
-
"type":
"input",
-
"message":
"Transaction
tran001 not
found"
},
-
{
-
"fieldPath":
"customerSuspicionDetails/cust002",
-
"type":
"input",
-
"message":
"Customer
cust002 is not
provided in the
entities
list"
},
-
{
-
"fieldPath":
"",
-
"type":
"general",
-
"message":
"file is
already
processed"
}
],
-
"warnings":
[
-
{
-
"fieldPath":
"Smr/AustracEntities/Grid/0/AustracEntity/Person/EntityType/Group2/DateOfBirth",
-
"type":
"input",
-
"message":
"Date must
be
DD/MM/YYYY"
},
-
{
-
"fieldPath":
"Smr/AustracEntities/Grid/0/AustracEntity/EntityType",
-
"type":
"input",
-
"message":
"This is
required"
},
-
{
-
"fieldPath":
"Smr/AustracSuspiciousMatterReportingEntity/BranchId",
-
"type":
"mapping",
-
"message":
"Can not
map the data to
the
field"
}
]
}
Endpoints for fetching response messages related to entity data loading.
Get response messages for a specific request
For customers, accounts, and transactions when requests are received, the system will trigger data loading and rule processing jobs asynchronously and the response will not be available immediately. This endpoint takes the request ID as a parameter and provides detailed response messages, such as data loading, rule processing status, and any warnings/errors.
Authorizations:
path Parameters
|
requestId
required
|
string
The unique identifier of request |
header Parameters
|
Client-Id
required
|
string
Your unique client identifier supplied by Jade Thirdeye. |
|
Reporting-Entity
required
|
string
The name of reporting entity. |
Responses
Response samples
- 200
{
-
"requestId":
"c4a14618-3b35-46b8-aa4c-4799fe251fc5",
-
"client":
"string",
-
"reportingEntity":
"string",
-
"entityType":
"Account",
-
"actionType":
"PUT",
-
"requestReceived":
"2022-03-20T14:17:45Z",
-
"entitiesCount": 1000,
-
"entitiesAddedCount": 800,
-
"entitiesIgnoredCount": 800,
-
"entitiesUpdatedCount": 100,
-
"entitiesNotUpdatedCount": 50,
-
"entitiesNotLoadedWithErrorsCount": 50,
-
"entitiesLoadedWithWarningsCount": 20,
-
"entitiesAdded":
[
-
"ABC123",
-
"ABC124"
],
-
"entitiesUpdated":
[
-
"ABC123",
-
"ABC124"
],
-
"entitiesNotUpdated":
[
-
"ABC123",
-
"ABC124"
],
-
"entitiesNotLoadedWithErrors":
[
-
{
-
"recordId":
"1",
-
"entityId":
"10001-001",
-
"messages":
[
-
[
-
"Invalid
data
of
birth
9999-09-09",
-
"Invalid
effective
date
9999-09-09
"
]
]
}
],
-
"entitiesLoadedWithWarnings":
[
-
{
-
"recordId":
"1",
-
"entityId":
"10001-001",
-
"messages":
[
-
[
-
"Invalid
data
of
birth
9999-09-09",
-
"Invalid
effective
date
9999-09-09
"
]
]
}
],
-
"entitiesIgnored":
[
-
{
-
"recordId":
"1",
-
"entityId":
"10001-001",
-
"messages":
[
-
[
-
"Invalid
data
of
birth
9999-09-09",
-
"Invalid
effective
date
9999-09-09
"
]
]
}
]
}
Endpoints related to managing applicants, including health checks, creating applicants, and checking screening statuses.
Applicant Health Check
This endpoint is used to check the health of the connection between the API Gateway and the Financial Crime instance. It returns a simple JSON response indicating whether the connection is healthy or not.
Authorizations:
header Parameters
|
Client-Id
required
|
string
Your unique client identifier supplied by Jade Thirdeye. |
|
Reporting-Entity
required
|
string
The name of reporting entity. |
Responses
Response samples
- 200
{
-
"status":
"Healthy"
}
Create and screen an applicant
This endpoint is used to create and screen an applicant in the system. It accepts a JSON payload containing the applicant's details and returns a response indicating the success or failure of the operation and whether there was a match when screening.
Authorizations:
header Parameters
|
Client-Id
required
|
string
Your unique client identifier supplied by Jade Thirdeye. |
|
Reporting-Entity
required
|
string
The name of reporting entity. |
Request Body schema: application/json
required
|
object
The applicant details. |
Responses
Request samples
- Payload
{
-
"applicant":
{
-
"applicantId":
"1234",
-
"customerType":
"P",
-
"firstName":
"John",
-
"lastName":
"Smith",
-
"dateOfBirth":
"1978-03-21",
-
"gender":
"M",
-
"effectiveFrom":
"2024-06-30T13:45:00Z",
-
"additionalProperties":
[
-
{
-
"name":
"addressLine1",
-
"value":
"221B
Baker
Street"
},
-
{
-
"name":
"addressLine2",
-
"value":
"Baker
Street"
},
-
{
-
"name":
"suburb",
-
"value":
"London"
},
-
{
-
"name":
"state",
-
"value":
"London"
},
-
{
-
"name":
"countryCode",
-
"value":
"GB"
}
]
}
}
Response samples
- 200
{
-
"loadApplicantResponse":
{
-
"applicantId":
"A12347",
-
"matchFound":
true,
-
"messages":
[
-
[ ]
]
},
-
"hasBeenProcessed": true,
-
"requestId":
"15ca0d91-c9de-4dfa-a41a-f6963355f1d0"
}
Check the screening status of an applicant
Checks the screening status of an applicant by their unique identifier. It returns a JSON response indicating the applicant's details and screening status.
Authorizations:
path Parameters
|
applicantId
required
|
string
The unique identifier of applicant that is being checked |
header Parameters
|
Client-Id
required
|
string
Your unique client identifier supplied by Jade Thirdeye. |
|
Reporting-Entity
required
|
string
The name of reporting entity. |
Responses
Response samples
- 200
{
-
"applicantId":
"1234",
-
"customerType":
"P",
-
"firstName":
"John",
-
"lastName":
"Smith",
-
"entityName":
"",
-
"screeningStatus":
"Not Started",
-
"alertId":
"",
-
"requestId":
"16ca0d91-c9de-4dfa-a41a-f6963355f1d0"
}
Check the screening status of a customer
Checks the screening status of a customer by their unique identifier. It returns a JSON response indicating the customer's details and screening status.
Authorizations:
path Parameters
|
customerId
required
|
string
The unique identifier of the customer to screen |
header Parameters
|
Client-Id
required
|
string
Your unique client identifier supplied by Jade Thirdeye. |
|
Reporting-Entity
required
|
string
The name of reporting entity. |
Responses
Response samples
- 200
{
-
"customerId":
"1234",
-
"customerType":
"P",
-
"firstName":
"John",
-
"lastName":
"Smith",
-
"entityName":
"",
-
"screeningStatus":
"Not Started",
-
"alertId":
"",
-
"requestId":
"16ca0d91-c9de-4dfa-a41a-f6963355f1d0"
}
Screen a customer
This endpoint is used to screen a customer in the system. It accepts a customer ID as a query parameter and returns a response indicating the success or failure of the operation and whether there was a match when screening.
Authorizations:
path Parameters
|
customerId
required
|
string
The unique identifier of the customer to screen |
header Parameters
|
Client-Id
required
|
string
Your unique client identifier supplied by Jade Thirdeye. |
|
Reporting-Entity
required
|
string
The name of reporting entity. |
Responses
Response samples
- 200
{
-
"customerNumber":
"1234",
-
"messages":
[ ],
-
"matchFound":
false
}
Monitor real-time transaction
This endpoint is used to load and monitor a pending transaction within the system. It accepts a JSON payload containing transaction details and returns a response that includes a risk assessment outcome and details of any real time alerts generated for the pending transaction.
Authorizations:
header Parameters
|
Client-Id
required
|
string
Your unique client identifier supplied by Jade Thirdeye. |
|
Reporting-Entity
required
|
string
The name of reporting entity. |
Request Body schema: application/json
required
|
accountNumber
required
|
string
[ 1 .. 80 ] characters
The unique identifier for the account |
|
amount
required
|
string
The amount of money transferred through this transaction |
|
debit
required
|
string
To check if the transaction is debit or not |
|
transactionDateTime
required
|
string
<date-time>
The UTC date and time on which this transaction was made |
|
transactionId
required
|
string
[ 1 .. 50 ] characters
The unique identifier for this specific transaction |
|
transactionType
required
|
string
The type of transaction configured for your reporting entity |
|
Array of objects
Additional properties related to the pending transaction. |
Responses
Request samples
- Payload
{
-
"accountNumber":
"123405678910-01",
-
"amount":
"1200.50",
-
"debit":
"false",
-
"transactionDateTime":
"2021-06-30T13:45:00Z",
-
"transactionId":
"ba1834cc-9ed4-4511-868a-6b8f30edf284",
-
"transactionType":
"CCPI",
-
"additionalProperties":
[
-
{
-
"name":
"fromCountry",
-
"value":
"AU"
}
]
}
Response samples
- 200
{
-
"transactionId":
"1234",
-
"summary":
"Risk – Rules matched",
-
"rulesProcessed":
[
-
"Real-time_transaction"
],
-
"realTimeRuleAlerts":
[
-
{
-
"id":
11,
-
"alertStatus":
"Pending
Review",
-
"rules":
[
-
{
-
"ruleId":
"9c974ae7-e7b0-445e-a8ea-314874cf83fd",
-
"ruleName":
"Realtime_transaction_rule",
-
"dataType":
"Transaction",
-
"score":
40
}
],
-
"account":
{
-
"accountNumber":
"100-10003",
-
"accountName":
"C
C
Cheeseman"
},
-
"transactions":
[
-
{
-
"transactionId":
"d1666111777567",
-
"transactionDate":
"2023-11-01T19:30:00Z",
-
"amount":
10000000000,
-
"debit":
false
}
],
-
"score":
170
}
],
-
"transactionErrors":
[
-
{
-
"responseType":
"Error",
-
"message":
"Duplicate
transaction
number",
-
"rules":
[
-
"Realtime_transaction_rule"
]
}
],
-
"hasBeenProcessed": true,
-
"requestId":
"15ca0d91-c9de-4dfa-a41a-f6963355f1d0",
-
"error":
"null"
}
Check the real-time transaction monitoring status
Checks the monitoring status of a pending transaction by its unique identifier. It returns a JSON response containing the risk assessment outcome and details of any real time alerts generated for the pending transaction.
Authorizations:
path Parameters
|
transactionId
required
|
string
The unique identifier of pending transaction that is being checked |
header Parameters
|
Client-Id
required
|
string
Your unique client identifier supplied by Jade Thirdeye. |
|
Reporting-Entity
required
|
string
The name of reporting entity. |
Responses
Response samples
- 200
{
-
"transactionId":
"1234",
-
"summary":
"Risk – Rules matched",
-
"rulesProcessed":
[
-
"Real-time_transaction"
],
-
"realTimeRuleAlerts":
[
-
{
-
"id":
11,
-
"alertStatus":
"Pending
Review",
-
"rules":
[
-
{
-
"ruleId":
"9c974ae7-e7b0-445e-a8ea-314874cf83fd",
-
"ruleName":
"Realtime_transaction_rule",
-
"dataType":
"Transaction",
-
"score":
40
}
],
-
"account":
{
-
"accountNumber":
"100-10003",
-
"accountName":
"C
C
Cheeseman"
},
-
"transactions":
[
-
{
-
"transactionId":
"d1666111777567",
-
"transactionDate":
"2023-11-01T19:30:00Z",
-
"amount":
10000000000,
-
"debit":
false
}
],
-
"score":
170
}
],
-
"transactionErrors":
[
-
{
-
"responseType":
"Error",
-
"message":
"Duplicate
transaction
number",
-
"rules":
[
-
"Realtime_transaction_rule"
]
}
],
-
"hasBeenProcessed": true,
-
"requestId":
"15ca0d91-c9de-4dfa-a41a-f6963355f1d0",
-
"error":
"null"
}
Transaction Monitoring Health Check
This endpoint is used to check the health of the connection between the API Gateway and the Financial Crime instance. It returns a simple JSON response indicating whether the connection is healthy or not.
Authorizations:
header Parameters
|
Client-Id
required
|
string
Your unique client identifier supplied by Jade Thirdeye. |
|
Reporting-Entity
required
|
string
The name of reporting entity. |
Responses
Response samples
- 200
{
-
"status":
"Healthy"
}
