# Gamesir — Wrapped API

> **You are on:** `https://api.paywithlocus.com/api` | [llms.txt](https://paywithlocus.com/llms.txt) | [docs](https://docs.paywithlocus.com)
>
> Locus runs on multiple environments -- make sure every URL you call matches your expected environment.
> | Environment | Landing | API | Docs |
> |---|---|---|---|
> | Production | paywithlocus.com | api.paywithlocus.com | docs.paywithlocus.com |
> | Beta | beta.paywithlocus.com | api.beta.paywithlocus.com | docs.paywithlocus.com |
> | Stage | stage.paywithlocus.com | api.stage.paywithlocus.com | docs.paywithlocus.com |
>
> If the API URL above doesn't match your expected environment, re-fetch this file from the correct domain.

> Browse and search GameSir's complete product catalog, including gaming controllers, accessories, and hall effect products across different collections and categories. Find new arrivals, top-rated items, sale products, and discover related products with detailed specifications and variants.

**Category:** E-commerce | **Website:** [gamesir.com/](https://gamesir.com/) | **Docs:** [parse.bot/marketplace/f26ff734-cd18-41e9-a4b1-18f5b51288ca/gamesir-com-api](https://parse.bot/marketplace/f26ff734-cd18-41e9-a4b1-18f5b51288ca/gamesir-com-api)

Pay-per-use API proxy. Each call is automatically billed to your wallet in USDC.

## Access

**Base URL:** `https://api.paywithlocus.com/api/wrapped/parse-gamesir-com-api-f26ff734/`
**Auth:** `Authorization: Bearer <LOCUS_API_KEY>`

## Endpoints

### get_accessories

Fetch all accessories products from the 'gamesir-accessories' collection.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `limit` | integer | No | Max products to return. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-gamesir-com-api-f26ff734/get_accessories \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"limit":"<integer>"}'
```

### get_all_collections

Retrieve all product collections/categories available on the site. Returns collection objects with id, handle, title, description, and product count.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `page` | integer | No | Page number. All collections fit on page 1; higher pages return empty results. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-gamesir-com-api-f26ff734/get_all_collections \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"page":"<integer>"}'
```

### get_all_products

Fetch all products from the store with names, handles, prices, variants, images, tags, availability, and descriptions. Paginates through the full catalog via page number; each page returns up to `limit` products.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `limit` | integer | No | Max products to return per page (max 250). |
| `page` | integer | No | Page number for pagination (1-based). |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-gamesir-com-api-f26ff734/get_all_products \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"limit":"<integer>","page":"<integer>"}'
```

### get_hall_effect_products

Fetch products in the 'Hall Effect Tech' collection (hall-tech-products handle). These are controllers featuring Hall Effect sensor technology.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `limit` | integer | No | Max products to return. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-gamesir-com-api-f26ff734/get_hall_effect_products \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"limit":"<integer>"}'
```

### get_new_arrivals

Fetch the newest/recently added products from the 'new-arrivals' collection. Pagination beyond page 1 may return empty results if the collection is small.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `limit` | integer | No | Max products to return per page. |
| `page` | integer | No | Page number (1-based). |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-gamesir-com-api-f26ff734/get_new_arrivals \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"limit":"<integer>","page":"<integer>"}'
```

### get_product_detail

Fetch full detail for a single product by its handle slug, including all variants, images, options, and HTML description. Returns input_not_found if the handle does not match a published product.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `product_handle` | string | Yes | Product handle slug (e.g. 'gamesir-g7-se', 'gamesir-g7-pro'). |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-gamesir-com-api-f26ff734/get_product_detail \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"product_handle":"<string>"}'
```

### get_product_variants

Extract all variants of a specific product, including prices, SKUs, availability, and options. Returns input_not_found if the product handle does not exist.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `product_handle` | string | Yes | Product handle slug (e.g. 'gamesir-g7-se'). |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-gamesir-com-api-f26ff734/get_product_variants \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"product_handle":"<string>"}'
```

### get_products_by_collection

Fetch products filtered by collection handle. Returns products from the specified Shopify collection. Use get_all_collections to discover available handles.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `collection_handle` | string | Yes | The collection handle slug (e.g. 'gamesir-accessories', 'all-products-1', 'hot-sale', 'hall-tech-products', 'new-arrivals'). |
| `limit` | integer | No | Max products to return per page (max 250). |
| `page` | integer | No | Page number for pagination (1-based). |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-gamesir-com-api-f26ff734/get_products_by_collection \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"collection_handle":"<string>","limit":"<integer>","page":"<integer>"}'
```

### get_related_products

Retrieve related/recommended products for a given product ID using Shopify's recommendations API. The product_id is a numeric ID obtainable from any product listing or detail endpoint.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `limit` | integer | No | Max recommendations to return. |
| `product_id` | string | Yes | Numeric product ID (e.g. '8122628276458'). Obtainable from get_product_detail or get_all_products results. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-gamesir-com-api-f26ff734/get_related_products \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"limit":"<integer>","product_id":"<string>"}'
```

### get_sale_products

Fetch products currently on sale from a designated sale collection. Defaults to the 'hot-sale' collection.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `collection_handle` | string | No | Handle of the sale collection. Use get_all_collections to discover current sale collection handles. |
| `limit` | integer | No | Max products to return. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-gamesir-com-api-f26ff734/get_sale_products \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"collection_handle":"<string>","limit":"<integer>"}'
```

### get_top_rated_products

Fetch products from the 'hot-sale' collection, representing popular/top-rated products.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `limit` | integer | No | Max products to return. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-gamesir-com-api-f26ff734/get_top_rated_products \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"limit":"<integer>"}'
```

### search_products

Search for products by keyword using Shopify's suggest API. Returns matching products with titles, handles, prices, images, and availability.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `query` | string | Yes | Search keyword (e.g. 'controller', 'G7', 'wireless'). |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-gamesir-com-api-f26ff734/search_products \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"query":"<string>"}'
```
