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:证明钱包控制权
通过 Didit 创建钱包所有权组件会话:客户可借助消息签名、Satoshi 测试、截图或自我声明证明其对加密钱包的控制权。
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 密钥,可在 Business Console 的“开发者 -> API 密钥”中获取。主密钥拥有完整访问权限。指定名称的密钥可设置作用域:针对每个资源设为无权限、只读或读写,限定于特定工作流或已通过的会话、限定于 IP 地址列表,以及设置到期日期。401 表示密钥错误、已撤销或已过期;403 表示未发送密钥、密钥无权访问该资源或操作,或请求来自其 IP 列表之外的地址;在会话路由上返回 404 表示该会话不在该密钥允许的工作流或状态范围内。没有媒体访问权限的密钥获取到的图片、视频和 PDF URL 将为 null;没有会话写入权限的密钥获取到的会话链接和 token 将为 null。请参阅 https://docs.didit.me/console/api-keys。
请求体
待验证的钱包地址。可选;留空时,必须在启动证明时提供该地址。
128地址的链 token,例如 ETH、BTC 或 SOL。请使用与您的钱包地址簿中相同的 token。消息签名和中本聪测试(Satoshi test)仅对受支持的链提供。证明所验证的地址簿条目将其存储在其规范标识符(ETH、BTC、SOL、TRX)下。
32钱包持有者姓名,用于收款人姓名比对。
255您为持有者指定的内部标识符,将带入所创建的地址簿条目中。
255可选。当证明核验通过时需要推进的 Travel Rule 转账的 Didit 交易 UUID。
可选。您控制的充值地址;提供该地址可启用 SATOSHI_TEST 证明方式。
128可选。微件在完成后将客户重定向回的绝对 http(s) URL。
512可选。生成的链接的有效期(以分钟为单位)。当提供 SATOSHI_TEST 时,会自动延长以覆盖 Satoshi test 时间窗口。
5 <= x <= 10080