{"id":28003649,"url":"https://github.com/euthor/watson-api-docs","last_synced_at":"2026-01-24T18:01:49.839Z","repository":{"id":78088763,"uuid":"209231188","full_name":"Euthor/watson-api-docs","owner":"Euthor","description":"EuComply/Watson API Documentation","archived":false,"fork":false,"pushed_at":"2019-10-16T21:52:34.000Z","size":327,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-10-06T20:56:07.215Z","etag":null,"topics":["api","documentation","eucomply","rest","watson"],"latest_commit_sha":null,"homepage":"","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Euthor.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2019-09-18T06:10:05.000Z","updated_at":"2019-10-16T21:52:35.000Z","dependencies_parsed_at":"2023-04-10T02:47:53.528Z","dependency_job_id":null,"html_url":"https://github.com/Euthor/watson-api-docs","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Euthor/watson-api-docs","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Euthor%2Fwatson-api-docs","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Euthor%2Fwatson-api-docs/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Euthor%2Fwatson-api-docs/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Euthor%2Fwatson-api-docs/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Euthor","download_url":"https://codeload.github.com/Euthor/watson-api-docs/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Euthor%2Fwatson-api-docs/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28733291,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-24T17:51:25.893Z","status":"ssl_error","status_checked_at":"2026-01-24T17:50:48.377Z","response_time":89,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["api","documentation","eucomply","rest","watson"],"created_at":"2025-05-09T02:17:04.468Z","updated_at":"2026-01-24T18:01:49.830Z","avatar_url":"https://github.com/Euthor.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"## Table of Contents\n\n1. [Overview](#overview)\n    - [Request Headers](#request-headers)\n    - [URL placeholders](#url-placeholders)\n2. [HTTP Statuses](#http-statuses)\n3. [Authentication](#authentication)\n4. Entities\n    - [Customer](#customer)\n    - [Customer Lists](#customer-lists)\n        - [ID Card](#id-card)\n        - [Address](#addresses)\n        - [Communication Means](#communication-means)\n        - [Wealth](#wealth)\n        - [Annual Income](#annual-income)\n        - [Counterparty](#counterparty)\n        - [Financial Statement](#financial-statement)\n        - [Country Presence](#country-presence)\n        - [Screening Risks](#screening-risks)\n    - [Risk Analysis](#risk-analysis)\n    - [Review](#review)\n    - [Risk Trail](#risk-trail)\n\n## Overview\n\n### Request Headers\u003ca name=\"request-headers\" /\u003e\n\nAll requests require 2 headers:\n\n```js\n\"x-access-token\": \"replace-this-with-your-access-token\"\n\"Content-Type\": \"application/json\"\n```\n\n### URL placeholders\u003ca name=\"url-placeholders\" /\u003e\n\nThe URL's posted for entities in this documentation usually contain\nplaceholders. Placeholders in URLs are denoted by square brackets, so\nwhen you see for example:\n\n```\nURL: /api/customer/[idInternalCustomerPerson]\nMethod: GET\n```\n\nyou are expected to replace `[idInternalCustomer]` with the Internal Customer\nNumber of your Customer. An actual example would be:\n\n```\nURL: /api/customer/AC001\nMethod: GET\n```\n\n...which will retrieve the Customer with Internal Customer Number `AC001`.\n\n## HTTP Statuses\u003ca name=\"http-statuses\" /\u003e\n\n|Code|Text|Description|\n|--- |--- |--- |\n|200|OK|Success. There is response data as well.|\n|204|No Content|Success. There is no response data.|\n|400|Bad Request|The request was invalid, usually because the request contains invalid request body data. If this is the case, the response body will contain a message indicating the invalid properties and their issues.|\n|401|Unauthorized|The x-access-token is not valid or the username/password do not match when logging-in.|\n|403|Forbidden|The x-access-token is valid but the associated user does not have permissions for this action.|\n|404|Not Found|The entity does not exist.|\n|500|Server Error|The server encountered an error.|\n\n\n## Authentication\u003ca name=\"authentication\" /\u003e\n\nYou authenticate *each* request by passing an `x-access-token` header with a\nvalid token.\n\nYou are expected to cycle the access token, by logging-in again,\nevery now and then (ideally every other day) to ensure that a compromised\ntoken is not indefinitely valid.\n\nTo obtain a valid token:\n\nMethod: `POST`\nURL: `/api/login`\n\nSample Request Body:\n\n```js\n{\n  \"username\": \"administrator\",\n  \"password\": \"test\"\n}\n```\n\nSample Response:\n\n```js\n{\n    \"success\": true,\n    \"token\": \"eyJhbGciOiJIUzI1N...\"\n}\n```\n\n## Customer\u003ca name=\"customer\" /\u003e\n\n## Create Customer\n\nMethod: `POST`\nURL: `/api/customer`\n\n### Customer Person\n\nSample Request Body\n\n```js\n{\n  \"details\": {\n    \"dateBirth\": \"1965-02-01\",\n    \"firstName\": \"John\",\n    \"maidenName\": \"Sierra\",\n    \"lastName\": \"Doe\",\n    \"idCountryBirth\": 137,\n    \"idCountryNationality\": 137,\n    \"idCountryResidence\": 137,\n    \"idGender\": 3,\n    \"idMaritalStatus\": 1,\n    \"nonFaceToFace\": true,\n    \"profession\": \"Accountant\"\n  },\n  \"main\": {\n    \"idCustomerStatus\": 1,\n    \"idCustomerType\": 1,\n    \"idInternalCustomer\": \"JD001\",\n    \"idUserResponsibleOfficer\": 1,\n    \"otherInfo\": \"Lorem Ipsum Comment\",\n    \"relationshipStartDate\": \"2001-01-19\",\n    \"relationshipEndDate\": \"2004-12-24\"\n  }  \n}\n```\n\n### Customer Organisation\n\nSample Request Body\n\n```js\n{\n  \"details\": {\n    \"dateIncorporation\": \"2001-12-20\",\n    \"idCountryActivity\": 137,\n    \"idCountryDomiciliary\": 137,\n    \"idCountryIncorporation\": 137,\n    \"idIncorporationType\": 1,\n    \"mainBusinessActivity\": \"Trading\",\n    \"registeredName\": \"ACME Corporation LTD\",\n    \"registrationNo\": \"CY123\",\n    \"tradeName\": null\n  },\n  \"main\": {\n    \"idCustomerStatus\": 1,\n    \"idCustomerType\": 2,\n    \"idInternalCustomer\": \"AC001\",\n    \"idUserResponsibleOfficer\": 1,\n    \"otherInfo\": null,\n    \"referralAgent\": null,\n    \"relationshipStartDate\": \"2001-01-19\",\n    \"relationshipEndDate\": null\n  }\n}\n```\n\nSample Response for both Individual and Organisation:\n```js\n{\n    \"idAuditTrail\": 17,\n    \"idRiskTrail\": 12\n}\n```\n\n## Read Customer\n\nMethod: `GET`\nURL: `/api/customer/[idInternalCustomerPerson]`\n\nSample Response:\n\n```js\n{\n    \"singles\": {\n        \"main\": {\n            \"idCustomer\": 3,\n            \"idUserLastModified\": 2,\n            \"idInternalCustomer\": \"200\",\n            \"relationshipStartDate\": \"2017-02-01\",\n            \"relationshipEndDate\": null,\n            \"referralAgent\": null,\n            \"otherInfo\": null,\n            \"idCustomerStatus\": 1,\n            \"idCustomerType\": 1,\n            \"idUserResponsibleOfficer\": 2,\n            \"idUser\": 5,\n            \"printName\": \"200\"\n        },\n        \"details\": {\n            \"idCustomer\": 3,\n            \"firstName\": \"John\",\n            \"maidenName\": null,\n            \"lastName\": \"Doe\",\n            \"dateBirth\": \"1940-11-12\",\n            \"nonFaceToFace\": false,\n            \"idCountryNationality\": 137,\n            \"idCountryBirth\": 137,\n            \"idCountryResidence\": 137,\n            \"idGender\": 1,\n            \"idMaritalStatus\": 6,\n            \"profession\": null\n        }\n    },\n    \"lists\": {\n        \"addresses\": {\n            \"contents\": [\n                {\n                    \"idAddress\": 1,\n                    \"idCustomer\": 3,\n                    \"idCountry\": 137,\n                    \"streetName\": \"Makariou\",\n                    \"postcode\": \"4787\",\n                    \"city\": \"Nicosia\",\n                    \"filename\": \" \",\n                    \"verified\": false,\n                    \"id\": 1\n                }\n            ],\n            \"deletedRows\": [],\n            \"id\": \"idAddress\"\n        },\n        \"screeningRisks\": {\n            \"contents\": [],\n            \"deletedRows\": [],\n            \"id\": \"idScreeningRisk\"\n        },\n        \"communicationMeans\": {\n            \"contents\": [\n                {\n                    \"idCommunicationMeans\": 136,\n                    \"idCommunicationMeansType\": 1,\n                    \"value\": \"99999999\",\n                    \"idCustomer\": 3,\n                    \"id\": 1\n                },\n                {\n                    \"idCommunicationMeans\": 7,\n                    \"idCommunicationMeansType\": 4,\n                    \"value\": \"test.email@email.com\",\n                    \"idCustomer\": 3,\n                    \"id\": 7\n                }\n            ],\n            \"deletedRows\": [],\n            \"id\": \"idCommunicationMeans\"\n        },\n        \"annualIncomeEntries\": {\n            \"contents\": [\n                {\n                    \"idAnnualIncome\": 1,\n                    \"source\": \"Salesperson\",\n                    \"idAnnualIncomeScale\": 2,\n                    \"idAnnualIncomeStatus\": 1,\n                    \"idCustomer\": 3,\n                    \"id\": 1\n                }\n            ],\n            \"deletedRows\": [],\n            \"id\": \"idAnnualIncome\"\n        },\n        \"stakesOut\": {\n            \"contents\": [],\n            \"deletedRows\": [],\n            \"id\": \"idStake\"\n        },\n        \"rolesOut\": {\n            \"contents\": [],\n            \"deletedRows\": [],\n            \"id\": \"idCustomerAssociation\"\n        },\n        \"wealthEntries\": {\n            \"contents\": [],\n            \"deletedRows\": [],\n            \"id\": \"idWealth\"\n        },\n        \"documents\": {\n            \"contents\": [],\n            \"deletedRows\": [],\n            \"id\": \"idDocument\"\n        },\n        \"idCards\": {\n            \"contents\": [\n                {\n                    \"idIdCard\": 2,\n                    \"idIdCardType\": 4,\n                    \"idCustomer\": 3,\n                    \"number\": \"624323\",\n                    \"filename\": null,\n                    \"copy\": true,\n                    \"expirationDate\": \"2020-11-25\",\n                    \"id\": 2\n                }\n            ],\n            \"deletedRows\": [],\n            \"id\": \"idIdCard\"\n        },\n        \"events\": {\n            \"contents\": [],\n            \"deletedRows\": [],\n            \"id\": \"idEvent\"\n        }\n    },\n    \"checkedLists\": {\n        \"checkedDocuments\": {\n            \"contents\": [ \n\t\t\t\t\t1,\n\t\t\t\t\t5\n\t\t\t\t],\n            \"added\": [],\n            \"removed\": [],\n            \"listId\": \"npkxth\",\n            \"types\": [\n                {\n                    \"id\": 1,\n                    \"name\": \"Reference letter\"\n                },\n                {\n                    \"id\": 2,\n                    \"name\": \"Due Diligence QUESTIONAIRE\"\n                },\n                {\n                    \"id\": 3,\n                    \"name\": \"Signature\"\n                },\n                {\n                    \"id\": 4,\n                    \"name\": \"World Compliance Questionnaire\"\n                },\n                {\n                    \"id\": 5,\n                    \"name\": \"Tax Declaration\"\n                },\n                {\n                    \"id\": 6,\n                    \"name\": \"Memorandum and Articles of Association\"\n                },\n                {\n                    \"id\": 7,\n                    \"name\": \"Group/ Organization Chart\"\n                },\n                {\n                    \"id\": 8,\n                    \"name\": \"Certificate of directors\"\n                },\n                {\n                    \"id\": 9,\n                    \"name\": \"Certificate of shareholders\"\n                },\n                {\n                    \"id\": 10,\n                    \"name\": \"Certificate of registered office\"\n                },\n                {\n                    \"id\": 11,\n                    \"name\": \"Certificate of good standing\"\n                },\n                {\n                    \"id\": 12,\n                    \"name\": \"Trust deed\"\n                },\n                {\n                    \"id\": 13,\n                    \"name\": \"Board resolution\"\n                },\n                {\n                    \"id\": 14,\n                    \"name\": \"Engagement letter\"\n                },\n                {\n                    \"id\": 15,\n                    \"name\": \"Company relationship form\"\n                }\n            ]\n        },\n        \"checkedActivityRisks\": {\n            \"contents\": [],\n            \"added\": [],\n            \"removed\": [],\n            \"listId\": \"kenpiu\",\n            \"types\": [\n                {\n                    \"id\": 1,\n                    \"name\": \"Art Dealer\"\n                },\n                {\n                    \"id\": 2,\n                    \"name\": \"High Value transactions\"\n                },\n                {\n                    \"id\": 3,\n                    \"name\": \"Precious stones\"\n                },\n                {\n                    \"id\": 4,\n                    \"name\": \"High Risk trading / Casino gaming\"\n                },\n                {\n                    \"id\": 5,\n                    \"name\": \"Internet based business\"\n                },\n                {\n                    \"id\": 6,\n                    \"name\": \"Cash based business\"\n                },\n                {\n                    \"id\": 7,\n                    \"name\": \"Electronic Money Institution\"\n                },\n                {\n                    \"id\": 8,\n                    \"name\": \"Business generating high volumes of cash\"\n                },\n                {\n                    \"id\": 9,\n                    \"name\": \"Money Service Business\"\n                },\n                {\n                    \"id\": 10,\n                    \"name\": \"Art Dealer\"\n                },\n                {\n                    \"id\": 11,\n                    \"name\": \"Precious stones\"\n                },\n                {\n                    \"id\": 12,\n                    \"name\": \"High risk trading / Casino gaming\"\n                },\n                {\n                    \"id\": 13,\n                    \"name\": \"Internet based business\"\n                },\n                {\n                    \"id\": 14,\n                    \"name\": \"Cash based business\"\n                },\n                {\n                    \"id\": 15,\n                    \"name\": \"Electronic Money Institution\"\n                },\n                {\n                    \"id\": 16,\n                    \"name\": \"High Value transactions\"\n                },\n                {\n                    \"id\": 17,\n                    \"name\": \"Money Service Business\"\n                },\n                {\n                    \"id\": 18,\n                    \"name\": \"Business generating high volumes of cash\"\n                },\n                {\n                    \"id\": 19,\n                    \"name\": \"Bearer Shares\"\n                }\n            ]\n        },\n        \"checkedBehaviorRisks\": {\n            \"contents\": [\n\t\t\t\t3,\n\t\t\t\t5\n\t\t\t],\n            \"added\": [],\n            \"removed\": [],\n            \"listId\": \"sdvfkd\",\n            \"types\": [\n                {\n                    \"id\": 1,\n                    \"name\": \"Frequent changes of address\"\n                },\n                {\n                    \"id\": 2,\n                    \"name\": \"Avoidance of authorities\"\n                },\n                {\n                    \"id\": 3,\n                    \"name\": \"Difficult to reach\"\n                },\n                {\n                    \"id\": 4,\n                    \"name\": \"Criminal proceedings\"\n                },\n                {\n                    \"id\": 5,\n                    \"name\": \"Unwillingness to provide (KYC) documentation/information requested\"\n                },\n                {\n                    \"id\": 6,\n                    \"name\": \"Unwillingness to provide details on source of funds\"\n                },\n                {\n                    \"id\": 7,\n                    \"name\": \"Provides unusual suspicious ID docs that cannot be easily verified\"\n                },\n                {\n                    \"id\": 8,\n                    \"name\": \"Client acting nervous\"\n                },\n                {\n                    \"id\": 9,\n                    \"name\": \"Client in depth knowledge of AML requirements\"\n                },\n                {\n                    \"id\": 10,\n                    \"name\": \"Frequent changes of address\"\n                },\n                {\n                    \"id\": 11,\n                    \"name\": \"Reluctant to provide information\"\n                },\n                {\n                    \"id\": 12,\n                    \"name\": \"Not clear business activity\"\n                },\n                {\n                    \"id\": 13,\n                    \"name\": \"Difficult to reach\"\n                },\n                {\n                    \"id\": 14,\n                    \"name\": \"Avoidance of authorities\"\n                }\n            ]\n        },\n        \"checkedEnhancedChecks\": {\n            \"contents\": [\n                3\n            ],\n            \"added\": [],\n            \"removed\": [],\n            \"listId\": \"pehsld\",\n            \"types\": [\n                {\n                    \"id\": 1,\n                    \"name\": \"Second Identification Document\"\n                },\n                {\n                    \"id\": 2,\n                    \"name\": \"Registered Mail with required response\"\n                },\n                {\n                    \"id\": 3,\n                    \"name\": \"Called customer at home phone number\"\n                },\n                {\n                    \"id\": 4,\n                    \"name\": \"Home visit\"\n                },\n                {\n                    \"id\": 5,\n                    \"name\": \"Visited their offices\"\n                },\n                {\n                    \"id\": 6,\n                    \"name\": \"Lawyer Certification\"\n                },\n                {\n                    \"id\": 7,\n                    \"name\": \"Received Apostilled documents\"\n                },\n                {\n                    \"id\": 8,\n                    \"name\": \"Called at their offices\"\n                },\n                {\n                    \"id\": 9,\n                    \"name\": \"Visited their website\"\n                }\n            ]\n        }\n    }\n}\n```\n\n## Update Customer\n\nMethod: `PUT`\nURL: `/api/customer/[idInternalCustomerPerson]`\n\n### Customer Person\n\nSample Request Body\n\n```js\n{\n  \"details\": {\n    \"profession\": \"Programmer\"\n  },\n  \"main\": {\n    \"otherInfo\": \"Lorem Ipsum Comment 2\"\n  }\n}\n```\n\n### Customer Organisation\n\nSample Request Body\n\n```js\n{\n  \"details\": {\n    \"registrationNo\": \"CY-456\"\n  },\n  \"main\": {\n    \"otherInfo\": \"Lorem Ipsum Comment 2\"\n  }\n}\n```\n\nSample Response for both Individual and Organisation:\n```js\n{\n    \"idAuditTrail\": 21,\n    \"idRiskTrail\": 14\n}\n```\n\n\n## Delete Customer\n\nMethod: `DELETE`\nURL: `/api/customer/[idInternalCustomerPerson]`\n\nThe response has no body (empty)\n\n## Customer Lists\u003ca name=\"customer-lists\" /\u003e\n\nCustomer Lists can be passed an Array with 1 **or more** elements. For brevity\nonly 1 element is passed in the sample request bodies for the following lists.\n\n## Customer ID Card\u003ca name=\"id-card\"/\u003e\n\n### Create ID Card\n\nURL: `/api/customer/[idInternalCustomer]/id-card`\nMethod: `POST`\n\nSample Request Body\n\n```js\n[\n  {\n    \"idIdCardType\": 3,\n    \"number\": \"CY-JD-001\",\n    \"expirationDate\": \"2080-01-04\",\n    \"copy\": true\n  }\n]\n```\n\nSample Response\n\n```js\n{\n    \"idAuditTrail\": 30,\n    \"idRiskTrail\": 13\n}\n```\n\n### Read ID Card\n\nURL: `/api/customer/[idInternalCustomer]/id-card`\nMethod: `GET`\n\nSample Response:\n\n```js\n[\n    {\n        \"idIdCard\": 4,\n        \"idIdCardType\": 4,\n        \"idCustomer\": 5,\n        \"number\": \"704473\",\n        \"filename\": null,\n        \"copy\": false,\n        \"expirationDate\": \"2018-04-07\",\n        \"id\": 4\n    },\n    {\n        \"idIdCard\": 7,\n        \"idIdCardType\": 2,\n        \"idCustomer\": 5,\n        \"number\": \"12345\",\n        \"filename\": null,\n        \"copy\": true,\n        \"expirationDate\": \"2020-01-01\",\n        \"id\": 7\n    }\n]\n```\n\n\n### Update ID Card\n\nURL: `/api/customer/[idInternalCustomer]/id-card/[idIdCard]`\nMethod: `PUT`\n\nSample Request Body\n\n```js\n{\n  \"copy\": false,\n  \"number\": \"CY-JD-002\"\n}\n```\n\nSample Response\n\n```js\n\n{\n    \"idAuditTrail\": 32,\n    \"idRiskTrail\": 13\n}\n```\n\n### Delete ID Card\n\nURL: `/api/customer/[idInternalCustomer]/id-card/[idIdCard]`\nMethod: `DELETE`\n\nSample Response\n\n```js\n\n{\n    \"idAuditTrail\": 55,\n    \"idRiskTrail\": 26\n}\n```\n\n## Customer Address\u003ca name=\"addresses\"/\u003e\n\n### Create Address\n\nURL: `/api/customer/[idInternalCustomer]/addresses`\nMethod: `POST`\n\nSample Request Body\n\n```js\n[\n  {\n    \"streetName\": \"13 Nelsonos Street\",\n    \"city\": \"Nicosia\",\n    \"postcode\": \"2029\",\n    \"idCountry\": 137,\n    \"verified\": true\n  }\n]\n```\n\n\nSample Response\n\n```js\n{\n    \"idAuditTrail\": 35,\n    \"idRiskTrail\": 15\n}\n```\n\n\n### Read Address\n\nURL: `/api/customer/[idInternalCustomer]/addresses`\nMethod: `GET`\n\n\nSample Response\n\n```js\n[\n    {\n        \"idAddress\": 2,\n        \"idCustomer\": 4,\n        \"idCountry\": 137,\n        \"streetName\": \"Digeni Akrita\",\n        \"postcode\": \"4498\",\n        \"city\": \"Limassol\",\n        \"filename\": \" \",\n        \"verified\": false,\n        \"id\": 2\n    },\n    {\n        \"idAddress\": 6,\n        \"idCustomer\": 4,\n        \"idCountry\": 137,\n        \"streetName\": \"Mpizaniou\",\n        \"postcode\": \"4493\",\n        \"city\": \"Limassol\",\n        \"filename\": null,\n        \"verified\": true,\n        \"id\": 6\n    }\n]\n```\n\n### Update Address\n\nURL: `/api/customer/[idInternalCustomer]/addresses/[idAddress]`\nMethod: `PUT`\n\nSample Request Body\n\n```js\n{\n  \"streetName\": \"55 Fykardou Street\",\n  \"postcode\": \"2010\",\n  \"verified\": false\n}\n```\n\nSample Response:\n\n```js\n{\n    \"idAuditTrail\": 37,\n    \"idRiskTrail\": 15\n}\n```\n\n### Delete Address\n\nURL: `/api/customer/[idInternalCustomer]/addresses/[idAddress]`\nMethod: `DELETE`\n\nSample Response:\n\n```js\n{\n    \"idAuditTrail\": 39,\n    \"idRiskTrail\": 15\n}\n```\n\n## Customer Communication Means\u003ca name=\"communication-means\"/\u003e\n\n### Create Communication Means\n\nURL: `/api/customer/[idInternalCustomer]/communication-means`\nMethod: `POST`\n\nSample Request Body\n\n```js\n[\n  {\n    \"idCommunicationMeansType\": 4,\n    \"value\": \"john@doe.com\"\n  }\n]\n```\n\nSample Response\n\n```js\n{\n    \"idAuditTrail\": 40,\n    \"idRiskTrail\": 15\n}\n```\n\n### Read Communication Means\n\nURL: `/api/customer/[idInternalCustomer]/communication-means`\nMethod: `GET`\n\nSample Response\n\n```js\n[\n    {\n        \"idCommunicationMeans\": 8,\n        \"idCommunicationMeansType\": 1,\n        \"value\": \"99999999\",\n        \"idCustomer\": 4,\n        \"id\": 8\n    },\n    {\n        \"idCommunicationMeans\": 10,\n        \"idCommunicationMeansType\": 3,\n        \"value\": \"98561898\",\n        \"idCustomer\": 4,\n        \"id\": 10\n    },\n    {\n        \"idCommunicationMeans\": 36,\n        \"idCommunicationMeansType\": 4,\n        \"value\": \"john@doe.com\",\n        \"idCustomer\": 4,\n        \"id\": 36\n    }\n]\n```\n\n### Update Communication Means\n\nURL: `/api/customer/[idInternalCustomer]/communication-means/[idCommunicationMeans]`\nMethod: `PUT`\n\nSample Request Body\n\n```js\n{\n  \"value\": \"john@doe.eu\"\n}\n```\n\nSample Response\n\n```js\n{\n    \"idAuditTrail\": 41,\n    \"idRiskTrail\": 15\n}\n```\n\n### Delete Communication Means\n\nURL: `/api/customer/[idInternalCustomer]/communication-means/[idCommunicationMeans]`\nMethod: `DELETE`\n\nSample Response\n\n```js\n{\n    \"idAuditTrail\": 42,\n    \"idRiskTrail\": 15\n}\n```\n\n\n## Customer Wealth\u003ca name=\"wealth\"/\u003e\n\n### Create Wealth\n\nURL: `/api/customer/[idInternalCustomer]/wealth`\nMethod: `POST`\n\nSample Request Body\n\n```js\n[\n  {\n    \"idWealthScale\": 1,\n    \"idWealthStatus\": 1,\n    \"source\": \"Oil Investments\"\n  }\n]\n```\n\nSample Response\n\n```js\n{\n    \"idAuditTrail\": 43,\n    \"idRiskTrail\": 15\n}\n```\n\n\n### Read Wealth\n\nURL: `/api/customer/[idInternalCustomer]/wealth`\nMethod: `GET`\n\nSample Response\n\n```js\n[\n    {\n        \"idWealth\": 1,\n        \"idCustomer\": 4,\n        \"idWealthScale\": 6,\n        \"idWealthStatus\": 1,\n        \"source\": \"Oil Investments\",\n        \"id\": 1\n    },\n    {\n        \"idWealth\": 2,\n        \"idCustomer\": 4,\n        \"idWealthScale\": 2,\n        \"idWealthStatus\": 2,\n        \"source\": \"Inheritance\",\n        \"id\": 2\n    }\n]\n```\n\n### Update Wealth\n\nURL: `/api/customer/[idInternalCustomer]/wealth/[idWealth]`\nMethod: `PUT`\n\nSample Request Body\n\n```js\n{\n  \"source\": \"Lottery Winnings\"\n}\n```\n\nSample Response\n\n```js\n{\n    \"idAuditTrail\": 46,\n    \"idRiskTrail\": 15\n}\n```\n\n### Delete Wealth\n\nURL: `/api/customer/[idInternalCustomer]/wealth/[idWealth]`\nMethod: `DELETE`\n\nSample Response\n\n```js\n{\n    \"idAuditTrail\": 47,\n    \"idRiskTrail\": 16\n}\n```\n\n## Customer Annual Income\u003ca name=\"annual-income\"/\u003e\n\n### Create Annual Income\n\nURL: `/api/customer/[idInternalCustomer]/annual-income`\nMethod: `POST`\n\nSample Request Body\n\n```js\n[\n  {\n    \"idAnnualIncomeScale\": 1,\n    \"idAnnualIncomeStatus\": 1,\n    \"source\": \"Oil Investments\"\n  }\n]\n```\n\nSample Response\n\n```js\n{\n    \"idAuditTrail\": 48,\n    \"idRiskTrail\": 16\n}\n```\n\n### Read Annual Income\n\nURL: `/api/customer/[idInternalCustomer]/annual-income`\nMethod: `GET`\n\nSample Response\n\n```js\n[\n    {\n        \"idAnnualIncome\": 2,\n        \"source\": \"Politician\",\n        \"idAnnualIncomeScale\": 2,\n        \"idAnnualIncomeStatus\": 1,\n        \"idCustomer\": 4,\n        \"id\": 2\n    },\n    {\n        \"idAnnualIncome\": 6,\n        \"source\": \"Oil Investments\",\n        \"idAnnualIncomeScale\": 1,\n        \"idAnnualIncomeStatus\": 1,\n        \"idCustomer\": 4,\n        \"id\": 6\n    }\n]\n```\n\n### Update Annual Income\n\nURL: `/api/customer/[idInternalCustomer]/annual-income/[idAnnualIncome]`\nMethod: `PUT`\n\nSample Request Body\n\n```js\n{\n  \"source\": \"Lottery Winnings\"\n}\n```\n\nSample Response:\n\n```js\n{\n    \"idAuditTrail\": 49,\n    \"idRiskTrail\": 17\n}\n```\n\n### Delete Annual Income\n\nURL: `/api/customer/[idInternalCustomer]/annual-income[idAnnualIncome]`\nMethod: `DELETE`\n\nSample Response:\n\n```js\n{\n    \"idAuditTrail\": 53,\n    \"idRiskTrail\": 17\n}\n```\n\n## Customer Counterparty\u003ca name=\"counterparty\"/\u003e\n\n### Create Counterparty\n\nURL: `/api/customer/[idInternalCustomer]/counterparty`\nMethod: `POST`\n\nSample Request Body\n\n```js\n[\n  {\n    \"counterpartName\": \"Mary Jane\",\n    \"idCountry\": 137,\n    \"idFundType\": 1,\n    \"comments\": \"Lorem Ipsum\"\n  },\n  {\n    \"counterpartName\": \"John Doe\",\n    \"idCountry\": 128,\n    \"idFundType\": 2,\n    \"comments\": \"The comments\"\n  }\n]\n```\n\nSample Response:\n\n```js\n{\n    \"idAuditTrail\": 54,\n    \"idRiskTrail\": 18\n}\n```\n\n### Read Counterparty\n\nURL: `/api/customer/[idInternalCustomer]/counterparty`\nMethod: `GET`\n\nSample Response:\n\n```js\n[\n    {\n        \"idFund\": 1,\n        \"idFundType\": 1,\n        \"idCountry\": 137,\n        \"comments\": \"Lorem Ipsum\",\n        \"counterpartName\": \"Mary Jane\",\n        \"id\": 1\n    },\n    {\n        \"idFund\": 2,\n        \"idFundType\": 2,\n        \"idCountry\": 128,\n        \"comments\": \"The comments\",\n        \"counterpartName\": \"John Doe\",\n        \"id\": 2\n    }\n]\n```\n\n### Update Counterparty\n\nURL: `/api/customer/[idInternalCustomer]/counterparty/[idFund]`\nMethod: `PUT`\n\nSample Request Body\n\n```js\n{\n  \"comments\": \"Lorem Ipsum Dolor Sit Amet\"\n}\n```\n\nSample Response:\n\n```js\n{\n    \"idAuditTrail\": 55,\n    \"idRiskTrail\": 18\n}\n```\n\n### Delete Counterparty\n\nURL: `/api/customer/[idInternalCustomer]/counterparty/[idFund]`\nMethod: `DELETE`\n\nSample Response:\n\n```js\n{\n    \"idAuditTrail\": 56,\n    \"idRiskTrail\": 18\n}\n```\n\n## Customer Financial Statement\u003ca name=\"financial-statement\"/\u003e\n\n### Create Financial Statement\n\nURL: `/api/customer/[idInternalCustomer]/financial-statement`\nMethod: `POST`\n\nSample Request Body\n\n```js\n[\n  {\n    \"copy\": true,\n    \"idStatementType\": 1,\n    \"income\": \"500000.00\",\n    \"year\": 2005\n  }\n]\n```\n\nSample Response:\n\n```js\n{\n    \"idAuditTrail\": 56,\n    \"idRiskTrail\": 18\n}\n```\n\n### Read Financial Statement\n\nURL: `/api/customer/[idInternalCustomer]/financial-statement`\nMethod: `GET`\n\nSample Response:\n\n```js\n[\n    {\n        \"idStatement\": 1,\n        \"idStatementType\": 1,\n        \"year\": 2005,\n        \"income\": 500000,\n        \"expenses\": null,\n        \"copy\": true,\n        \"id\": 1\n    }\n]\n```\n\n### Update Financial Statement\n\nURL: `/api/customer/[idInternalCustomer]/financial-statement/[idStatement]`\nMethod: `PUT`\n\nSample Request Body\n\n```js\n{\n  \"year\": 2006\n}\n```\n\nSample Response:\n\n```js\n{\n    \"idAuditTrail\": 58,\n    \"idRiskTrail\": 18\n}\n```\n\n### Delete Financial Statement\n\nURL: `/api/customer/[idInternalCustomer]/financial-statement/[idStatement]`\nMethod: `DELETE`\n\nSample Response:\n\n```js\n{\n    \"idAuditTrail\": 60,\n    \"idRiskTrail\": 19\n}\n```\n\n## Customer Country Presence\u003ca name=\"country-presence\"/\u003e\n\n### Create Country Presence\n\nURL: `/api/customer/[idInternalCustomer]/country-presence`\nMethod: `POST`\n\nSample Request Body\n\n```js\n[\n  {\n    \"idCountry\": 1,\n    \"year\": 2005\n  }\n]\n```\n\nSample Response:\n\n```js\n{\n    \"idAuditTrail\": 61,\n    \"idRiskTrail\": 19\n}\n```\n\n### Read Country Presence\n\nURL: `/api/customer/[idInternalCustomer]/country-presence`\nMethod: `GET`\n\nSample Response:\n\n```js\n[\n    {\n        \"idCountryPresence\": 1,\n        \"idCountry\": 1,\n        \"year\": 2005,\n        \"id\": 1\n    },\n    {\n        \"idCountryPresence\": 3,\n        \"idCountry\": 90,\n        \"year\": 2009,\n        \"id\": 3\n    }\n]\n```\n\n### Update Country Presence\n\nURL: `/api/customer/[idInternalCustomer]/country-presence/[idCountryPresence]`\nMethod: `PUT`\n\nSample Request Body\n\n```js\n{\n  \"year\": 2006\n}\n```\n\nSample Response:\n\n```js\n{\n    \"idAuditTrail\": 65,\n    \"idRiskTrail\": 19\n}\n```\n\n### Delete Country Presence\n\nURL: `/api/customer/[idInternalCustomer]/country-presence/[idCountryPresence]`\nMethod: `DELETE`\n\nSample Response:\n\n```js\n{\n    \"idAuditTrail\": 66,\n    \"idRiskTrail\": 20\n}\n```\n\n## Customer Screening Risks\u003ca name=\"screening-risks\"/\u003e\n\n### Create Screening Risks\n\nURL: `/api/customer/[idInternalCustomer]/screening-risks`\nMethod: `POST`\n\nSample Request Body\n\n```js\n[\n  {\n    \"idScreeningRiskType\": 1,\n    \"full_name\": \"Donald Trump\",\n    \"score\": 97,\n    \"inspected\": true,\n    \"confirmed\": false,\n    \"manual_addition\": true\n  }\n]\n```\n\nSample Response:\n\n```js\n{\n    \"idAuditTrail\": 69,\n    \"idRiskTrail\": 21\n}\n```\n\n### Read Screening Risks\n\nURL: `/api/customer/[idInternalCustomer]/screening-risks`\nMethod: `GET`\n\n\nSample Response:\n\n```js\n[\n    {\n        \"idScreeningRisk\": 3,\n        \"idCustomer\": 15,\n        \"idScreeningRiskType\": 2,\n        \"identifier\": \"10101729617\",\n        \"score\": 100,\n        \"inspected\": true,\n        \"confirmed\": false,\n        \"type\": \"PEP List\",\n        \"full_name\": \"Donald John Jr. Trump\",\n        \"json\": \"{\\\"ID\\\":\\\"10101729617\\\",\\\"Relative_ID\\\":\\\"10101192552\\\",\\\"Title\\\":\\\"Mr.\\\",\\\"Gender\\\":\\\"Male\\\",\\\"First_Name\\\":\\\"Donald John Jr.\\\",\\\"Last_Name\\\":\\\"Trump\\\",\\\"Full_Name\\\":\\\"\\\",\\\"Other_Names\\\":\\\"Trump, Don\\\",\\\"Alternative_Script\\\":\\\"\\\",\\\"Function\\\":\\\"Relatives of High Officials, Son of Donald John Trump, CATEGORY: Close Relatives of PEPs\\\",\\\"Category\\\":\\\"Close Relatives of PEPs\\\",\\\"DOB\\\":\\\"31.12.1977\\\",\\\"POB\\\":\\\"Manhattan, New York, United States of America\\\",\\\"Country\\\":\\\"United States of America\\\",\\\"Code\\\":\\\"USA\\\",\\\"Additional_Information\\\":\\\"\\\",\\\"Country_Of_Origin\\\":\\\"\\\",\\\"Country_Of_Activity\\\":\\\"\\\"}\",\n        \"md5\": \"3dafa6c51cd6b6af7d1e1c66fcbc3002\",\n        \"manual_addition\": false,\n        \"id\": 3\n    },\n    {\n        \"idScreeningRisk\": 4,\n        \"idCustomer\": 15,\n        \"idScreeningRiskType\": 2,\n        \"identifier\": \"10101192552\",\n        \"score\": 100,\n        \"inspected\": true,\n        \"confirmed\": true,\n        \"type\": \"PEP List\",\n        \"full_name\": \"Donald John Trump\",\n        \"json\": \"{\\\"ID\\\":\\\"10101192552\\\",\\\"Relative_ID\\\":\\\"10101192552\\\",\\\"Title\\\":\\\"Mr.\\\",\\\"Gender\\\":\\\"Male\\\",\\\"First_Name\\\":\\\"Donald John\\\",\\\"Last_Name\\\":\\\"Trump\\\",\\\"Full_Name\\\":\\\"\\\",\\\"Other_Names\\\":\\\"\\\",\\\"Alternative_Script\\\":\\\"\\\",\\\"Function\\\":\\\"Executive Office of the President, White House Office, President of the United States of America, CATEGORY: Heads of State, Major Government Offices and Support; OTHER FUNCTION: Armed Forces, Commander-in-Chief, CATEGORY: Military; OTHER FUNCTION: Executive Office of the President, National Security Council, Chairperson, CATEGORY: Heads of State, Major Government Offices and Support\\\",\\\"Category\\\":\\\"Heads of State, Major Government Offices and Support; Military\\\",\\\"DOB\\\":\\\"14.06.1946\\\",\\\"POB\\\":\\\"Queens, New York City, New York, United States of America\\\",\\\"Country\\\":\\\"United States of America\\\",\\\"Code\\\":\\\"USA\\\",\\\"Additional_Information\\\":\\\"Net Worth: $2.9 B; Source: television, real estate\\\",\\\"Country_Of_Origin\\\":\\\"\\\",\\\"Country_Of_Activity\\\":\\\"\\\"}\",\n        \"md5\": \"9104e278e9b2458b2686e1841472f541\",\n        \"manual_addition\": false,\n        \"id\": 4\n    },\n    {\n        \"idScreeningRisk\": 6,\n        \"idCustomer\": 15,\n        \"idScreeningRiskType\": 1,\n        \"identifier\": null,\n        \"score\": 100,\n        \"inspected\": true,\n        \"confirmed\": false,\n        \"type\": null,\n        \"full_name\": \"Donald Trump\",\n        \"json\": null,\n        \"md5\": null,\n        \"manual_addition\": true,\n        \"id\": 6\n    }\n]\n```\n\n### Update Screening Risks\n\nURL: `/api/customer/[idInternalCustomer]/screening-risks/[idScreeningRisk]`\nMethod: `PUT`\n\nSample Request Body\n\n```js\n{\n  \"confirmed\": true\n}\n```\n\nSample Response:\n\n```js\n{\n    \"idAuditTrail\": 71,\n    \"idRiskTrail\": 21\n}\n```\n\n### Delete Screening Risks\n\nURL: `/api/customer/[idInternalCustomer]/screening-risks/[idScreeningRisk]`\nMethod: `DELETE`\n\nSample Response:\n\n```js\n{\n    \"idAuditTrail\": 72,\n    \"idRiskTrail\": 21\n}\n```\n\n## Risk Analysis\u003ca name=\"risk-analysis\" /\u003e\n\nURL: `/api/customer/[idInternalCustomerPerson]/risk`\nMethod: `GET`\n\n\nSample Response for Person:\n\n```js\n{\n    \"totals\": {\n        \"screening\": {\n            \"name\": \"Screening Risks\",\n            \"contents\": [\n                {\n                    \"name\": \"Screening\",\n                    \"score\": 300\n                }\n            ],\n            \"score\": 300\n        },\n        \"kyc\": {\n            \"name\": \"KYC Risks\",\n            \"contents\": [\n                {\n                    \"name\": \"Non Face to Face\",\n                    \"score\": 0\n                },\n                {\n                    \"name\": \"ID Card\",\n                    \"score\": 300\n                },\n                {\n                    \"name\": \"Address\",\n                    \"score\": 300\n                },\n                {\n                    \"name\": \"Communication Means\",\n                    \"score\": 20\n                },\n                {\n                    \"name\": \"Missing Documents\",\n                    \"score\": 0\n                }\n            ],\n            \"score\": 620\n        },\n        \"economicProfile\": {\n            \"name\": \"Economic Profile Risks\",\n            \"contents\": [\n                {\n                    \"name\": \"Activity\",\n                    \"score\": 0\n                },\n                {\n                    \"name\": \"Wealth\",\n                    \"score\": 0\n                }\n            ],\n            \"score\": 0\n        },\n        \"countries\": {\n            \"name\": \"Country Risks\",\n            \"contents\": [\n                {\n                    \"name\": \"Countries\",\n                    \"score\": 180\n                }\n            ],\n            \"score\": 180\n        },\n        \"general\": {\n            \"name\": \"General Risks\",\n            \"contents\": [\n                {\n                    \"name\": \"Referred by third party\",\n                    \"score\": 0\n                },\n                {\n                    \"name\": \"Relationship Length\",\n                    \"score\": 20\n                },\n                {\n                    \"name\": \"Behavior\",\n                    \"score\": 0\n                }\n            ],\n            \"score\": 20\n        }\n    },\n    \"contaminators\": [\n        {\n            \"idCustomer\": 2,\n            \"newCalculatedRisk\": 1140\n        }\n    ],\n    \"global\": {\n        \"score\": 1120\n    }\n}\n```\n\nSample Response for Organisation:\n\n```js\n{\n    \"totals\": {\n        \"screening\": {\n            \"name\": \"Screening Risks\",\n            \"contents\": [\n                {\n                    \"name\": \"Screening\",\n                    \"score\": 0\n                }\n            ],\n            \"score\": 0\n        },\n        \"kyc\": {\n            \"name\": \"KYC Risks\",\n            \"contents\": [\n                {\n                    \"name\": \"Entity Type\",\n                    \"score\": 0\n                },\n                {\n                    \"name\": \"Address\",\n                    \"score\": 300\n                },\n                {\n                    \"name\": \"Communication Means\",\n                    \"score\": 20\n                },\n                {\n                    \"name\": \"Missing Documents\",\n                    \"score\": 40\n                }\n            ],\n            \"score\": 360\n        },\n        \"economicProfile\": {\n            \"name\": \"Economic Profile Risks\",\n            \"contents\": [\n                {\n                    \"name\": \"Activity\",\n                    \"score\": 0\n                },\n                {\n                    \"name\": \"Wealth\",\n                    \"score\": 0\n                },\n                {\n                    \"name\": \"Financial Statements\",\n                    \"score\": 100\n                }\n            ],\n            \"score\": 100\n        },\n        \"countries\": {\n            \"name\": \"Country Risks\",\n            \"contents\": [\n                {\n                    \"name\": \"Countries\",\n                    \"score\": 0\n                },\n                {\n                    \"name\": \"Country Presence\",\n                    \"score\": 270\n                },\n                {\n                    \"name\": \"Counterparty\",\n                    \"score\": 400\n                }\n            ],\n            \"score\": 670\n        },\n        \"general\": {\n            \"name\": \"General Risks\",\n            \"contents\": [\n                {\n                    \"name\": \"Referred by third party\",\n                    \"score\": 0\n                },\n                {\n                    \"name\": \"Relationship Length\",\n                    \"score\": 10\n                },\n                {\n                    \"name\": \"Behavior\",\n                    \"score\": 0\n                }\n            ],\n            \"score\": 10\n        }\n    },\n    \"contaminators\": [],\n    \"global\": {\n        \"score\": 1140\n    }\n}\n```\n\n## Review\u003ca name=\"review\" /\u003e\n\n### Read Reviews\n\nURL: `/api/customer/[idInternalCustomer]/reviews`\nMethod: `GET`\n\nSample Response:\n\n```js\n[\n    {\n        \"id\": 8,\n        \"idReview\": 8,\n        \"createdDate\": null,\n        \"scheduledDate\": \"2020-01-17\",\n        \"reviewedDate\": null,\n        \"reviewed\": false,\n        \"comments\": null,\n        \"idCustomer\": 15,\n        \"idUserScheduler\": null,\n        \"idUserReviewer\": null,\n        \"userReviewerName\": null\n    },\n    {\n        \"id\": 7,\n        \"idReview\": 7,\n        \"createdDate\": null,\n        \"scheduledDate\": \"2020-01-17\",\n        \"reviewedDate\": \"2019-10-17\",\n        \"reviewed\": true,\n        \"comments\": \"\",\n        \"idCustomer\": 15,\n        \"idUserScheduler\": null,\n        \"idUserReviewer\": 2,\n        \"userReviewerName\": \"approver\"\n    }\n]\n```\n\n### Read Last Review - PENDING\n### Review Last Review - PENDING\n\n\n## Risk Trail\u003ca name=\"risk-trail\" /\u003e\n\n### Read Risk Trails - PENDING\n\n### Read Last Risk Trail\n\nURL: `/api/customer/[idInternalCustomer]/risk-trails?limits=1`\nMethod: `GET`\n\nSample Response:\n\n```js\n{\n    \"id\": 20,\n    \"idRiskTrail\": 20,\n    \"reviewed\": false,\n    \"reviewedDate\": null,\n    \"comments\": null,\n    \"idCustomer\": 2,\n    \"idRiskType\": null,\n    \"idUserReviewer\": null,\n    \"userReviewerName\": null,\n    \"idApprovalStatus\": null,\n    \"approvalStatusName\": null\n}\n```\n\n### Update/Approve Risk Trail\n\nURL: `/api/customer/risk-trails/[idRiskTrail]`\nMethod: `PUT`\n\nSample Request Body:\n\n```js\n{\n  \"idApprovalStatus\": 1,\n  \"idRiskType\": 1,\n  \"comments\": \"Lorem Ipsum\"\n}\n```\n\nSample Response:\n\n```js\n[\n    {\n        \"idReview\": 6\n    }\n]\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feuthor%2Fwatson-api-docs","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Feuthor%2Fwatson-api-docs","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feuthor%2Fwatson-api-docs/lists"}