Ana içeriğe geç

Custody Bağlantısını Test Et

Bir custody yapılandırmasını kaydetmeden canlı olarak bir kez dener. Bir sağlayıcıyı kaydetmeden ya da etkinleştirmeden önce kullanın.

Hangi deneme çalışır. Yanıttaki method hangisi olduğunu söyler:

  • connection_test — kimlik doğrulamalı özel bir test endpoint'i olan sağlayıcılar (rudiq). Kimlik doğrulama zincirinin tamamını kontrol eder ve API anahtarının kapsamını ve bitiş zamanını detail içinde, hiçbir cüzdana dokunmadan döndürür. network_id gerekmez.
  • native_balance — böyle bir endpoint'i olmayan sağlayıcı için yedek yol: network_id ile belirtilen ağda sıfır adresinin native bakiyesi okunur. Bu durumda network_id zorunludur.

taurus için henüz istemci yoktur; bu yüzden test edilmesi ok: false döner.

Kayıtlı satırı test etmek. use_stored: true ile kaydedilmiş yapılandırma denenir; gönderilen ve boş olmayan her alan (host, port, timeout, api_key) onun yerine geçer; böylece bir düzenleme gizli değerler yeniden yazılmadan test edilebilir. Kayıtlı TLS ayarı ve istemci sertifikası da kullanılır. Kayıtlı bir API anahtarı ya da istemci sertifikası yalnızca kayıtlı host ve portta sunulur: bunlara dayanırken başka bir endpoint belirtmek 10002 (domain 83) ile reddedilir. Başka bir host'u denemek için API anahtarını gönderin. use_stored olmadan deneme düz http üzerinden yapılır.

İzin verilen hedefler. Endpoint herkese açık https ya da ortamın listelediği bir küme içi host olmalıdır (custody normalde küme içinde düz http ile erişilir). Diğer her şey, hiçbir şey gönderilmeden 10001 (domain 83) ile reddedilir.

Başarısız bir deneme yine 200 döner; ok: false olur ve neden error alanında yer alır. 4xx, isteğin kendisinin reddedildiği anlamına gelir.

Yalnızca platform sahibi. Çağıranın düğümü platformun kök düğümü olmalıdır; diğer çağıranlar 403 / 10005 ile reddedilir.

Gerekli izin: custodial-wallet:update

İstek​

POST /v2/admin/custodial-wallets/test

Başlıklar​

AdAçıklama
AuthorizationZorunlu. Bearer <access_token>
Content-TypeZorunlu. application/json

Gövde​

AlanTipZorunluAçıklama
providerstringEvetSağlayıcı anahtarı: rudiq ya da taurus
hoststringHayırDenenecek host adı. use_stored ile boş değer kayıtlı host demektir
portintegerHayırDenenecek port, 0 veya daha büyük. use_stored ile 0 kayıtlı port demektir
api_keystringHayırDenemede kullanılacak API anahtarı. use_stored ile boş değer kayıtlı anahtar demektir
timeoutintegerHayırSaniye cinsinden istek zaman aşımı, 0 veya daha büyük. use_stored ile 0 kayıtlı zaman aşımı demektir
use_storedbooleanHayırKaydedilmiş yapılandırmayı, yukarıdaki boş olmayan alanlarla değiştirerek dene
network_idintegerKoşullunative_balance denemesi için sayısal zincir ağ ID'si (ör. 11155111). Yalnızca o deneme için zorunlu; ağın platformda tanımlı olması gerekir
usernamestringHayırKabul edilir ama denemede kullanılmaz
passwordstringHayırKabul edilir ama denemede kullanılmaz

Örnek​

curl --request POST \
--url '{{baseUrl}}/v2/admin/custodial-wallets/test' \
--header 'Authorization: Bearer <access_token>' \
--header 'Content-Type: application/json' \
--data '{
"provider": "rudiq",
"use_stored": true
}'

Yanıt​

{
"ok": true,
"latency_ms": 87,
"method": "connection_test",
"detail": {
"status": "ok",
"api_key_id": "3f1d2b6e-0000-4000-8000-000000000001",
"api_key_name": "apex-platform",
"node_id": "3f1d2b6e-0000-4000-8000-000000000002",
"node_name": "root",
"permissions": ["read", "transfer:create"],
"expires_at": null,
"client_certificate_required": false,
"server_time": "2026-11-09T11:08:14Z"
}
}

Yanıt Alanları​

AlanTipAçıklama
okbooleanDenemenin başarılı olup olmadığı
latency_msintegerDenemenin milisaniye cinsinden süresi
methodstringconnection_test ya da native_balance. İstemci oluşturulamadıysa boş (ör. taurus ya da API anahtarı olmayan rudiq)
network_idintegerYalnızca native_balance: okunan ağ
symbolstringYalnızca native_balance, başarıda: custody'nin bildirdiği native para birimi sembolü
detailobjectYalnızca connection_test, başarıda: custody'nin anahtar hakkında bildirdikleri
detail.statusstringCustody'nin bildirdiği durum
detail.api_key_idstringCustody'deki API anahtarının ID'si
detail.api_key_namestringCustody'deki API anahtarının adı
detail.node_idstringAnahtarın ait olduğu düğümün custody'deki ID'si
detail.node_namestringO düğümün custody'deki adı
detail.permissionsarrayAnahtara verilen kapsamlar
detail.expires_atstring | nullAnahtarın bitiş zamanı (ISO 8601); bitmiyorsa null
detail.client_certificate_requiredbooleanCustody'nin platformdan istemci sertifikası isteyip istemediği
detail.server_timestring | nullCustody'nin saati (ISO 8601)
errorstringYalnızca ok false olduğunda: denemenin neden başarısız olduğu

Hatalar​

DurumKodAçıklama
40010015Doğrulama başarısız (provider eksik, negatif bir sayı) — details alanına bakın. Ayrıca: desteklenmeyen sağlayıcı anahtarı, kaydedilmiş yapılandırma olmadan use_stored, native_balance denemesi için eksik ya da bilinmeyen network_id
40010001Hedef reddedildi: küme dışında https değil, çözümlenemiyor ya da özel veya metadata adresine çözümleniyor (domain 83)
40010002Kayıtlı bir API anahtarı ya da istemci sertifikası başka bir host veya porta sunulacaktı (domain 83)
40310005Çağıran platform sahibi değil (domain 2)

Hata biçimi ve ortak kodlar için Hatalar sayfasına bakın.