Skip to main content

This page contains public API content.

Restricted pages:

Introduction

The OneHypernet KYC API enables you to integrate your own systems directly with our KYC solutions to automate your operational procedures. All actions performed via the OneHypernet KYC API is captured in your OneHypernet KYC web account at https://kyc.onehypernet.com as a back-up. Our API is organized around REST, and accepts and returns JSON data.

All API requests must be made over HTTPS; calls made over plain HTTP will fail.

API Reference

Please contact your account manager for the Postman collection and Environment variable collection.

Authentication

Generate bearer token:

curl -X 'POST' \
'https://api.onehypernet.com/v1/auth/kyc/login' \
-H 'accept: application/json' \
-d '{
"email": "user@example.com",
"password": "p@s3w0rd"
}'

JSON Response:

{
"access_token": "eyJhbGciOiJJf9anSInR5cCI6IkpXVCJ9.eyJzdWIiOiJmZTMyOGE3Ny02YjYyLTQFm9Fm5Yy02MTFkYzBhNDU2NzIiLCJlbWFpbCI6ImFsc3RvbmV0ZWUra3ljdGVzdGluZ180QGdtYWlsLmNvbSIsImZ1bGxfbmFtZSI6IkFsZXggVGFuIiwicm9sZSI6Imt5Y191c2VyIiwiYXBpX2tleSI6IjNjMjRiNzFlMjBkNjBj2TUzOTZiZjQ2NjY4MDIwMjNmIiwibXRvX2xlZFnSiX25hbWUiOiJLWUMgVEVTVElORyIsImlhdCI6MTY3MDU3MDIyNCwiZXhwIjo3NzE4NTcwMjI0fQ.RPPtxav0NAwxD709mSYkKIcxPiuKsE55p0fJ-jymRLc",
"refresh_token": "bg2RZvG8afM1GmKq"
}

OneHypernet uses bearer tokens to allow access to our APIs. Please contact your account manager for access to the staging environment.

You can generate bearer tokens from the POST /login endpoint. Include the bearer token as a header for all requests.

  • Authorization header of your API request
    -H 'Authorization: Bearer {token}

Standard accounts can generate up to 10 access tokens.

Your access tokens provide secure entry to your account data, so please implement best practices for managing your credentials. Access tokens expire within 24 hours. Refresh tokens remain valid for up to 180 days and are designed to support long-term authentication without repeatedly re-logging in. Access tokens should not be regenerated for every API call. Please implement a refresh-token flow so your application can request new access tokens only when required. This keeps authentication secure, stable, and efficient.

There is a maximum of 10 active access tokens per standard account. Over-creating tokens may exhaust this limit and cause authentication to fail until earlier tokens are revoked. Excessive token generation may also trigger rate limits, resulting in temporary rejection of authentication requests.

You can renew an access token by sending the refresh token to the POST /refresh endpoint.

Refresh access token:

curl -X 'POST' \
'https://api.onehypernet.com/v1/auth/kyc/refresh-access-token' \
-H 'accept: application/json' \
-d '{
"refresh_token": "bg2RZvG8afM1GmKq"
}'

JSON Response:

{
"access_token": "eyJhbGciOiJJf9anSInR5cCI6IkpXVCJ9.eyJzdWIiOiJmZTMyOGE3Ny02YjYyLTQFm9Fm5Yy02MTFmYGBhNDU2NzIiLDJlbWFpbCI6ImFsc3RvbmV0ZWUra3ljdGVzdGluZ180QGdtYWlsLmNvbSIsImZ1bGxfbmFtZSI6IkFsZXggVGFuIiwicm9sZSI6Imt5Y191c2VyIiwiYXBpX2tleSI6IjNjMjRiNzFlMjBkNjBj2TUzOTZiZjQ2NjY4MDIwMjNmIiwibXRvX2xlZFnSiX22hbWUiOiJLWUMgVEVTVElORyIsImlhdCI6MTY3MDU3MDIyNCwiZXhwIjo3NzE4NTcwMjI0fQ.RPPtxav0NAwxD709mSYkKIcxPiuKsE55p0fJ-jdassc"
}

You can revoke an access token from the POST /revoke endpoint. Revoking an access token will also revoke its refresh token.

Revoke token:

curl -X 'POST' \
'https://api.onehypernet.com/v1/auth/kyc/revoke-access-token' \
-H 'accept: application/json' \
-d '{
"access_token": "eyJhbGciOiJJf9anSInR5cCI6IkpXVCJ9.eyJzdWIiOiJmZTMyOGE3Ny02YjYyLTQFm9Fm5Yy02MTFmYGBhNDU2NzIiLDJlbWFpbCI6ImFsc3RvbmV0ZWUra3ljdGVzdGluZ180QGdtYWlsLmNvbSIsImZ1bGxfbmFtZSI6IkFsZXggVGFuIiwicm9sZSI6Imt5Y191c2VyIiwiYXBpX2tleSI6IjNjMjRiNzFlMjBkNjBj2TUzOTZiZjQ2NjY4MDIwMjNmIiwibXRvX2xlZFnSiX22hbWUiOiJLWUMgVEVTVElORyIsImlhdCI6MTY3MDU3MDIyNCwiZXhwIjo3NzE4NTcwMjI0fQ.RPPtxav0NAwxD709mSYkKIcxPiuKsE55p0fJ-jdassc"
}'

API Endpoints

This is the public list of endpoints that are available for use. Please contact your account manager if you need additional or custom endpoints.

EndpointDescription
GET /casesRetrieves all cases but not their screening history.
GET /cases/{case_id}Retrieves a case, its related entities, and its screening history.
POST /cases/individualCreates a new case of an individual.
POST /cases/corporateCreates a new case of a corporate.
PATCH /cases/individual/{case_id}Updates the case of an individual.
PATCH /cases/corporate/{case_id}Updates the case of a corporate.
PATCH /cases/deleteDeletes a case or multiple cases.
GET /cases/screen/{case_id}Screens the main entity of a case.
GET /cases/screening-archive/{case_id}Retrieves the screening archive of a case.
GET /screen-historyRetrieves the screen history of all cases.
GET /rba/variables?caseType=IndividualRetrieves all the risk variables for the case type of Individual.
GET /rba/variables?caseType=CorporateRetrieves all the risk variables for the case type of Corporate.
POST /rba/variables?caseType=IndividualUpdates the risk variables of the case type of Individual.
POST /rba/variables?caseType=CorporateUpdates the risk variables of the case type of Corporate.
GET /rba/case/{case_id}Retrieves the risk score of the case.
POST /rba/case/{case_id}Adjusts the score of the risk variable.
GET /rba/case/{case_id}/summaryTriggers AI model to generate a risk assessment summary of the case.
GET /rba/case/{case_id}/score-historiesThis endpoint retrieves the history of the risk score of a case.
GET /rba/settings?type={reference}Retrieve the settings of each reference.
POST /rba/settings?type={reference}Update the settings of each reference.
POST /rba/settings?type=ScreeningSyntheticIndexUpdate the settings of screening reference.
GET /rba/risk-levelsRetrieve risk levels of the account.
POST /rba/risk-levelsUpdate risk levels of the account.
GET /kyc/transactionsRetrieves all transactions.
GET /kyc/transactions/{transaction_id}Retrieve a specific transaction.
GET /kyc/transactions/cases/{case_id}Retrieves all transactions of a single case.
POST /kyc/transactions/transactionsCreates a single transaction.
PATCH /kyc/transactions/{transaction_id}Updates a single transaction.
DELETE /kyc/transactions/unlink/{case_id}Unlinks all transactions from a specific case but does not delete the transactions itself.
DELETE /kyc/transactions/{transaction_id}Delete a transaction and all its data.
GET /cases/match/{screen_id}/{match_id}Retrieves a specific match of a screen.
PATCH /cases/match/{screen_id}/{match_id}Updates a single match of a screen.
PATCH /cases/update-multiple-matchesUpdates multiple matches of a screen.
GET /cases/monitoringRetrieves updates for ongoing monitoring.
GET /cases/screen-summaryRetrieves the number of screens of your account.
GET /rba/summary-countRetrieves the number of AI summaries generated in your account.
GET /cases/variable-score-countRetrieves the number of AI risk scoring done on free-text variables (as "Others") in your account.
GET /cases/usersRetrieves the details of all users in your account.
GET /cases/branchesRetrieves the details of all branches in your account.
POST /cases/branchesCreates a new branch.
PATCH /cases/branches/{branch_id}Updates the details of a branch.
DELETE /cases/branches/{branch_id}Delete a branch.

Case Management

Each case contains a main entity, and you can connect other cases (related entities such as shareholders, suppliers, auditor, etc.) to each case. You can assign cases to specific users, set risk levels, customize case settings, specify the frequency of ongoing monitoring, and save screenings.

Retrieve Cases

Retrieve all cases

Request:

curl -X 'GET' \
'https://api.onehypernet.com/v1/cases?limit={limit}&sort={parameter,DESC}&filter={parameter||$in||value}&filter={range_parameter||$gte||5}' \
-H 'accept: application/json' \
-H 'Authorization: Bearer {token}'

JSON Response for One Case:

{
"data": [
{
"email": "alberteinstein@example.com",
"status": "approved",
"risk": "low",
"updated_at": "2022-12-09T07:39:46.994Z",
"created_at": "2022-12-09T07:39:46.975Z",
"unresolvedMatches": 1,
"positiveMatches": 0,
"possibleMatches": 0,
"falseMatches": 0,
"new_matches": 0,
"updated_profiles": 1,
"deleted_profiles": 0,
"group_id": "VIP12",
"batch_id": "DEC23",
"last_screened": "2024-01-11T04:35:11.147Z",
"full_name": "Albert Einstein",
"nationality": "Singaporean",
"gender": "male",
"assigned_user": {
"user_id": "fe328a77-6b62-4228-979c-611fc0a45672",
"full_name": "Alex Tan"
},
"case_id": "6ba279a7-a7c0-49c9-b024-9d750a5a34d2",
"custom_case_id": "CD9923000",
"case_group": "VIP",
"case_type": "individual"
}
],
"metadata": {
"total": 1
}
}

GET /cases

This endpoint retrieves all cases but not their screening history. Add a limit to improve loading times.

ParameterTypeDescription
limitIntegerNumber of results for pagination.
offsetIntegerStarting point of the results for pagination.
sortStringASC or DESC.

Filter Parameters

You can filter search results with these parameters using the $in operator.

ParameterTypeDescription
custom_case_idStringUnique reference ID of the case.
group_idStringGroup ID to identify cases belonging to a group.
case_typeStringIndividual or Corporate case.
emailStringEmail address of the entity.
contactIntegerContact number of the entity.
statusStringPending, Processing, Approved, Rejected.
first_nameStringFirst name of the individual.
last_nameStringLast name of the individual.
full_nameStringFull name of the individual.
nationalityStringNationality of the individual in ISO 3166 format.
case_groupStringCase group as per your settings.
riskStringlow, medium, high, unrated.
legal_nameStringLegal name of the corporate.
corporate_typeStringType of corporate.
country_of_incorporationStringCountry of incorporation in ISO 3166 format.
registration_noStringBusiness registration number of the corporate.
ongoing_monitoringBooleanYes / No for ongoing monitoring.
assigned_toStringAssignee of the case.
branch_idStringBranch that the case is attached to.

You can also filter search results based on range parameters using the $lte and $gte operators.

