# Lovingtan (us.lovingtan.com) product data API

> Search Lovingtan products with StoreRouter’s API. Get prices, images, and details as JSON. See coverage and curl, Python, and TypeScript examples.

- Catalog key: `lovingtan` (pass in `"catalogs"` to narrow a search to this store)
- Products: 38
- Snapshot: 2026-10-16T13:55:30Z (counts are approximate and refreshed about daily)
- Search endpoint: `POST https://api.storerouter.ai/v1/products/search`
- Human page: https://storerouter.ai/catalog-coverage/stores/us.lovingtan.com
- Get an API key: https://platform.storerouter.ai/auth/organization

## Questions

### What does Lovingtan sell?

Almost entirely Beauty: 94.7% of its 38 products. Skincare is the largest department with 28 products, followed by Bath & Body (4) and Makeup (3). The most common Lovingtan categories are Sun & Body Protection (27), Lotion & Sunscreen Applicators (4) and Makeup Tools (3).

### How are Lovingtan products categorized?

Into a shared taxonomy 6 levels deep. The first level separates Beauty and Apparel & Accessories; the second separates departments such as Skincare; 5 levels down, categories are as specific as Self Tanner (27 products). Every level is a search facet.

### What can I filter Lovingtan products by?

29 searchable fields. Well-covered attributes include skin care effect (71% of products), product form (68%) and tan type (68%). For skin care effect, the most common values are Bronzing, Hydrating and Moisturizing; for product form, the most common values are Mousse, Lotion and Serum.

### Is this API provided by Lovingtan or StoreRouter?

StoreRouter. One API key gives your app or agent access to Lovingtan product data and thousands more stores.

### Can I get Lovingtan product prices and stock status?

Yes. Bring pricing and availability into your shopping experience with structured data for selling prices, original prices, currency, and stock status.

### Can I get sizes and variants for Lovingtan products?

Yes. Help shoppers find their perfect match with size, color, SKU, and stock details from product lookup.

### How fresh is the data?

StoreRouter continually recrawls product pages to update product details. This page tracks 38 Lovingtan products, with coverage counts refreshed about daily.

### Where does the data come from?

Straight from us.lovingtan.com. StoreRouter turns product pages into rich, searchable data—organized into consistent categories and attributes so your app can connect shoppers with the right products.

## Example product

### Creaseless Clip

Effortlessly stylish clips that hold your hair without leaving creases.

Indexed response retrieved 2026-10-16T14:37:15.108Z. Price and availability may change.
Availability: In stock

### Product details

Product content returned by the lookup API, ready for a product page.

```json
{
  "source": "indexed",
  "catalogKey": "lovingtan",
  "product": {
    "title": "Creaseless Clip",
    "brand": {
      "name": "Loving Tan"
    },
    "productUrl": "https://us.lovingtan.com/products/creaseless-clip",
    "currentPrice": 12,
    "currency": "USD",
    "inStock": true,
    "description": "Effortlessly stylish clips that hold your hair without leaving creases.",
    "primaryImage": {
      "url": "https://cdn.shopify.com/s/files/1/0714/4077/files/Clips.jpg?v=1783042433",
      "cdnUrl": "https://cdn.octogen.ai/fd571bd4aeff7fb27b815f056015991c/4808078d62a6e8f6bcc7f33f0e258ca8.webp?request_id=da86e861-b2c9-4093-aa71-f542d6634dc8",
      "width": 4000,
      "height": 4000,
      "sizeBytes": 86964,
      "mimeType": "image/webp"
    },
    "details": {
      "materials": [],
      "fit": [],
      "dimensions": null,
      "patterns": []
    }
  }
}
```

### Enrichment

StoreRouter classification and attributes. Use attribute_handles as search facet values.

