POST
/
catalog
/
products
/
search
Search products
curl --request POST \
  --url https://staging.api.commercengine.io/api/v1/{store_id}/storefront/catalog/products/search \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '{
  "query": "<string>",
  "page": 1,
  "limit": 25,
  "facets": [
    "<string>"
  ]
}'
{
  "message": "<string>",
  "success": true,
  "content": {
    "skus": [
      {
        "product_id": "<string>",
        "variant_id": "<string>",
        "sku": "<string>",
        "slug": "<string>",
        "product_name": "<string>",
        "variant_name": "<string>",
        "product_type": "physical",
        "short_description": "<string>",
        "active": true,
        "stock_available": true,
        "backorder": true,
        "on_offer": true,
        "on_subscription": true,
        "on_promotion": true,
        "category_ids": [
          "<string>"
        ],
        "tags": [
          "<string>"
        ],
        "reviews_count": 123,
        "reviews_rating_sum": 123,
        "attributes": [
          {
            "id": "<string>",
            "name": "<string>",
            "key": "<string>",
            "type": "color",
            "value": [
              {
                "name": "<string>",
                "hexcode": "<string>"
              }
            ]
          }
        ],
        "images": [
          {
            "id": "<string>",
            "title": "<string>",
            "alternate_text": "<string>",
            "sort_order": 123,
            "url_tiny": "<string>",
            "url_thumbnail": "<string>",
            "url_standard": "<string>",
            "url_zoom": "<string>"
          }
        ],
        "pricing": {
          "currency": "<string>",
          "tax_type": "GST",
          "tax_rate": 123,
          "price_including_tax": false,
          "listing_price": 123,
          "selling_price": 123,
          "min_order_quantity": 1,
          "max_order_quantity": 123,
          "incremental_quantity": 1,
          "selling_price_excluding_tax": 123
        },
        "promotion": {
          "id": "<string>",
          "starts_at": "2023-11-07T05:31:56Z",
          "expires_at": "2023-11-07T05:31:56Z",
          "details": {
            "promotion_type": "discount",
            "discount_type": "percentage",
            "discount_percent": 123,
            "discount_fixed_amount": 123
          }
        },
        "subscription": [
          {
            "id": "<string>",
            "subscription_plan": "<string>",
            "subscription_price": 123,
            "billing_interval": 123,
            "billing_frequency": "monthly",
            "billing_limit": 123,
            "fulfill_separately": false,
            "order_interval": 123,
            "order_frequency": "monthly",
            "order_limit": 123,
            "minimum_quantity": 123,
            "billing_trial_days": 123
          }
        ],
        "associated_options": {
          "background_color": {
            "name": "Background Color",
            "value": {
              "name": "Blue",
              "hexcode": "#0000FF"
            },
            "type": "color"
          },
          "size": {
            "name": "Size",
            "value": "Large",
            "type": "single-select"
          }
        },
        "shipping": {
          "handling_charges_including_tax": 123,
          "handling_charges_excluding_tax": 123,
          "tax_type": "<string>",
          "tax_rate": 123
        }
      }
    ],
    "facet_distribution": {},
    "facet_stats": {},
    "pagination": {
      "total_records": 252,
      "total_pages": 26,
      "previous_page": null,
      "next_page": 2,
      "limit": 10
    }
  }
}

Authorizations

Authorization
string
header
required

Access token

Headers

x-customer-group-id
string

This param is used to determine product pricing, promotions, and subscription rates. If a valid customer group id is provided, pricing details will be retrieved accordingly. If no matching data is found for the specified customer group id, the system will fall back to the default customer group id. If no data is found for the default group either, the highest applicable price will be returned.

Body

application/json

Payload for searching products.

query
string
required

String for searching products, considers the first ten words of any given search query.

page
integer
default:1

To request a specific page of results.

limit
integer
default:25

Maximum number of records returned for a page.

facets
string[]

provide list of attributes for specific facets or * for all facets.

For specific facets: ["size", "color", "brand"]
For all facets: ["*"]

Response

Success response

message
string
required
success
boolean
required
content
object
required