Range ParameterTypeDescription
unresolvedMatchesStringCases with unresolved matches.
possibleMatchesStringCases with possible matches.
positiveMatchesStringCases with positive matches.
falseMatchesStringCases with false matches.
new_matchesStringCases with new matches from ongoing monitoring.
updated_profilesStringCases with updated matches from ongoing monitoring.
deleted_profilesStringCases with deleted matches from ongoing monitoring.

Sort Parameters

You can sort search results with these parameters.

ParameterTypeDescription
statusStringASC or DESC.
riskStringASC or DESC.
positiveStringASC or DESC.
possibleStringASC or DESC.
unresolvedStringASC or DESC.
falseStringASC or DESC.
created_onStringASC or DESC.
updated_atStringASC or DESC.

Retrieve a specific case

Request:

curl -X 'GET' \
'https://api.onehypernet.com/v1/cases/{case_id}' \
-H 'accept: application/json' \
-H 'Authorization: Bearer {token}'

JSON Response for Individual Case:

{
"status": "approved",
"email": "alberteinstein@spacex_company.com",
"contact_no": "+6581234567",
"kyc_comment": null,
"business_relationship": null,
"risk": "low",
"review_starting_from": "2024-01-22",
"review_frequency_value": 12,
"review_frequency_type": "months",
"document_expiry_reminder_value": 2,
"document_expiry_reminder_type": "weeks",
"review_reminder_value": 2,
"review_reminder_type": "weeks",
"reminder_users": [
{
"user_id": "d1ac6328-3854-4a0e-805b-d8c7110e4e6d"
}
],
"assessment": "recommended",
"assessor": "2e2e0a5a-2f86-41f4-9e2b-4241e4a686d8",
"approver": "d1ac6328-3854-4a0e-805b-d8c7110e4e6d",
"group_id": null,
"last_screened": "2024-01-22T06:37:04.117Z",
"transactions": [
{
"id": "f5ee85bd-c5b3-42b3-9cf2-ffdc144209af",
"date": "2024-01-10T04:48:24.427Z",
"rate": 1250,
"type": "buy",
"amount": "2500.00",
"currency": "USD",
"quantity": 2,
"description": "Gold bar"
}
],
"assigned_to": "ea553e66-8c77-4d97-8b5c-970a9992e1a1",
"onboarding_mode": "Myinfo",
"sign_up_date": null,
"new_client": null,
"monthly_transaction_volume": null,
"monthly_transaction_frequency": null,
"average_transaction_amount": null,
"product_complexity": null,
"ongoing_monitoring": false,
"included_country": true,
"included_dob": true,
"included_gender": true,
"match_strength": "strong",
"screen_profile": null,
"monitoring_frequency_value": null,
"monitoring_frequency_type": null,
"full_name": "Albert Einstein",
"first_name": "Albert",
"last_name": "Einstein",
"native_name": "爱因斯坦",
"nationality": "SGP",
"id_type": "nric",
"id_no": "04109906",
"id_expiry": "2030-03-15",
"id_reminder": false,
"dob": "1990-03-20",
"industry": "Civil engineering",
"occupation": "Engineer",
"gender": "male",
"employer": "Space X",
"pep": "no",
"pep_role": null,
"pep_status": null,
"pep_type": null,
"pep_country": null,
"pep_start": null,
"pep_end": null,
"source_of_funds": "Bank account",
"source_of_wealth": "Savings",
"id_issuing_country": null,
"alias": null,
"former_name": null,
"ethnicity": null,
"marital_status": null,
"networth": null,
"country_of_birth": null,
"residential_address": "12 Alexander Road, BLK 356, The Office, #10-11",
"residential_postal_code": "554815",
"residential_country": "SGP",
"unresolvedMatches": 1,
"positiveMatches": 0,
"possibleMatches": 0,
"falseMatches": 0,
"case_id": "d33535b3-e343-4d95-a3d7-1782232d5b5a",
"custom_case_id": "C2485274061",
"case_group": null,
"case_type": "individual",
"screening_entities": [
{
"id": "d33535b3-e343-4d95-a3d7-1788232d5b5a",
"name": "Albert Einstein",
"screen": {
"created_at": "2024-01-22T06:37:03.978Z",
"updated_at": "2024-01-22T06:37:03.978Z",
"match_ids": ["4f833d42-0904-4b73-938f-0a77904b2a20"],
"created_by": "d1ac6328-3854-4a0e-805b-d8c7110e4e6d",
"updated_by": null,
"new_matches": 0,
"updated_profiles": 0,
"deleted_profiles": 0,
"comment": null,
"matches": [
{
"created_at": "2024-01-22T06:37:03.978Z",
"updated_at": "2024-01-22T06:37:03.978Z",
"match_id": "1c0dfd6f-a422-4e4d-974b-5cf20a450a10",
"comment": null,
"status": "unresolved",
"profile_status": "new",
"data": {
"dob": "1946",
"gender": "Male",
"prefix": "",
"suffix": "",
"overview": "Former Managing Director of Spacex Limited (2017 - 2019). Arrested for corruption - July 11, 2023.",
"countries": ["SGP", "MYS", "MDV", "NOR"],
"categories": ["Adverse Media", "PEP"],
"entityName": "Albert Einstein",
"entityType": "Individual",
"isBlacklist": false,
"last_updated": "2024-01-18T07:33:03.923Z",
"primary_country": "SGP",
"match_id": "1C0DFD6F-A422-4E4D-974B-5CF20A450A10"
},
"created_by": "d1ac6328-3854-4a0e-805b-d8c7110e4e6d",
"updated_by": null,
"resolved_on": null,
"screen_id": "64d1e5f4-4bf7-44a8-8864-a2f0bf79564d"
}
],
"screen_id": "64d1e5f4-4bf7-44a8-8864-a2f0bf79564d",
"case_id": "d33535b3-e343-4d95-a3d7-1788232d5b5a",
"screen_type": "manual",
"match_summary": {
"false": 0,
"positive": 0,
"possible": 0,
"unresolved": 1
},
"screen_parameters": {
"q": "Albert Einstein",
"dob": null,
"gender": null,
"country": null,
"screen_type": "manual",
"match_strength": "medium",
"custom_case_id": "C2485274061",
"case_type": "individual",
"screen_id": "d33535b3-e343-4d95-a3d7-1788232d5b5a"
}
},
"live_screen_parameters": {
"country": null,
"dob": null,
"gender": null,
"ongoing_monitoring": false,
"included_country": true,
"included_dob": true,
"included_gender": true,
"name_order": false,
"match_strength": "medium",
"screen_profile": null,
"monitoring_frequency_value": null,
"monitoring_frequency_type": null,
"next_ongoing_monitoring": null
}
}
],
"related_entities": [
{
"case_id": "6b6df5f4-e80a-49ed-826c-d2a96977ed6e",
"relationship": "R1",
"appointment_date": "2024-09-15",
"number_of_shares": 2323,
"share_currency": "SGD",
"shareholding": 0.25
}
]
"summary": {
"adjustedRisk": "High",
"computedRisk": "Medium",
"adjustedScore": 80,
"computedScore": 55
}
}

GET /cases/{case_id}

This endpoint retrieves a case, its related entities, and its screening history.

Retrieve audit log for a case

Request:

curl -X 'GET' \
'https://api.onehypernet.com/v1/cases/{case_id}/audit-logs' \
-H 'accept: application/json' \
-H 'Authorization: Bearer {token}'

JSON Response for a Case:

{
"data": [
{
"id": "c4828844-be3b-4004-b3ef-4bdd2b8ce648",
"type": null,
"group": "KYC",
"username": "Test 2 ",
"user_email": "admin@silvermoneytransfer.com",
"payload": [
{
"field_name": "risk",
"updated_value": "high",
"previous_value": "unrated"
}
],
"source": null,
"created_at": "2025-12-19T04:48:04.246Z"
},
{
"id": "e6a4d8f8-da20-4732-9f00-e62a13018a6b",
"type": "create",
"group": "Setting",
"username": "Test 2 ",
"user_email": "admin@silvermoneytransfer.com",
"payload": [
{
"field_name": "monitoring_notification_users",
"updated_value": "Test 2 ",
"previous_value": null
}
],
"source": null,
"created_at": "2025-12-18T13:55:09.734Z"
},
{
"id": "ab8109b7-ea85-4eac-b8cd-ce81cedc63c6",
"type": "create",
"group": "Setting",
"username": "Test 2 ",
"user_email": "admin@silvermoneytransfer.com",
"payload": [
{
"field_name": "reminder_users",
"updated_value": "Test 2 ",
"previous_value": null
}
],
"source": null,
"created_at": "2025-12-18T13:55:09.710Z"
},
{
"id": "01f1aee9-0f15-4021-90bf-cff284d0fc7c",
"type": "create",
"group": "Screening Parameters",
"username": "Test 2 ",
"user_email": "admin@silvermoneytransfer.com",
"payload": [
{
"field_name": "match_strength",
"updated_value": "strong"
},
{
"field_name": "included_country",
"updated_value": true
},
{
"field_name": "included_dob",
"updated_value": true
},
{
"field_name": "included_gender",
"updated_value": true
}
],
"source": null,
"created_at": "2025-12-18T13:55:09.685Z"
},
{
"id": "0a82a270-0bf5-4659-8cbc-23f90383bd35",
"type": "create",
"group": "Customer Details",
"username": "Test 2 ",
"user_email": "admin@silvermoneytransfer.com",
"payload": [
{
"field_name": "full_name",
"updated_value": "John Ultra"
}
],
"source": null,
"created_at": "2025-12-18T13:55:09.669Z"
},
{
"id": "90ea8d6c-ca27-4f16-865f-f6285d34b5f0",
"type": null,
"group": "Customer Details",
"username": "Test 2 ",
"user_email": "admin@silvermoneytransfer.com",
"payload": [
{
"field_name": "customer_id",
"updated_value": "C1623876525"
},
{
"field_name": "type",
"updated_value": "individual"
},
{
"field_name": "assigned_to",
"updated_value": "8cc5b1e8-6ca7-4c8e-97bb-292f95db1b7b"
},
{
"field_name": "case_group",
"updated_value": "",
"previous_value": ""
},
{
"field_name": "Branches",
"updated_value": "Main",
"previous_value": ""
}
],
"source": null,
"created_at": "2025-12-18T13:55:09.649Z"
},
{
"id": "28cfff95-1d89-437c-9c4c-22c5970d7227",
"type": null,
"group": "Setting",
"username": "Test 2 ",
"user_email": "admin@silvermoneytransfer.com",
"payload": [
{
"field_name": "review_starting_from",
"updated_value": "2025-12-18"
}
],
"source": null,
"created_at": "2025-12-18T13:55:09.649Z"
},
{
"id": "c2d5dc9d-bf57-49cc-a566-2d9620e9f6ba",
"type": null,
"group": "KYC",
"username": "Test 2 ",
"user_email": "admin@silvermoneytransfer.com",
"payload": [
{
"field_name": "status",
"updated_value": "processing"
},
{
"field_name": "risk",
"updated_value": "unrated"
}
],
"source": null,
"created_at": "2025-12-18T13:55:09.649Z"
}
],
"metadata": {
"total": 8
}
}

GET /cases/{case_id}/audit-logs

This endpoint retrieves the audit log for a specific case.

Create Cases

Create individual case

Request:

