Skip to content
Translated page. The English version is the source of truth.

POST /apiv2/aml

POST /apiv2/screening ile değiştirilmiştir

POST /apiv2/screening sürüm 2 sözleşmesidir: her sağlayıcı ve siparişin her durumu için tek bir yanıt yapısı, JSON sayıları yerine dize olarak ondalık sayılar, tek bir ölçekte paylar ve tek bir hata biçimi. Bu uç nokta çalışmaya devam etmektedir ve önceden bildirilmeksizin kaldırılmayacaktır.

AML (Kara Para Aklamayı Önleme) taraması için bir adres gönderin. Risk skorunu, risk seviyesini ve ayrıntılı risk maruziyeti analizini döndürür.

Yanıttaki tüm zaman damgaları UTC formatındadır. Dize biçimi değişmemiştir — bölge son eki olmadan "2026-09-09 23:01:44".

Uç Nokta URL'si

POST https://netts.io/apiv2/aml

İstek Başlıkları

BaşlıkGerekliAçıklama
Content-TypeEvetapplication/json
X-API-KEYEvetNetts kontrol panelinizden alınan API anahtarınız

İstek Gövdesi

json
{
    "address": "YOUR_ADDRESS_HERE",
    "network": "trx",
    "provider": "elliptic",
    "wait": true
}

Parametreler

ParametreTürGerekliAçıklama
addressstringEvetKontrol edilecek blokzincir adresi (10-100 karakter)
networkstringEvetBlokzincir ağı tanımlayıcısı (aşağıdaki Desteklenen Ağlar bölümüne bakın)
providerstringHayırAML sağlayıcısı: elliptic (varsayılan)
waitbooleanHayırtrue ise sonucu eşzamanlı olarak bekler (15 saniyeye kadar). false ise veya belirtilmemişse, pending durumu ve client_order_id ile hemen döner — sonucu GET /apiv2/aml/{order_id} üzerinden sorgulamak için bunu kullanın
response_formatstringHayırYanıt ayrıntı düzeyi: rate (yalnızca skor), full (varsayılan, eksiksiz veri)
report_languagestringHayırRapor dili: en (varsayılan)

Sağlayıcılar

SağlayıcıSkor AralığıAçıklama
elliptic0 — 10Elliptic risk skoru. 0 = risk yok, 10 = maksimum risk. null = hiçbir tetikleyici algılanmadı

Örnek İstekler

cURL (eşzamanlı)

bash
curl -X POST https://netts.io/apiv2/aml \
  -H "Content-Type: application/json" \
  -H "X-API-KEY: your_api_key" \
  -d '{
    "address": "YOUR_ADDRESS_HERE",
    "network": "trx",
    "provider": "elliptic",
    "wait": true
  }'

cURL (asenkron)

bash
curl -X POST https://netts.io/apiv2/aml \
  -H "Content-Type: application/json" \
  -H "X-API-KEY: your_api_key" \
  -d '{
    "address": "YOUR_ADDRESS_HERE",
    "network": "trx",
    "provider": "elliptic"
  }'

Python

python
import requests

url = "https://netts.io/apiv2/aml"
headers = {
    "Content-Type": "application/json",
    "X-API-KEY": "your_api_key",
}

payload = {
    "address": "YOUR_ADDRESS_HERE",
    "network": "trx",
    "provider": "elliptic",
    "wait": True
}

response = requests.post(url, headers=headers, json=payload)
data = response.json()

if response.status_code == 200:
    result = data.get("data", {})
    print(f"Order ID: {result.get('client_order_id')}")
    print(f"Status: {result.get('status')}")
    print(f"Risk Score: {result.get('risk_score')}")
    print(f"Risk Level: {result.get('risk_level')}")
    print(f"Sanctioned: {result.get('is_sanctioned')}")
else:
    print(f"Error: {data}")

Yanıt

Başarılı — Beklemede (200 OK)

wait ayarlanmadığında veya kontrol işlemi hâlâ devam ederken:

