Store Gate API
Store Gate هو واجهة GraphQL API الخاصة بقمرة للوصول إلى بيانات المتجر. استخدمه لبناء تطبيقات تتفاعل مع المنتجات والمجموعات وسلة التسوق والدفع وبيانات العملاء.
Endpoint
POST https://<store-subdomain>.qumra.store/graphql
المصادقة
أضف الـ token في ترويسة Authorization:
Authorization: Bearer <TOKEN>
مثال سريع
curl -X POST https://my-store.qumra.store/graphql \
-H "Content-Type: application/json" \
-H "Authorization: Bearer <TOKEN>" \
-d '{"query": "{ store { name currency } }"}'
const response = await fetch('https://my-store.qumra.store/graphql', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'Authorization': `Bearer ${token}`
},
body: JSON.stringify({
query: `{ store { name currency } }`
})
});
const data = await response.json();
الاستعلامات المتاحة
| الفئة | العمليات |
|---|---|
| المنتجات | الحصول على المنتجات، التصفية، البحث |
| المجموعات | الحصول على المجموعات ومنتجاتها |
| السلة | إضافة، تحديث، حذف العناصر |
| الدفع | إنشاء checkout، حساب الشحن |
| العميل | تسجيل الدخول، التسجيل، العناوين |
| الطلبات | إنشاء وتتبع الطلبات |
| قائمة الرغبات | إدارة قوائم الرغبات |
أمثلة على الاستعلامات
الحصول على المنتجات
query {
products(first: 10) {
edges {
node {
id
title
price
images {
src
}
}
}
}
}
الإضافة إلى السلة
mutation {
addToCart(input: {
productId: "123"
quantity: 1
}) {
success
cart {
items {
title
quantity
}
}
}
}
الحصول على بيانات العميل
query {
customer {
id
email
firstName
lastName
addresses {
city
country
}
}
}
تنسيق الاستجابة
جميع الاستجابات تتبع هذا الهيكل:
{
"data": {
"products": { ... }
},
"errors": []
}
معالجة الأخطاء
تحقق من مصفوفة errors لمعرفة أي مشاكل:
{
"errors": [
{
"message": "Product not found",
"path": ["product"]
}
]
}