curl -X POST 'https://verification.didit.me/v3/users/aml-monitoring/' \
-H 'x-api-key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d '{"is_enabled": true, "vendor_data_list": ["user-123", "user-456"]}'from didit import Didit
# Reads DIDIT_API_KEY.
client = Didit()
result = client.users.set_aml_monitoring(
is_enabled=True,
estimate_only=True,
vendor_data_list=["user-123", "user-456"],
)
print(result)import Didit from "@didit-protocol/sdk-node";
// Reads DIDIT_API_KEY.
const didit = new Didit();
const result = await didit.users.setAmlMonitoring({
is_enabled: true,
estimate_only: true,
vendor_data_list: ["user-123", "user-456"],
});
console.log(result);ctx := context.Background()
// Reads DIDIT_API_KEY.
client := didit.NewClient()
result, err := client.Users.SetAMLMonitoring(ctx, didit.UsersSetAMLMonitoringParams{
IsEnabled: true,
EstimateOnly: didit.Bool(true),
VendorDataList: didit.Some([]string{"user-123", "user-456"}),
})
if err != nil {
log.Fatal(err)
}
fmt.Printf("%+v\n", result)import java.util.List;
import me.didit.Didit;
import me.didit.types.UsersSetAmlMonitoringParams;
// Reads DIDIT_API_KEY.
Didit client = new Didit();
var result = client.users().setAmlMonitoring(UsersSetAmlMonitoringParams.builder()
.isEnabled(true)
.estimateOnly(true)
.vendorDataList(List.of("user-123", "user-456"))
.build());
System.out.println(result);<?php
require 'vendor/autoload.php';
use Didit\DiditClient;
// Reads DIDIT_API_KEY.
$didit = new DiditClient();
$result = $didit->users->setAmlMonitoring([
'is_enabled' => true,
'estimate_only' => true,
'vendor_data_list' => ['user-123', 'user-456'],
]);
print_r($result->toArray());require "didit"
# Reads DIDIT_API_KEY.
didit = Didit::Client.new
result = didit.users.set_aml_monitoring(
is_enabled: true,
estimate_only: true,
vendor_data_list: ["user-123", "user-456"]
)
puts result.to_husing System;
using System.Text.Json;
using Didit;
// Reads DIDIT_API_KEY.
using var client = new DiditClient();
var result = await client.Users.SetAmlMonitoringAsync(new UsersSetAmlMonitoringParams
{
IsEnabled = true,
EstimateOnly = true,
VendorDataList = new string[] { "user-123", "user-456" },
});
Console.WriteLine(JsonSerializer.Serialize(result));{
"users_total": 123,
"already_enabled": 123,
"with_existing_aml": 123,
"needing_screening": 123,
"skipped_no_identity_data": 123,
"skipped_blocked": 123,
"estimated_screening_cost_usd": 0.2,
"estimated_annual_monitoring_cost_usd": 0.07,
"balance_sufficient": true,
"unmatched": [
"<string>"
]
}{
"job_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"status": "PENDING",
"is_enabled": true,
"target_type": "user",
"total": 123,
"processed": 123,
"outcomes": {
"enabled": 123,
"screened_and_enabled": 123,
"already_enabled": 123,
"disabled": 123,
"skipped_no_identity_data": 123,
"skipped_blocked": 123,
"skipped_sandbox": 123,
"failed_provider": 123,
"failed_insufficient_balance": 123
},
"results": [
{
"didit_internal_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"vendor_data": "<string>",
"outcome": "enabled"
}
],
"error": "<string>",
"created_at": "2023-11-07T05:31:56Z",
"completed_at": "2023-11-07T05:31:56Z",
"estimate": {
"users_total": 123,
"already_enabled": 123,
"with_existing_aml": 123,
"needing_screening": 123,
"skipped_no_identity_data": 123,
"skipped_blocked": 123,
"estimated_screening_cost_usd": 0.2,
"estimated_annual_monitoring_cost_usd": 0.07,
"balance_sufficient": true
},
"unmatched": [
"<string>"
]
}{
"error": "<string>",
"estimate": {
"users_total": 123,
"already_enabled": 123,
"with_existing_aml": 123,
"needing_screening": 123,
"skipped_no_identity_data": 123,
"skipped_blocked": 123,
"estimated_screening_cost_usd": 0.2,
"estimated_annual_monitoring_cost_usd": 0.07,
"balance_sufficient": true
}
}AML निगरानी टॉगल करें: उपयोगकर्ताओं के लिए API
एक ही कॉल में कई उपयोगकर्ताओं के लिए AML सतत निगरानी चालू या बंद करें। Didit के साथ लागत अनुमान, जॉब स्टेटस और प्रति-उपयोगकर्ता परिणाम पाएँ।
curl -X POST 'https://verification.didit.me/v3/users/aml-monitoring/' \
-H 'x-api-key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d '{"is_enabled": true, "vendor_data_list": ["user-123", "user-456"]}'from didit import Didit
# Reads DIDIT_API_KEY.
client = Didit()
result = client.users.set_aml_monitoring(
is_enabled=True,
estimate_only=True,
vendor_data_list=["user-123", "user-456"],
)
print(result)import Didit from "@didit-protocol/sdk-node";
// Reads DIDIT_API_KEY.
const didit = new Didit();
const result = await didit.users.setAmlMonitoring({
is_enabled: true,
estimate_only: true,
vendor_data_list: ["user-123", "user-456"],
});
console.log(result);ctx := context.Background()
// Reads DIDIT_API_KEY.
client := didit.NewClient()
result, err := client.Users.SetAMLMonitoring(ctx, didit.UsersSetAMLMonitoringParams{
IsEnabled: true,
EstimateOnly: didit.Bool(true),
VendorDataList: didit.Some([]string{"user-123", "user-456"}),
})
if err != nil {
log.Fatal(err)
}
fmt.Printf("%+v\n", result)import java.util.List;
import me.didit.Didit;
import me.didit.types.UsersSetAmlMonitoringParams;
// Reads DIDIT_API_KEY.
Didit client = new Didit();
var result = client.users().setAmlMonitoring(UsersSetAmlMonitoringParams.builder()
.isEnabled(true)
.estimateOnly(true)
.vendorDataList(List.of("user-123", "user-456"))
.build());
System.out.println(result);<?php
require 'vendor/autoload.php';
use Didit\DiditClient;
// Reads DIDIT_API_KEY.
$didit = new DiditClient();
$result = $didit->users->setAmlMonitoring([
'is_enabled' => true,
'estimate_only' => true,
'vendor_data_list' => ['user-123', 'user-456'],
]);
print_r($result->toArray());require "didit"
# Reads DIDIT_API_KEY.
didit = Didit::Client.new
result = didit.users.set_aml_monitoring(
is_enabled: true,
estimate_only: true,
vendor_data_list: ["user-123", "user-456"]
)
puts result.to_husing System;
using System.Text.Json;
using Didit;
// Reads DIDIT_API_KEY.
using var client = new DiditClient();
var result = await client.Users.SetAmlMonitoringAsync(new UsersSetAmlMonitoringParams
{
IsEnabled = true,
EstimateOnly = true,
VendorDataList = new string[] { "user-123", "user-456" },
});
Console.WriteLine(JsonSerializer.Serialize(result));{
"users_total": 123,
"already_enabled": 123,
"with_existing_aml": 123,
"needing_screening": 123,
"skipped_no_identity_data": 123,
"skipped_blocked": 123,
"estimated_screening_cost_usd": 0.2,
"estimated_annual_monitoring_cost_usd": 0.07,
"balance_sufficient": true,
"unmatched": [
"<string>"
]
}{
"job_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"status": "PENDING",
"is_enabled": true,
"target_type": "user",
"total": 123,
"processed": 123,
"outcomes": {
"enabled": 123,
"screened_and_enabled": 123,
"already_enabled": 123,
"disabled": 123,
"skipped_no_identity_data": 123,
"skipped_blocked": 123,
"skipped_sandbox": 123,
"failed_provider": 123,
"failed_insufficient_balance": 123
},
"results": [
{
"didit_internal_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"vendor_data": "<string>",
"outcome": "enabled"
}
],
"error": "<string>",
"created_at": "2023-11-07T05:31:56Z",
"completed_at": "2023-11-07T05:31:56Z",
"estimate": {
"users_total": 123,
"already_enabled": 123,
"with_existing_aml": 123,
"needing_screening": 123,
"skipped_no_identity_data": 123,
"skipped_blocked": 123,
"estimated_screening_cost_usd": 0.2,
"estimated_annual_monitoring_cost_usd": 0.07,
"balance_sufficient": true
},
"unmatched": [
"<string>"
]
}{
"error": "<string>",
"estimate": {
"users_total": 123,
"already_enabled": 123,
"with_existing_aml": 123,
"needing_screening": 123,
"skipped_no_identity_data": 123,
"skipped_blocked": 123,
"estimated_screening_cost_usd": 0.2,
"estimated_annual_monitoring_cost_usd": 0.07,
"balance_sufficient": true
}
}अवलोकन
चयनित उपयोगकर्ता इकाइयों के लिए सतत AML निगरानी को सक्षम या अक्षम करता है, ठीक वैसे ही जैसे Business Console में सतत AML निगरानी कार्रवाई करती है। Console और यह endpoint एक ही अंतर्निहित ऑपरेशन चलाते हैं, इसलिए नियम, बिलिंग और परिणाम समान होते हैं। पहलेestimate_only: true भेजें ताकि पता चले कि कितने उपयोगकर्ता चयनित हैं, कितनों को नई AML स्क्रीनिंग की आवश्यकता है, एक बार की स्क्रीनिंग लागत और वार्षिक निगरानी लागत कितनी है। ड्राई-रन से कुछ भी लिखा नहीं जाता।
इसका उपयोग कब करें
- प्रोग्रामैटिक ऑनबोर्डिंग: API के माध्यम से आयात या बनाए गए उपयोगकर्ताओं के लिए निगरानी चालू करें, बिना उन्हें हाथ से दोबारा स्क्रीन किए।
- ऑफ़बोर्डिंग: उन उपयोगकर्ताओं के लिए निगरानी और उसका वार्षिक नवीकरण बंद करें जो आपके प्लेटफ़ॉर्म से चले गए हैं।
- लागत नियंत्रण: किसी चयन के लिए प्रतिबद्ध होने से पहले उसकी सटीक लागत पर पड़ने वाले असर का पूर्वावलोकन करें।
चयन कैसे संसाधित होता है
- प्रति उपयोगकर्ता एक निगरानी वाली स्क्रीनिंग। कई बार सत्यापन कराने वाले उपयोगकर्ता की केवल एक स्क्रीनिंग की निगरानी की जाती है और बिल भी एक ही बार लगता है। अक्षम करने पर उस उपयोगकर्ता की सभी स्क्रीनिंग पर निगरानी बंद हो जाती है।
- बिना AML स्क्रीनिंग वाले उपयोगकर्ताओं की पहले स्क्रीनिंग होती है। Didit उनके लिए एक नया AML सत्यापन बनाता है (जो उपयोगकर्ता के Verifications टैब में दिखता है), उसका बिल एक सामान्य AML स्क्रीनिंग की तरह लगता है, और उस पर निगरानी चालू हो जाती है। इसके लिए उपयोगकर्ता का पूरा नाम, जन्म तिथि और देश चाहिए; इनमें से कोई भी न होने पर उपयोगकर्ता को
skipped_no_identity_dataके रूप में रिपोर्ट किया जाता है, चुपचाप छोड़ा नहीं जाता। - ब्लॉक किए गए उपयोगकर्ता छोड़ दिए जाते हैं (
skipped_blocked)। सैंडबॉक्स एप्लिकेशन कभी स्क्रीनिंग नहीं बनाते (skipped_sandbox)। - बैलेंस पहले से जाँचा जाता है। जब आपका बैलेंस अनुमान को कवर नहीं करता, तो चालू करने का अनुरोध
403के साथ अस्वीकार हो जाता है, और प्रतिक्रिया में अनुमान शामिल होता है ताकि आपको पता रहे कि कितना टॉप अप करना है। - वार्षिक नवीकरण। नई निगरानी वाले उपयोगकर्ता से उसकी अगली नवीकरण तिथि पर वार्षिक निगरानी मूल्य लिया जाता है, वही तिथि जो Console में सतत निगरानी कॉलम में दिखती है। अक्षम करने से नवीकरण रुक जाता है, लेकिन पहले से बिल की जा चुकी अवधि का रिफ़ंड नहीं होता।
चयन और बैच आकार
vendor_data_list, didit_internal_id_list, या दोनों से उपयोगकर्ता चुनें; दोनों सूचियों को OR के रूप में लिया जाता है। एक अनुरोध में दोनों सूचियों को मिलाकर अधिकतम 1000 पहचानकर्ता स्वीकार होते हैं। जो पहचानकर्ता आपके एप्लिकेशन के किसी उपयोगकर्ता से मेल नहीं खाते, वे unmatched के अंतर्गत ठीक वैसे ही लौटाए जाते हैं जैसे भेजे गए थे, और वे अनुरोध को कभी विफल नहीं करते: जो चयन किसी से भी मेल नहीं खाता, वह खाली जॉब (total: 0) के रूप में पूरा होता है, जिसमें सभी पहचानकर्ता सूचीबद्ध होते हैं, जो बैच डिलीट endpoints की परिपाटी जैसा है।
इनलाइन या पृष्ठभूमि में
20 या उससे कम उपयोगकर्ताओं वाले चयन इनलाइन संसाधित होते हैं और कॉल200 के साथ पूरी हुई जॉब लौटाता है। बड़े चयन PENDING जॉब के साथ 202 लौटाते हैं; जब तक status COMPLETED या FAILED न हो जाए, AML निगरानी जॉब प्राप्त करें को पोल करें। दोनों ही स्थितियों में जॉब में प्रति उपयोगकर्ता एक results प्रविष्टि होती है, जिसमें उसका outcome होता है।
outcome | अर्थ |
|---|---|
enabled | मौजूदा AML स्क्रीनिंग पर निगरानी चालू की गई। |
screened_and_enabled | नई AML स्क्रीनिंग बनी (बिल की गई) और उस पर निगरानी चालू की गई। |
already_enabled | निगरानी पहले से सक्रिय थी; कुछ नहीं बदला, कुछ बिल नहीं हुआ। |
disabled | उपयोगकर्ता की हर स्क्रीनिंग पर निगरानी बंद की गई। |
skipped_no_identity_data | उपयोगकर्ता के पास स्क्रीन करने के लिए ज़रूरी पूरा नाम, जन्म तिथि या देश नहीं है। |
skipped_blocked | उपयोगकर्ता ब्लॉक है। |
skipped_sandbox | सैंडबॉक्स एप्लिकेशन; कोई स्क्रीनिंग नहीं बनाई गई। |
failed_provider | स्क्रीनिंग पूरी नहीं हो सकी। बाद में पुनः प्रयास करें। |
failed_insufficient_balance | जॉब चलते समय बैलेंस समाप्त हो गया। |
Webhooks
निगरानी चालू या बंद करने से कोई अपना webhook इवेंट नहीं भेजा जाता। एक बार निगरानी चालू होने के बाद, दोबारा स्क्रीनिंग पर सतत AML निगरानी में बताए गए सामान्यstatus.updated और data.updated इवेंट भेजे जाते रहते हैं।
अनुमतियाँ
एप्लिकेशन की कोई भी सक्रिय API कुंजी इस endpoint को कॉल कर सकती है। Didit API कुंजियाँ एप्लिकेशन-स्तरीय हैं, भूमिका-स्तरीय नहीं: Console की भूमिकाएँ और अनुमतियाँ यह तय करती हैं कि कोई व्यक्ति Console में क्या कर सकता है, और Management API ट्रैफ़िक के लिए इनका मूल्यांकन नहीं किया जाता।संबंधित
- AML निगरानी जॉब प्राप्त करें
- व्यवसायों के लिए AML निगरानी चालू/बंद करें
- सतत AML निगरानी
- AML स्क्रीनिंग API
- उपयोगकर्ता सूचीबद्ध करें
प्राधिकरण
आपकी एप्लिकेशन की API कुंजी, Business Console में Developers -> API keys से। प्राथमिक कुंजी के पास पूर्ण एक्सेस होता है। एक नामित कुंजी को स्कोप किया जा सकता है: प्रति संसाधन none, read या write, कुछ वर्कफ़्लो या स्वीकृत सत्रों तक सीमित, IP पतों की सूची तक सीमित, और समाप्ति तिथि तक सीमित। 401 का अर्थ है कि कुंजी गलत है, निरस्त कर दी गई है या उसकी समय-सीमा समाप्त हो गई है; 403 का अर्थ है कि कोई कुंजी नहीं भेजी गई थी, कुंजी के पास इस संसाधन या कार्रवाई का एक्सेस नहीं है, या अनुरोध उसकी IP सूची से बाहर के पते से आया था; सत्र रूट पर 404 का अर्थ है कि सत्र कुंजी के वर्कफ़्लो या स्थितियों से बाहर है। मीडिया एक्सेस के बिना एक कुंजी को छवि, वीडियो और PDF URL null के रूप में प्राप्त होते हैं, और सत्र write के बिना एक कुंजी को सत्र लिंक और token null के रूप में प्राप्त होते हैं। देखें https://docs.didit.me/console/api-keys।
बॉडी
vendor_data_list, didit_internal_id_list, या दोनों के साथ उपयोगकर्ताओं का चयन करें (दोनों सूचियाँ OR की जाती हैं)। दोनों सूचियों को मिलाकर प्रति अनुरोध अधिकतम 1000 पहचानकर्ता।
निगरानी सक्षम करने के लिए true, इसे अक्षम करने के लिए false।
true होने पर, लागत अनुमान लौटाता है और कोई राइट ऑपरेशन नहीं करता है - कोई स्क्रीनिंग नहीं, कोई बिलिंग नहीं, कोई जॉब नहीं।
टॉगल करने के लिए उपयोगकर्ताओं के आपके अपने पहचानकर्ता, ठीक वैसे ही मिलान किए जाते हैं जैसे भेजे गए थे।
टॉगल करने के लिए उपयोगकर्ताओं की Didit आंतरिक ids - create, get और list endpoints द्वारा लौटाई गई didit_internal_id।
प्रतिक्रिया
अनुमान (जब estimate_only सत्य हो) या इनलाइन प्रोसेस किए गए चयन के लिए पूर्ण किया गया कार्य।
- Option 1
- Option 2
लागत पूर्वावलोकन। estimate_only true होने पर सीधे लौटाया जाता है (कुछ भी लिखा नहीं जाता है)।
चयन द्वारा मिलान की गई प्रोफ़ाइल।
पहले से मॉनिटर की जा रही प्रोफ़ाइल (सक्षम करते समय कुछ करने की आवश्यकता नहीं है; अक्षम करने पर इन्हें ही बंद किया जाता है)।
वे प्रोफ़ाइल जिनकी मौजूदा AML स्क्रीनिंग को निगरानी में बदल दिया जाएगा (कोई नई स्क्रीनिंग नहीं)।
बिना किसी AML स्क्रीनिंग वाली प्रोफ़ाइल जिनकी पहले स्क्रीनिंग की जाएगी (नियमित AML स्क्रीनिंग के रूप में बिल किया जाएगा)।
वे प्रोफ़ाइल जिनकी स्क्रीनिंग नहीं की जा सकती क्योंकि पहचान डेटा मौजूद नहीं है।
ब्लॉक किए गए उपयोगकर्ता जिन्हें छोड़ दिया जाएगा (व्यवसायों के लिए हमेशा 0)।
नई स्क्रीनिंग की एकमुश्त लागत।
0.2
उन प्रोफ़ाइलों की वार्षिक निगरानी लागत जिनकी निगरानी शुरू की जाएगी।
0.07
क्या संगठन का बैलेंस स्क्रीनिंग और निगरानी के पहले वर्ष को कवर करता है।
अनुरोध के वे पहचानकर्ता जिनका इस एप्लिकेशन में किसी प्रोफ़ाइल से मिलान नहीं हुआ, बिल्कुल वैसे ही जैसे भेजे गए थे।