curl -X POST https://verification.didit.me/v3/travel-rule/widget-session/ \
-H 'x-api-key: YOUR_API_KEY' -H 'Content-Type: application/json' \
-d '{"wallet_address":"0xd3b62acb76fb27a7f8961ec40fa11746b113aca9","chain":"ETH","holder_name":"Jane Doe","transaction_id":"99999999-aaaa-bbbb-cccc-dddddddddddd"}'from didit import Didit
# Reads DIDIT_API_KEY.
client = Didit()
result = client.travel_rule.create_widget_session(
wallet_address="0xd3b62acb76fb27a7f8961ec40fa11746b113aca9",
chain="ETH",
holder_name="Jane Doe",
vendor_data="user-042",
transaction_id="99999999-aaaa-bbbb-cccc-dddddddddddd",
expires_in_minutes=60,
)
print(result)import Didit from "@didit-protocol/sdk-node";
// Reads DIDIT_API_KEY.
const didit = new Didit();
const result = await didit.travelRule.createWidgetSession({
wallet_address: "0xd3b62acb76fb27a7f8961ec40fa11746b113aca9",
chain: "ETH",
holder_name: "Jane Doe",
vendor_data: "user-042",
transaction_id: "99999999-aaaa-bbbb-cccc-dddddddddddd",
expires_in_minutes: 60,
});
console.log(result);ctx := context.Background()
// Reads DIDIT_API_KEY.
client := didit.NewClient()
result, err := client.TravelRule.CreateWidgetSession(ctx, didit.TravelRuleWidgetSessionCreate{
WalletAddress: didit.String("0xd3b62acb76fb27a7f8961ec40fa11746b113aca9"),
Chain: didit.String("ETH"),
HolderName: didit.String("Jane Doe"),
VendorData: didit.String("user-042"),
TransactionID: didit.String("99999999-aaaa-bbbb-cccc-dddddddddddd"),
ExpiresInMinutes: didit.Int(60),
})
if err != nil {
log.Fatal(err)
}
fmt.Printf("%+v\n", result)import me.didit.Didit;
import me.didit.types.TravelRuleWidgetSessionCreate;
// Reads DIDIT_API_KEY.
Didit client = new Didit();
var result = client.travelRule().createWidgetSession(TravelRuleWidgetSessionCreate.builder()
.walletAddress("0xd3b62acb76fb27a7f8961ec40fa11746b113aca9")
.chain("ETH")
.holderName("Jane Doe")
.vendorData("user-042")
.transactionId("99999999-aaaa-bbbb-cccc-dddddddddddd")
.expiresInMinutes(60L)
.build());
System.out.println(result);<?php
require 'vendor/autoload.php';
use Didit\DiditClient;
// Reads DIDIT_API_KEY.
$didit = new DiditClient();
$result = $didit->travelRule->createWidgetSession([
'wallet_address' => '0xd3b62acb76fb27a7f8961ec40fa11746b113aca9',
'chain' => 'ETH',
'holder_name' => 'Jane Doe',
'vendor_data' => 'user-042',
'transaction_id' => '99999999-aaaa-bbbb-cccc-dddddddddddd',
'expires_in_minutes' => 60,
]);
print_r($result->toArray());require "didit"
# Reads DIDIT_API_KEY.
didit = Didit::Client.new
result = didit.travel_rule.create_widget_session(
wallet_address: "0xd3b62acb76fb27a7f8961ec40fa11746b113aca9",
chain: "ETH",
holder_name: "Jane Doe",
vendor_data: "user-042",
transaction_id: "99999999-aaaa-bbbb-cccc-dddddddddddd",
expires_in_minutes: 60
)
puts result.to_husing System;
using System.Text.Json;
using Didit;
// Reads DIDIT_API_KEY.
using var client = new DiditClient();
var result = await client.TravelRule.CreateWidgetSessionAsync(new TravelRuleWidgetSessionCreate
{
WalletAddress = "0xd3b62acb76fb27a7f8961ec40fa11746b113aca9",
Chain = "ETH",
HolderName = "Jane Doe",
VendorData = "user-042",
TransactionId = "99999999-aaaa-bbbb-cccc-dddddddddddd",
ExpiresInMinutes = 60,
});
Console.WriteLine(JsonSerializer.Serialize(result));{
"widget_session_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"token": "<string>",
"url": "<string>",
"expires_at": "2023-11-07T05:31:56Z"
}{
"callback_url": [
"callback_url must be an absolute http(s) URL."
]
}API de widget de propiedad de wallet: prueba de control
Crea con Didit una sesión de widget para probar el control de una wallet cripto: firma de mensaje, test de Satoshi, captura o autodeclaración.
curl -X POST https://verification.didit.me/v3/travel-rule/widget-session/ \
-H 'x-api-key: YOUR_API_KEY' -H 'Content-Type: application/json' \
-d '{"wallet_address":"0xd3b62acb76fb27a7f8961ec40fa11746b113aca9","chain":"ETH","holder_name":"Jane Doe","transaction_id":"99999999-aaaa-bbbb-cccc-dddddddddddd"}'from didit import Didit
# Reads DIDIT_API_KEY.
client = Didit()
result = client.travel_rule.create_widget_session(
wallet_address="0xd3b62acb76fb27a7f8961ec40fa11746b113aca9",
chain="ETH",
holder_name="Jane Doe",
vendor_data="user-042",
transaction_id="99999999-aaaa-bbbb-cccc-dddddddddddd",
expires_in_minutes=60,
)
print(result)import Didit from "@didit-protocol/sdk-node";
// Reads DIDIT_API_KEY.
const didit = new Didit();
const result = await didit.travelRule.createWidgetSession({
wallet_address: "0xd3b62acb76fb27a7f8961ec40fa11746b113aca9",
chain: "ETH",
holder_name: "Jane Doe",
vendor_data: "user-042",
transaction_id: "99999999-aaaa-bbbb-cccc-dddddddddddd",
expires_in_minutes: 60,
});
console.log(result);ctx := context.Background()
// Reads DIDIT_API_KEY.
client := didit.NewClient()
result, err := client.TravelRule.CreateWidgetSession(ctx, didit.TravelRuleWidgetSessionCreate{
WalletAddress: didit.String("0xd3b62acb76fb27a7f8961ec40fa11746b113aca9"),
Chain: didit.String("ETH"),
HolderName: didit.String("Jane Doe"),
VendorData: didit.String("user-042"),
TransactionID: didit.String("99999999-aaaa-bbbb-cccc-dddddddddddd"),
ExpiresInMinutes: didit.Int(60),
})
if err != nil {
log.Fatal(err)
}
fmt.Printf("%+v\n", result)import me.didit.Didit;
import me.didit.types.TravelRuleWidgetSessionCreate;
// Reads DIDIT_API_KEY.
Didit client = new Didit();
var result = client.travelRule().createWidgetSession(TravelRuleWidgetSessionCreate.builder()
.walletAddress("0xd3b62acb76fb27a7f8961ec40fa11746b113aca9")
.chain("ETH")
.holderName("Jane Doe")
.vendorData("user-042")
.transactionId("99999999-aaaa-bbbb-cccc-dddddddddddd")
.expiresInMinutes(60L)
.build());
System.out.println(result);<?php
require 'vendor/autoload.php';
use Didit\DiditClient;
// Reads DIDIT_API_KEY.
$didit = new DiditClient();
$result = $didit->travelRule->createWidgetSession([
'wallet_address' => '0xd3b62acb76fb27a7f8961ec40fa11746b113aca9',
'chain' => 'ETH',
'holder_name' => 'Jane Doe',
'vendor_data' => 'user-042',
'transaction_id' => '99999999-aaaa-bbbb-cccc-dddddddddddd',
'expires_in_minutes' => 60,
]);
print_r($result->toArray());require "didit"
# Reads DIDIT_API_KEY.
didit = Didit::Client.new
result = didit.travel_rule.create_widget_session(
wallet_address: "0xd3b62acb76fb27a7f8961ec40fa11746b113aca9",
chain: "ETH",
holder_name: "Jane Doe",
vendor_data: "user-042",
transaction_id: "99999999-aaaa-bbbb-cccc-dddddddddddd",
expires_in_minutes: 60
)
puts result.to_husing System;
using System.Text.Json;
using Didit;
// Reads DIDIT_API_KEY.
using var client = new DiditClient();
var result = await client.TravelRule.CreateWidgetSessionAsync(new TravelRuleWidgetSessionCreate
{
WalletAddress = "0xd3b62acb76fb27a7f8961ec40fa11746b113aca9",
Chain = "ETH",
HolderName = "Jane Doe",
VendorData = "user-042",
TransactionId = "99999999-aaaa-bbbb-cccc-dddddddddddd",
ExpiresInMinutes = 60,
});
Console.WriteLine(JsonSerializer.Serialize(result));{
"widget_session_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"token": "<string>",
"url": "<string>",
"expires_at": "2023-11-07T05:31:56Z"
}{
"callback_url": [
"callback_url must be an absolute http(s) URL."
]
}Autorizaciones
La clave de API de tu aplicación, que encontrarás en Developers -> API keys en la Business Console. La clave principal tiene acceso completo. Una clave con nombre puede tener un alcance limitado: ninguno, lectura o escritura por recurso, limitada a algunos flujos o a sesiones aprobadas, a una lista de direcciones IP y a una fecha de caducidad. 401 significa que la clave es incorrecta, se revocó o expiró; 403 significa que no se envió ninguna clave, que la clave no tiene acceso a este recurso o acción, o que la solicitud provino de una dirección fuera de su lista de IP; 404 en una ruta de sesión significa que la sesión está fuera de los flujos o estados de la clave. Una clave sin acceso a contenido multimedia recibe las URL de imágenes, videos y PDF como null, y una clave sin permiso de escritura en sesiones recibe los enlaces y tokens de sesión como null. Consulta https://docs.didit.me/console/api-keys.
Cuerpo
La dirección de la wallet que se va a verificar. Opcional; si está vacía, la dirección debe proporcionarse al iniciar una prueba.
128Token de cadena de la dirección, por ejemplo ETH, BTC o SOL. Usa el mismo token que en tu libreta de direcciones de wallets. La firma de mensajes y la prueba de Satoshi solo se ofrecen para una cadena compatible. La entrada de la libreta de direcciones que verifica la prueba lo almacena con su identificador canónico (ETH, BTC, SOL, TRX).
32Nombre del titular de la wallet, que se usa para la coincidencia del nombre del beneficiario.
255Tu identificador interno del titular, que se traslada a la entrada de la libreta de direcciones creada.
255Opcional. UUID de transacción de Didit de una transferencia de Travel Rule que se hace avanzar cuando se verifica la prueba.
Opcional. Una dirección de depósito que controlas; al proporcionarla se habilita el método de prueba SATOSHI_TEST.
128Opcional. URL absoluta http(s) a la que el widget devuelve al cliente después de completar el proceso.
512Opcional. Vigencia del enlace generado, en minutos. Se amplía automáticamente para cubrir la ventana de la prueba Satoshi cuando se ofrece SATOSHI_TEST.
5 <= x <= 10080Respuesta
La sesión de widget emitida.