Quản lý sản phẩm (PIM)Sản phẩm yêu thích

Danh sách sản phẩm yêu thích

Lấy danh sách sản phẩm yêu thích (wishlist) của khách hàng đang đăng nhập.

Endpoint

GET /site/customerwishlists

Headers

KeyValueBắt buộcMô tả
SiteTenantId{tenant_id}CóID của công ty/tenant.
SiteAuthorization{jwt_token}CóToken định danh khách hàng sau khi đăng nhập.

Workflow & Logic

API này dùng để lấy danh sách sản phẩm yêu thích (wishlist) của khách hàng đang đăng nhập. Hỗ trợ phân trang và lọc theo product_id để kiểm tra nhanh trạng thái yêu thích của một sản phẩm cụ thể.

Quy trình xử lý

  1. Xác thực Session: Kiểm tra JWT token và xác định company_id + customer_id từ token. Yêu cầu đăng nhập bắt buộc.

  2. Tự động gán bộ lọc:

    • company_id → lấy từ session (đảm bảo chỉ lấy wishlist của tenant hiện tại).
    • customer_id → lấy từ session (đảm bảo chỉ lấy wishlist của chính khách hàng đang đăng nhập).
  3. Lọc tùy chọn: Hỗ trợ lọc thêm theo product_id qua query parameter — hữu ích khi muốn kiểm tra khách hàng đã yêu thích một sản phẩm cụ thể hay chưa.

  4. Phân trang: Mặc định sắp xếp theo id DESC (mới nhất trước), tối đa 100 bản ghi mỗi trang.

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

Query Parameters

TênKiểuBắt buộcMô tả
product_idintegerKhôngLọc theo ID sản phẩm. Dùng để kiểm tra sản phẩm đã nằm trong wishlist chưa.
pageintegerKhôngTrang hiện tại. Mặc định là 1.
limitintegerKhôngSố bản ghi mỗi trang. Mặc định và tối đa là 100.

Response Schema

HTTP 200 - Thành công

{
  "total": 15,
  "currentpage": 1,
  "limit": 100,
  "items": [
    {
      "id": 101,
      "company_id": 123,
      "creator_id": 456,
      "product_id": 789,
      "from": 1,
      "ip_address": "192.168.1.1",
      "date_created": 1740300000,
      "date_modified": 0
    }
  ]
}
TrườngKiểuMô tả
totalintegerTổng số bản ghi thỏa điều kiện lọc.
currentpageintegerTrang hiện tại.
limitintegerSố bản ghi tối đa mỗi trang.
itemsarrayDanh sách wishlist items.

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

HTTP 401 - Unauthorized

Nếu không gửi token (error_customer_login_required), token không hợp lệ/hết hạn/đã đăng xuất (error_jwt_hash_not_found, error_jwt_expired, error_jwt_blacklisted...) hoặc là token của khách hàng thuộc shop khác (error_customer_company_mismatch). Xem Giới thiệu.

On this page