json
{
    "success": true,
    "data": {
        "client_order_id": "A4C666ABE24BD4A",
        "status": "pending",
        "address": "T...example...",
        "provider": "elliptic",
        "price_usdt": 0.98,
        "price_trx": 4.136286,
        "currency": "TRX",
        "message": "AML check order accepted. Use GET /apiv2/aml/A4C666ABE24BD4A to check status."
    },
    "timestamp": "2026-03-10 09:56:31"
}

Başarılı — Elliptic Tamamlandı (200 OK)

Tüm veri yapılarıyla eksiksiz Elliptic yanıtı:

json
{
    "success": true,
    "data": {
        "client_order_id": "A019540900E55CA",
        "status": "completed",
        "address": "T...example...",
        "provider": "elliptic",
        "report_language": "en",
        "risk_score": 0.802904,
        "risk_level": "low",
        "is_sanctioned": true,
        "created_at": "2026-03-10 15:56:28",
        "completed_at": "2026-03-10 15:56:28",
        "result": {
            "risk_score": 0.802904473154148,
            "risk_score_detail": {
                "source": 0.233206,
                "destination": 0.802904
            },
            "contributions": {
                "source": [
                    {
                        "entities": [
                            {
                                "name": "Capitalist",
                                "is_vasp": true,
                                "actor_id": 53979,
                                "category": "Payment Services Provider",
                                "entity_id": "b73a9c87-...",
                                "category_id": "54f55bfe-...",
                                "is_primary_entity": true
                            }
                        ],
                        "indirect_value": { "usd": 40194.03 },
                        "contribution_value": { "usd": 40194.03 },
                        "counterparty_value": { "usd": 0 },
                        "min_number_of_hops": 2,
                        "indirect_percentage": 31.57,
                        "is_screened_address": false,
                        "contribution_percentage": 31.57,
                        "counterparty_percentage": 0
                    },
                    {
                        "entities": [
                            {
                                "name": "KuCoin",
                                "is_vasp": true,
                                "actor_id": 11620,
                                "category": "Exchange",
                                "entity_id": "e54292da-...",
                                "category_id": "0a52f7a2-...",
                                "is_primary_entity": true
                            }
                        ],
                        "indirect_value": { "usd": 28436.45 },
                        "contribution_value": { "usd": 29434.17 },
                        "counterparty_value": { "usd": 997.72 },
                        "min_number_of_hops": 1,
                        "indirect_percentage": 22.34,
                        "is_screened_address": false,
                        "contribution_percentage": 23.12,
                        "counterparty_percentage": 0.78
                    }
                ],
                "destination": [
                    {
                        "entities": [
                            {
                                "name": "Bybit",
                                "is_vasp": true,
                                "actor_id": 23354,
                                "category": "Exchange",
                                "entity_id": "bddde8b7-...",
                                "category_id": "0a52f7a2-...",
                                "is_primary_entity": true
                            }
                        ],
                        "indirect_value": { "usd": 26333.43 },
                        "contribution_value": { "usd": 27458.30 },
                        "counterparty_value": { "usd": 1124.86 },
                        "min_number_of_hops": 1,
                        "indirect_percentage": 20.69,
                        "is_screened_address": false,
                        "contribution_percentage": 21.57,
                        "counterparty_percentage": 0.88
                    }
                ]
            },
            "cluster_entities": [
                {
                    "name": "Unknown",
                    "is_vasp": null,
                    "actor_id": -4,
                    "category": "Unknown",
                    "entity_id": "00000000-...",
                    "category_id": "00000000-...",
                    "is_primary_entity": true,
                    "is_after_sanction_date": false
                }
            ],
            "evaluation_detail": {
                "source": [
                    {
                        "rule_id": "6c2dcb03-...",
                        "rule_name": "Obfuscating & Misc.",
                        "rule_type": "exposure",
                        "risk_score": 0.2332,
                        "matched_elements": [
                            {
                                "category": "Coin Swap Service",
                                "category_id": "ff85b715-...",
                                "contributions": [
                                    {
                                        "entity": "FixedFloat",
                                        "risk_triggers": {
                                            "category": "Coin Swap Service",
                                            "category_id": "ff85b715-..."
                                        },
                                        "indirect_value": { "usd": 2891.09, "native": 0, "native_major": 0 },
                                        "contribution_value": { "usd": 2968.66, "native": 0, "native_major": 0 },
                                        "counterparty_value": { "usd": 77.58, "native": 0, "native_major": 0 },
                                        "min_number_of_hops": 1,
                                        "indirect_percentage": 2.27,
                                        "is_screened_address": false,
                                        "contribution_percentage": 2.33,
                                        "counterparty_percentage": 0.06
                                    }
                                ],
                                "indirect_value": { "usd": 2891.09, "native": 0, "native_major": 0 },
                                "contribution_value": { "usd": 2968.66, "native": 0, "native_major": 0 },
                                "counterparty_value": { "usd": 0, "native": 0, "native_major": 0 },
                                "indirect_percentage": 100,
                                "contribution_percentage": 2.33,
                                "counterparty_percentage": 0
                            }
                        ],
                        "matched_behaviors": []
                    },
                    {
                        "rule_id": "0a2b68fd-...",
                        "rule_name": "Illicit Activity",
                        "rule_type": "exposure",
                        "risk_score": 0.0026,
                        "matched_elements": [
                            {
                                "category": "Token Blacklisting",
                                "category_id": "94b50de8-...",
                                "contributions": [
                                    {
                                        "entity": "Tether USD",
                                        "risk_triggers": {
                                            "category": "Token Blacklisting",
                                            "category_id": "94b50de8-..."
                                        },
                                        "contribution_value": { "usd": 1022.45, "native": 0, "native_major": 0 },
                                        "min_number_of_hops": 3,
                                        "contribution_percentage": 0.08
                                    }
                                ]
                            }
                        ],
                        "matched_behaviors": []
                    },
                    {
                        "rule_id": "df59fab5-...",
                        "rule_name": "Sanctions",
                        "rule_type": "exposure",
                        "risk_score": 0.0024,
                        "matched_elements": [
                            {
                                "category": "Sanctioned Entity",
                                "category_id": "c1648b7a-...",
                                "contributions": [
                                    {
                                        "entity": "Garantex",
                                        "risk_triggers": {
                                            "category": "Sanctioned Entity",
                                            "category_id": "c1648b7a-..."
                                        },
                                        "contribution_value": { "usd": 863.21, "native": 0, "native_major": 0 },
                                        "min_number_of_hops": 3,
                                        "contribution_percentage": 0.07
                                    }
                                ]
                            }
                        ],
                        "matched_behaviors": []
                    }
                ],
                "destination": []
            },
            "detected_behaviors": []
        },
        "sanctions": {
            "self": false,
            "self_entities": null,
            "exposure": {
                "share": 8.029045,
                "proximity": "mixed",
                "hops": 1,
                "entity": "Garantex Europe OU - OFAC SDN - 5 Apr 2022",
                "category": "OFAC Sanctioned Entity",
                "direction": "destination",
                "rule_name": "Sanctioned, TF & CSAM"
            },
            "items": [
                {
                    "entity": "Garantex Europe OU - OFAC SDN - 5 Apr 2022",
                    "category": "OFAC Sanctioned Entity",
                    "share": 8.02904473154148,
                    "counterparty_share": 2.472410320321629,
                    "indirect_share": 5.556634411219852,
                    "hops": 1,
                    "proximity": "mixed",
                    "is_sanctioned": true,
                    "trigger": "sanctions_list",
                    "value_usd": 7494.407584232807,
                    "direction": "destination",
                    "rule_name": "Sanctioned, TF & CSAM"
                }
            ]
        }
    },
    "timestamp": "2026-03-10 15:56:28"
}

