customerLogin
نظرة عامة
ابدأ تسجيل دخول العميل باستخدام CustomerLoginInput. حسب الـ backend الخاص بك، قد يُفعّل هذا تدفقات OTP، روابط تسجيل الدخول، أو يُعيد رمزاً فوراً.
- النوع: GraphQL Mutation
- Endpoint: https://subdomain.com
- المصادقة: غير مطلوبة (نقطة دخول تسجيل الدخول العامة)
Mutation
mutation CustomerLogin($input: CustomerLoginInput!) {
customerLogin(input: $input) {
success
message
token
data
}
}
المتغيرات
{
"input": {
"identifier": "user@example.com",
"type": "email",
"country": "SA"
}
}
identifierيمكن أن يكون بريد إلكتروني/هاتف حسبtype. أضفcountryإذا كان الـ backend يستخدمه لأكواد الهاتف أو اللغة.
أمثلة
- cURL
- JavaScript (fetch)
curl -X POST \
https://subdomain.com\
-H "Content-Type": "application/json" \
--data-binary @- << 'EOF'
{
"query": "mutation CustomerLogin($input: CustomerLoginInput!) { customerLogin(input: $input) { success message token data } }",
"variables": {
"input": {
"identifier": "user@example.com",
"type": "email",
"country": "SA"
}
}
}
EOF
const res = await fetch('https://subdomain.com', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({
query: `
mutation CustomerLogin($input: CustomerLoginInput!) {
customerLogin(input: $input) {
success
message
token
data
}
}
`,
variables: {
input: {
identifier: 'user@example.com',
type: 'email',
country: 'SA',
},
},
}),
});
const json = await res.json();
ملاحظات
- إذا كان API يرسل أكواد OTP، قد يكون
tokenفارغاً حتى يتم استدعاء mutation التحقق من OTP. - يمكن أن يحتوي
dataعلى بيانات وصفية إضافية (مثل ما إذا كان المستخدم موجوداً)؛ افحصه حسب عقد الـ backend الخاص بك. - خزّن أي
tokenمُعاد بشكل آمن (مثل في cookies HTTP-only) للمكالمات المصادق عليها اللاحقة.