curl -X 'POST' \
'https://api.onehypernet.com/v1/cases/individual' \
-H 'accept: application/json' \
-H 'Authorization: Bearer {token}' \
-H 'Content-Type: application/json' \
-d '{
"custom_case_id": "C123456787",
"full_name": "Albert Einstein",
"status": "pending",
"risk": "low",
"nationality": "SGP",
"branch_ids": ["aac3991a-723a-4764-8bcd-09daff171d1e"],
"dob": "1955-02-15",
"gender": "male",
"createAndScreen": true,
"screen_parameters": [
{
"included_country": true,
"included_dob": true,
"match_strength": "strong"
}
],
"related_entities": [
{
"case_id": "6b6df5f4-e80a-49ed-826c-d2a96977ed6e",
"relationship": "R1",
"appointment_date": "2024-09-15",
"number_of_shares": 2323,
"share_currency": "SGD",
"shareholding": 0.25
}
]
}'

JSON Response:

{
"case_id": "5712621f-dea7-499f-b8c2-01c34128e5c4"
}

POST /cases/individual

This endpoint creates a new case of an individual.

Post Parameters

All parameters are optional except for full_name.

ParameterTypeDescription
full_name (required)StringFull name of the individual.
custom_case_idStringYou can specify a unique reference ID for this case, or leave it empty to generate a new, random custom_case_id.
group_idStringCases belonging to a specific group.
branch_idsArrayYou can tag a case to branches.
first_nameStringFirst name of the individual.
last_nameStringLast name of the individual.
native_nameStringNative name (e.g. Chinese characters).
aliasStringAliases of the individual.
former_nameStringFormer names of the individual.
ethnicityStringEthnicity of the individual.
marital_statusStringMarital status of the individual.
residential_addressStringResidential address of the individual.
residential_postal_codeIntegerPostal code of the residential address.
residential_countryStringResidential country of the individual.
contact_noIntegerContact number, including country code.
emailStringEmail address.
nationalityStringNationality of the individual in ISO 3166 format
id_typeStringIdentification document type.
id_noStringIdentification document number.
id_expiryDateExpiry date of the identification in yyyy-mm-dd format.
id_reminderBooleanToogle emails alerts to remind user for ID expiry.
id_issuing_countryStringCountry that issued the individual's ID.
country_of_birthStringCountry of birth of the individual.
dobdateDate of birth in yyyy-mm-dd format.
genderStringMale, Female, Unknown.
occupationStringOccupation
employerStringEmployer
kyc_commentStringKYC comments for this case.
risk_score_enableBooleanToggle settings for risk scoring.
ongoing_monitoringBooleanToggle settings for ongoing monitoring in the array for screening parameters.
included_countryBooleanToggle inclusion of Nationality in the array for screening parameters.
included_dobBooleanToggle inclusion of Date of Birth in the array for screening parameters.
included_genderBooleanToggle inclusion of Gender in the array for screening parameters.
monitoring_frequency_valueIntegerNumber of Days, Weeks, or Months in the array for screening parameters.
monitoring_frequency_typeStringDays, Weeks, Months in the array for screening parameters.
review_starting_fromDateDate to begin review frequency.
review_frequency_valueIntegerNumber of Days, Weeks, or Months.
review_frequency_typeStringDays, Weeks, Months
document_expiry_reminder_valueIntegerNumber of Days, Weeks, or Months.
document_expiry_reminder_typeStringDays, Weeks, Months
review_reminder_valueIntegerNumber of Days, Weeks, or Months.
review_reminder_typeStringDays, Weeks, Months
reminder_usersStringSet which users to send reminders to.
onboarding_modeStringHow the individual was onboarded.
sign_up_dateDateDate the individual signed up.
new_clientBooleanWhether the individual is the new customer.
monthly_transaction_volumeStringMonthly transaction volume of the individual.
monthly_transaction_frequencyStringMonthly transaction frequency of the individual.
average_transaction_amountStringAverage transaction amount of the individual.
product_complexityStringComplexity and implied risk of the product transacted with the individual.
networthStringNetworth of the individual.
createAndScreenBooleanTrue = Create and screen, False = Create only
assessmentStringRecommended, Not Recommended
assessorStringid of Assessor
approverStringid of Approver
pepStringYes, No, Related to PEP
pep_roleStringRole of PEP
pep_statusStringActive, Inactive
pep_typeStringDomestic, Foreign, Family Member of PEP, Associate of PEP
pep_countryStringCountry of the PEP role.
pep_start_endDateStart and end date of the PEP role in yyyy-mm-dd format.
source_of_fundsStringSource of funds.
source_of_wealthStringSource of wealth.
business_relationshipStringBusiness relationship.
case_groupStringCase group as defined by the user.
statusStringProcessing, Approved, Rejected
riskStringLow, Medium, High, Unrated

Create corporate case

Request:

curl -X 'POST' \
'https://api.onehypernet.com/v1/cases/corporate' \
-H 'accept: application/json' \
-H 'Authorization: Bearer {token}' \
-H 'Content-Type: application/json' \
-d '{
"custom_case_id": "C123456788",
"legal_name": "Sunray Company Private Limited",
"status": "approved",
"risk": "low",
"country_of_incorporation": "SGP",
"createAndScreen": true,
"screen_parameters": [
{
"included_country": true,
"match_strength": "strong"
}
],
"related_entities": [
{
"case_id": "6b6df5f4-e80a-49ed-826c-d2a96977ed6e",
"relationship": "R1",
"appointment_date": "2024-09-15",
"number_of_shares": 2323,
"share_currency": "SGD",
"shareholding": 0.25
}
]
}'

JSON Response:

{
"case_id": "5712126f-dea7-499f-b8c2-01c34128e5c4"
}

POST /cases/corporate

This endpoint creates a new case of a corporate.

Post Parameters

All parameters are optional except for legal_name.

ParameterTypeDescription
legal_name (required)StringLegal name of the corporate.
custom_case_idStringYou can specify a unique reference ID for this case, or leave it empty to generate a new, random custom_case_id.
group_idStringCases belonging to a specific group.
former_nameStringFormerly used name of the corporate.
trading_nameStringTrading or operating name of the corporate.
corporate_typeCode TableType of company (e.g. Private or Public)
registration_noStringRegistration no of the corporate.
date_of_incorporationDateDate of incorporation in yyyy-mm-dd format.
country_of_incorporationStringCountry of incorporation in ISO 3166 format.
registered_addressStringRegistered address of the corporate
registered_postal_codeIntegerPostal code of the registered address.
registered_countryStringRegistered country of the corporate.
operating_addressStringOperating address of the corporate
operating_postal_codeIntegerPostal code of the registered address.
operating_countryStringRegistered country of the corporate.
contact_noIntegerContact number, including country code.
emailStringEmail address.
kyc_commentStringKYC comments for this case.
risk_score_enableBooleanToggle settings for risk scoring.
nature_of_businessStringNature of the primary business of the corporate.
industryCode TablePrimary business activity of the corporate.
secondary_activityCode TableSecondary business activity of the corporate.
entity_statusStringStatus of the corporate.
no_of_chargesStringNumber of charges of the corporate.
account_due_dateDateDue date of the corporate's accounts.
annual_return_dateDateAnnual return date of the corporate.
nominee_directorsBooleanWhether the corporate has nominee directors.
layers_of_ownershipCode TableNumber of layers of ownership of the corporate.
staff_strengthCode TableNumber of staff of the corporate.
contact_personStringMain contact person of the corporate.
websiteStringWebsite of the corporate.
countries_of_operationsString1 or more countries that the corporate operates in.
ongoing_monitoringBooleanToggle settings for ongoing monitoring in the array for screening parameters.
included_countryBooleanToggle inclusion of Country of Incorporation in the array for screening parameters.
monitoring_frequency_valueIntegerNumber of Days, Weeks, or Months in the array for screening parameters.
monitoring_frequency_typeStringDays, Weeks, Months in the array for screening parameters.
review_starting_fromDateDate to begin review frequency.
review_frequency_valueIntegerNumber of Days, Weeks, or Months.
review_frequency_typeStringDays, Weeks, Months
document_expiry_reminder_valueIntegerNumber of Days, Weeks, or Months.
document_expiry_reminder_typeStringDays, Weeks, Months
review_reminder_valueIntegerNumber of Days, Weeks, or Months.
review_reminder_typeStringDays, Weeks, Months
reminder_usersStringSet which users to send reminders to.
onboarding_modeStringHow the corporate was onboarded.
sign_up_dateDateDate the corporate signed up.
new_clientBooleanWhether the corporate is the new client.
locationCode TableLocation of the corporate's operating premise.
monthly_transaction_volumeFloatMonthly transaction volume of the corporate.
monthly_transaction_frequencyFloatMonthly transaction frequency of the corporate.
average_transaction_amountFloatAverage transaction amount of the corporate.
product_complexityIntegerComplexity and implied risk of the product transacted with the corporate.
createAndScreenBooleanTrue = Create and screen, False = Create only
assessmentStringRecommended, Not Recommended
assessorStringid of Assessor
approverStringid of Approver
business_relationshipStringBusiness relationship.
case_groupStringCase group as defined by the user.
statusStringProcessing, Approved, Rejected, Review, Pending
riskStringLow, Medium, High, Prohibited, Unrated

Code tables

Use these codes for id_type, occupation, onboarding_mode, source_of_wealth, corporate_type, layers_of_ownership, staff_strength, industry, and relationship. Any values not found in the code table will be stored as a custom value.

ID Type

ParameterCode
National IDID1
Driver's licenseID2
NRIC (pink)ID3
NRIC (blue)ID4
PassportID5
Employment passID6
Personalised employment passID7
Work permitID8
S passID9
Dependent's passID10
Visit passID11
Long term visit passID12
Student passID13
EntrepassID14
State IDID15
Military IDID16

ID Expiry

ParameterCode
< 30IDE1
31 to 60IDE2
61 to 120IDE3
121 to 270IDE4
271 to 360IDE5
361 to 540IDE6
541 to 720IDE7
721 to 1080IDE8
1081 to 1440IDE9
1441 to 1800IDE10
> 1800IDE11

Occupation

ParameterCode
AccountingA1
AdministrativeA2
Board of DirectorsB1
Compliance departmentC1
Customer serviceC2
DiplomatD1
Domestic WorkerD2
EngineerE1
Executive and C-LevelE2
FinanceF1
Human ResourcesH1
Information TechnologyI1
InternI2
Junior Civil ServantJ1
Junior ManagementJ2
LegalL1
MarketingM1
Middle ManagementM2
OperationsO1
ProcurementP1
RetireeR1
SalesS1
Senior Civil ServantS2
Senior ManagementS3
StudentS4
Support StaffS5
TeacherT1
TechnicianT2
UnemployedU1

Onboarding Mode

ParameterCode
In personO1
MyinfoO2
Digital verificationO3
Video callO4
Phone callO5
Mobile appO6
Web appO7
EmailO8

Source of Wealth

ParameterCode
RevenueS1
LoanS2
EquityS3
GrantS4
DonationS5
Recurring salaryS6
Freelance salaryS7
Rent incomeS8
InvestmentS9
PensionS10
InheritanceS11
Family supportS12

Corporate Type

ParameterCode
Exempt Private Company Limited by SharesE1
Private Company Limited by SharesE2
Public Company Limited by SharesE3
Public Company Limited by GuaranteeE4
Unlimited Exempt Private CompanyE5
Unlimited Private CompanyE6
Unlimited Public CompanyE7
Foreign Company Registered LocallyE8
Foreign Company Registered OverseasE9
Sole ProprietorshipE10
PartnershipE11
Unregistered Local EntityE12
Unregistered Foreign EntityE13
Limited Liability Partnerships (LLP)E14
Foreign Military UnitsE15
State Owned EntityE16
Government Agencies and BodiesE17
Management CorporationsE18
Representative OfficeE19
Trade UnionsE20
Variable Capital CompanyE21