Yanıt Alanları

AlanTürAçıklama
data.client_order_idstringDurum sorgulama için benzersiz sipariş kimliği (ID)
data.statusstringpending, processing, completed, failed, skipped
data.risk_scorenumber | nullRisk skoru. Elliptic: 0-10. null = tetikleyici yok
data.risk_levelstring | nullnone, low, medium, high veya severe. Elliptic low, medium, high döndürür; BitOK none ve severe değerlerini ekler. Sağlayıcı hiçbir tetikleyici algılamadığında null
data.is_sanctionedbooleanYaptırım uygulanan varlıklara maruziyet tespit edilirse true. Uç noktanın kullanıma sunulmasından bu yana değişmemiştir: yaptırım uygulanan bir adres ile yalnızca böyle bir adrese bağlantısı olan bir adres arasında ayrım yapmaz — bunun için data.sanctions alanına bakın
data.sanctionsobject | nullYaptırım bulgusunun ayrıntılı dökümü: adresin kendisinin listede olup olmadığı, bağlantının ne kadar yakın ve ne kadar büyük olduğu. Yaptırımlar bölümüne bakın
data.resultobjectEksiksiz sağlayıcı yanıtı (response_format=full olduğunda)

Yaptırımlar

is_sanctioned tek bir boole değeridir ve iki çok farklı durumda true yanıtını verir: taranan adresin bizzat bir yaptırım listesinde bulunması ve taranan adresin bir zamanlar yaptırım listesinde bulunan birinden iki aracı üzerinden yüzde bir kesir alması. Bu bayrak, geriye dönük uyumluluk adına orijinal anlamını korur; iki durumu data.sanctions birbirinden ayırır.

