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."
]
}Créer une session widget de contrôle de portefeuille
Créez une session widget Didit : les clients prouvent le contrôle du portefeuille crypto par signature, test Satoshi, capture ou auto-déclaration.
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."
]
}Autorisations
La clé API de votre application, issue de Développeurs -> Clés API dans la Business Console. La clé principale dispose d'un accès complet. Une clé nommée peut être restreinte : aucun, lecture ou écriture par ressource, limitée à certains workflows ou aux sessions approuvées, à une liste d'adresses IP et à une date d'expiration. 401 signifie que la clé est incorrecte, révoquée ou expirée ; 403 signifie qu'aucune clé n'a été envoyée, que la clé n'a pas accès à cette ressource ou action, ou que la requête provient d'une adresse hors de sa liste d'IP ; 404 sur une route de session signifie que la session est hors des workflows ou des statuts de la clé. Une clé sans accès aux médias reçoit les URL d'images, de vidéos et de PDF à null, et une clé sans accès en écriture aux sessions reçoit les liens et tokens de session à null. Voir https://docs.didit.me/console/api-keys.
Corps
L'adresse du portefeuille à vérifier. Optionnelle ; si elle n'est pas renseignée, l'adresse doit être fournie lorsqu'une preuve est démarrée.
128Token de la blockchain pour l'adresse, par exemple ETH, BTC ou SOL. Utilisez le même token que dans votre carnet d'adresses de portefeuilles. La signature de message et le test Satoshi ne sont proposés que pour une blockchain prise en charge. L'entrée du carnet d'adresses vérifiée par la preuve la stocke sous son identifiant canonique (ETH, BTC, SOL, TRX).
32Nom du titulaire du portefeuille, utilisé pour la correspondance du nom du bénéficiaire.
255Votre identifiant interne pour le titulaire, reporté sur l'entrée créée dans le carnet d'adresses.
255Optionnel. UUID de transaction Didit d'un transfert Travel Rule à faire avancer lorsque la preuve est vérifiée.
Optionnel. Une adresse de dépôt que vous contrôlez ; la fournir active la méthode de preuve SATOSHI_TEST.
128Optionnel. URL http(s) absolue vers laquelle le widget renvoie le client une fois terminé.
512Optionnel. Durée de validité du lien généré, en minutes. Automatiquement prolongée pour couvrir la fenêtre du test Satoshi lorsque SATOSHI_TEST est proposé.
5 <= x <= 10080Réponse
La session de widget générée.