---
title: "Browse and search marketplace stores"
method: GET
path: "/v1/public/stores"
tags: ["Public API", "Public API", "Stores"]
---

# Browse and search marketplace stores

`GET /v1/public/stores`

## Request

- Base URL: `http://localhost:8000`
- URL: `http://localhost:8000/v1/public/stores`
- Auth: none declared

Search and filter stores in the Partle marketplace.
    No authentication required.

    Perfect for AI assistants to help users find stores, get location information,
    or browse available retailers. Supports text search, tag filtering, and
    **location-based search** to find stores near a given coordinate.

    **Use Cases:**
    - "Show me electronics stores" → `?q=electronics`
    - "Find stores near Madrid" → `?lat=40.42&lon=-3.70&radius_km=15`
    - "Hardware stores near me" → `?q=hardware&lat=41.38&lon=2.17`

    **Rate Limit:** 100 requests per hour per IP

## Query parameters

- `q` string, nullable: Search term for store name, address, or website (e.g., 'Bauhaus', 'Barcelona')
- `tags` string, nullable: Filter by tags, comma-separated (e.g., 'electronics,hardware')
- `lat` number, nullable: Latitude for location-based search (e.g., 40.42 for Madrid)
- `lon` number, nullable: Longitude for location-based search (e.g., -3.70 for Madrid)
- `radius_km` number, nullable: Search radius in kilometers (default: 25, e.g., 10 for nearby only)
- `limit` integer: Number of stores to return (1-50, default: 20)
- `offset` integer: Number of stores to skip for pagination (default: 0)

## Response `200`

List of stores matching the search criteria

- unknown

## Other responses

- `422`: Validation Error
- `429`: Rate limit exceeded

---

[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/2e12d4d3c6dd?raw)