Layers of Ownership

ParameterCode
0L1
1L2
2L3
3L4
4L5
5 or moreL6
UnknownL7

Duration of Incorporation

ParameterCode
< 30 daysIN1
31 to 60 daysIN2
61 to 120 daysIN3
121 to 270 daysIN4
271 to 360 daysIN5
361 to 540 daysIN6
541 to 720 daysIN7
721 to 1080 daysIN8
1081 to 1440 daysIN9
1441 to 1800 daysIN10
> 1800IN11

Duration as Client

ParameterCode
< 30 daysDS1
31 to 60 daysDS2
61 to 120 daysDS3
121 to 270 daysDS4
271 to 360 daysDS5
361 to 540 daysDS6
541 to 720 daysDS7
721 to 1080 daysDS8
1081 to 1440 daysDS9
1441 to 1800 daysDS10
> 1800 daysDS11

Networth

ParameterCode
< 10,000NW1
10,000 to 100,000NW2
100,001 to 300,000NW3
300,001 to 500,000NW4
500,001 to 1,000,000NW5
1M to 5MNW6
5M to 10MNW7
10M to 50MNW8
50M to 100MNW9
> 100MNW10

Staff Strength

ParameterCode
Sole proprietorSS1
1 - 10SS2
11 - 50SS3
51 - 200SS4
201 - 500SS5
501 - 1,000SS6
1,001 - 5,000SS7
5,000 - 10,000SS8
> 10,000SS9

Location

ParameterCode
Central Business DistrictL1
Residential AreaL2
Government PremiseL3
Tourist HotspotL4
Trade ZoneL5
Near Airport or PortL6
Crime HotspotL7
International BorderL8

Industry

ParameterCode
AccommodationA1
Accounting and auditA2
Administrative, office support and other business supportA3
Advertising and market researchA4
AgricultureA5
Air transportA6
Architectural and engineeringA7
Art dealing, antiques, and galleriesA8
Automobile dealershipsA9
BankingB1
Bars, nightclubs, and entertainment venuesB2
Cafes, restaurants, and eateriesC1
Charitable and non-profit organisationsC2
Chemical productsC3
Civil and government servicesC5
Civil engineeringC4
Cleaning and landscape maintenanceC6
Computer programmingC7
Computer, electronic and optical productsC8
Construction of buildingsC9
Creative, arts and entertainmentC10
CryptocurrencyC11
EducationE1
Employers of domestic personnelE2
Employment activitiesE3
Extra-territorial organisations and bodiesE4
Financial service activities, except banking, insurance, pension funding, and money servicesF1
Fishing, operation of fish hatcheries and fish farmsF2
Food and beverage productsF3
Food and beverage services except cafes, restaurants, and eateriesF4
Forestry and loggingF5
Freight forwarders and customs brokersF6
Furniture and woodworkF7
Gambling and bettingG1
Health servicesH1
Information service activities and online marketplacesI1
Information technology consultancyI2
Insurance, reinsurance, provident funding and pension fundingI3
Land transportL1
LegalL2
Libraries, museums and cultural activitiesL3
Machinery and equipmentM1
Management consultancy activitiesM2
Manufacture of apparelM3
Manufacturing of general goodsM4
MediaM5
Medical equipmentM6
Membership organisationsM7
MilitaryM8
Mining and quarryingM9
Money services; money-changing and money-transferM10
Motor vehiclesM11
Oil and gasO1
PawnshopsP1
Pharmaceuticals and biological productsP2
Postal and courierP3
Precious metals, jewelry, diamond, and gemstoneP4
Printing and reproduction of recorded mediaP5
Public administration and defenceP6
PublishingP7
Radio and television broadcastingR1
Real estateR2
Refined petroleum productsR3
Religious organisationsR4
Rental and leasingR5
Repair of computers, personal and household goods and vehiclesR6
Residential care servicesR7
Retail trade of general goodsR8
Retail trade of high-value and luxury goodsR9
Scientific research and developmentS1
Security and investigation activitiesS2
SewerageS3
Social services without accommodationS4
Specialised constructionS5
Sports activities and amusement and recreationS6
TelecommunicationsT1
TobaccoT2
Travel agencies, tour operators and timesharing serviceT3
Utility servicesU1
VeterinaryV1
Warehousing and support activities for transportationW1
Waste collection, treatment and disposal activities; materials recoveryW2
Water collection, treatment and supplyW3
Water transportW4
Wholesale tradeW5

Relationship

ParameterCode
Shareholder (Investee)R1
Investee (Shareholder)R2
Ultimate beneficial owner (UBO Investee)R3
UBO Investee (Ultimate beneficial owner)R4
Director (Board)R5
Board (Director)R6
Shareholder & Director (Investee & Board)R7
Investee & Board (Shareholder & Director)R8
Agent (Principal)R9
Principal (Agent)R10
Secretary (Company)R11
Company (Secretary)R12
Parent (Subsidiary)R13
Subsidiary (Parent)R14
Auditor (Audit Client)R15
Auditor Client (Auditor)R16
Affiliate (Affiliate)R17
Employer (Employee)R18
Employee (Employer)R19
Debtor (Creditor)R20
Creditor (Debtor)R21
Supplier (Customer)R22
Customer (Supplier)R23
Provider (Client)R24
Client (Provider)R25
Partner (Partner)R26
Spouse (Spouse)R27
Family (Family)R28

Update Cases

Update individual case

Request:

curl -X 'PATCH' \
'https://api.onehypernet.com/v1/cases/individual/{case_id}' \
-H 'accept: */*' \
-H 'Authorization: Bearer {token}'\
-H 'Content-Type: application/json' \
-d '{
"full_name": "Alex Rogers Smith"
}'

PATCH /cases/individual/{case_id}

This endpoint updates the case of an individual.

Patch Parameters

All parameters are optional.

ParameterTypeDescription
full_nameStringFull name of the individual.
custom_case_idStringUnique reference ID for this case.
group_idStringCases belonging to a specific group.
first_nameStringFirst name of the individual.
last_nameStringLast name of the individual.
native_nameStringNative name (e.g. Chinese characters).
aliasStringAliases of the individual.
former_nameStringFormer names of the individual.
ethnicityStringEthnicity of the individual.
marital_statusStringMarital status of the individual.
residential_addressStringResidential address of the individual.
residential_postal_codeIntegerPostal code of the residential address.
residential_countryStringResidential country of the individual.
contact_noIntegerContact number, including country code.
emailStringEmail address.
nationalityStringNationality of the individual in ISO 3166 format
id_typeStringIdentification document type.
id_noStringIdentification document number.
id_expirydateExpiry date of the identification in yyyy-mm-dd format.
id_reminderBooleanToogle emails alerts to remind user for ID expiry.
id_issuing_countryStringCountry that issued the individual's ID.
country_of_birthStringCountry of birth of the individual.
dobdateDate of birth in yyyy-mm-dd format.
genderStringMale, Female, Unknown.
occupationStringOccupation
employerStringEmployer
kyc_commentStringKYC comments for this case.
ongoing_monitoringBooleanToggle settings for ongoing monitoring in the array for screening parameters.
included_countryBooleanToggle inclusion of Nationality in the array for screening parameters.
included_dobBooleanToggle inclusion of Date of Birth in the array for screening parameters.
included_genderBooleanToggle inclusion of Gender in the array for screening parameters.
monitoring_frequency_valueIntegerNumber of Days, Weeks, or Months in the array for screening parameters.
monitoring_frequency_typeStringDays, Weeks, Months in the array for screening parameters.
review_starting_fromDateDate to begin review frequency.
review_frequency_valueIntegerNumber of Days, Weeks, or Months.
review_frequency_typeStringDays, Weeks, Months
document_expiry_reminder_valueIntegerNumber of Days, Weeks, or Months.
document_expiry_reminder_typeStringDays, Weeks, Months
review_reminder_valueIntegerNumber of Days, Weeks, or Months.
review_reminder_typeStringDays, Weeks, Months
reminder_usersStringSet which users to send reminders to.
onboarding_modeStringHow the individual was onboarded.
sign_up_dateDateDate the individual signed up.
new_clientBooleanWhether the individual is the new customer.
monthly_transaction_volumeStringMonthly transaction volume of the individual.
monthly_transaction_frequencyStringMonthly transaction frequency of the individual.
average_transaction_amountStringAverage transaction amount of the individual.
product_complexityStringComplexity and implied risk of the product transacted with the individual.
networthStringNetworth of the individual.
createAndScreenBooleanTrue = Create and screen, False = Create only
assessmentStringRecommended, Not Recommended
assessorStringid of Assessor
approverStringid of Approver
pepStringYes, No, Related to PEP
pep_roleStringRole of PEP
pep_statusStringActive, Inactive
pep_typeStringDomestic, Foreign, Family Member of PEP, Associate of PEP
pep_countryStringCountry of the PEP role.
pep_start_endDateStart and end date of the PEP role in yyyy-mm-dd format.
source_of_fundsStringSource of funds.
source_of_wealthStringSource of wealth.
business_relationshipStringBusiness relationship.
case_groupStringCase group as defined by the user.
statusStringProcessing, Approved, Rejected
riskStringLow, Medium, High, Unrated

Update corporate case

Request:

curl -X 'PATCH' \
'https://api.onehypernet.com/v1/cases/corporate/{case_id}' \
-H 'accept: */*' \
-H 'Authorization: Bearer {token}' \
-H 'Content-Type: application/json' \
-d '{
"legal_name": "Space Exploration Pte Ltd"
}'

PATCH /cases/corporate/{case_id}

This endpoint updates the case of a corporate.

Patch Parameters

All parameters are optional.

ParameterTypeDescription
legal_nameStringLegal name of the corporate.
custom_case_idStringUnique reference ID for this case.
group_idStringCases belonging to a specific group.
former_nameStringFormerly used name of the corporate.
trading_nameStringTrading or operating name of the corporate.
corporate_typeStringType of company (e.g. Private or Public)
registration_noStringRegistration no of the corporate.
date_of_incorporationDateDate of incorporation in yyyy-mm-dd format.
country_of_incorporationStringCountry of incorporation in ISO 3166 format.
registered_addressStringRegistered address of the corporate
registered_postal_codeIntegerPostal code of the registered address.
registered_countryStringRegistered country of the corporate.
operating_addressStringOperating address of the corporate
operating_postal_codeIntegerPostal code of the registered address.
operating_countryStringRegistered country of the corporate.
contact_noIntegerContact number, including country code.
emailStringEmail address.
kyc_commentStringKYC comments for this case.
nature_of_businessStringNature of the primary business of the corporate.
industryStringDescription of the primary business activity of the corporate.
entity_statusStringStatus of the corporate.
no_of_chargesStringNumber of charges of the corporate.
account_due_dateDateDue date of the corporate's accounts.
annual_return_dateDateAnnual return date of the corporate.
nominee_directorsBooleanWhether the corporate has nominee directors.
layers_of_ownershipIntegerNumber of layers of ownership of the corporate.
staff_strengthIntegerNumber of staff of the corporate.
contact_personStringMain contact person of the corporate.
websiteStringWebsite of the corporate.
countries_of_operationsString1 or more countries that the corporate operates in.
ongoing_monitoringBooleanToggle settings for ongoing monitoring in the array for screening parameters.
included_countryBooleanToggle inclusion of Country of Incorporation in the array for screening parameters.
monitoring_frequency_valueIntegerNumber of Days, Weeks, or Months in the array for screening parameters.
monitoring_frequency_typeStringDays, Weeks, Months in the array for screening parameters.
review_starting_fromDateDate to begin review frequency.
review_frequency_valueIntegerNumber of Days, Weeks, or Months.
review_frequency_typeStringDays, Weeks, Months
document_expiry_reminder_valueIntegerNumber of Days, Weeks, or Months.
document_expiry_reminder_typeStringDays, Weeks, Months
review_reminder_valueIntegerNumber of Days, Weeks, or Months.
review_reminder_typeStringDays, Weeks, Months
reminder_usersStringSet which users to send reminders to.
onboarding_modeStringHow the corporate was onboarded.
sign_up_dateDateDate the corporate signed up.
new_clientBooleanWhether the corporate is the new customer.
monthly_transaction_volumeStringMonthly transaction volume of the corporate.
monthly_transaction_frequencyStringMonthly transaction frequency of the corporate.
average_transaction_amountStringAverage transaction amount of the corporate.
product_complexityStringComplexity and implied risk of the product transacted with the corporate.
createAndScreenBooleanTrue = Create and screen, False = Create only
assessmentStringRecommended, Not Recommended
assessorStringid of Assessor
approverStringid of Approver
business_relationshipStringBusiness relationship.
case_groupStringCase group as defined by the user.
statusStringProcessing, Approved, Rejected
riskStringLow, Medium, High, Unrated