AlanTürAçıklama
sanctions.selfbooleanTaranan adresin kendisi yaptırım uygulanan varlık olduğunda true
sanctions.self_entitiesarray | nullself değeri true olduğunda, kendisine ait yaptırım uygulanan varlıkların adları
sanctions.exposureobject | nullTek bir en büyük yaptırım bağlantısı — özette gösterilecek bilgi
sanctions.exposure.sharenumberİlgili fonların payı, yüzde olarak (8.03 değeri %8,03 anlamına gelir)
sanctions.exposure.proximitystringscreened_address, counterparty, indirect veya mixed
sanctions.exposure.hopsnumber | nullYaptırım uygulanan varlığa olan minimum işlem atlama sayısı
sanctions.exposure.entitystring | nullListe ve tarih de dahil olmak üzere yaptırım uygulanan varlık adı
sanctions.exposure.directionstring | nullGelen fonlar için source, giden fonlar için destination
sanctions.itemsarrayHer bir yaptırım katkısı, en büyük pay ilk sırada olacak şekilde, exposure ile aynı alanlar artı counterparty_share, indirect_share, value_usd ve trigger
sanctions.relatedarray | nullYalnızca BitOK: yaptırım listesinin kendisinden ayrı tutulan, AB veya Birleşik Krallık yaptırımları altındaki borsalara maruziyet

Yakınlık (Proximity), bir Elliptic raporunun Closest Proximity sütununu yansıtır:

DeğerAnlamı
screened_addressTaranan adres bir karşı taraf değil, tetikleyicinin kendisidir
counterpartyTaranan adresin doğrudan karşı tarafı
indirectAracılar vasıtasıyla ulaşılmış — hops alanına bakın
mixedAynı varlığa hem doğrudan hem de dolaylı akışlar

Bir katkı, yalnızca sağlayıcı bunu bu şekilde işaretlediğinde bir yaptırım bağlantısı olarak sayılır — Elliptic için risk_triggers.is_sanctioned, BitOK için sanctions kategorisi. Elliptic'in Sanctioned, TF & CSAM adlı kuralı ülke ve kategori tetikleyicilerinde de devreye girer; bu nedenle tek başına kural adı bir yaptırım kararı niteliği taşımaz.

Elliptic result Nesnesi

