Ana içeriğe geç

Kullanıcı Cüzdanından Para Çekme

Kullanıcının cüzdanlarından birinden harici bir adrese native coin ya da para birimi token'ı gönderir. Cüzdanı (wallet_id) ve ağı (network_id) çağıran seçer; sunucu hiçbir zaman kullanıcının başka bir cüzdanına geri düşmez. Cüzdan kullanıcıya ait olmalı ve ağın zincirinde bulunmalıdır. Token çekiminde network_id, para birimi token'ının kendi ağı olmalıdır.

Çağrı asenkrondur. 10 (Withdraw) tipinde, 1 (Started) durumunda bir kullanıcı işlemi oluşturur ve ID'sini döndürür. status değeri 3 (Done, hash dolu) ya da 4 (Error, error dolu) olana kadar Kullanıcı İşlemini Getir ile sorgulayın. Transfer, belirtilen cüzdandan custody sağlayıcısı tarafından gerçekleştirilir.

Gerekli izin: user:withdraw

İstek​

POST /v2/users/{user_id}/withdraw

Parametreler​

AdTipKonumAçıklama
user_idstringpathZorunlu. Kullanıcı ID'si

Başlıklar​

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

Gövde​

AlanTipZorunluAçıklama
wallet_idstringEvetFonların çıkacağı kullanıcı cüzdanı (bkz. Kullanıcı Cüzdanlarını Listele)
network_idstringEvetTransferin çalışacağı ağ. Cüzdanın zincirinde olmalı; token çekiminde para birimi token'ının ağı olmalı
addressstringEvetHedef adres (0x + 40 hex karakter)
amountstringEvetGönderilecek tutar, ondalık string olarak. Sıfırdan büyük olmalı ve varlığın ondalık basamağından (para birimi token'ının decimals değeri ya da ağın native coin ondalığı) fazla basamak taşımamalı. Bkz. Tutarlar ve Yüzdeler
currency_token_idstringHayırGönderilecek para birimi token'ı. Ağın native coin'ini göndermek için göndermeyin

Örnek​

curl --request POST \
--url '{{baseUrl}}/v2/users/6a87455ad5f439809d488ac3/withdraw' \
--header 'Authorization: Bearer <access_token>' \
--header 'Content-Type: application/json' \
--data '{
"wallet_id": "6a8754e187be1d0e22aa6d83",
"network_id": "6740e0a20000000000000103",
"address": "0x4A096E485281DE1B8bF11A511D39d5B128EF7C4b",
"amount": "10.5",
"currency_token_id": "6913307ec95e268b239b2d8b"
}'

Yanıt​

{
"transaction_id": "6a8b5e13f9129816a6cc7a12"
}

Yanıt Alanları​

AlanTipAçıklama
transaction_idstringKullanıcı İşlemini Getir ile sorgulanacak kullanıcı işlemi. data alanı address, amount ve token çekiminde currency_token_id taşır

Hatalar​

DurumKodAçıklama
40010015Doğrulama hatası (wallet_id / network_id / address eksik, address bir Ethereum adresi değil, amount eksik, pozitif değil ya da fazla ondalıklı) — details alanına bakın
40010016user_id, wallet_id ya da network_id geçerli bir ID değil
40010000currency_token_id geçerli bir ID değil
40010001Kullanıcı bulunamadı (domain 1)
40010015currency token not found, network not found ya da network_id must be the currency token's network
40010015Domain 1: wallet does not belong to this user on this network — cüzdan yok, bu kullanıcıya ait değil ya da ağın zincirinde değil

Son satır, ortak doğrulama hatasıyla aynı 10015 numarasını paylaşır; ikisini domain ile ayırt edin (1 ve 100). Kabulden sonra oluşan bir hata (örneğin custody sağlayıcısının transferi reddetmesi) HTTP hatasına dönüşmez: işlem 4 durumunda biter ve sebep error alanına yazılır.

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