Delete Cases

Soft delete a case or multiple cases

Request:

curl -X 'PATCH' \
'https://api.onehypernet.com/v1/cases/soft-delete' \
-H 'accept: */*' \
-H 'Authorization: Bearer {token}' \
-H 'Content-Type: application/json'
-d '
{
"ids": [
"case_id", "case_id",
]
}
'

PATCH /cases/soft-delete

This endpoint soft deletes a case or multiple cases.

Retrieve soft deleted cases in trash

Request:

curl -X 'GET' \
'https://api.onehypernet.com/v1/cases/trash' \
-H 'accept: */*' \
-H 'Authorization: Bearer {token}' \
-H 'Content-Type: application/json'

GET /cases/trash

This endpoint retrieves all the soft deleted cases in the trash.

Restore soft deleted cases in trash

Request:

curl -X 'PATCH' \
'https://api.onehypernet.com/v1/cases/trash/restore' \
-H 'accept: */*' \
-H 'Authorization: Bearer {token}' \
-H 'Content-Type: application/json'
-d '
{
"ids": [
"case_id", "case_id",
]
}
'

PATCH /cases/trash/restore

This endpoint restores soft deleted cases in the trash.

Delete a case or multiple cases

Request:

curl -X 'PATCH' \
'https://api.onehypernet.com/v1/cases/delete' \
-H 'accept: */*' \
-H 'Authorization: Bearer {token}' \
-H 'Content-Type: application/json'
-d '
["case_id", "case_id"]
'

PATCH /cases/delete

This endpoint permanently deletes a case or multiple cases.

Unlink Cases

Request:

curl -X 'PATCH' \
'https://api.onehypernet.com/v1/cases/related-entities/delete \
-H 'accept: */*' \
-H 'Authorization: Bearer {token}' \
-H 'Content-Type: application/json'
-d '[
["case_id", "case_id"], ["case_id", "case_id"]
]'

PATCH /cases/related-entities/delete

This endpoint unlinks a case or multiple cases.

Screening

Screen case entity

Request:

curl -X 'GET' \
'https://api.onehypernet.com/v1/cases/screen/{case_id}' \
-H 'accept: application/json' \
-H 'Authorization: Bearer {token}'

JSON Response:

{
"created_by": "d1ac6328-3854-4a0e-805b-d8c7110e4e6d",
"updated_by": null,
"created_at": "2024-01-29T08:50:41.789Z",
"updated_at": "2024-01-29T08:50:41.789Z",
"new_matches": 0,
"updated_profiles": 0,
"deleted_profiles": 0,
"match_ids": ["33553b35-a47e-4139-b532-4c12444e6bea"],
"matches": [
{
"match_id": "d0839de1-fe59-493f-afe6-aa09a25b56d8",
"status": "unresolved",
"profile_status": "new",
"data": {
"entityName": "Albert Einstein",
"entityType": "Individual",
"categories": ["Enforcement"],
"countries": ["SGP", "CYM"],
"overview": "Charged with forgery, fraud and money laundering - January 24, 2024.",
"prefix": "",
"suffix": "",
"primary_country": "SGP",
"gender": "Male",
"dob": "1979",
"isBlacklist": false,
"last_updated": "2024-01-29T01:50:49.767Z",
"match_id": "D0839DE1-FE59-493F-AFE6-AA09A25B56D8"
},
"created_by": "b722db11-6c28-417b-9c64-5934ebf6c9a0",
"updated_by": null,
"resolved_on": null,
"created_at": "2024-02-06T14:43:23.772Z",
"updated_at": "2024-02-06T14:43:23.772Z",
"screen_id": "a62f63ae-e71c-46b7-b8e5-6e6070be5192"
}
],
"screen_id": "a62f63ae-e71c-46b7-b8e5-6e6070be5192",
"case_id": "e67663d1-21c4-4072-aeec-17055e93a0d4",
"screen_type": "manual",
"match_summary": {
"false": 0,
"positive": 0,
"possible": 0,
"unresolved": 1
},
"screen_parameters": {
"match_strength": "medium",
"dob": null,
"gender": null,
"country": null,
"q": "Albert Einstein",
"screen_type": "manual",
"custom_case_id": "C3113470523",
"case_type": "individual",
"screen_id": "a62f63ae-e71c-46b7-b8e5-6e6070be5192"
}
}

GET /cases/screen/{case_id}

This endpoint screens the main entity of a case.

Retrieve screening archive of a case

Request:

curl -X 'GET' \
'https://api.onehypernet.com/v1/cases/screening-archive/{case_id}' \
-H 'accept: application/json' \
-H 'Authorization: Bearer {token}'

JSON Response of a screening acrhive:

{
"data": [
{
"created_at": "2024-01-29T10:09:26.974Z",
"updated_at": "2024-01-29T10:09:26.974Z",
"match_ids": ["74a1972d-bbb4-44a6-825c-078cb3aef812"],
"created_by": "d1ac6328-3854-4a0e-805b-d8c7110e4e6d",
"updated_by": null,
"new_matches": 0,
"updated_profiles": 0,
"deleted_profiles": 0,
"matches": [
{
"created_at": "2024-01-29T10:09:26.974Z",
"updated_at": "2024-01-29T10:09:26.974Z",
"match_id": "d0839de1-fe59-493f-afe6-aa09a25b56d8",
"data": {
"dob": "1979",
"gender": "Male",
"prefix": "",
"suffix": "",
"overview": "Charged with forgery, bank fraud and money laundering - January 24, 2024.",
"countries": ["SGP", "CYM"],
"categories": ["Adverse Media", "Enforcement"],
"entityName": "Albert Einstein",
"entityType": "Individual",
"isBlacklist": false,
"last_updated": "2024-01-25T00:07:50.847Z",
"primary_country": "SGP",
"match_id": "D0839DE1-FE59-493F-AFE6-AA09A25B56D8"
},
"created_by": "d1ac6328-3854-4a0e-805b-d8c7110e4e6d",
"updated_by": null,
"screen_id": "82b84a76-1547-4567-a176-4ae786387436"
}
],
"screen_id": "82b84a76-1547-4567-a176-4ae786387436",
"case_id": "d4d03a93-1e16-45c4-9fc7-e3c4fb23d8bd",
"screen_type": "manual",
"screen_parameters": {
"q": "Albert Einstein",
"dob": null,
"gender": null,
"country": null,
"screen_type": "manual",
"match_strength": "medium",
"custom_case_id": "C2561805317",
"case_type": "individual",
"screen_id": "82b84a76-1547-4567-a176-4ae786387436"
}
}
],
"metadata": {
"total": 1
}
}

GET /cases/screening-archive/{case_id}

This endpoint retrieves the screening archive of a case.

History

Request:

curl -X 'GET' \
'https://api.onehypernet.com/v1/screen-history?sort=created_at,DESC&limit={limit}&offset={offset}' \
-H 'accept: application/json' \
-H 'Authorization: Bearer {token}'

JSON Response:

{
"data": [
{
"case_id": "1bff98ce-2e6f-4eb8-b53c-b8e618cc1c23",
"screen_type": "manual",
"custom_case_id": "C8611851036",
"entity_name": "Gresham Insurance Company Limited",
"entity_type": "corporate",
"screen_parameters": {
"q": " Gresham Insurance Company Limited",
"country": "NOR",
"match_strength": "strong",
"custom_case_id": "C8611851036",
"entity_type": "corporate",
"screen_type": "manual",
"screen_id": "c4122d10-9c28-46a0-9879-4647f2caff4c"
},
"meta_data": {
"matches": [
{
"match_id": "4535484E-8EC4-448C-A7D0-1277A82CEAAA",
"gender": "Not Applicable",
"prefix": null,
"suffix": null,
"overview": "SOE involved in Finance/Insurance",
"countries": ["GBR", "KWT", "SGP", "NOR"],
"categories": ["SOE"],
"entityName": "Gresham Insurance Company Limited",
"entityType": "Organization",
"primary_country": "NOR"
}
]
},
"screen_id": "c4122d10-9c28-46a0-9879-4647f2caff4c",
"created_at": "2022-11-25T05:57:37.980Z",
"created_user": {
"user_id": "fe328a77-6b62-4228-979c-611fc0a45672",
"email": "user@example.com",
"full_name": "Alex William"
}
}
],
"metadata": {
"total": 50
}
}

GET /screen-history

This endpoint retrieves the screen history of all cases. Add limit to improve loading times.

ParameterTypeDescription
sortStringASC, DESC,
limitIntegerNumber of results for pagination.
offsetIntegerStarting point of the results for pagination.

Blacklist

Retrieve all blacklists

Request:

curl -X 'GET' \
'https://api.onehypernet.com/v1/cases/blacklist/' \
-H 'accept: application/json' \
-H 'Authorization: Bearer {token}'

JSON Response:


{
"data": [
{
"blacklist_id": "c1511e84-7555-4e05-abfe-800c418d9112",
"entity_type": "corporate",
"entity_name": "Forex Metal Trading Sdn Bhd",
"category": "BNM",
"overview": "Added to Bank Negara watchlist",
"remarks": "Operating without a licence",
"nationality": "MYS",
"gender": "male",
"date_of_birth": "21-Nov-1980",
"is_active": true,
"updated_at": "2024-12-06T14:41:00.058Z",
"created_at": "2024-06-27T02:00:19.825Z"
},
{
"blacklist_id": "2b28380b-a879-4010-96d7-61e53a33aaeb",
"entity_type": "individual",
"entity_name": "Loh Kim Huat",
"category": "BNM",
"overview": "Requested by Bank Negara on 25-Mar-24",
"remarks": "Suspected money laundering",
"nationality": "MYS",
"gender": "male",
"date_of_birth": "23-Feb-1971",
"is_active": true,
"updated_at": "2024-12-06T14:41:00.327Z",
"created_at": "2024-04-04T03:54:19.124Z"
},
{
"blacklist_id": "54ae7040-217c-4a52-a66b-189e400be85b",
"entity_type": "individual",
"entity_name": "Amer Najar",
"category": "MAS",
"overview": "Requested by MAS on 25-Mar-24",
"remarks": "Suspected involvement in financial crime",
"nationality": "SG{}",
"gender": "male",
"date_of_birth": "",
"is_active": true,
"updated_at": "2024-12-06T14:40:59.989Z",
"created_at": "2024-04-04T03:54:19.124Z"
}
],
"metadata": {
"total": 3
}
}

GET /cases/blacklist

This endpoint retrieves all of your created blacklists.

Retrieve a single blacklist

Request:

curl -X 'GET' \
'https://api.onehypernet.com/v1/cases/blacklist/{blacklist_id}' \
-H 'accept: application/json' \
-H 'Authorization: Bearer {token}'

JSON Response:


{
"id": "6f8cd1c5-c6e9-4f41-ac8f-a6a4f778e736",
"entity_type": "individual",
"entity_name": "John Tan",
"category": "MAS",
"overview": "Added to MAS watchlist",
"remarks": "Suspected money laundering",
"nationality": "SGP",
"gender": "male",
"date_of_birth": "21-Nov-1990",
"is_active": true,
"updated_at": "2024-12-10T07:04:50.996Z",
"created_at": "2024-12-10T07:03:00.152Z"
}

GET /cases/blacklist/{blacklist_id}

This endpoint retrieves a single blacklist.

Create blacklist

Request:

curl -X 'POST' \
'https://api.onehypernet.com/v1/cases/blacklist/' \
-H 'accept: application/json' \
-H 'Authorization: Bearer {token}' \
-H 'Content-Type: application/json' \
-d '{
"entity_name": "John Tan Wei Ming",
"date_of_birth": "21-Nov-1990",
"entity_type": "individual",
"category": "MAS",
"overview": "Added to MAS watchlist",
"remarks": "Operating without a licence",
"nationality": "MYS",
"gender": "male",
"is_active": true
}'

JSON Response:


{
"blacklist_id": "6f8cd1c5-c6e9-4f41-ac8f-a6a4f778e736"
}

POST /cases/blacklist

This endpoint creates a blacklist entry.

Update a blacklist entry

Request:

curl -X 'PATCH' \
'https://api.onehypernet.com/v1/cases/blacklist/{blacklist_id}' \
-H 'accept: application/json' \
-H 'Authorization: Bearer {token}' \
-H 'Content-Type: application/json' \
-d '{
"entity_name": "John Tan Wei Ming",
"date_of_birth": "21-Nov-1990",
"entity_type": "individual",
"category": "MAS",
"overview": "Added to MAS watchlist",
"remarks": "Operating without a licence",
"nationality": "MYS",
"gender": "male",
"is_active": true
}'

PATCH /cases/blacklist/{blacklist_id}

This endpoint updates a blacklist entry.

Delete a blacklist entry

Request:

curl -X 'DELETE' \
'https://api.onehypernet.com/v1/cases/blacklist/{blacklist_id}' \
-H 'accept: */*' \
-H 'Authorization: Bearer {token}' \
-H 'Content-Type: application/json'

