Cüzdanlı Kullanıcı Aktarımı (Toplu)
Zaten bir adresi olan en fazla 500 kullanıcıyı tek istekte aktarır. Her satır tekil endpoint gibi işlenir ve ayrı raporlanır: bazı satırlar atlansa ya da başarısız olsa bile istek 200 döner. Önce tüm satırlar doğrulanır; geçersiz tek bir satır (örneğin chain_id eksik) isteğin tamamını reddeder.
Gerekli izin: user:create
İstek
POST /v2/users/migrate/with-wallet/bulk
Başlıklar
| Ad | Açıklama |
|---|---|
Authorization | Zorunlu. Bearer <access_token> |
Content-Type | Zorunlu. application/json |
Gövde
| Alan | Tip | Zorunlu | Açıklama |
|---|---|---|---|
users | array | Evet | 1–500 satır; her biri tekil endpoint alanlarını taşır (her satırda wallet_address ve chain_id zorunlu) |
Örnek
curl --request POST \
--url '{{baseUrl}}/v2/users/migrate/with-wallet/bulk' \
--header 'Authorization: Bearer <access_token>' \
--header 'Content-Type: application/json' \
--data '{
"users": [
{
"email": "alice@example.com",
"name": "Alice",
"surname": "Smith",
"wallet_address": "0x1111111111111111111111111111111111111111",
"chain_id": "6740e0a10000000000000101"
},
{
"external_id": "EXT-2042",
"wallet_address": "0x2222222222222222222222222222222222222222",
"chain_id": "6740e0a10000000000000101",
"kyc_sent": true
},
{
"email": "dup@example.com",
"wallet_address": "0x3333333333333333333333333333333333333333",
"chain_id": "6740e0a10000000000000101"
}
]
}'
Yanıt
{
"total": 3,
"success": 2,
"skipped": 1,
"failed": 0,
"results": [
{ "email": "alice@example.com", "user_id": "6913872755654191dede37da", "status": "created" },
{ "external_id": "EXT-2042", "user_id": "6913872755654191dede37db", "status": "created" },
{ "email": "dup@example.com", "status": "skipped", "reason": "duplicate_email" }
]
}
Yanıt Alanları
| Alan | Tip | Açıklama |
|---|---|---|
total | integer | İstekteki satır sayısı |
success | integer | Kullanıcı oluşturan satırlar |
skipped | integer | Bilinen bir sebeple atlanan satırlar |
failed | integer | Beklenmedik şekilde başarısız olan satırlar |
results | array | İstek sırasıyla satır başına bir kayıt |
results[].email | string | Satırın e-postası; satır göndermediyse gelmez |
results[].external_id | string | Satırın external_id değeri; satır göndermediyse gelmez |
results[].user_id | string | Oluşturulan kullanıcının ID'si; yalnızca created satırlarda |
results[].status | string | created, skipped ya da failed |
results[].reason | string | skipped satırlarda: missing_email_and_external_id, duplicate_email, duplicate_external_id, duplicate_wallet ya da invalid_chain. failed satırlarda: serbest metin hata |
Hatalar
| Durum | Kod | Açıklama |
|---|---|---|
| 400 | 10015 | Doğrulama hatası (boş users, 500'den fazla satır, wallet_address / chain_id içermeyen bir satır, hatalı email) — details alanına bakın |
Hata biçimi ve ortak kodlar için Hatalar sayfasına bakın.