---
title: "Search Products"
method: GET
path: "/v1/search/products/"
tags: ["Search"]
---

# Search Products

`GET /v1/search/products/`

## Request

- Base URL: `http://localhost:8000`
- URL: `http://localhost:8000/v1/search/products/`
- Auth: none declared

Search the product catalog using PostgreSQL.

## Query parameters

- `q` string, nullable: Search query
- `min_price` number, nullable: Minimum price
- `max_price` number, nullable: Maximum price
- `tags` string, nullable: Comma-separated tags
- `store_id` integer, nullable: Filter by store ID
- `lat` number, nullable: Latitude for location search
- `lon` number, nullable: Longitude for location search
- `distance_km` number, nullable: Distance in kilometers for location search
- `sort_by` string, nullable: Sort by: price_asc, price_desc, name_asc, created_at, distance, random
- `include_test_data` boolean: Include mock/test data in results
- `limit` integer: Number of results to return
- `offset` integer: Number of results to skip
- `include_aggregations` boolean: Deprecated; PostgreSQL search does not provide aggregations

## Response `200`

Successful Response

- object

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/rubenayla/apis/partle-api.md) · [All operations](https://skmtc.dev/rubenayla/apis/partle-api/llms.txt) · [OpenAPI document](https://skmtc.dev/rubenayla/apis/partle-api/revisions/628cce2acee5?raw)
