curl -X POST 'https://verification.didit.me/v3/businesses/delete/' \
-H 'x-api-key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d '{"vendor_data_list": ["company-123", "company-456"]}'from didit import Didit
# Reads DIDIT_API_KEY.
client = Didit()
result = client.businesses.batch_delete(
vendor_data_list=["company-123", "company-456"],
)
print(result)import Didit from "@didit-protocol/sdk-node";
// Reads DIDIT_API_KEY.
const didit = new Didit();
const result = await didit.businesses.batchDelete({
vendor_data_list: ["company-123", "company-456"],
});
console.log(result);ctx := context.Background()
// Reads DIDIT_API_KEY.
client := didit.NewClient()
result, err := client.Businesses.BatchDelete(ctx, didit.BusinessesBatchDeleteParams{
VendorDataList: didit.Some([]string{"company-123", "company-456"}),
})
if err != nil {
log.Fatal(err)
}
fmt.Printf("%+v\n", result)import java.util.List;
import me.didit.Didit;
import me.didit.types.BusinessesBatchDeleteParams;
// Reads DIDIT_API_KEY.
Didit client = new Didit();
var result = client.businesses().batchDelete(BusinessesBatchDeleteParams.builder()
.vendorDataList(List.of("company-123", "company-456"))
.build());
System.out.println(result);<?php
require 'vendor/autoload.php';
use Didit\DiditClient;
// Reads DIDIT_API_KEY.
$didit = new DiditClient();
$result = $didit->businesses->batchDelete([
'vendor_data_list' => ['company-123', 'company-456'],
]);
print_r($result->toArray());require "didit"
# Reads DIDIT_API_KEY.
didit = Didit::Client.new
result = didit.businesses.batch_delete(vendor_data_list: ["company-123", "company-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.Businesses.BatchDeleteAsync(new BusinessesBatchDeleteParams
{
VendorDataList = new string[] { "company-123", "company-456" },
});
Console.WriteLine(JsonSerializer.Serialize(result));{
"deleted": 2
}حذف الشركات دفعةً واحدة: واجهة API لمحو بيانات KYB
احذف كيانات الشركات (KYB) في Didit دفعةً واحدة حسب vendor_data أو didit_internal_id، وذلك بما يتوافق مع متطلبات GDPR وCCPA.
curl -X POST 'https://verification.didit.me/v3/businesses/delete/' \
-H 'x-api-key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d '{"vendor_data_list": ["company-123", "company-456"]}'from didit import Didit
# Reads DIDIT_API_KEY.
client = Didit()
result = client.businesses.batch_delete(
vendor_data_list=["company-123", "company-456"],
)
print(result)import Didit from "@didit-protocol/sdk-node";
// Reads DIDIT_API_KEY.
const didit = new Didit();
const result = await didit.businesses.batchDelete({
vendor_data_list: ["company-123", "company-456"],
});
console.log(result);ctx := context.Background()
// Reads DIDIT_API_KEY.
client := didit.NewClient()
result, err := client.Businesses.BatchDelete(ctx, didit.BusinessesBatchDeleteParams{
VendorDataList: didit.Some([]string{"company-123", "company-456"}),
})
if err != nil {
log.Fatal(err)
}
fmt.Printf("%+v\n", result)import java.util.List;
import me.didit.Didit;
import me.didit.types.BusinessesBatchDeleteParams;
// Reads DIDIT_API_KEY.
Didit client = new Didit();
var result = client.businesses().batchDelete(BusinessesBatchDeleteParams.builder()
.vendorDataList(List.of("company-123", "company-456"))
.build());
System.out.println(result);<?php
require 'vendor/autoload.php';
use Didit\DiditClient;
// Reads DIDIT_API_KEY.
$didit = new DiditClient();
$result = $didit->businesses->batchDelete([
'vendor_data_list' => ['company-123', 'company-456'],
]);
print_r($result->toArray());require "didit"
# Reads DIDIT_API_KEY.
didit = Didit::Client.new
result = didit.businesses.batch_delete(vendor_data_list: ["company-123", "company-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.Businesses.BatchDeleteAsync(new BusinessesBatchDeleteParams
{
VendorDataList = new string[] { "company-123", "company-456" },
});
Console.WriteLine(JsonSerializer.Serialize(result));{
"deleted": 2
}نظرة عامة
يحذف هذا الـ endpoint كيانًا واحدًا أو أكثر من كيانات الشركات. تُحذف سجلات الشركات نهائيًا. أما جلسات التحقق من الشركات (KYB) فلا يشملها هذا الـ endpoint، وتبقى مع إزالة ارتباطها بالشركة. احذفها باستخدام حذف الجلسة. والمعاملات غير مشمولة أيضًا، ويمكنك حذفها باستخدام الحذف الدفعي للمعاملات.متى تستخدمه
- طلبات الحق في النسيان.
- تنظيف الشركات التجريبية أثناء ضمان الجودة.
- إلغاء توفير الشركات التي أُزيلت من منصتك.
ملاحظات
- تقبل قائمة من قيم
vendor_dataأو قيمdidit_internal_id. - تتسم العملية بـ idempotency: حذف شركة محذوفة بالفعل لا يُحدث أي تغيير.
- تعيد الاستجابة عدد العناصر المحذوفة فقط، ولا تعيد تقريرًا لكل عنصر. القيم التي لم تطابق أي سجل تُتخطى دون إشعار.
- يُصدر الحدث
business.data.updatedمع تعيينdeleted_at. - تُحذف السجلات التي تملكها الشركة نفسها معها، وهي روابط الوسوم وسجل التعليقات وسجلات الجهاز والشبكة الخاصة بها.
- أما السجلات التي تنتجها جلسة التحقق من الشركات (KYB) فلا تُحذف مع الشركة: بيانات سجل الشركات، والمستندات المرفوعة، ونتائج AML، وفحوص المستفيدين الحقيقيين والأشخاص الرئيسيين تتبع الجلسة، وتبقى حتى تحذف الجلسة نفسها.
البيانات في تقرير تنظيمي نهائي
إذا كانت أي شركة محددة جزءًا من حالة لها تقرير تنظيمي نهائي، فإن الطلب كله يعيد409 ولا يُحذف أي شيء. تتضمن الاستجابة code: in_filed_report وتذكر كل تقرير:
{
"detail": "A case about this person or company has a filed regulatory report, so it cannot be deleted.",
"code": "in_filed_report",
"reports": [
{
"uuid": "5ec00000-0000-4000-8000-000000000007",
"report_number": "SAR-0001",
"report_type": "SAR",
"case_uuid": "c1a5e000-0000-4000-8000-000000000001"
}
]
}
عملية حذف قيد التنفيذ بالفعل
تُحذف الشركة بطلب واحد في كل مرة. إذا كان طلب آخر ما زال يحذف إحدى الشركات المحددة، ينتظر هذا الطلب بضع ثوانٍ كحد أقصى، ثم يعيد409 مع code: subject_deletion_in_progress دون حذف أي شيء:
{
"detail": "This person or company is being deleted. Retry after deletion completes.",
"code": "subject_deletion_in_progress"
}
الأذونات
يجب أن يمنح الدور الإذنdelete:businesses. ويُخصَّص هذا الإذن عادةً للدورين OWNER وADMIN.
ذات صلة
التفويضات
مفتاح API الخاص بتطبيقك، من Developers -> API keys في Business Console. يمتلك المفتاح الأساسي وصولاً كاملاً. يمكن تحديد نطاق المفتاح المسمى: لا شيء، أو قراءة، أو كتابة لكل مورد، ومحدوداً ببعض مسارات العمل أو بالجلسات المقبولة، وبقائمة من عناوين IP، وبتاريخ انتهاء الصلاحية. يشير 401 إلى أن المفتاح غير صحيح أو ملغى أو منتهي الصلاحية؛ ويشير 403 إلى أنه لم يتم إرسال أي مفتاح، أو أن المفتاح ليس لديه حق الوصول إلى هذا المورد أو الإجراء، أو أن الطلب جاء من عنوان خارج قائمة عناوين IP الخاصة به؛ ويشير 404 في مسار جلسة إلى أن الجلسة خارج مسارات العمل أو الحالات الخاصة بالمفتاح. يتلقى المفتاح الذي لا يمتلك حق الوصول إلى الوسائط عناوين URL للصور ومقاطع الفيديو وملفات PDF كـ null، ويتلقى المفتاح الذي لا يمتلك إذن كتابة للجلسات روابط الجلسة وtoken كـ null. راجع https://docs.didit.me/console/api-keys.
الجسم
قدّم vendor_data_list، أو didit_internal_id_list، أو delete_all: true. الأسبقية عند إرسال عدة عناصر: delete_all > vendor_data_list > didit_internal_id_list (يُستخدم المحدد ذو الأسبقية الأعلى فقط).
المعرّفات الخاصة بك المراد حذفها، وتتم مطابقتها تماماً كما أُرسلت.
معرّفات UUID الداخلية لـ Didit (didit_internal_id) المطلوب حذفها.
إذا كانت القيمة true، فسيتم حذف كل شركة في التطبيق. لا يمكن دمجها مع محددات القائمة.
الاستجابة
تم حذف الشركات. يعيد عدد الصفوف التي تمت إزالتها فعلياً.
عدد الشركات المحذوفة (يستثني قيم vendor_data التي لم تطابق أي شيء).