How AI is applied across API Evangelist and APIs.io. Read my AI disclosure →
API Evangelist API Evangelist
Discovery
Learnings
Guidance
Toolbox
Alignment
API Evangelist LLC

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/.

13 operations 8 paths 0 schemas 5 GET3 PATCH4 POST1 PUT

Metadata

The identity and technical contract details declared by the specification.

Specification
OpenAPI 3.0.3
API Version
1.0.9
Base URL
https://app.salv.com/api
Authentication
OAuth 2.0
Contact
Resource Areas
1

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.

aml 13

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…

POST
/v2/persons
Create new person
addPersonV2 body → 200400401422
POST
/v2/persons/search
Fetch all persons
findAllPersons body → 200
PATCH
/v2/persons/{personId}
Patch person
patchPersonV2 1 param body → 200400401404
PUT
/v2/persons/{personId}
Update person
updatePersonV2 1 param body → 200400401404
GET
/v1/personsdeprecated
Fetch all persons
findAllPersonsDeprecated 8 params → 200
POST
/v1/personsdeprecated
Create new person (v1)
addPerson body → 200400401422
GET
/v1/persons/{personId}
Fetch person by id
findPersonById 1 param → 200400404
PATCH
/v1/persons/{personId}deprecated
Patch person (v1)
updatePerson 1 param body → 200400
GET
/v1/persons/{personId}/transactions
Fetch all person transactions
findAllPersonTransactions 6 params → 200
POST
/v1/persons/{personId}/transactions
Create new transaction
addTransaction 1 param body → 200400401404422
GET
/v1/persons/{personId}/transactions/{transactionId}
Fetch transaction by id
findTransactionByIdAndPersonId 2 params → 200400404
PATCH
/v1/persons/{personId}/transactions/{transactionId}
Update transaction
updateTransaction 2 params body → 200400404
GET
/v1/persons/{personId}/statuses
Fetch history of status changes for the person
findStatusesHistory 1 param → 200400404

Specification

The full machine-readable OpenAPI contract behind this narrative.

Source

salv-aml-api-openapi.yml Raw ↑

Other APIs Salv publishes across the network.

Salv alert API
Salv alerts API
Salv custom-list-record API
Salv custom-list-usable-field-public API
Salv data-upload API
Salv manual-alerts API
Salv monitoring-checks API
Salv note API
Salv risk API
Salv screening-alerts API
Salv screening-checks API
Salv screening-list-groups API
Where this information came from

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.