DELETE /cases/blacklist/{blacklist_id}

This endpoint deletes a blacklist entry.

Matches

Retrieve a match

Request:

curl -X 'GET' \
'https://api.onehypernet.com/v1/cases/match/{screen_id}/{match_id}' \
-H 'accept: application/json' \
-H 'Authorization: Bearer {token}'

JSON Response:

{
"EntityGUID": "4535484E-8EC4-448C-A7D0-1277A82CEAAA",
"EntityTypeDesc": "Organization",
"Gender": "Not Applicable",
"Name": "Grand Company Limited",
"FirstName": null,
"MiddleName": null,
"LastName": "Grand Insurance Company Limited",
"Prefix": null,
"Suffix": null,
"Title": null,
"IsDeceased": "0",
"DeceasedDate": {
"DeceasedYear": null,
"DeceasedMonth": null,
"DeceasedDay": null
},
"EntityID": "9107382",
"LookupID": "1A2C0543-2075-453A-8439-AB61F71707E6",
"LastUpdated": "2022-11-10 05:10:39.577",
"EntityAddresses": [
{
"EntityAddressGUID": "13BE6B3E-DF31-4F84-8A63-68D797158DD0",
"AddressTypeDesc": "Business",
"Address1": "8 Surrey Street",
"Address2": null,
"City": "Norwich",
"StateProvinceRegion": "Norfolk",
"PostalCode": "NR1 3NG",
"Country": "United Kingdom",
"ISOStandard": "GBR",
"LastUpdated": "2019-06-10 22:51:52.443"
}
],
"EntityAliases": [
{
"EntityAliasGUID": "0D80BD8F-135E-42AC-B999-C8C8D85D8881",
"AliasTypeDesc": "AKA",
"EnglishDescription": "Basic Latin",
"Name": "",
"FirstName": "",
"MiddleName": "",
"LastName": "Gresham Fire and Accident Insurance Society Limited(The)",
"Prefix": "",
"Suffix": "",
"LastUpdated": "2018-06-06 10:07:51.807"
}
],
"EntityCountryAssociations": [
{
"EntityCountryAssociationGUID": "F72D12DD-11B5-45E6-ACCF-27AF99EAC97C",
"AssociationTypeDesc": "Associated",
"AdministrativeUnitName": "United Kingdom",
"ISOStandard": "GBR",
"OwnershipPercentageCalc": null,
"LastUpdated": "2018-06-06 10:07:51.807"
},
{
"EntityCountryAssociationGUID": "EDFE7067-00DD-4014-92BB-B372CEDC453C",
"AssociationTypeDesc": "Ownership",
"AdministrativeUnitName": "Norway",
"ISOStandard": "NOR",
"OwnershipPercentageCalc": "2.55",
"LastUpdated": "2019-04-26 17:33:14.507"
}
],
"EntityPositions": [
{
"EntityPositionGUID": "3C84CFBF-55ED-47ED-B58E-4F0D8B32A8FA",
"Position": "SOE involved in Finance/Insurance",
"LastUpdated": "2018-06-06 10:07:51.807"
}
],
"EntityRelationships": [
{
"RelatedEntityGUID": "3E942470-4F2F-4C3B-A393-B3061D5030EC",
"EntityRelationshipGUID": "74DF380C-6A0E-496F-A5A7-E78356009DAC",
"GroupDesc": "MSOE-MSWF",
"RelationshipDesc": "Decision Infl Key Member",
"OwnershipPercentage": null,
"LastUpdated": "2019-07-05 01:03:14.573",
"RelatedEntityName": "Castagno, John"
},
{
"RelatedEntityGUID": "53A8BE24-E896-471C-A01F-A314902D0EE1",
"EntityRelationshipGUID": "0AD9DD86-3FF0-433D-AD3A-C9961BDC8C74",
"GroupDesc": "MSOE-MSWF",
"RelationshipDesc": "Decision Infl Key Member",
"OwnershipPercentage": null,
"LastUpdated": "2019-09-05 09:11:56.490",
"RelatedEntityName": "Barker, Robin"
}
],
"EntityRemarks": [
{
"EntityRemarkGUID": "EFB1A4B4-1C5B-46C4-8A55-1854FB472EB7",
"Remark": "Description:¶Gresham Insurance Company Limited is engaged in the transaction of general insurance business. The company was incorporated on June 27, 1910 and operates in the United Kingdom.¶¶Additional information:¶Company number: 00110410.",
"LastUpdated": "2018-06-06 10:07:51.807"
}
],
"EntitySourceItems": [
{
"EntitySourceItemGUID": "CDDD53F8-DD52-4A87-B274-59A35B619AB4",
"SourceURI": "https://www.aviva.com/content/dam/aviva-corporate/documents/investors/pdfs/reports/2017/Annual_Report_and_Accounts_2017.pdf",
"LastUpdated": "2018-06-06 10:07:51.807"
},
{
"EntitySourceItemGUID": "57E8D36A-91D2-41A2-A9F6-2A9DC8302161",
"SourceURI": "https://beta.companieshouse.gov.uk/company/00110410/filing-history/MzE0ODgyNDUwM2FkaXF6a2N4/document?format=pdf&download=0",
"LastUpdated": "2018-06-06 10:07:51.807"
}
],
"EntitySegments": {
"EntitySOEs": [
{
"EntitySOEGUID": "5DE776CC-940D-48C0-BB63-44FBD98614AF",
"IsActive": "1",
"LastUpdated": "2018-06-06 10:07:51.807",
"EntitySOEDomains": [
{
"EntitySOEDomainGUID": "965A47F6-A2DC-44CB-B3BF-4E4C185C2CA8",
"SOEDomainDesc": "Finance/Insurance",
"LastUpdated": "2018-06-06 10:07:51.807"
}
],
"EntitySOESubcategories": [
{
"EntitySOESubCategoryGUID": "E6CAAE97-8184-4F25-8271-44372AF16FC4",
"SubCategoryLabel": "Multiple Minority",
"LastUpdated": "2022-11-10 05:10:39.577"
}
]
}
]
},
"individualSources": []
}

GET /cases/match/{screen_id}/{match_id}

This endpoint retrieves a specific match of a screen.

Update single match

Request:

curl -X 'PATCH' \
'https://api.onehypernet.com/v1/cases/match/{screen_id}/{match_id}' \
-H 'accept: application/json' \
-H 'Authorization: Bearer {token}'
-d '{
"status": "possible"
}'

PATCH /cases/match/{screen_id}/{match_id}

This endpoint updates a single match of a case.

Patch Parameters

ParameterTypeDescription
statusStringStatus of the match: Positive, Possible, False, Unresolved
commentStringComments or remarks to be added for this match.

Update multiple matches

Request:

curl -X 'PATCH' \
'https://api.onehypernet.com/v1/cases/update-multiple-matches' \
-H 'accept: application/json' \
-H 'Authorization: Bearer {token}'
'{"matches":["match_id","match_id"],"status":"false","screen_id": "593a22b5-3536-4e70-93c6-f8e0d1d0c6f6","case_id":"e3bf9903-1d85-4bb2-9cdf-9484875bbaab"}'

PATCH /cases/update-multiple-matches

This endpoint updates multiple matches of a case.

ParameterTypeDescription
statusStringStatus of the match: Positive, Possible, False, Unresolved

Ongoing Monitoring

Retrieve monitoring updates

Request:

curl -X 'GET' \
'https://api.onehypernet.com/v1/cases/monitoring?date={yyyy-mm-dd}' \
-H 'accept: application/json' \
-H 'Authorization: Bearer {token}'

JSON Response:

[
{
"case_id": "1bff98ce-2e6f-4eb8-b53c-b8e618cc1c23",
"new_matches": 0,
"updated_profiles": 1,
"deleted_profiles": 0
},
{
"case_id": "3a686809-0859-4c0e-97cb-c3e055df6f28",
"new_matches": 1,
"updated_profiles": 0,
"deleted_profiles": 0
}
]

GET /cases/monitoring

This endpoint retrieves updates for ongoing monitoring searches. Ongoing monitoring is performed daily. Call this endpoint daily from 0900 (GMT+8) onwards to retrieve all ongoing monitoring updates.

Administrative

Retrieve number of screens

Request:

curl -X 'GET' \
'https://api.onehypernet.com/v1/cases/screen-summary' \
-H 'accept: application/json' \
-H 'Authorization: Bearer {token}'

JSON Response:

{
"numberOfScreen": {
"today": 72,
"month": 450,
"year": 5979,
"contractYear": 5979
},
"totalOngoingMonitoring": 127
}

GET /cases/screen-summary

This endpoint retrieves the number of screens done in your account by day, month, calendar year, and contract year. It also retrieves the number of active ongoing monitoring entities.

