Quản lý sản phẩm (PIM)Sản phẩm liên quan

Danh sách sản phẩm liên quan

Lấy danh sách sản phẩm gợi ý (sản phẩm liên quan) của một sản phẩm cụ thể.

Endpoint

GET /site/productsuggestions/{product_id}

Headers

KeyValueBắt buộcMô tả
SiteTenantId{tenant_id}CóID của công ty/tenant.

Path Parameters

TênKiểuBắt buộcMô tả
product_idintegerCóID sản phẩm gốc cần lấy danh sách gợi ý.

Workflow & Logic

API này dùng để lấy danh sách sản phẩm liên quan (product suggestions) đã được thiết lập cho một sản phẩm cụ thể. Kết quả chỉ trả về các bản ghi có trạng thái ENABLE (status = 1), sắp xếp theo thứ tự hiển thị (display_order ASC).

Quy trình xử lý

  1. Xác thực Session: Kiểm tra tenant từ header SiteTenantId. API này không yêu cầu đăng nhập — khách vãng lai cũng có thể gọi.

  2. Kiểm tra sản phẩm gốc:

    • Tìm sản phẩm theo product_id trong path parameter.
    • Nếu sản phẩm không tồn tại hoặc không thuộc company_id hiện tại → trả lỗi 422.
  3. Tự động gán bộ lọc:

    • company_id → lấy từ session.
    • product_id → lấy từ sản phẩm gốc đã xác thực.
    • status → luôn là 1 (ENABLE) — chỉ trả về các gợi ý đang kích hoạt.
  4. Sắp xếp & phân trang: Mặc định sắp xếp theo display_order ASC (thứ tự hiển thị tăng dần). Hỗ trợ phân trang qua query parameters page và limit.

  5. Trả kết quả: Trả về danh sách suggestion items kèm tổng số lượng và thông tin phân trang.

Query Parameters (tùy chọn)

TênKiểuMô tả
pageintegerTrang hiện tại. Mặc định là 1.
limitintegerSố bản ghi mỗi trang. Mặc định và tối đa là 50.

Response Schema

HTTP 200 - Thành công

{
  "total": 5,
  "currentpage": 1,
  "limit": 50,
  "items": [
    {
      "id": 1,
      "company_id": 123,
      "creator_id": 10,
      "product_suggestion_group_id": 5,
      "product_id": 789,
      "object_type": 1,
      "object_id": 456,
      "mode": 1,
      "mode_detail": [],
      "display_order": 1,
      "status": 1,
      "ip_address": "192.168.1.1",
      "date_created": 1740300000,
      "date_modified": 0
    }
  ]
}
TrườngKiểuMô tả
totalintegerSố bản ghi trả về trong trang hiện tại (bằng số phần tử của items).
currentpageintegerTrang hiện tại.
limitintegerSố bản ghi tối đa mỗi trang.
itemsarrayDanh sách suggestion items.

Mỗi item trong mảng items là một đối tượng Product Suggestion Object.

HTTP 422 - Lỗi dữ liệu

Mã lỗiMô tả
error_not_permissionSản phẩm không tồn tại hoặc không thuộc tenant hiện tại.

On this page