AML Check API

Authentification

Authenticated API requests must be accompanied by the X-AUTH-KEY header, with the value being the previously obtained API key. Authentication errors will be indicated by an HTTP 401 (Unauthorized) status response, with additional information returned in the response body in json format.

Creating a AML check

POST https://api.change.pro/aml/check

Endpoint to initiate an AML (Anti-Money Laundering) check.

Field Type Required Description
type string Yes Specifies the type of check: address or transaction.
token string Yes Cryptocurrency token. Possible values: btc, eth, trx.
address string Yes Cryptocurrency address
transaction string No Transaction hash. Required when type is transaction.

Example Request

{
    "type": "address",
    "token": "trx",
    "address": "TGdzLsviiXZX12YwvvfVWTLPwvAjHg2Jmb"
}

Example Response

{
    "result": true,
    "data": {
        "id": "01904ea6-fda3-7ab9-b5e5-b17ca4a4d79c",
        "status": "pending",
        "hash": "TGdzLsviiXZX12YwvvfVWTLPwvAjHg2Jmb",
        "token": "trx",
        "risk_score": null,
        "signals": [],
        "tokens": [],
        "transactions_in": null,
        "transactions_out": null,
        "created_at": "2024-12-09T13:27:42+00:00",
        "updated_at": null
    }
}

Getting the result of a AML check

GET https://api.change.pro/aml/{id}

Endpoint to retrieve the results of an AML check by its unique identifier

Response Body

{
    "result": true,
    "data": {
        "id": "01904ea6-fda3-7ab9-b5e5-b17ca4a4d79c",
        "status": "completed",
        "hash": "TGdzLsviiXZX12YwvvfVWTLPwvAjHg2Jmb",
        "token": "trx",
        "risk_score": 13.6,
        "signals": [
            {
                "key": "exchange_licensed",
                "label": "Exchange Licensed",
                "category": "low",
                "risk_score": 83.9
            },
            {
                "key": "payment",
                "label": "Payment Processor",
                "category": "low",
                "risk_score": 7.8
            },
            {
                "key": "exchange_unlicensed",
                "label": "Exchange Unlicensed",
                "category": "medium",
                "risk_score": 5.2
            },
            {
                "key": "sanctions",
                "label": "Sanctions",
                "category": "high",
                "risk_score": 1.8
            },
            {
                "key": "wallet",
                "label": "Online Wallet",
                "category": "low",
                "risk_score": 0.8
            },
            {
                "key": "other",
                "label": "Other",
                "category": "low",
                "risk_score": 0.3
            }
        ],
        "tokens": [
            {
                "name": "trx",
                "amount": 0.16,
                "symbol": "trx"
            }
        ],
        "transactions_in": 22,
        "transactions_out": 10,
        "created_at": "2024-09-16T01:00:00+00:00",
        "updated_at": "2024-07-02T16:59:04+00:00"
    }
}

Getting a pdf of the AML verification report

GET https://api.change.pro/aml/{id}/download

Endpoint to retrieve the pdf file of an AML check by its unique identifier

Error Codes

Change.pro AML API operates with the following status returns:

Error Code Description
200 OK — Successful request processing.
201 Created — Successful object creation via API method.
400 Bad Request — Request contains incorrect data.
401 Unauthorized — Request requires valid authorization data.
403 Forbidden — Access to resource is forbidden.
404 Not Found — Requested resource not found.
405 Method Not Allowed — Access to resource requires correct HTTP method.
406 Not Acceptable — Request is missing required valid headers or the format of submitted data is not supported.
410 Gone — Resource is no longer available on the server.
429 Too Many Requests — Server request frequency limit exceeded.
500 Internal Server Error — Internal server problems.
503 Service Unavailable — Server maintenance.