Retrieve number of summary generations

Request:

curl -X 'GET' \
'https://api.onehypernet.com/v1/rba/summary-count' \
-H 'accept: application/json' \
-H 'Authorization: Bearer {token}'

JSON Response:

{
"count": 3
}

GET /rba/summary-count

This endpoint retrieves the number of AI summaries generated in your account.

Retrieve number of summary generations

Request:

curl -X 'GET' \
'https://api.onehypernet.com/v1/rba/variable-score-count' \
-H 'accept: application/json' \
-H 'Authorization: Bearer {token}'

JSON Response:

{
"count": 3
}

GET /rba/variable-score-count

This endpoint retrieves the number of AI risk scoring done on free-text variables (as "Others") in your account.

Retrieve users

Request:

curl -X 'GET' \
'https://api.onehypernet.com/v1/cases/users' \
-H 'accept: application/json' \
-H 'Authorization: Bearer {token}'

JSON Response:

{
"metadata": {
"total": 3
},
"data": [
{
"user_id": "ea553e66-8c77-4d97-8b5c-970a9992e1a1",
"full_name": "Andy Lim",
"email": "andylim@silvertransfer.com",
"branches": [
{
"branch_id": "2b039ebb-7269-48f9-8661-bcb9edb874c1",
"branch_name": "Headquarters"
},
{
"branch_id": "5d18beb0-6774-48df-9cde-65e82ad4d35b",
"branch_name": "Subsidiary"
}
]
},
{
"user_id": "743c9a5c-83c1-48fe-aca1-e903479632cd",
"full_name": "Elizabeth Goh",
"email": "elizabethgoh@silvertransfer.com",
"branches": [
{
"branch_id": "5d18beb0-6774-48df-9cde-65e82ad4d35b",
"branch_name": "Subsidiary"
}
]
},
{
"user_id": "2ca14a29-acd0-49a6-b004-c487fba1ecca",
"full_name": "Roger Wong",
"email": "rogerwong@silvertransfer.com",
"branches": [
{
"branch_id": "5d18beb0-6774-48df-9cde-65e82ad4d35b",
"branch_name": "Subsidiary"
}
]
}
]
}

GET /cases/users

This endpoint retrieves the details of all users in your account.

Retrieve tags

Request:

curl -X 'GET' \
'https://api.onehypernet.com/v1/cases/tag' \
-H 'accept: application/json' \
-H 'Authorization: Bearer {token}'

JSON Response:

{
"data": [
{
"tag_id": "cc5182eb-a996-4336-9f9c-0d1d9fc36db6",
"tag_name": "Exchange",
"tag_color": "#4ADE80",
"cases": 8
},
{
"tag_id": "be4a6bfa-7651-4815-b0ed-38dfd456045a",
"tag_name": "Remittance",
"tag_color": "#F97316",
"cases": 16
}
],
"metadata": {
"total": 2
}
}

GET /cases/tag

This endpoint retrieves all the tags in your account.

Create a tag

Request:

curl -X 'POST' \
'https://api.onehypernet.com/v1/cases/tag' \
-H 'accept: application/json' \
-H 'Authorization: Bearer {token}' \
-H 'Content-Type: application/json' \
-d '{
{
"tag_name": "remittance",
"tag_color": "#105ce8"
}'

JSON Response:

{
"tag_id": "9ea909d6-fe30-4f33-9597-f933db9f5626"
}

POST /cases/tag

This endpoint creates a tag.

Update a tag

Request:

curl -X 'PATCH' \
'https://api.onehypernet.com/v1/cases/tag/{tag_id}' \
-H 'accept: application/json' \
-H 'Authorization: Bearer {token}' \
-H 'Content-Type: application/json' \
-d '{
{
"tag_name": "remittance",
"tag_color": "#105ce8"
}'

PATCH /cases/tag/{tag_id}

This endpoint edits a tag.

Delete a tag

Request:

curl -X 'DELETE' \
'https://api.onehypernet.com/v1/cases/tag/{tag_id}' \
-H 'accept: application/json' \
-H 'Authorization: Bearer {token}' \

DELETE /cases/tag/{tag_id}

This endpoint deletes a tag.

Retrieve branches

Request:

curl -X 'GET' \
'https://api.onehypernet.com/v1/cases/branches' \
-H 'accept: application/json' \
-H 'Authorization: Bearer {token}'

JSON Response:

{
"metadata": {
"total": 2
},
"data": [
{
"branch_id": "2b039ebb-7269-48f9-8661-bcb9edb874c1",
"branch_name": "Headquarters",
"created_at": "2024-10-25T09:32:21.452Z",
"updated_at": "2024-10-25T09:32:21.452Z",
"users": [
{
"user_id": "ea553e66-8c77-4d97-8b5c-970a9992e1a1",
"full_name": "Andy Lim"
}
]
},
{
"branch_id": "5d18beb0-6774-48df-9cde-65e82ad4d35b",
"branch_name": "Subsidiary",
"created_at": "2024-10-29T13:06:34.279Z",
"updated_at": "2024-10-29T13:06:34.279Z",
"users": [
{
"user_id": "ea553e66-8c77-4d97-8b5c-970a9992e1a1",
"full_name": "Andy Lim"
},
{
"user_id": "743c9a5c-83c1-48fe-aca1-e903479632cd",
"full_name": "Elizabeth Goh"
},
{
"user_id": "2ca14a29-acd0-49a6-b004-c487fba1ecca",
"full_name": "Roger Wong"
}
]
}
]
}

GET /cases/branches

This endpoint retrieves the details of all branches in your account.

Create branch

Request:

curl -X 'POST' \
'https://api.onehypernet.com/v1/cases/branches' \
-H 'accept: application/json' \
-H 'Authorization: Bearer {token}' \
-H 'Content-Type: application/json' \
-d '{
"branch_name": "Subsidiary",
"user_ids": [
"2ca14a29-acd0-49a6-b004-c487fba1ecca",
"743c9a5c-83c1-48fe-aca1-e903479632cd"
]
}'

JSON Response:

{
"branch_id": "5712621f-dea7-499f-b2c9-01c34128e5c4"
}

POST /cases/branches

This endpoint creates a new branch.

Update branch

Request:

curl -X 'PATCH' \
'https://api.onehypernet.com/v1/cases/branches/{branch_id}' \
-H 'accept: */*' \
-H 'Authorization: Bearer {token}'\
-H 'Content-Type: application/json' \
-d '{
"branch_name": "Subsidiary",
"user_ids": [
"2ca14a29-acd0-49a6-b004-c487fba1ecca",
"743c9a5c-83c1-48fe-aca1-e903479632cd"
]
}'

PATCH /cases/branches/{branch_id}

This endpoint updates the details of a branch.

Delete a branch

Request:

curl -X 'DELETE' \
'https://api.onehypernet.com/v1/cases/branches/{branch_id}' \
-H 'accept: */*' \
-H 'Authorization: Bearer {token}' \
\

DELETE /cases/branches/{branch_id}

This endpoint deletes a branch.

Webhooks

You can configure webhooks to notify you when certain events happen. A POST request will be made to your registered endpoint when the webhook is triggered.

  • Use HTTPS only
  • Use a unique endpoint

Retrieve Endpoint

Request:

curl -X 'GET' \
'https://api.onehypernet.com/v1/webhook/rtsus' \
-H 'accept: application/json' \
-H 'Authorization: Bearer {token}'

JSON Response:

{
"data": [
{
"endpoint_id": "accb95ce-94ff-4ab5-919a-095a4d87eade",
"url": "https://<your-website>/<your-webhook-endpoint>",
"event": "un"
},
{
"endpoint_id": "6207e1f2-9ef9-4d0a-9700-c08f7a95fcd6",
"url": "https://<your-website>/<your-webhook-endpoint>",
"event": "moha"
}
],
"metadata": {
"total": 2
}
}

GET /webhook/rtsus

This endpoint allows you to retrieve registered endpoints.

Register Endpoint

Request:

curl -X 'POST' \
'https://api.onehypernet.com/v1/webhook/rtsus' \
-H 'accept: application/json' \
-H 'Authorization: Bearer {token}'
-d '{
"event": "un",
"url": "https://<your-website>/<your-webhook-endpoint>"
"secret": "key"
}'

JSON Response:

{
"endpoint_id": "9ca14g37-acd0-43a6-w124-c487fba1idkm"
}

POST /webhook/rtsus

This endpoint allows you to register an endpoint to receive a JSON body when certain events occur.

EventDescription
unAny listings or amendments to the UNSC Consolidated List.
mohaAny listings or amendments to the Malaysia Ministry of Home Affairs Sanction List Sanctions.

Update Endpoint

Request:

curl -X 'PATCH' \
'https://api.onehypernet.com/v1/webhook/rtsus/{endpoint_id}' \
-H 'accept: application/json' \
-H 'Authorization: Bearer {token}'
-d '{
"event": "un",
"url": "https://<your-website>/<your-webhook-endpoint>"
"secret": "key"
}'

PATCH /webhook/rtsus/{endpoint_id}

This endpoint allows you to update a registered endpoint.

Delete Endpoint

Request:

curl -X 'DELETE' \
'https://api.onehypernet.com/v1/webhook/rtsus' \
-H 'accept: application/json' \
-H 'Authorization: Bearer {token}'
-d '{
"endpoint_id": ["dfa69e81-0b45-4ba9-aba6-8242ace1fd12", "73bf7c69-531f-4490-911f-eb27384cd362"]
}'

DELETE /webhook/rtsus

This endpoint allows you to delete a registered endpoint.

Simulate Webhook Trigger

Request:

curl -X 'POST' \
'https://api.onehypernet.com/v1/webhook/rtsus/simulate' \
-H 'accept: application/json' \
-H 'Authorization: Bearer {token}'
-d '{
"event_type": "un_listing",
"endpoint_id: "9ca14g37-acd0-43a6-w124-c487fba1idkm"
}'

JSON Response:

