curl -X POST https://verification.didit.me/v3/transactions/sdk-token/ \
-H 'x-api-key: YOUR_API_KEY' -H 'Content-Type: application/json' \
-d '{"vendor_data": "user-042", "ttl_seconds": 900, "max_uses": 3}'from didit import Didit
# Reads DIDIT_API_KEY.
client = Didit()
result = client.transactions.create_sdk_token(
vendor_data="user-042",
ttl_seconds=900,
max_uses=3,
)
print(result)import Didit from "@didit-protocol/sdk-node";
// Reads DIDIT_API_KEY.
const didit = new Didit();
const result = await didit.transactions.createSdkToken({
vendor_data: "user-042",
ttl_seconds: 900,
max_uses: 3,
});
console.log(result);ctx := context.Background()
// Reads DIDIT_API_KEY.
client := didit.NewClient()
result, err := client.Transactions.CreateSDKToken(ctx, didit.TransactionsCreateSDKTokenParams{
VendorData: "user-042",
TTLSeconds: didit.Int(900),
MaxUses: didit.Int(3),
})
if err != nil {
log.Fatal(err)
}
fmt.Printf("%+v\n", result)import me.didit.Didit;
import me.didit.types.TransactionsCreateSdkTokenParams;
// Reads DIDIT_API_KEY.
Didit client = new Didit();
var result = client.transactions().createSdkToken(TransactionsCreateSdkTokenParams.builder()
.vendorData("user-042")
.ttlSeconds(900L)
.maxUses(3L)
.build());
System.out.println(result);<?php
require 'vendor/autoload.php';
use Didit\DiditClient;
// Reads DIDIT_API_KEY.
$didit = new DiditClient();
$result = $didit->transactions->createSdkToken([
'vendor_data' => 'user-042',
'ttl_seconds' => 900,
'max_uses' => 3,
]);
print_r($result->toArray());require "didit"
# Reads DIDIT_API_KEY.
didit = Didit::Client.new
result = didit.transactions.create_sdk_token(
vendor_data: "user-042",
ttl_seconds: 900,
max_uses: 3
)
puts result.to_husing System;
using System.Text.Json;
using Didit;
// Reads DIDIT_API_KEY.
using var client = new DiditClient();
var result = await client.Transactions.CreateSdkTokenAsync(new TransactionsCreateSdkTokenParams
{
VendorData = "user-042",
TtlSeconds = 900,
MaxUses = 3,
});
Console.WriteLine(JsonSerializer.Serialize(result));{
"sdk_token": "q7Zt...urlsafe",
"expires_at": "2026-07-07T12:15:00Z"
}{
"vendor_data": [
"This field is required."
]
}{
"detail": "Invalid API Key."
}SDK 거래 토큰 발급 API: 클라이언트 측 KYT
Didit SDK가 모니터링 대상 거래를 앱에서 직접 제출할 수 있도록 단기 범위 토큰을 발급합니다. 주체 바인딩은 서버 측에서 강제됩니다.
curl -X POST https://verification.didit.me/v3/transactions/sdk-token/ \
-H 'x-api-key: YOUR_API_KEY' -H 'Content-Type: application/json' \
-d '{"vendor_data": "user-042", "ttl_seconds": 900, "max_uses": 3}'from didit import Didit
# Reads DIDIT_API_KEY.
client = Didit()
result = client.transactions.create_sdk_token(
vendor_data="user-042",
ttl_seconds=900,
max_uses=3,
)
print(result)import Didit from "@didit-protocol/sdk-node";
// Reads DIDIT_API_KEY.
const didit = new Didit();
const result = await didit.transactions.createSdkToken({
vendor_data: "user-042",
ttl_seconds: 900,
max_uses: 3,
});
console.log(result);ctx := context.Background()
// Reads DIDIT_API_KEY.
client := didit.NewClient()
result, err := client.Transactions.CreateSDKToken(ctx, didit.TransactionsCreateSDKTokenParams{
VendorData: "user-042",
TTLSeconds: didit.Int(900),
MaxUses: didit.Int(3),
})
if err != nil {
log.Fatal(err)
}
fmt.Printf("%+v\n", result)import me.didit.Didit;
import me.didit.types.TransactionsCreateSdkTokenParams;
// Reads DIDIT_API_KEY.
Didit client = new Didit();
var result = client.transactions().createSdkToken(TransactionsCreateSdkTokenParams.builder()
.vendorData("user-042")
.ttlSeconds(900L)
.maxUses(3L)
.build());
System.out.println(result);<?php
require 'vendor/autoload.php';
use Didit\DiditClient;
// Reads DIDIT_API_KEY.
$didit = new DiditClient();
$result = $didit->transactions->createSdkToken([
'vendor_data' => 'user-042',
'ttl_seconds' => 900,
'max_uses' => 3,
]);
print_r($result->toArray());require "didit"
# Reads DIDIT_API_KEY.
didit = Didit::Client.new
result = didit.transactions.create_sdk_token(
vendor_data: "user-042",
ttl_seconds: 900,
max_uses: 3
)
puts result.to_husing System;
using System.Text.Json;
using Didit;
// Reads DIDIT_API_KEY.
using var client = new DiditClient();
var result = await client.Transactions.CreateSdkTokenAsync(new TransactionsCreateSdkTokenParams
{
VendorData = "user-042",
TtlSeconds = 900,
MaxUses = 3,
});
Console.WriteLine(JsonSerializer.Serialize(result));{
"sdk_token": "q7Zt...urlsafe",
"expires_at": "2026-07-07T12:15:00Z"
}{
"vendor_data": [
"This field is required."
]
}{
"detail": "Invalid API Key."
}인증
Business Console의 Developers -> API keys에서 발급받은 귀하 애플리케이션의 API 키입니다. 기본 키는 전체 접근 권한을 갖습니다. 이름이 지정된 키는 리소스별 none, read, write 범위로 권한을 제한할 수 있으며 특정 워크플로나 승인된 세션, IP 주소 목록, 만료일 등으로 제한할 수도 있습니다. 401은 키가 잘못되었거나 폐기되었거나 만료되었음을 의미합니다. 403은 키가 전송되지 않았거나, 키에 해당 리소스나 작업에 대한 접근 권한이 없거나, 요청이 허용된 IP 목록 외부 주소에서 발생했음을 의미합니다. 세션 경로에서의 404는 해당 세션이 키의 허용 워크플로 또는 상태 범위를 벗어났음을 의미합니다. 미디어 접근 권한이 없는 키는 이미지, 비디오, PDF URL을 null로 수신하며, 세션 write 권한이 없는 키는 세션 링크와 token을 null로 수신합니다. https://docs.didit.me/console/api-keys 를 참고하십시오.
본문
이 token의 범위가 지정된 최종 사용자에 대한 귀하의 내부 식별자입니다. 해당 token으로 제출되는 모든 거래의 주체 ID로 적용됩니다.
"user-042"
token 유효 기간(초 단위)입니다. 기본값은 900(15분), 최대값은 86400(24시간)입니다.
x <= 86400이 token으로 허용되는 최대 성공 제출 횟수입니다. TTL 내에서 무제한으로 사용하려면 생략하거나 null로 설정하십시오.