# Brightswimwear (brightswimwear.com) product data API

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

- Catalog key: `brightswimwear` (pass in `"catalogs"` to narrow a search to this store)
- Products: 1,120
- Snapshot: 2026-10-19T17:23:14Z (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/brightswimwear
- Get an API key: https://platform.storerouter.ai/auth/organization

## Questions

### What does Brightswimwear sell?

Almost entirely Apparel & Accessories: 100% of its 1,120 products. Clothing is the largest department with 1,116 products, followed by Accessories (4). The most common Brightswimwear categories are Swimwear (1,104), Dresses (6) and Skirts (5).

### How are Brightswimwear products categorized?

Into a shared taxonomy 5 levels deep. The first level separates Apparel & Accessories; the second separates departments such as Clothing; 5 levels down, categories are as specific as Bikini Bottoms (553 products). Every level is a search facet.

### What can I filter Brightswimwear products by?

31 searchable fields. Well-covered attributes include fabric (99% of products), swimwear features (58%) and swim bottom coverage style (49%). For fabric, the most common values are Elastane (Spandex / Lycra), Nylon / Polyamide and Metallic / Lurex; for swimwear features, the most common values are Adjustable Strap, Removable Padding and Built-In Bra / Shelf Bra.

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

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

### Can I get Brightswimwear 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 Brightswimwear 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 1,120 Brightswimwear products, with coverage counts refreshed about daily.

### Where does the data come from?

Straight from brightswimwear.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

### Poppy Bottom (Fiore)

Fall head over heels for the Poppy Bottom. A high cut, micro bottom which ensures minimal tan lines and a flattering fit. Contrast binding with a metal trims at the hips elevates this feminine style.  Fully lined and made from a shimmery, butter-soft fabric, offering a luxurious, comfortable feel.

Indexed response retrieved 2026-10-20T01:22:25.658Z. Price and availability may change.
Availability: In stock
Sizes: S, M, L, XL

### Product details

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

```json
{
  "source": "indexed",
  "catalogKey": "brightswimwear",
  "product": {
    "title": "Poppy Bottom (Fiore)",
    "brand": {
      "name": "Bright Swimwear"
    },
    "productUrl": "https://www.brightswimwear.com/products/poppy-bottom-fiore",
    "currentPrice": 45,
    "currency": "USD",
    "inStock": true,
    "description": "Fall head over heels for the Poppy Bottom. A high cut, micro bottom which ensures minimal tan lines and a flattering fit. Contrast binding with a metal trims at the hips elevates this feminine style.  Fully lined and made from a shimmery, butter-soft fabric, offering a luxurious, comfortable feel.",
    "primaryImage": {
      "url": "https://cdn.shopify.com/s/files/1/2148/0245/files/BrightModelJune26_180410_8cccafd5-be1c-466f-87ce-7d46a9f01e81.jpg?v=1781590883",
      "cdnUrl": "https://cdn.octogen.ai/5358e93c413bc69729c7686ab0ceb7b1/966ff0ce7b74ff755b94eb36f7159cf3.webp?request_id=af9afa00-b722-4714-a5ab-9beef03c8212",
      "width": 3633,
      "height": 5449,
      "sizeBytes": 1699082,
      "mimeType": "image/webp"
    },
    "details": {
      "materials": [
        "82% Nylon / 18% Spandex (shiny fabric)"
      ],
      "fit": [],
      "dimensions": null,
      "patterns": []
    }
  }
}
```

### Enrichment

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

```json
{
  "source": "indexed",
  "catalogKey": "brightswimwear",
  "product": {
    "enrichment": {
      "type": "bikini bottoms",
      "category_path": [
        "Apparel & Accessories",
        "Clothing",
        "Swimwear",
        "Bikinis",
        "Bikini Bottoms"
      ],
      "styles": [
        "feminine",
        "glamorous"
      ],
      "attributes": {
        "Fabric": [
          "Elastane (Spandex / Lycra)",
          "Nylon / Polyamide"
        ],
        "Season": [
          "Warm Weather"
        ],
        "Pattern": [
          "Floral"
        ],
        "General Clothing Features": [
          "Stretchable"
        ],
        "Swim bottom coverage style": [
          "Cheeky"
        ]
      },
      "attribute_handles": {
        "fabric": [
          "fabric__elastane",
          "fabric__nylon"
        ],
        "season": [
          "season__warm_weather"
        ],
        "pattern": [
          "pattern__floral"
        ],
        "general_clothing_features": [
          "general_clothing_features__stretchable"
        ],
        "swim_bottom_coverage_style": [
          "swim_bottom_coverage_style__cheeky"
        ]
      }
    }
  }
}
```

## 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": ["brightswimwear"],
    "limit": 5
  }'