{
"data": [
{
"name": "ZAFAR IQBAL",
"type": "Individual",
"alias": [
{
"name": "Zaffer Iqbal",
"quality": "Good"
},
{
"name": "Malik Zafar Iqbal Shehbaz",
"quality": "Good"
},
{
"name": "Muhammad Zafar Iqbal",
"quality": "Low"
}
],
"event": "un",
"address": [
{
"city": "Lahore",
"street": "Masjid al-Qadesia, 4 Lake Road",
"country": "Pakistan"
}
],
"comment": "Senior leader and co-founder of Lashkar-e-Tayyiba (QDe.118) (LeT) who has held various senior leader positions in LeT and its front organization, Jamaat-ud-Dawa (JUD) (listed as an alias of LeT). As of 2010, in charge of LeT/JUD finance department, director of its education department and president of its medical wing. Other title: Professor. Review pursuant to Security Council resolution 2253 (2015) was concluded on 21 Feb. 2019. Review pursuant to Security Council resolution 2610 (2021) was concluded on 8 November 2022. INTERPOL-UN Security Council Special Notice web link:https://www.interpol.int/en/How-we-work/Notices/View-UN-Notices-Individuals",
"data_id": "2983973",
"document": [
{
"note": "expired on 21 Aug. 2011, passport booklet number A2815665",
"number": "DG5149481",
"date_of_issue": "2006-08-22",
"type_of_document": "Passport"
},
{
"number": "35202- 4135948-7",
"type_of_document": "National Identification Number"
}
],
"list_type": [
"UN List"
],
"listed_on": "2012-03-14",
"reference": "QDi.308",
"event_type": "un_amendment",
"first_name": "ZAFAR",
"nationality": [
"Pakistan"
],
"second_name": "IQBAL",
"version_num": "1",
"un_list_type": "Al-Qaida",
"date_of_birth": [
{
"date": "1953-10-04",
"type_of_date": "EXACT"
}
],
"last_day_updated": [
"2019-05-01",
"2025-01-08"
]
},
{
"type": "Corporate",
"alias": [
{
"name": "Lajnat ul Masa Eidatul Afghania",
"quality": "a.k.a."
},
{
"name": "Ahya ul Turas",
"quality": "a.k.a."
}
],
"event": "un",
"address": [
{
"city": " Peshawar",
"street": "Headquarters – G.T. Road (probably Grand Trunk Road), near Pushtoon Garhi Pabbi",
"country": "Pakistan"
},
{
"city": "Jalabad",
"street": "Cheprahar Hadda, Mia Omar Sabaqah School",
"country": "Afghanistan"
}
],
"comment": "Associated with the Revival of Islamic Heritage Society (QDe.070). Abu Bakr al-Jaziri (QDi.058) served as finance chief of ASC. Review pursuant to Security Council resolution 1822 (2008) was concluded on 8 Jun. 2010. Review pursuant to Security Council resolution 2368 (2017) was concluded on 15 November 2021. INTERPOL-UN Security Council Special Notice web link:https://www.interpol.int/en/How-we-work/Notices/View-UN-Notices-Individuals",
"data_id": "113226",
"list_type": [
"UN List"
],
"listed_on": "2002-01-11",
"reference": "QDe.069",
"event_type": "un_amendment",
"first_name": "AFGHAN SUPPORT COMMITTEE (ASC)",
"version_num": "1",
"un_list_type": "Al-Qaida",
"last_day_updated": [
"2011-12-13",
"2021-11-15",
"2025-01-08"
],
"organization_name": "AFGHAN SUPPORT COMMITTEE (ASC)"
}
]
}

POST /webhook/rtsus/simulate

This endpoint allows you to simulate a webhook trigger to facilitate your development process.

Event TypeDescription
un_listingAny listings to the UNSC Consolidated List.
un_amendmentAny amendments to the UNSC Consolidated List .
moha_listingAny listings to the Malaysia Ministry of Home Affairs Sanction List.
moha_amendmentAny amendments to the Malaysia Ministry of Home Affairs Sanction List.

One-Off Screening

These endpoints are only for users on the one-off screening module. Screens will be deleted after 30 days.

One-Off Screen

ParameterTypeDescription
q (required)StringSearch query string (e.g. full or partial name). Must be URL-encoded (e.g. space as %20)
entity_type (required)Stringindividual or corporate
match_strength (required)Stringexact, strong, medium, fuzzy.
countryStringNationality of the individual or country of incorporation of the corporate in ISO 3166 format
dobStringYear of birth of the individual.
genderStringmale, female

Request:

curl -X 'GET' \
'https://api.onehypernet.com/v1/kyc/search?q={q}&entity_type={entity_type}&match_strength={match_strength}&country={country}&dob={dob}&gender={gender}' \
-H 'accept: application/json' \
-H 'Authorization: Bearer {token}'

JSON Response:

[
{
"entityName": "Alexander Michael Hartman",
"entityType": "Individual",
"categories": [
"Adverse Media",
"Secondary PEP"
],
"sub_categories": [
"Secondary PEP"
],
"countries": [
"Freedonia"
],
"overview": "Son of a former cabinet minister in the Republic of Freedonia.",
"prefix": "",
"suffix": "Jr.",
"primary_country": "Freedonia",
"gender": "Male",
"dob": [
"1982"
],
"isBlacklist": false,
"screen_id": "9f3c4a12-6b8e-4d9a-9c1b-1e7d5a4b2f90",
"match_id": "a18d7f44-2c9e-4e61-9b72-0e4c3a1f8d55",
"screened_at": "2025-12-23T07:21:54.620Z"
},
{
"entityName": "Hartman Alexander Michael",
"entityType": "Individual",
"categories": [
"Primary PEP",
"Adverse Media"
],
"sub_categories": [
"Primary PEP"
],
"countries": [
"Freedonia"
],
"overview": "Former Minister of Infrastructure of the Republic of Freedonia (2016–2022). Subject of a public procurement investigation in 2021.",
"prefix": "",
"suffix": "Sr",
"primary_country": "Freedonia",
"gender": "Male",
"dob": [
"1956"
],
"isBlacklist": false,
"screen_id": "9f3c4a12-6b8e-4d9a-9c1b-1e7d5a4b2f90",
"match_id": "c2b6a9e1-7f5a-4c8d-9e13-6d2f4a8b91cc",
"screened_at": "2025-12-23T07:21:54.620Z"
}
]

GET /search?q={q}&entity_type={entity_type}

This endpoint screens the entity without creating a case.

Retrieve a Match from One-Off Screen

Request:

curl -X 'GET' \
'https://api.onehypernet.com/v1/kyc/screen/{screen_id}/{match_id}' \
-H 'accept: application/json' \
-H 'Authorization: Bearer {token}'

JSON Response:

{
"match_id": "b3a6c9f2-1d57-4e6a-8a8c-4c9b0f4e2d11",
"screen_id": "7c2f1a90-3d4a-4d2b-9c7f-1e5a8d9c3b20",
"data": {
"Name": "Hartman, Adrian Michael",
"Title": null,
"Gender": "Male",
"Prefix": null,
"Suffix": "III",
"EntityID": "9182746",
"LastName": "Hartman",
"LookupID": "D1B7F5A0-8D2A-4D3C-9A11-7F7B2E3C9B6A",
"FirstName": "Adrian",
"EntityDOBs": [
{
"BirthDate": {
"BirthDay": "14",
"BirthYear": "2011",
"BirthMonth": "7"
},
"LastUpdated": "2019-04-22 09:15:44.120",
"EntityDOBGUID": "F4C3A1B2-9D8E-4A77-8C10-2E6A9B3F1D22"
}
],
"EntityGUID": "8E1F3B2C-6A7D-4C18-9E4B-2A6D9C1F7B33",
"IsDeceased": "0",
"MiddleName": "Michael",
"LastUpdated": "2024-10-18 06:12:31.905",
"isBlacklist": false,
"DeceasedDate": {
"DeceasedDay": null,
"DeceasedYear": null,
"DeceasedMonth": null
},
"EntitySegments": {
"EntityPEPs": [
{
"IsActivePEP": null,
"LastUpdated": "2020-01-09 18:22:10.450",
"IsPrimaryPEP": "0",
"EffectiveDate": {
"EffectiveDay": null,
"EffectiveYear": null,
"EffectiveMonth": null
},
"EntityPEPGUID": "2B7A9C10-4F11-4B77-9A3C-6E2D8F1A0B55",
"GoverningRole": null,
"ExpirationDate": {
"ExpirationDay": null,
"ExpirationYear": null,
"ExpirationMonth": null
},
"PEPAdminLevelDesc": "National",
"IsInCountryPEPOnly": null,
"GoverningInstitution": null,
"EffectiveDateTypeDesc": null,
"EntityPEPSubcategories": [
{
"LastUpdated": "2020-01-09 18:22:10.450",
"SubCategoryDesc": "Family Member",
"SubCategoryLabel": "Secondary PEP",
"EntityPEPSubCategoryGUID": "9C3A1B20-7D4E-4A11-8F22-5B6C7D8E9F10"
}
],
"ExpirationDateTypeDesc": null,
"AdministrativeUnitLevel0": null,
"AdministrativeUnitLevel1": null,
"AdministrativeUnitLevel2": null,
"AdministrativeUnitLevel3": null,
"AdministrativeUnitLevel4": null,
"ISOAdministrativeUnitLevel0": null
}
]
},
"EntityTypeDesc": "Individual",
"EntityPositions": [
{
"Position": "Grandson of Elias Adrian Hartman, former Minister of Infrastructure of the Republic of Freedonia.",
"LastUpdated": "2024-10-18 06:12:31.905",
"EntityPositionGUID": "1D9A7B3C-5E6F-4A12-9C10-7B3C5E6F1A22"
}
],
"EntitySourceItems": [
{
"SourceURI": "https://example.org/news/freedonia-hartman-family-profile-2019",
"LastUpdated": "2019-04-22 09:15:44.120",
"EntitySourceItemGUID": "0A1B2C3D-4E5F-4A6B-8C7D-9E0F1A2B3C4D"
},
{
"SourceURI": "https://example.org/archive/freedonia-infrastructure-minister-2021",
"LastUpdated": "2021-06-03 14:02:11.008",
"EntitySourceItemGUID": "5E6F1A22-3B4C-4D5E-8F60-1A223B4C5D6E"
}
],
"individualSources": [],
"EntityRelationships": [
{
"GroupDesc": "Family",
"LastUpdated": "2019-04-22 09:15:44.120",
"RelationshipDesc": "Mother",
"RelatedEntityGUID": "3C2B1A09-8E7D-4C6B-9A10-2B3C4D5E6F70",
"RelatedEntityName": "Voss Hartman, Clara",
"OwnershipPercentage": null,
"EntityRelationshipGUID": "7A6B5C4D-3E2F-4A11-9B22-1C2D3E4F5A66"
},
{
"GroupDesc": "Family",
"LastUpdated": "2019-04-22 09:15:44.120",
"RelationshipDesc": "Father",
"RelatedEntityGUID": "6F70A1B2-C3D4-4E5F-8A90-1B2C3D4E5F60",
"RelatedEntityName": "Hartman, Adrian Michael",
"OwnershipPercentage": null,
"EntityRelationshipGUID": "1A2B3C4D-5E6F-4A11-8C22-3D4E5F607A8B"
},
{
"GroupDesc": "Family",
"LastUpdated": "2019-04-22 09:15:44.120",
"RelationshipDesc": "Grandfather",
"RelatedEntityGUID": "2D3E4F5A-6B7C-4D8E-9F10-1A2B3C4D5E6F",
"RelatedEntityName": "Hartman, Elias Adrian",
"OwnershipPercentage": null,
"EntityRelationshipGUID": "9F10A1B2-C3D4-4E5F-8A90-1B2C3D4E5F61"
}
],
"EntityCountryAssociations": [
{
"ISOStandard": "FRE",
"LastUpdated": "2019-04-22 09:15:44.120",
"AssociationTypeDesc": "PEP",
"AdministrativeUnitName": "Republic of Freedonia",
"OwnershipPercentageCalc": null,
"EntityCountryAssociationGUID": "4D5E6F70-1A2B-4C3D-9E10-2B3C4D5E6F71"
}
]
},
"created_at": "2025-12-22T12:08:30.530Z"
}

GET /search/{screen_id}/{match_id}

This endpoint retrieves a match from the one-off screen.

Errors

The OneHypernet KYC API uses conventional HTTP response codes to indicate success or failure of the API request.

  • Codes in the 2xx range indicate a successful call.
  • Codes in the 4xx range indicate an error that failed with the request data, such as wrong or missing parameters.
  • Codes in the 5xx range indicate an unknown error or an error with OneHypernet's servers.
Error CodeMeaning
400Bad Request -- Your request is invalid.
401Unauthorized -- Your authentication details are wrong.
403Forbidden -- You are not authorized to perform the request.
404Not Found -- What you are requesting for does not exist.
429Too Many Requests -- You have exceeded your throttle limits.
500Internal Server Error -- Unknown error, please contact us if this persists.
503Service Unavailable -- We're temporarily offline for maintenance. Please try again later.