Skip to content

Get All Site Products

Get a paginated list of all product variants for public display. Public endpoint.

Endpoint

GET /v1/products/store/site/

Authentication

Not required (public endpoint)

Query Parameters

Parameter Type Required Description
page integer Yes Page number (starts at 1)
count integer Yes Items per page (max 100)
search string No Search by product name (case-insensitive)
currency_id integer No Currency ID for price conversion

Response

Success (200 OK)

{
  "count": 50,
  "data": [
    {
      "id": 1,
      "product_id": 5,
      "product": {
        "id": 5,
        "store_id": 3,
        "store": {...},
        "category_id": 2,
        "category": {...},
        "brand_id": 1,
        "brand": {...},
        "currency_id": 1,
        "currency": {...},
        "created": "2025-01-15T10:30:00Z"
      },
      "name_az": "Məhsul Adı",
      "name_en": "Product Name",
      "name_es": "Nombre del Producto",
      "name_de": "Produktname",
      "description_az": "Məhsul Təsviri",
      "description_en": "Product Description",
      "sku": "SKU-001",
      "stock_quantity": 100,
      "price": 29.99,
      "discount_percent": 10.0,
      "discount_price": 26.99,
      "currency_name": "AZN",
      "attributes": [
        {
          "id": 1,
          "attribute_id": 1,
          "attribute_name": "Capacity",
          "attribute_name_az": "Tutum",
          "attribute_name_en": "Capacity",
          "attribute_name_es": "Capacidad",
          "attribute_name_de": "Kapazität",
          "attribute_type": "text",
          "value": "360 L",
          "value_az": "360 L",
          "value_en": "360 L",
          "value_es": "360 L",
          "value_de": "360 L",
          "is_filter": true,
          "is_view": true
        }
      ],
      "images": [...],
      "is_wish": false,
      "created": "2025-01-15T10:30:00Z"
    }
  ]
}

Error Responses

Pagination Error (400)

{
  "error": "page cannot be zero or minus"
}

Example Request

curl -X GET "https://api.luxmart.site/v1/products/store/site/?page=1&count=20&search=laptop&currency_id=1"

Notes

  • Only returns non-deleted product variants
  • Only returns variants from non-deleted products
  • Search matches against variant name (in any language)
  • is_wish indicates if the product is in the user's wishlist (requires authentication)
  • Price is converted to specified currency if currency_id is provided
  • discount_percent is the discount percentage (0 if no discount)
  • discount_price is the final price after discount (calculated from converted price if currency_id is provided)
  • Results are ordered by ID descending (newest first)
  • This is a public endpoint, no authentication required
  • Attribute names and values include translations for all supported languages (attribute_name_az, attribute_name_en, attribute_name_es, attribute_name_de, value_az, value_en, value_es, value_de)
  • Base fields (attribute_name, value) are kept for backward compatibility