AlanTürAçıklama
risk_scorenumberKesin risk skoru (0-10)
risk_score_detailobjectAyrım dökümü: source ve destination skorları
contributionsobjectFon akışı katkıda bulunanlarının source ve destination dizileri
contributions[].entitiesarrayKatkıyla ilişkili bilinen varlıklar
contributions[].entities[].namestringVarlık adı (ör. "Binance", "KuCoin")
contributions[].entities[].categorystringVarlık türü (ör. "Exchange", "Payment Services Provider")
contributions[].entities[].is_vaspboolean | nullVarlığın Sanal Varlık Hizmet Sağlayıcısı (VASP) olup olmadığı
contributions[].contribution_value.usdnumberKatkının toplam USD hacmi
contributions[].contribution_percentagenumberBu varlıktan gelen toplam fon yüzdesi
contributions[].indirect_value.usdnumberDolaylı yoldan (aracılar vasıtasıyla) alınan USD hacmi
contributions[].indirect_percentagenumberDolaylı yoldan alınan fonların yüzdesi
contributions[].counterparty_value.usdnumberDoğrudan karşı taraf olarak USD hacmi
contributions[].counterparty_percentagenumberDoğrudan karşı taraf olarak yüzde
contributions[].min_number_of_hopsnumberVarlıktan itibaren minimum işlem atlama sayısı (0 = doğrudan)
contributions[].is_screened_addressbooleanBunun taranan adresin kendisi olması durumunda true
cluster_entitiesarrayAdres kümesiyle doğrudan ilişkili bilinen varlıklar
cluster_entities[].namestringVarlık adı
cluster_entities[].categorystringVarlık kategorisi
cluster_entities[].is_vaspboolean | nullVASP durumu
cluster_entities[].is_after_sanction_datebooleanFaaliyet varlığa yaptırım uygulandıktan sonra gerçekleşmişse true
evaluation_detailobjectTetiklenen risk kurallarının source ve destination dizileri
evaluation_detail[].rule_namestringKural adı (ör. "Sanctions", "Illicit Activity", "Obfuscating & Misc.")
evaluation_detail[].rule_typestringKural türü (ör. "exposure")
evaluation_detail[].risk_scorenumberBu kuraldan gelen risk skoru katkısı
evaluation_detail[].matched_elementsarrayKuralı tetikleyen kategoriler ve varlıklar
evaluation_detail[].matched_elements[].categorystringRisk kategorisi (ör. "Sanctioned Entity", "Gambling", "Token Blacklisting")
evaluation_detail[].matched_elements[].contributionsarrayEşleşen kategori içindeki varlıklar
evaluation_detail[].matched_elements[].contributions[].entitystringVarlık adı
evaluation_detail[].matched_elements[].contributions[].contribution_percentagenumberMaruziyet yüzdesi
evaluation_detail[].matched_elements[].contributions[].min_number_of_hopsnumberİşlem atlama sayısı
evaluation_detail[].matched_elements[].contributions[].is_screened_addressbooleanTaranan adresin kendisi kuralı tetiklediğinde true
evaluation_detail[].matched_elements[].contributions[].risk_triggersobjectKuralın neden tetiklendiği: bir yaptırım listesi için is_sanctioned, bir yargı yetki alanı için country, bir varlık türü için category
evaluation_detail[].matched_behaviorsarrayAlgılanan davranışsal modeller
detected_behaviorsarrayAdreste algılanan küresel davranışsal modeller

Risk Seviyeleri

Elliptic (0-10 ölçeği):

AralıkSeviyeAçıklama
0 — 3lowMinimum risk. Önemli bir maruziyet yok
3 — 7mediumOrta düzeyde risk. Bazı riskli kategoriler tespit edildi
7 — 10highYüksek risk. Yaptırım uygulanan, yasa dışı veya yüksek riskli varlıklar
null-Risk tetikleyicisi tespit edilmedi

BitOK (0-1 ölçeği): sağlayıcı seviyenin kendisini döndürür — none, low, medium, high veya severe.

risk_level, her yerde kullanılan tek karardır: API yanıtı, kontrol paneli ve PDF raporunun tümü aynı kontrol işlemi için aynı kelimeyi yazdırır.

Hata Yanıtları

Kimlik Doğrulama Hatası (401)

json
{
    "detail": {
        "code": -1,
        "msg": "API key not provided"
    }
}

Doğrulama Hatası (400)

json
{
    "success": false,
    "error": {
        "code": 4001,
        "msg": "Invalid or missing address"
    }
}
json
{
    "success": false,
    "error": {
        "code": 4002,
        "msg": "Invalid provider. Use: elliptic"
    }
}

Yetersiz Bakiye (402)

json
{
    "success": false,
    "error": {
        "code": 4020,
        "message": "Insufficient balance"
    },
    "timestamp": "2026-03-10 10:00:00"
}

Sağlayıcı Kullanılamıyor (503)

