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

GET /apiv2/screening/

Membaca pesanan screening dalam status apa pun. Membaca bersifat gratis dan dapat diulang sesering yang Anda inginkan.

Ini adalah kontrak versi 2. Kontrak ini menggantikan GET /apiv2/aml/{order_id}, yang tetap berfungsi.

URL Endpoint

GET https://netts.io/apiv2/screening/{client_order_id}

Header Permintaan

HeaderWajibDeskripsi
X-API-KEYYaAPI key Anda dari dasbor Netts

Parameter Jalur

ParameterTipeDeskripsi
client_order_idstringPengidentifikasi yang dikembalikan saat pesanan dibuat: A diikuti oleh 14 karakter heksadesimal

Parameter Kueri

ParameterTipeDefaultDeskripsi
formatstringjsonRepresentasi dari hasil. json adalah satu-satunya nilai yang diterima

Representasi adalah properti dari permintaan, bukan dari pesanan. Pada versi 1 hal ini ditetapkan saat pesanan dibuat, sehingga pemeriksaan yang dipesan sebagai JSON tidak akan pernah dapat dibaca dengan cara lain.

Hanya ada satu representasi, yaitu JSON. Parameter ini dipertahankan agar penambahan representasi kedua nantinya tidak menjadi breaking change; saat ini nilai lainnya mengembalikan 4001. Laporan adalah render dari data yang sudah Anda miliki secara lengkap, dan merendernya sendiri memberi Anda branding Anda sendiri, bahasa Anda sendiri, serta tata letak Anda sendiri. Lihat Laporan.

Contoh Permintaan

cURL

bash
curl https://netts.io/apiv2/screening/A90D21F68C9AEA2 \
  -H "X-API-KEY: your_api_key"

Python — polling hingga pemeriksaan selesai

python
import time
import requests

headers = {"X-API-KEY": "your_api_key"}
url = "https://netts.io/apiv2/screening/A90D21F68C9AEA2"

while True:
    body = requests.get(url, headers=headers).json()
    status = body["order"]["status"]
    if status in ("completed", "failed", "skipped"):
        break
    time.sleep(2)

print(status, body["risk"]["level"], body["risk"]["score"])

Respons

200 OK dengan body yang sama seperti POST /apiv2/screening, pada setiap status pesanan. Kumpulan bidang tidak bergantung pada status: blok yang belum memiliki data diisi dengan null dan daftar kosong, alih-alih dihilangkan.

Respons yang memuat hasil screening dikirim dengan Cache-Control: private, no-store.

Pemeriksaan yang belum selesai

json
{
  "schema_version": 2,
  "order": {
    "client_order_id": "A90D21F68C9AEA2",
    "status": "pending",
    "api_version": "v2",
    "cache_hit": false,
    "created_at": "2026-09-13T08:14:29.614988Z",
    "started_at": null,
    "completed_at": null
  },
  "request": { "address": "YOUR_ADDRESS_HERE", "network": "trx", "provider": "elliptic" },
  "billing": {
    "charged": true, "price_usdt": "0.98", "base_amount": "2.882421",
    "markup_amount": "0", "charged_amount": "2.882421", "charged_currency": "TRX",
    "exchange_rate": "0.33999200", "payment_status": "pending"
  },
  "precheck": { "activity_checked": true, "activity_status": "active", "source": "tron-address-checker" },
  "check": {
    "provider": "elliptic", "provider_check_id": null, "checked_at": null,
    "status": "pending", "provider_status": null
  },
  "risk": {
    "score": null, "scale": { "min": 0, "max": 10 }, "level": "none",
    "level_source": "computed", "provider_level": null, "policy": "netts-risk-v1",
    "by_direction": { "source": null, "destination": null }
  },
  "sanctions": null,
  "exposure": [],
  "rules": [],
  "entities": [],
  "primary_entity": null,
  "sanctioned_entities": [],
  "wallet": { "inflow_usd": null, "outflow_usd": null },
  "provider_data": { }
}

Alamat tanpa aktivitas

Alamat yang belum pernah digunakan di blockchain tidak akan dikirim ke penyedia dan tidak dikenakan biaya. Pesanan tetap ada, sehingga hasilnya dapat dibaca:

json
{
  "order": {
    "client_order_id": "AC4F9BC45A79323",
    "status": "skipped",
    "started_at": null,
    "completed_at": null,
    "reason": "address_inactive"
  },
  "billing": { "charged": false, "charged_amount": "0", "payment_status": "not_charged" },
  "precheck": { "activity_checked": true, "activity_status": "inactive", "source": "tron-address-checker" },
  "check": { "status": "not_performed", "provider_check_id": null, "checked_at": null }
}

Hanya blok yang berubah yang ditampilkan di sini; sisanya tetap ada dengan null dan daftar kosong seperti biasa.

Error

Formatnya adalah RFC 9457, Content-Type: application/problem+json. Daftar kode lengkap ada di halaman POST.

KodeHTTPKapan
4003400Pengidentifikasi bukan A ditambah 14 karakter heksadesimal
4040404Pesanan tidak ditemukan
4010 / 4011401Tidak ada API key, atau kunci atau IP tidak diterima

Pesanan milik akun lain merespons 404, bukan 403. Jika tidak, kode respons saja akan mengonfirmasi bahwa pengidentifikasi milik orang lain memang ada.

json
{
  "type": "https://doc.netts.io/api/v2/errors/order-not-found",
  "title": "Order not found",
  "status": 404,
  "detail": "Order not found",
  "instance": "/apiv2/screening/AFFFFFFFFFFFFFF",
  "code": 4040
}

Batas Frekuensi

Berbagi batas dengan setiap jalur AML lainnya: 5 permintaan per detik, 150 per menit. Polling tidak dikenakan biaya tetapi diperhitungkan dalam batas — jeda dua detik antar polling sudah sangat cukup.

Lihat Juga