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-Transaktions-Token-API: Client-seitiges KYT
Didit-Token erstellen: kurzlebig und eingeschränkt, damit SDKs überwachte Transaktionen direkt aus der App senden. Serverseitige Subjektbindung.
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."
}Autorisierungen
Der API-Schlüssel Ihrer Anwendung, aus Entwickler -> API-Schlüssel in der Business Console. Der Primärschlüssel hat Vollzugriff. Ein benannter Schlüssel kann im Geltungsbereich eingeschränkt werden: keine, Lese- oder Schreibberechtigung pro Ressource, beschränkt auf bestimmte Workflows oder genehmigte Sitzungen, auf eine Liste von IP-Adressen und auf ein Ablaufdatum. 401 bedeutet, dass der Schlüssel falsch, widerrufen oder abgelaufen ist; 403 bedeutet, dass kein Schlüssel gesendet wurde, der Schlüssel keinen Zugriff auf diese Ressource oder Aktion hat oder die Anfrage von einer Adresse außerhalb seiner IP-Liste stammte; 404 bei einer Sitzungsroute bedeutet, dass die Sitzung außerhalb der Workflows oder Status des Schlüssels liegt. Ein Schlüssel ohne Medienzugriff erhält Bild-, Video- und PDF-URLs als null, und ein Schlüssel ohne Schreibberechtigung für Sitzungen erhält Sitzungslinks und Token als null. Siehe https://docs.didit.me/console/api-keys.
Body
Ihre interne Kennung für den Endbenutzer, auf den dieses Token beschränkt ist. Wird als Identität des Subjekts jeder mit dem Token übermittelten Transaktion erzwungen.
"user-042"
Token-Lebensdauer in Sekunden. Standardmäßig 900 (15 Minuten); maximal 86400 (24 Stunden).
x <= 86400Maximale Anzahl erfolgreicher Übermittlungen, die mit diesem Token zulässig sind. Weglassen oder auf null setzen für unbegrenzte Nutzungen innerhalb der TTL.
Antwort
Das erstellte Token. Übergeben Sie sdk_token an Ihre Anwendung; es authentifiziert die geräteseitigen /v1/transactions/-Endpoints über den Header X-Transaction-Token bis expires_at.