Salv aml API
This section contains all operations managing the state of persons and transactions.There are three endpoints for creating or modifying a person, make sure to choose the right one for your task:* [Create new person](#tag/aml/operation/addPersonV2) will create a new person if a person with the same ID does not already exist in our system. * [Patch person](#tag/aml/operation/patchPersonV2) partially updates an existing person if this person exists in the system. A request to this endpoint will only update or add attributes which are provided in the request. Use this endpoint to update selected attributes of a person or to add new attributes without changing attributes not present in the request payload. This endpoint may also be used to update person type.* [Update person](#tag/aml/operation/updatePersonV2) updates an existing person if this person exists in the system. A request to this endpoint must contain both person type and attributes. A request to this endpoint overwrites both person type and attributes with the values given in the request.ID of a person or a transaction is a case-sensitive text field in our system. Salv does not transform the ID in any way. Only the following characters are allowed: Alphanumerics `a-zA-Z0-9`, hyphens `-`, underscores `_`, colons `:`, dots `.`.All requests must use ISO-8601 formatted timestamps. That includes defined fields (e.g. timestamp property in "Create new transaction" request) and custom key-value pairs (e.g. under attributes property in "Create new person" request).For any data passed in person or transaction objects, the keys must adhere to the following rules: - It must not contain a "**.**"- It must not consist of whitespaces## Example: Uploading person and transactionThis example shows how to upload data to use it later for monitoring or screening.### 1. Add a person if not already addedAdd a new person, according to the documentation at [addPerson(POST)](#operation/addPersonV2).If the person has already been added to Salv, then skip this step.#### With cURL```curl --request POST \ --url https://app.salv.com/api/v2/persons \ --header 'Authorization: Bearer {yourBearerToken}' \ --header 'Content-Type: application/json' \ --data '{ "id": "bbt12345", "type": "INDIVIDUAL", "attributes": { "first_name": "Sheldon", "last_name": "Cooper", "dob": "1983-05-12", "city": "Pasadena", "street_address": "2311 North Los Robles Avenue", "country": "US", "onboarding_date": "2019-04-16", "email": "sheldon.cooper@gmail.com", "phone_number": "+1582693582", "id_document": "passport", "id_country": "US", "gender": "F" }}'```#### With Python Requests```import requestsurl = "https://app.salv.com/api/v2/persons"payload = { "id": "bbt12345", "type": "INDIVIDUAL", "attributes": { "first_name": "Sheldon", "last_name": "Cooper", "dob": "1983-05-12", "city": "Pasadena", "street_address": "2311 North Los Robles Avenue", "country": "US", "onboarding_date": "2019-04-16", "email": "sheldon.cooper@gmail.com", "phone_number": "+1582693582", "id_document": "passport", "id_country": "US", "gender": "F" }}headers = { "Content-Type": "application/json", "Authorization": "{yourBearerToken}"}response = requests.request("POST", url, json=payload, headers=headers)print(response.text)```### 2. Add a transactionAdd a new transaction, according to the documentation at [addTransaction(POST)](#operation/addTransaction).#### With cURL```curl --request POST \ --url https://app.salv.com/api/v1/persons/bbt12345/transactions \ --header 'Authorization: Bearer {yourBearerToken}' \ --header 'Content-Type: application/json' \ --data '{ "id": "aeio-1234567", "attributes": { "sender_name": "Sheldon Cooper", "sender_account": "GB123456789", "receiver_name": "Leonard Hofstadter", "receiver_account": "DE987654321", "amount": "15678.34", "type": "wire_transfer", "direction": "I", "timestamp": "2022-01-20T08:48:39.000Z" }}'```#### With Python Requests```import requestsurl = "https://app.salv.com/api/v1/persons/bbt12345/transactions"payload = { "id": "aeio-1234567", "attributes": { "sender_name": "Sheldon Cooper", "sender_account": "GB123456789", "receiver_name": "Leonard Hofstadter", "receiver_account": "DE987654321", "amount": "15678.34", "type": "wire_transfer", "direction": "I", "timestamp": "2022-01-20T08:48:39.000Z" }}headers = { "Content-Type": "application/json", "Authorization": "{yourBearerToken}"}response = requests.request("POST", url, json=payload, headers=headers)print(response.text)```
Salv aml API is one of 15 APIs that Salv publishes on the APIs.io network, described by a machine-readable OpenAPI specification.
Tagged areas include AML. The published artifact set on APIs.io includes an OpenAPI specification.
This API exposes 13 operations across 8 paths. It is described by OpenAPI 3.0.3, at version 1.0.9.
Requests are made against a single base URL, https://{environment}.salv.com/api/.
Metadata
The identity and technical contract details declared by the specification.
Authentication & Security 1
Salv aml API declares
1 security scheme
for authenticating requests.
It supports OAuth 2.0 (OAuth2) using the clientCredentials flow, exposing 1 scope.
By default, every request must be authenticated.
OAuth2— In order to use the API, you need to generate client credentials using [Salv UI](https://demo.salv.com/credentials). Never share your secret keys. Keep them gu…
Paths & Operations 13
Across 8 paths, the API surfaces 13 operations — 5 GET, 3 PATCH, 4 POST, 1 PUT. Each is listed below with its method, path, parameters, and response codes.
This section contains all operations managing the state of persons and transactions. There are three endpoints for creating or modifying a person, make sure to choose the right on…
Specification
The full machine-readable OpenAPI contract behind this narrative.
Source
More from Salv 12
Other APIs Salv publishes across the network.
This is an independent, third-party profile of Salv aml API, published by API Evangelist. We do not operate, host, resell, or support these APIs, and we are not affiliated with or endorsed by the company unless stated above. Everything here is built from publicly available information — the company's own site, developer portal, documentation, public repositories, and the specifications it publishes for public use. Nothing is obtained by breaching a system, defeating an access control, or using credentials.
The Kin Score and Agent Readiness rating are independently calculated assessments of a company's public API artifacts, scored against a published rubric. They are not certifications, endorsements, security assessments, or audits.
Corrections, re-scores, and removal are free — no partnership or purchase required, and you do not need to justify the request. A removed company is recorded as unrated, never scored zero for having asked. Acknowledgement within one business day; removal within two.
info@apievangelist.com
·
Read the full data-sourcing policy →
On a security or compliance team? Put security in the subject line and
you will get a person, not a form — we will tell you exactly which public URLs this profile was built from.