```

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

- [Poppy Bottom (Fiore)](https://www.brightswimwear.com/products/poppy-bottom-fiore) — $45.00
- [Bella Top (Tropique)](https://www.brightswimwear.com/products/bella-top-tropique) — $45.00
- [Elise Top (Fiore)](https://www.brightswimwear.com/products/elise-top-fiore) — $45.00
- [Zara Top (Fiore)](https://www.brightswimwear.com/products/zara-top-fiore) — $45.00
- [Poppy Top (Fantasy)](https://www.brightswimwear.com/products/poppy-top-fantasy) — $45.00

## Prices

Median price $35 across 1,120 priced products. Current prices, assumed USD.

| Price range | Products |
| --- | --- |
| Under $12 | 5 |
| $12–$23 | 234 |
| $23–$34 | 304 |
| $34–$45 | 350 |
| $45 and up | 227 |

## Categories

| Category | Products |
| --- | --- |
| Swimwear | 1,104 |
| Dresses | 6 |
| Skirts | 5 |
| Hats & Headwear | 4 |
| Jumpsuits & One-Pieces | 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% | 2 | `false` = False, 1,116; `true` = True, 4 |
| `color` | Product color | Merchant data | 99% | 25 | `multi` = Multi, 541; `pink` = Pink, 139; `white` = White, 101; `blue` = Blue, 53; `navy` = Navy, 49 |
| `color_family` | Color family | Merchant data | 99% | 11 | `Multicolor` = Multicolor, 541; `Pink` = Pink, 139; `White` = White, 134; `Blue` = Blue, 133; `Brown` = Brown, 53 |
| `age_groups` | Age Group | StoreRouter enrichment | 100% | 1 | `adult` = Adult, 1,120 |
| `category_path.depth_0` | Category at depth 0 | StoreRouter enrichment | 100% | 1 | `apparel & accessories` = Apparel & Accessories, 1,120 |
| `category_path.depth_1` | Category at depth 1 | StoreRouter enrichment | 100% | 2 | `clothing` = Clothing, 1,116; `accessories` = Accessories, 4 |
| `category_path.depth_2` | Category at depth 2 | StoreRouter enrichment | 100% | 5 | `swimwear` = Swimwear, 1,104; `dresses` = Dresses, 6; `skirts` = Skirts, 5; `hats & headwear` = Hats & Headwear, 4; `jumpsuits & one-pieces` = Jumpsuits & One-Pieces, 1 |
| `gender` | Gender | StoreRouter enrichment | 100% | 2 | `female` = Female, 1,116; `unisex` = Unisex, 4 |
| `pattern` | Pattern | StoreRouter enrichment | 100% | 23 | `pattern__floral` = Floral, 427; `pattern__solid` = Solid, 244; `pattern__striped` = Striped, 163; `pattern__texture` = Texture, 147; `pattern__abstract` = Abstract, 78 |
| `fabric` | Fabric | StoreRouter enrichment | 99% | 8 | `fabric__elastane` = Elastane (Spandex / Lycra), 1,100; `fabric__nylon` = Nylon / Polyamide, 1,068; `fabric__metallic_lurex` = Metallic / Lurex, 147; `fabric__polyester` = Polyester, 133; `fabric__terrycloth` = Terrycloth, 41 |
| `category_path.depth_3` | Category at depth 3 | StoreRouter enrichment | 99% | 3 | `bikinis` = Bikinis, 1,094; `one-pieces` = One-Pieces, 10; `caps` = Caps, 4 |
| `category_path.depth_4` | Category at depth 4 | StoreRouter enrichment | 98% | 4 | `bikini bottoms` = Bikini Bottoms, 553; `bikini tops` = Bikini Tops, 539; `baseball caps` = Baseball Caps, 4; `bikini sets` = Bikini Sets, 2 |
| `general_clothing_features` | General Clothing Features | StoreRouter enrichment | 94% | 1 | `general_clothing_features__stretchable` = Stretchable, 1,047 |
| `season` | Season | StoreRouter enrichment | 93% | 1 | `season__warm_weather` = Warm Weather, 1,044 |
| `swimwear_unique_features` | Swimwear Features | StoreRouter enrichment | 59% | 3 | `swimwear_unique_features__adjustable_strap` = Adjustable Strap, 646; `swimwear_unique_features__removable_padding` = Removable Padding, 10; `swimwear_unique_features__built_in_bra` = Built-In Bra / Shelf Bra, 3 |
| `sleeve_length_type` | Sleeve length type | StoreRouter enrichment | 50% | 1 | `sleeve_length_type__sleeveless` = Sleeveless, 558 |
| `swim_bottom_coverage_style` | Swim bottom coverage style | StoreRouter enrichment | 49% | 6 | `swim_bottom_coverage_style__cheeky` = Cheeky, 405; `swim_bottom_coverage_style__high_waisted` = High-Waisted, 77; `swim_bottom_coverage_style__thong` = Thong, 74; `swim_bottom_coverage_style__full` = Full Coverage, 32; `swim_bottom_coverage_style__classic` = Classic, 16 |
| `neckline` | Neckline | StoreRouter enrichment | 48% | 10 | `neckline__halter` = Halter, 238; `neckline__strapless` = Strapless, 115; `neckline__spaghetti_strap` = Spaghetti Strap, 110; `neckline__scoop` = Scoop, 106; `neckline__v_neck` = V Neck, 62 |
| `swim_top_coverage_style` | Swim top coverage style | StoreRouter enrichment | 47% | 4 | `swim_top_coverage_style__triangle` = Triangle, 236; `swim_top_coverage_style__bralette` = Bralette, 200; `swim_top_coverage_style__bandeau` = Bandeau, 132; `swim_top_coverage_style__tankini` = Tankini, 1 |
| `construction_detail` | Construction Detail | StoreRouter enrichment | 17% | 4 | `construction_detail__ruched` = Ruched, 155; `construction_detail__ruffled` = Ruffled, 22; `construction_detail__side_ruched` = Side Ruched, 11; `construction_detail__lace_trim` = Lace Trim, 6 |
| `performance_features` | Performance Features | StoreRouter enrichment | 11% | 2 | `performance_features__water_resistant` = Water Resistant, 121; `performance_features__breathable_design` = Breathable Design, 1 |
| `skirt_dress_length_type` | Skirt/Dress length type | StoreRouter enrichment | 1% | 1 | `skirt_dress_length_type__mini` = Mini, 11 |
| `graphic_type` | Graphic Type | StoreRouter enrichment | <1% | 2 | `graphic_type__logo_embroidery` = Logo Embroidery, 4; `graphic_type__solid_no_print` = Solid / No Print, 4 |
| `dress_style` | Dress style | StoreRouter enrichment | <1% | 2 | `dress_style__bodycon` = Bodycon, 5; `dress_style__backless` = Backless, 1 |
| `occasion_style_dresses` | Dress occasion | StoreRouter enrichment | <1% | 2 | `occasion_style_dresses__casual` = Casual, 6; `occasion_style_dresses__cocktail` = Cocktail, 5 |
| `headwear_features` | Headwear features | StoreRouter enrichment | <1% | 1 | `headwear_features__adjustable_fit` = Adjustable Fit, 4 |
| `material` | Material | StoreRouter enrichment | <1% | 3 | `material__canvas` = Canvas, 4; `material__cotton` = Cotton, 4; `material__metal` = Metal, 4 |
| `occasion_general` | Occasion | StoreRouter enrichment | <1% | 1 | `occasion_general__casual` = Casual, 4 |
| `skirt_style` | Skirt style | StoreRouter enrichment | <1% | 1 | `skirt_style__gathered` = Gathered, 5 |
| `one_piece_style` | One-piece style | StoreRouter enrichment | <1% | 1 | `one_piece_style__romper` = Romper, 1 |
| `brand_name` | Canonical brand name | Brand | 100% | 1 | `Bright Swimwear` = Bright Swimwear, 1,120 |
