Cüzdanlı Kullanıcı Aktarımı (Tekil)
Halihazırda cüzdan adresi olan tek bir kullanıcıyı sisteme aktarır. Cüzdan adresi olduğu gibi (küçük harfe normalize edilerek) saklanır ve kyc_sent=true değilse KYC token event'i yayınlanır.
İstek
POST /v2/users/users/migrate/with-wallet
Başlıklar
| Ad | Açıklama |
|---|---|
Authorization | Gerekli. Kimlik doğrulama için Bearer token |
Content-Type | Gerekli. application/json olmalı |
İstek Gövdesi
| Alan | Tip | Açıklama |
|---|---|---|
wallet_address | string | Gerekli. Kullanıcının cüzdan adresi. Küçük harfe normalize edilir. |
email | string | Opsiyonel. Standart tanımlayıcı. external_id yoksa zorunludur. |
external_id | string | Opsiyonel. KVKK kapsamında kişisel veri saklanmayan modlar için opak tanımlayıcı. email yoksa zorunludur. |
name | string | Opsiyonel. Yoksa kayıt edilmez (boş alan oluşturulmaz). |
surname | string | Opsiyonel. Yoksa kayıt edilmez. |
kyc_sent | boolean | Opsiyonel, varsayılan false. true olduğunda KYC token event'i yayınlanmaz ve kullanıcı zaten KYC doğrulanmış olarak işaretlenir. |
email veya external_id alanlarından en az biri gönderilmelidir.
Örnek — Klasik mod
curl --location '{{baseUrl}}/v2/users/users/migrate/with-wallet' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer <token>' \
--data-raw '{
"email": "john@example.com",
"name": "John",
"surname": "Doe",
"wallet_address": "0xAbCdEf0123456789ABCDEF0123456789ABCDEF01",
"kyc_sent": false
}'
Örnek — KVKK modu (yalnızca external_id)
curl --location '{{baseUrl}}/v2/users/users/migrate/with-wallet' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer <token>' \
--data-raw '{
"external_id": "EXT-1042",
"wallet_address": "0xAbCdEf0123456789ABCDEF0123456789ABCDEF01",
"kyc_sent": true
}'
Yanıt
Durum Kodu: 201 Created
{
"id": "6913872755654191dede37da",
"external_id": "EXT-1042",
"name": "",
"surname": "",
"email": "",
"address": "0xabcdef0123456789abcdef0123456789abcdef01",
"identity_number": "",
"kyc": {
"is_verified": true,
"token_sent": true,
"token_sent_at": "2026-06-01T12:34:56Z",
"token_tx_hash": null
}
}
Yanıt Alanları
| Alan | Tip | Açıklama |
|---|---|---|
id | string | Kullanıcı için benzersiz tanımlayıcı. |
external_id | string | null | Gönderilen external tanımlayıcı. |
email | string | Gönderilen email (gönderilmediyse boş string). |
name / surname | string | Gönderilen kişisel bilgi (gönderilmediyse boş string). |
address | string | Saklanan cüzdan adresi (küçük harfe normalize). |
kyc | object | null | kyc_sent=true gönderildiğinde doldurulur. Aksi takdirde null. |
Hata Durumları
| HTTP | Reason | Anlam |
|---|---|---|
| 400 | missing_email_and_external_id | Tanımlayıcılardan hiçbiri gönderilmedi. |
| 400 | duplicate_email | Aynı email'e sahip kullanıcı zaten var. |
| 400 | duplicate_external_id | Aynı external_id değerine sahip kullanıcı zaten var. |
| 400 | duplicate_wallet | Aynı cüzdan adresine sahip kullanıcı zaten var. |
| 401 | — | Geçersiz veya eksik kimlik doğrulama token'ı. |
| 500 | — | Sunucu hatası. |
Bireysel hataların toplu işlemi durdurmaması gereken senaryolar için Bulk endpoint veya CSV yükleme endpoint'ini kullanın.