curl -X POST https://verification.didit.me/v3/travel-rule/counterparty-contacts/ \
-H 'x-api-key: YOUR_API_KEY' -H 'Content-Type: application/json' \
-d '{"counterparty": "0d6f3c2a-6a1e-4c55-9a39-1f2b0c7d8e91", "email": "compliance@counterparty.example", "name": "Compliance desk"}'from didit import Didit
# Reads DIDIT_API_KEY.
client = Didit()
result = client.travel_rule.counterparty_contacts.create(
counterparty="0d6f3c2a-6a1e-4c55-9a39-1f2b0c7d8e91",
email="compliance@counterparty.example",
name="Compliance desk",
)
print(result)import Didit from "@didit-protocol/sdk-node";
// Reads DIDIT_API_KEY.
const didit = new Didit();
const result = await didit.travelRule.counterpartyContacts.create({
counterparty: "0d6f3c2a-6a1e-4c55-9a39-1f2b0c7d8e91",
email: "compliance@counterparty.example",
name: "Compliance desk",
});
console.log(result);ctx := context.Background()
// Reads DIDIT_API_KEY.
client := didit.NewClient()
result, err := client.TravelRule.CounterpartyContacts.Create(ctx, didit.TravelRuleCounterpartyContactCreate{
Counterparty: "0d6f3c2a-6a1e-4c55-9a39-1f2b0c7d8e91",
Email: "compliance@counterparty.example",
Name: didit.String("Compliance desk"),
})
if err != nil {
log.Fatal(err)
}
fmt.Printf("%+v\n", result)import me.didit.Didit;
import me.didit.types.TravelRuleCounterpartyContactCreate;
// Reads DIDIT_API_KEY.
Didit client = new Didit();
var result = client.travelRule().counterpartyContacts().create(TravelRuleCounterpartyContactCreate.builder()
.counterparty("0d6f3c2a-6a1e-4c55-9a39-1f2b0c7d8e91")
.email("compliance@counterparty.example")
.name("Compliance desk")
.build());
System.out.println(result);<?php
require 'vendor/autoload.php';
use Didit\DiditClient;
// Reads DIDIT_API_KEY.
$didit = new DiditClient();
$result = $didit->travelRule->counterpartyContacts->create([
'counterparty' => '0d6f3c2a-6a1e-4c55-9a39-1f2b0c7d8e91',
'email' => 'compliance@counterparty.example',
'name' => 'Compliance desk',
]);
print_r($result->toArray());require "didit"
# Reads DIDIT_API_KEY.
didit = Didit::Client.new
result = didit.travel_rule.counterparty_contacts.create(
counterparty: "0d6f3c2a-6a1e-4c55-9a39-1f2b0c7d8e91",
email: "compliance@counterparty.example",
name: "Compliance desk"
)
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.CounterpartyContacts.CreateAsync(new TravelRuleCounterpartyContactCreate
{
Counterparty = "0d6f3c2a-6a1e-4c55-9a39-1f2b0c7d8e91",
Email = "compliance@counterparty.example",
Name = "Compliance desk",
});
Console.WriteLine(JsonSerializer.Serialize(result));{
"uuid": "6c1f9b8e-2d4a-4f7e-8b3c-5a9d0e1f2a3b",
"counterparty": "0d6f3c2a-6a1e-4c55-9a39-1f2b0c7d8e91",
"counterparty_name": "Example Counterparty VASP",
"email": "compliance@counterparty.example",
"name": "Compliance desk",
"source": "application",
"scope": "application",
"created_by": "",
"verified_at": null,
"is_invalid": false,
"invalid_reason": "",
"invalid_detail": "",
"invalid_at": null,
"created_at": "2026-10-19T09:00:00Z"
}{
"counterparty": [
"No directory entry with this id."
]
}API para adicionar contacto de contraparte - Travel Rule
Adicione na Didit um endereço de conformidade privado para a VASP contraparte. A Travel Rule envia primeiro para os seus contactos.
curl -X POST https://verification.didit.me/v3/travel-rule/counterparty-contacts/ \
-H 'x-api-key: YOUR_API_KEY' -H 'Content-Type: application/json' \
-d '{"counterparty": "0d6f3c2a-6a1e-4c55-9a39-1f2b0c7d8e91", "email": "compliance@counterparty.example", "name": "Compliance desk"}'from didit import Didit
# Reads DIDIT_API_KEY.
client = Didit()
result = client.travel_rule.counterparty_contacts.create(
counterparty="0d6f3c2a-6a1e-4c55-9a39-1f2b0c7d8e91",
email="compliance@counterparty.example",
name="Compliance desk",
)
print(result)import Didit from "@didit-protocol/sdk-node";
// Reads DIDIT_API_KEY.
const didit = new Didit();
const result = await didit.travelRule.counterpartyContacts.create({
counterparty: "0d6f3c2a-6a1e-4c55-9a39-1f2b0c7d8e91",
email: "compliance@counterparty.example",
name: "Compliance desk",
});
console.log(result);ctx := context.Background()
// Reads DIDIT_API_KEY.
client := didit.NewClient()
result, err := client.TravelRule.CounterpartyContacts.Create(ctx, didit.TravelRuleCounterpartyContactCreate{
Counterparty: "0d6f3c2a-6a1e-4c55-9a39-1f2b0c7d8e91",
Email: "compliance@counterparty.example",
Name: didit.String("Compliance desk"),
})
if err != nil {
log.Fatal(err)
}
fmt.Printf("%+v\n", result)import me.didit.Didit;
import me.didit.types.TravelRuleCounterpartyContactCreate;
// Reads DIDIT_API_KEY.
Didit client = new Didit();
var result = client.travelRule().counterpartyContacts().create(TravelRuleCounterpartyContactCreate.builder()
.counterparty("0d6f3c2a-6a1e-4c55-9a39-1f2b0c7d8e91")
.email("compliance@counterparty.example")
.name("Compliance desk")
.build());
System.out.println(result);<?php
require 'vendor/autoload.php';
use Didit\DiditClient;
// Reads DIDIT_API_KEY.
$didit = new DiditClient();
$result = $didit->travelRule->counterpartyContacts->create([
'counterparty' => '0d6f3c2a-6a1e-4c55-9a39-1f2b0c7d8e91',
'email' => 'compliance@counterparty.example',
'name' => 'Compliance desk',
]);
print_r($result->toArray());require "didit"
# Reads DIDIT_API_KEY.
didit = Didit::Client.new
result = didit.travel_rule.counterparty_contacts.create(
counterparty: "0d6f3c2a-6a1e-4c55-9a39-1f2b0c7d8e91",
email: "compliance@counterparty.example",
name: "Compliance desk"
)
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.CounterpartyContacts.CreateAsync(new TravelRuleCounterpartyContactCreate
{
Counterparty = "0d6f3c2a-6a1e-4c55-9a39-1f2b0c7d8e91",
Email = "compliance@counterparty.example",
Name = "Compliance desk",
});
Console.WriteLine(JsonSerializer.Serialize(result));{
"uuid": "6c1f9b8e-2d4a-4f7e-8b3c-5a9d0e1f2a3b",
"counterparty": "0d6f3c2a-6a1e-4c55-9a39-1f2b0c7d8e91",
"counterparty_name": "Example Counterparty VASP",
"email": "compliance@counterparty.example",
"name": "Compliance desk",
"source": "application",
"scope": "application",
"created_by": "",
"verified_at": null,
"is_invalid": false,
"invalid_reason": "",
"invalid_detail": "",
"invalid_at": null,
"created_at": "2026-10-19T09:00:00Z"
}{
"counterparty": [
"No directory entry with this id."
]
}Autorizações
A chave de API da sua aplicação, a partir de Programadores -> Chaves de API na Business Console. A chave principal tem acesso total. Uma chave nomeada pode ter o âmbito definido: nenhum, leitura ou escrita por recurso, limitada a alguns fluxos ou a sessões aprovadas, a uma lista de endereços IP e a uma data de validade. 401 significa que a chave está incorreta, revogada ou expirada; 403 significa que nenhuma chave foi enviada, que a chave não tem acesso a este recurso ou ação, ou que o pedido veio de um endereço fora da sua lista de IP; 404 numa rota de sessão significa que a sessão está fora dos fluxos ou estados da chave. Uma chave sem acesso a multimédia recebe URLs de imagens, vídeos e PDFs como nulos, e uma chave sem permissão de escrita em sessões recebe ligações de sessão e tokens como nulos. Consulte https://docs.didit.me/console/api-keys.
Corpo
Resposta
O contacto foi adicionado.
Um endereço de conformidade para o qual o canal EMAIL escreve relativamente a uma entrada do diretório.
O id da entrada do diretório, conforme apresentado por GET /v3/travel-rule/vasps/.
Etiqueta opcional, por exemplo, o nome da equipa.
staff: com curadoria da Didit. learned: um endereço num dos próprios domínios do VASP que respondeu a um pedido através da respetiva ligação de resposta. application: adicionado pela sua aplicação.
staff, application, learned platform: com curadoria da Didit ou obtido a partir de uma resposta verificada, utilizado para todos os clientes da Didit, só de leitura para si. application: privado da sua aplicação.
platform, application Vazio para contactos da plataforma e para contactos adicionados por uma chave de API.
Quando este endereço respondeu pela última vez a um pedido através da sua ligação de resposta.
true assim que o endereço for devolvido (bounce) ou apresentar reclamação; a via EMAIL ignora-o.
, hard_bounce, soft_bounce, spam_complaint, suppressed O motivo do servidor de correio destinatário, quando fornecido.