محصولات | Layatanahi
dr

Api

محصولات#

GET /api/v2/products کاتالوگ محصولات تجارت را برمی‌گرداند. یک محصول فقط وقتی ظاهر می‌شود که دست‌کم یک شعبهٔ دیدنی برای اعتبارنامه یک رشته موجودی فعال برای یکی از واریانت‌هایش داشته باشد، که کاتالوگ را با آنچه تجارت واقعاً می‌تواند بفروشد هم‌خوان نگه می‌دارد.

اجازه#

الزاممقدار
صلاحیتproducts:read
اجازه صفحهinventory.products.read
رفتار شعبهسطح کل تجارت یا شعبه‌فیلترشده

پارامترهای کوئری#

پارامترنوعپیش‌فرضیادداشت
searchstring ≤ 100—با کوک محصول، مدل یا نام ترجمه‌شده مطابق می‌شود
language_codestringApp localeکود دو حرفی، اختیاریاً با یک منطقه
pageinteger ≥ 11شماره صفحه
per_pageinteger 1–10025اندازه صفحه

برای محصولات فیلتر تاریخ وجود ندارد. جستجو یک تطبیق LIKE است، بنابراین اصطلاحات کوتاه نتیجه‌های گسترده برمی‌گردانند.

درخواست#

bash
curl -s "https://app.example.com/api/v2/products?search=router&language_code=fa_AF" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Accept: application/json"

پاسخ#

json
{
  "data": [
    {
      "id": 128,
      "code": "NET-0042",
      "product_model": "AX3000",
      "product_name": "روتر ای‌ایکس ۳۰۰۰"
    }
  ],
  "links": {
    "first": "...",
    "last": "...",
    "prev": null,
    "next": null
  },
  "meta": {
    "current_page": 1,
    "last_page": 1,
    "per_page": 25,
    "total": 1
  }
}

فیلدها#

فیلدمعنا
idشناسه محصول، باثبات بین زبان‌ها
codeکود داخلی محصول
product_modelمدل تولیدکننده
product_nameنام ترجمه‌شده، با بازگشت به کوک محصول

نام محصول برای زبان درخواستی تعیین می‌شود. اگر ترجمه‌ای وجود نداشته باشد، API به‌جای رشته خالی کود محصول را برمی‌گرداند.

مدیریت زبان#

  1. اگر language_code فرستاده شود، نرمال می‌شود (برای مثال fa-AF به fa_AF تبدیل می‌شود).
  2. اگر حذف شود، locale برنامه استفاده می‌شود.
  3. اگر زبان ناشناخته باشد، نخستین زبان در دیتابیس استفاده می‌شود.
  4. درون یک زبان، یک ترجمه به‌صورت قطعی (deterministic) انتخاب می‌شود.

زبان را در یکپارچه‌سازی ثابت (pin) کنید تا نام‌ها با تغییر زبان رابط کاربری یک کاربر عوض نشوند.

رفتار دامنه#

  • اعتبارنامه سطح کل تجارت: محصولات موجود در هر شعبه فعال.
  • اعتبارنامه با دامنه شعبه: فقط محصولات موجود در شعبه‌های اعطاشده.
  • X-Business-Branch نتیجه را به همان شعبه تنگ می‌کند.

محصولی که موجودی‌اش فقط در شعبه‌ای است که شما نمی‌توانید ببینید، هرگز ظاهر نمی‌شود، حتی اگر کوکش را بدانید.

صفحه‌بندی و ترتیب#

محصولات بر اساس id صعودی مرتب می‌شوند که بین صفحه‌ها باثبات است. از per_page تا 100 استفاده کنید و پیوند next را دنبال نمایید. به صفحه‌بندی و فیلترها مراجعه کنید.

استفاده‌های رایج#

استفادهروش
همگام‌سازی کاتالوگهمه محصولات را صفحه‌به‌صفحه بخوانید، id را به‌عنوان کلید خارجی ذخیره کنید
جستجوی بارکدبا code یا مدل جستجو کنید
کاتالوگ بومی‌شدهبا یک language_code ثابت درخواست کنید
بررسی دسترس‌پذیریبا /api/v2/stock برای مقدارها ترکیب کنید

محدودیت‌ها#

  • فقط‌خواندنی: محصولات نمی‌توانند ایجاد یا ویرایش شوند.
  • قیمت‌های تمام‌شده و داده‌های تأمین‌کننده افشا نمی‌شوند.
  • فقط محصولات با موجودی فعال در یک شعبه دیدنی ظاهر می‌شوند.
  • search وایلدکارت نمی‌پذیرد؛ آن یک تطبیق زیررشته‌ای است.

صفحات مرتبط#