62 uç · /api/shop/v1/customers
İstek örnekleri ucun GERÇEK metodu ve yolundan üretilir. 62 ucun elle doğrulanmış gövde örneği henüz yok; o uçlarda iskelet gövdesizdir — uydurma bir alan yazmıyoruz.
customer_idaddress_idcurl -X PUT "https://{slug}.shop.blesyum.app/api/shop/v1/admin/customers/<customer_id>/addresses/<address_id>" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}customer_idserver-side üretilir, dönmez. customer_token verilirse müşteriye bağlanır.
curl -X POST "https://{slug}.shop.blesyum.app/api/shop/v1/admin/customers/<customer_id>/crm-link" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}customer_idcurl -X GET "https://{slug}.shop.blesyum.app/api/shop/v1/admin/customers/<customer_id>/crm-link" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}customer_idcurl -X POST "https://{slug}.shop.blesyum.app/api/shop/v1/admin/customers/<customer_id>/crm-link/confirm" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}curl -X GET "https://{slug}.shop.blesyum.app/api/shop/v1/admin/customers/<customer_id>/wallet" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}customer_idcurl -X POST "https://{slug}.shop.blesyum.app/api/shop/v1/admin/customers/<customer_id>/wallet/adjust" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}idcurl -X POST "https://{slug}.shop.blesyum.app/api/shop/v1/admin/customers/<id>/password-reset" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}idcurl -X POST "https://{slug}.shop.blesyum.app/api/shop/v1/admin/customers/<id>/privacy/erase" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}idcurl -X GET "https://{slug}.shop.blesyum.app/api/shop/v1/admin/customers/<id>/privacy/export" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}curl -X GET "https://{slug}.shop.blesyum.app/api/shop/v1/admin/customers/<id>/support-context" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}curl -X POST "https://{slug}.shop.blesyum.app/api/shop/v1/storefront/customers/email/change/confirm" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}curl -X POST "https://{slug}.shop.blesyum.app/api/shop/v1/storefront/customers/email/change/request" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}curl -X POST "https://{slug}.shop.blesyum.app/api/shop/v1/storefront/customers/email/verify/confirm" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}Yanıt jetonu TAŞIMAZ (üretimde); jeton bildirim kanalıyla gider. Üretim-dışında test/geliştirme için `verification_token` döner — parola-sıfırlamanın TF21-öncesi deseniyle aynı.
curl -X POST "https://{slug}.shop.blesyum.app/api/shop/v1/storefront/customers/email/verify/request" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}curl -X POST "https://{slug}.shop.blesyum.app/api/shop/v1/storefront/customers/magic-link/verify" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}curl -X GET "https://{slug}.shop.blesyum.app/api/shop/v1/storefront/customers/me" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}order_numbercurl -X GET "https://{slug}.shop.blesyum.app/api/shop/v1/storefront/customers/orders/<order_number>" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}order_numbercurl -X POST "https://{slug}.shop.blesyum.app/api/shop/v1/storefront/customers/orders/<order_number>/reorder" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}curl -X POST "https://{slug}.shop.blesyum.app/api/shop/v1/storefront/customers/passkey/<id>/remove" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}curl -X POST "https://{slug}.shop.blesyum.app/api/shop/v1/storefront/customers/passkey/authenticate/finish" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}404-yerine 401-tektip (enumeration sızdırmaz).
curl -X POST "https://{slug}.shop.blesyum.app/api/shop/v1/storefront/customers/passkey/authenticate/start" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}curl -X POST "https://{slug}.shop.blesyum.app/api/shop/v1/storefront/customers/passkey/list" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}curl -X POST "https://{slug}.shop.blesyum.app/api/shop/v1/storefront/customers/passkey/register/finish" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}curl -X POST "https://{slug}.shop.blesyum.app/api/shop/v1/storefront/customers/passkey/register/start" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}curl -X POST "https://{slug}.shop.blesyum.app/api/shop/v1/storefront/customers/privacy/delete" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}curl -X POST "https://{slug}.shop.blesyum.app/api/shop/v1/storefront/customers/privacy/export" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}curl -X POST "https://{slug}.shop.blesyum.app/api/shop/v1/storefront/customers/recently-viewed/merge" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}curl -X GET "https://{slug}.shop.blesyum.app/api/shop/v1/storefront/customers/referrals" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}aboneliği eklenir. Geçersiz platform → 400.
curl -X POST "https://{slug}.shop.blesyum.app/api/shop/v1/storefront/customers/register" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}ama response'ta dönmez.
curl -X POST "https://{slug}.shop.blesyum.app/api/shop/v1/storefront/customers/returns" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}idcurl -X POST "https://{slug}.shop.blesyum.app/api/shop/v1/storefront/customers/returns/<id>/attachments" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}idcurl -X GET "https://{slug}.shop.blesyum.app/api/shop/v1/storefront/customers/returns/<id>/attachments" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}çözülür, sipariş SAHİPLİK doğrulanır (başkasının siparişi sorgulanamaz), sonra return_policy çekirdeği ile uygunluk/pencere/restocking-fee döner. Admin-simülatörle AYNI motoru kullanır.
curl -X POST "https://{slug}.shop.blesyum.app/api/shop/v1/storefront/customers/returns/eligibility" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}curl -X POST "https://{slug}.shop.blesyum.app/api/shop/v1/storefront/customers/sessions/revoke-others" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}provideryoksa/zaten-sonuçlanmışsa 404. ⚠ **GÜVENLİK — stub ACS üretimde kimlik DOĞRULAYAMAZ (fail-closed):** Bu uç ağa hiç çıkmaz; gerçek banka ACS'i (imzalı sonuç) TF21'de gelir. `outcome` istekten okunduğu için, üretimde serbest bıraksaydık saldırgan `/3ds/init` (acs_ref al) + `/3ds/callback` (outcome=success) ile `threeds_status='authenticated'` yazıp risk step-up kapısını KENDİ KENDİNE geçerdi (mock-social deseninin ödeme karşılığı). Bu yüzden ÜRETİMDE stub asla `authenticated` yazmaz → step-up tamamlanamaz ve sipariş fail-CLOSED bloke kalır (gerçek step-up için TF21 ACS gerekir). Üretim-dışında (sandbox/dev) tam akış test edilebilir kalır.
curl -X GET "https://{slug}.shop.blesyum.app/api/shop/v1/storefront/customers/social/<provider>/callback" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}providercurl -X GET "https://{slug}.shop.blesyum.app/api/shop/v1/storefront/customers/social/<provider>/start" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}idcurl -X POST "https://{slug}.shop.blesyum.app/api/shop/v1/storefront/customers/social/identities/<id>/unlink" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}curl -X POST "https://{slug}.shop.blesyum.app/api/shop/v1/storefront/customers/subscriptions/<id>/action" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}