```json
{
  "source": "indexed",
  "catalogKey": "lovingtan",
  "product": {
    "enrichment": {
      "type": "hair clips",
      "category_path": [
        "Beauty",
        "Hair Care",
        "Tools & Accessories",
        "Styling Tool Accessories",
        "Hair Curler Clips & Pins",
        "Clips"
      ],
      "styles": [
        "minimalist"
      ],
      "attributes": {
        "Suitable for hair type": [
          "All Hair Types"
        ]
      },
      "attribute_handles": {
        "suitable_for_hair_type": [
          "suitable_for_hair_type__all_hair_types"
        ]
      }
    }
  }
}
```

## Query this store

```bash
curl -sS https://api.storerouter.ai/v1/products/search \
  -H "Authorization: Bearer $OCTOGEN_PLATFORM_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "catalogs": ["lovingtan"],
    "limit": 5
  }'
```

Selected matching products on October 16, 2026 (not the complete search response):

- [Creaseless Clip](https://us.lovingtan.com/products/creaseless-clip) — $12.00
- [10 MIN Express™ Self-Tanning Smoothing Mask Dark](https://us.lovingtan.com/products/10-min-express-self-tanning-smoothing-mask) — $52.00
- [Bow Headband](https://us.lovingtan.com/products/bow-headband) — $15.00
- [The Express Edit](https://us.lovingtan.com/products/the-express-edit) — $200.00
- [Cloud Pouch](https://us.lovingtan.com/products/cloud-pouch) — $40.00

## Categories

| Category | Products |
| --- | --- |
| Sun & Body Protection | 27 |
| Lotion & Sunscreen Applicators | 4 |
| Makeup Tools | 3 |
| Hats & Headwear | 1 |
| Luggage, Travel & Utility | 1 |
| Skin Care Tools | 1 |
| Tools & Accessories | 1 |

## Searchable fields

Use `name` and a `value` as a facet: `{"name": "<name>", "values": ["<value>"]}`.

| name | Field | Source | Coverage | Distinct values | Top values (`value` = label, products) |
| --- | --- | --- | --- | --- | --- |
| `is_activewear` | Activewear | Merchant data | 100% | 1 | `false` = False, 38 |
| `color` | Product color | Merchant data | 3% | 1 | `pink` = Pink, 1 |
| `color_family` | Color family | Merchant data | 3% | 1 | `Pink` = Pink, 1 |
| `category_path.depth_0` | Category at depth 0 | StoreRouter enrichment | 100% | 2 | `beauty` = Beauty, 36; `apparel & accessories` = Apparel & Accessories, 2 |
| `category_path.depth_1` | Category at depth 1 | StoreRouter enrichment | 100% | 6 | `skincare` = Skincare, 28; `bath & body` = Bath & Body, 4; `makeup` = Makeup, 3; `accessories` = Accessories, 1; `bags` = Bags, 1 |
| `category_path.depth_2` | Category at depth 2 | StoreRouter enrichment | 100% | 7 | `sun & body protection` = Sun & Body Protection, 27; `lotion & sunscreen applicators` = Lotion & Sunscreen Applicators, 4; `makeup tools` = Makeup Tools, 3; `hats & headwear` = Hats & Headwear, 1; `luggage, travel & utility` = Luggage, Travel & Utility, 1 |
| `category_path.depth_3` | Category at depth 3 | StoreRouter enrichment | 90% | 7 | `tanning products` = Tanning Products, 27; `brushes & applicators` = Brushes & Applicators, 2; `cosmetic & toiletry bags` = Cosmetic & Toiletry Bags, 1; `face mirrors` = Face Mirrors, 1; `headbands` = Headbands, 1 |
| `category_path.depth_4` | Category at depth 4 | StoreRouter enrichment | 76% | 3 | `self tanner` = Self Tanner, 27; `hair curler clips & pins` = Hair Curler Clips & Pins, 1; `makeup bags` = Makeup Bags, 1 |
| `skin_care_effect` | Skin care effect | StoreRouter enrichment | 71% | 5 | `skin_care_effect__bronzing` = Bronzing, 27; `skin_care_effect__hydrating` = Hydrating, 5; `skin_care_effect__moisturizing` = Moisturizing, 2; `skin_care_effect__illuminating` = Illuminating, 1; `skin_care_effect__smoothing` = Smoothing, 1 |
| `product_form` | Product form | StoreRouter enrichment | 68% | 8 | `product_form__mousse` = Mousse, 13; `product_form__lotion` = Lotion, 7; `product_form__serum` = Serum, 4; `product_form__cream` = Cream, 2; `product_form__brush_on` = Brush-On, 1 |
| `tan_type` | Tan type | StoreRouter enrichment | 68% | 3 | `tan_type__dark` = Dark, 18; `tan_type__medium` = Medium, 7; `tan_type__gradual` = Gradual, 3 |
| `dispenser_type` | Dispenser type | StoreRouter enrichment | 63% | 5 | `dispenser_type__bottle` = Bottle, 13; `dispenser_type__tube` = Tube, 7; `dispenser_type__pump_bottle` = Pump Bottle, 3; `dispenser_type__pencil` = Pencil, 1; `dispenser_type__spray` = Spray, 1 |
| `age_groups` | Age Group | StoreRouter enrichment | 61% | 1 | `adult` = Adult, 23 |
| `gender` | Gender | StoreRouter enrichment | 61% | 2 | `unisex` = Unisex, 22; `female` = Female, 1 |
| `application_area` | Application area | StoreRouter enrichment | 47% | 2 | `application_area__full_body` = Full Body, 13; `application_area__face` = Face, 7 |
| `skin_care_features` | Skin care features | StoreRouter enrichment | 45% | 3 | `skin_care_features__fast_acting` = Fast Acting, 14; `skin_care_features__long_lasting` = Long Lasting, 7; `skin_care_features__easy_to_apply` = Easy to Apply, 4 |
| `pattern` | Pattern | StoreRouter enrichment | 13% | 5 | `pattern__solid` = Solid, 4; `pattern__geometric` = Geometric, 1; `pattern__logo` = Logo, 1; `pattern__text` = Text, 1; `pattern__texture` = Texture, 1 |
| `material` | Material | StoreRouter enrichment | 8% | 3 | `material__glass` = Glass, 1; `material__plush` = Plush, 1; `material__velour` = Velour, 1 |
| `bristle_shape` | Bristle shape | StoreRouter enrichment | 5% | 1 | `bristle_shape__rounded` = Rounded, 2 |
| `pad_type` | Pad type | StoreRouter enrichment | 5% | 1 | `pad_type__machine_washable` = Machine Washable, 2 |
| `bag_closure_type` | Bag closure type | StoreRouter enrichment | 3% | 1 | `bag_closure_type__zipper` = Zipper, 1 |
| `category_path.depth_5` | Category at depth 5 | StoreRouter enrichment | 3% | 1 | `clips` = Clips, 1 |
| `fabric` | Fabric | StoreRouter enrichment | 3% | 1 | `fabric__plush` = Plush, 1 |
| `graphic_type` | Graphic Type | StoreRouter enrichment | 3% | 1 | `graphic_type__solid_no_print` = Solid / No Print, 1 |
| `mounting_hardware` | Mounting hardware | StoreRouter enrichment | 3% | 1 | `mounting_hardware__handheld` = Handheld, 1 |
| `power_source` | Power source | StoreRouter enrichment | 3% | 1 | `power_source__manual` = Manual, 1 |
| `shape` | Shape | StoreRouter enrichment | 3% | 1 | `shape__square` = Square, 1 |
| `suitable_for_hair_type` | Suitable for hair type | StoreRouter enrichment | 3% | 1 | `suitable_for_hair_type__all_hair_types` = All Hair Types, 1 |
| `brand_name` | Canonical brand name | Brand | 100% | 1 | `Loving Tan` = Loving Tan, 38 |