json
{
    "success": false,
    "error": {
        "code": 5030,
        "message": "Provider elliptic not available"
    },
    "timestamp": "2026-03-10 10:00:00"
}

Hata Kodu Referansı

KodAçıklamaHTTP Durumu
-1Kimlik doğrulama başarısız oldu401
4001Geçersiz veya eksik adres400
4002Geçersiz sağlayıcı400
4020Yetersiz bakiye402
5030Sağlayıcı kullanılamıyor503

İstek Limitleri

Aşağıdaki istek limitleri tüm AML uç noktaları için geçerlidir (IP adresi başına):

SüreLimitAçıklama
1 saniye2 istekSaniyede en fazla 2 istek
1 dakika30 istekDakikada en fazla 30 istek

İstek Limiti Aşıldı (429)

json
{
    "message": "API rate limit exceeded"
}

Sonuç Önbelleğe Alma

Aynı adres + sağlayıcı kombinasyonu son 60 saniye içinde kontrol edilmişse, önbelleğe alınan sonuç ücretsiz olarak döndürülür.

Desteklenen Ağlar

network parametresi zorunludur. Aşağıdaki tablodan sembolü (ticker) kullanın.

Elliptic — Bütünsel Tarama

Tarama, belirli bir ağdaki belirli bir adres için gerçekleştirilir. Bununla birlikte Elliptic, bu adresle ilişkili tüm varlıkları izler — tokenlar, zincirler arası transferler ve diğer ağlardaki bilinen varlıklarla etkileşimler dahil.

SembolYerel Varlık
AlgorandalgoALGO
AptosaptAPT
ArbitrumarbETH
Avalanche (C-Chain)avaxAVAX
BasebaseETH
Binance ChainbnbBNB
Binance Smart ChainbscBNB
BitcoinbtcBTC
BittensortaoTAO
CardanoadaADA
CeloceloCELO
CosmosatomATOM
Crypto.comcroCRO
DogecoindogeDOGE
dYdXdydxDYDX
EthereumethETH
Ethereum ClassicetcETC
FantomftmFTM
FilecoinfilFIL
FlareflrFLR
GnosisgnosisxDai
HederahbarHBAR
HyperEVMhypeHYPE
InjectiveinjINJ
Internet ComputericpICP
LinealineaLINEA
LitecoinltcLTC
MobileCoinmobMOB
NearnearNEAR
OptimismopETH
PolkadotdotDOT
PolygonmaticMATIC
RipplexrpXRP
SeiseiSEI
SolanasolSOL
StarknetstrkSTRK
StellarxlmXLM
SuisuiSUI
TezosxtzXTZ
TONtonTON
TrontrxTRX
XDCxdcXDC
XLayerokbOKB
ZilliqazilZIL
zkSynczksyncETH

Tek Varlık Taraması

Bu ağlar bireysel adres/işlem taramasını destekler:

SembolYerel Varlık
Bitcoin CashbchBCH
HorizenzenZEN
ZCashzecZEC

Sağlayıcı ve Ağ Uyumluluğu

provider: "elliptic" kullanıldığında — Bütünsel ve Tek Varlık tablolarındaki tüm ağlar kullanılabilir (47 ağ). Desteklenmeyen bir ağ iletildiğinde, API 4001 hata kodunu döndürür.

Notlar

  • Fiyatlandırma: Elliptic — kontrol başına 0,98 ABD doları. Fiyatlar güncel kur üzerinden TRX cinsinden gösterilir
  • Eşzamanlılık zaman aşımı: wait: true 15 saniyeye kadar bekler. Kontrol daha uzun sürerse pending durumunu döndürür
  • İşlem süresi: Çoğu kontrol birkaç saniye içinde tamamlanır. Bununla birlikte, bazı isteklerin (özellikle karmaşık işlem geçmişine sahip adresler için) işlenmesi 3 dakikaya kadar sürebilir. Bu gibi durumlar için asenkron modu kullanın (wait parametresini atlayın veya wait: false olarak ayarlayın) ve GET /apiv2/aml/{order_id} üzerinden sorgulama yapın
  • Aktif olmayan adresler: Blokzincir faaliyeti bulunmayan adresler ücretsiz olarak skipped durumunu döndürür