# Fifteentwenty (fifteentwenty.com) product data API

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

- Catalog key: `fifteentwenty` (pass in `"catalogs"` to narrow a search to this store)
- Products: 527
- Snapshot: 2026-10-15T10:40:36Z (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/fifteentwenty
- Get an API key: https://platform.storerouter.ai/auth/organization

## Questions

### What does Fifteentwenty sell?

Almost entirely Apparel & Accessories: 100% of its 527 products. Clothing is the largest department with 527 products. The most common Fifteentwenty categories are Tops (274), Dresses (96) and Pants (81).

### How are Fifteentwenty products categorized?

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

### What can I filter Fifteentwenty products by?

58 searchable fields. Well-covered attributes include fabric (99% of products), sleeve length type (71%) and neckline (69%). For fabric, the most common values are Elastane (Spandex / Lycra), Cotton and Polyester; for sleeve length type, the most common values are Long, Sleeveless and Short.

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

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

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

### Where does the data come from?

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

### Camden Contrast Henley Top

The Camden Contrast Henley Top blends everyday ease with refined detail. Crafted from a soft cotton-modal rib knit, it offers a breathable, lightweight feel with just the right amount of stretch for a flattering, comfortable fit. The design features a classic Henley neckline with a button placket, complemented by contrasting woven sleeves and collar for a modern, elevated twist.  Fitted through the body with more relaxed, slightly voluminous sleeves. 2 x 1 Cotton Modal Rib Knit: 47% Modal 47% Cotton 6% Spandex Made in the USA Machine wash cold, hang to dry or dry clean. Length: 23 1/2 inches (Size S)  3/4 Sleeves with gathered shoulders Collared Unlined, Contrast 100% Tencel Front button henley closure No pockets  Henley placket Set-in sleeves Navy and Denim contrast Style number: 2F47931

Indexed response retrieved 2026-10-15T14:27:02.007Z. Price and availability may change.
Availability: In stock
Sizes: XS, S, M, L

### Product details

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

```json
{
  "source": "indexed",
  "catalogKey": "fifteentwenty",
  "product": {
    "title": "Camden Contrast Henley Top",
    "brand": {
      "name": "Fifteen Twenty"
    },
    "productUrl": "https://fifteentwenty.com/products/camden-contrast-henley-top-2f47931-navy",
    "currentPrice": 211,
    "currency": "USD",
    "inStock": true,
    "description": "The Camden Contrast Henley Top blends everyday ease with refined detail. Crafted from a soft cotton-modal rib knit, it offers a breathable, lightweight feel with just the right amount of stretch for a flattering, comfortable fit. The design features a classic Henley neckline with a button placket, complemented by contrasting woven sleeves and collar for a modern, elevated twist.  Fitted through the body with more relaxed, slightly voluminous sleeves. 2 x 1 Cotton Modal Rib Knit: 47% Modal 47% Cotton 6% Spandex Made in the USA Machine wash cold, hang to dry or dry clean. Length: 23 1/2 inches (Size S)  3/4 Sleeves with gathered shoulders Collared Unlined, Contrast 100% Tencel Front button henley closure No pockets  Henley placket Set-in sleeves Navy and Denim contrast Style number: 2F47931 ",
    "primaryImage": {
      "url": "https://cdn.shopify.com/s/files/1/0325/8954/5516/files/2F47931_NAV_fifteentwenty_2026_summer_00_1.jpg?v=1780611187",
      "cdnUrl": "https://cdn.octogen.ai/e63d521f056edca26f4addaa5979af50/b033ac91f47eec059e974b29dc54dba1.jpeg?request_id=77053151-c9de-4650-b5a2-2348f9194f73",
      "width": 2130,
      "height": 2840,
      "sizeBytes": 533472,
      "mimeType": "image/jpeg"
    },
    "details": {
      "materials": [
        "47% Modal",
        "47% Cotton",
        "6% Spandex"
      ],
      "fit": [
        "Fitted through the body with more relaxed, slightly voluminous sleeves."
      ],
      "dimensions": null,
      "patterns": []
    }
  }
}
```

### Enrichment

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

```json
{
  "source": "indexed",
  "catalogKey": "fifteentwenty",
  "product": {
    "enrichment": {
      "type": "henley top",
      "category_path": [
        "Apparel & Accessories",
        "Clothing",
        "Tops",
        "Shirts & Blouses"
      ],
      "styles": [
        "casual",
        "preppy",
        "contemporary"
      ],
      "attributes": {
        "Fabric": [
          "Cotton",
          "Elastane (Spandex / Lycra)",
          "Modal"
        ],
        "Pattern": [
          "Solid"
        ],
        "Neckline": [
          "Henley"
        ],
        "Occasion": [
          "Casual"
        ],
        "Fit (Tops)": [
          "Fitted"
        ],
        "Knit Style": [
          "Rib Knit"
        ],
        "Collar Style": [
          "Collarless"
        ],
        "Graphic Type": [
          "Solid / No Print"
        ],
        "Sleeve Style": [
          "Bishop"
        ],
        "Fabric Weight": [
          "Lightweight"
        ],
        "Front Closure": [
          "Buttons"
        ],
        "Front Opening": [
          "Visible Buttons"
        ],
        "Embellishments": [
          "Contrast Trim / Piping"
        ],
        "Sleeve length type": [
          "3/4"
        ],
        "Front Closure Length": [
          "Short Placket"
        ],
        "General Clothing Features": [
          "Stretchable"
        ]
      },
      "attribute_handles": {
        "fabric": [
          "fabric__cotton",
          "fabric__elastane",
          "fabric__modal"
        ],
        "fit_top": [
          "fit_top__fitted"
        ],
        "pattern": [
          "pattern__solid"
        ],
        "neckline": [
          "neckline__henley"
        ],
        "knit_style": [
          "knit_style__rib_knit"
        ],
        "collar_style": [
          "collar_style__collarless"
        ],
        "graphic_type": [
          "graphic_type__solid_no_print"
        ],
        "placket_type": [
          "placket_type__exposed"
        ],
        "sleeve_style": [
          "sleeve_style__bishop"
        ],
        "fabric_weight": [
          "fabric_weight__lightweight"
        ],
        "embellishments": [
          "embellishments__contrast_piping"
        ],
        "occasion_general": [
          "occasion_general__casual"
        ],
        "front_closure_type": [
          "front_closure_type__buttons"
        ],
        "sleeve_length_type": [
          "sleeve_length_type__3/4"
        ],
        "front_closure_length": [
          "front_closure_length__short_placket"
        ],
        "general_clothing_features": [
          "general_clothing_features__stretchable"
        ]
      }
    }
  }
}
```

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

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

- [Camden Contrast Henley Top](https://fifteentwenty.com/products/camden-contrast-henley-top-2f47931-navy) — $211.00
- [Jillian Off-The-Shoulder Top](https://fifteentwenty.com/products/jillian-off-the-shoulder-top-1f10903-off-white) — $19.99
- [Jillian Off-The-Shoulder Top](https://fifteentwenty.com/products/jillian-off-the-shoulder-top-4f19301-granite) — $9.99
- [Nadine Bow Detail Top](https://fifteentwenty.com/products/nadine-bow-detail-top-2f66006-indigo) — $45.00
- [Lisa Embellished Button-Up Top](https://fifteentwenty.com/products/lisa-embellished-button-up-top-4f38037-black) — $216.00

## Categories

| Category | Products |
| --- | --- |
| Tops | 274 |
| Dresses | 96 |
| Pants | 81 |
| Skirts | 40 |
| Shorts | 17 |
| Jackets & Coats | 15 |
| Jumpsuits & One-Pieces | 3 |
| Underwear & Sleepwear | 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) |
| --- | --- | --- | --- | --- | --- |
| `color` | Product color | Merchant data | 100% | 36 | `black` = Black, 113; `multi` = Multi, 85; `ivory` = Ivory, 66; `navy` = Navy, 55; `white` = White, 51 |
| `color_family` | Color family | Merchant data | 100% | 12 | `White` = White, 117; `Black` = Black, 113; `Blue` = Blue, 99; `Multicolor` = Multicolor, 85; `Brown` = Brown, 80 |
| `is_activewear` | Activewear | Merchant data | 100% | 2 | `false` = False, 519; `true` = True, 8 |
| `age_groups` | Age Group | StoreRouter enrichment | 100% | 1 | `adult` = Adult, 527 |
| `category_path.depth_0` | Category at depth 0 | StoreRouter enrichment | 100% | 1 | `apparel & accessories` = Apparel & Accessories, 527 |
| `category_path.depth_1` | Category at depth 1 | StoreRouter enrichment | 100% | 1 | `clothing` = Clothing, 527 |
| `category_path.depth_2` | Category at depth 2 | StoreRouter enrichment | 100% | 8 | `tops` = Tops, 274; `dresses` = Dresses, 96; `pants` = Pants, 81; `skirts` = Skirts, 40; `shorts` = Shorts, 17 |
| `gender` | Gender | StoreRouter enrichment | 100% | 1 | `female` = Female, 527 |
| `pattern` | Pattern | StoreRouter enrichment | 100% | 25 | `pattern__solid` = Solid, 356; `pattern__texture` = Texture, 81; `pattern__striped` = Striped, 65; `pattern__floral` = Floral, 50; `pattern__animal` = Animal, 18 |
| `fabric` | Fabric | StoreRouter enrichment | 100% | 36 | `fabric__elastane` = Elastane (Spandex / Lycra), 255; `fabric__cotton` = Cotton, 194; `fabric__polyester` = Polyester, 176; `fabric__viscose` = Viscose, 132; `fabric__rayon` = Rayon, 99 |
| `category_path.depth_3` | Category at depth 3 | StoreRouter enrichment | 74% | 19 | `shirts & blouses` = Shirts & Blouses, 148; `trousers` = Trousers, 70; `knitwear` = Knitwear, 69; `tank tops & sleeveless` = Tank Tops & Sleeveless, 36; `t-shirts` = T-Shirts, 14 |
| `sleeve_length_type` | Sleeve length type | StoreRouter enrichment | 72% | 4 | `sleeve_length_type__long` = Long, 208; `sleeve_length_type__sleeveless` = Sleeveless, 80; `sleeve_length_type__short` = Short, 79; `sleeve_length_type__3/4` = 3/4, 13 |
| `neckline` | Neckline | StoreRouter enrichment | 69% | 22 | `neckline__v_neck` = V Neck, 97; `neckline__collared` = Collared, 65; `neckline__crew` = Crew, 53; `neckline__round` = Round, 50; `neckline__mock` = Mock Neck, 20 |
| `front_closure_type` | Front Closure | StoreRouter enrichment | 55% | 5 | `front_closure_type__none` = None, 187; `front_closure_type__buttons` = Buttons, 79; `front_closure_type__tie_lace_up` = Tie / Lace-Up, 20; `front_closure_type__zipper` = Zipper, 3; `front_closure_type__snaps` = Snaps, 2 |
| `graphic_type` | Graphic Type | StoreRouter enrichment | 48% | 3 | `graphic_type__solid_no_print` = Solid / No Print, 248; `graphic_type__photo_art` = Photo Print / Art, 3; `graphic_type__abstract_print` = Abstract Graphic, 1 |
| `fit_top` | Fit (Tops) | StoreRouter enrichment | 47% | 6 | `fit_top__relaxed` = Relaxed, 139; `fit_top__fitted` = Fitted, 90; `fit_top__flowy` = Flowy, 29; `fit_top__boxy` = Boxy, 17; `fit_top__oversized` = Oversized, 9 |
| `general_clothing_features` | General Clothing Features | StoreRouter enrichment | 45% | 3 | `general_clothing_features__stretchable` = Stretchable, 235; `general_clothing_features__reversible` = Reversible, 1; `general_clothing_features__wrinkle_resistant` = Wrinkle Resistant, 1 |
| `front_closure_length` | Front Closure Length | StoreRouter enrichment | 39% | 5 | `front_closure_length__none` = None, 157; `front_closure_length__full` = Full, 45; `front_closure_length__short_placket` = Short Placket, 3; `front_closure_length__half` = Half, 1; `front_closure_length__quarter` = Quarter, 1 |
| `collar_style` | Collar Style | StoreRouter enrichment | 33% | 10 | `collar_style__collarless` = Collarless, 92; `collar_style__crew` = Crew, 27; `collar_style__point` = Point, 22; `collar_style__stand_funnel` = Stand / Funnel, 15; `collar_style__polo` = Polo, 6 |
| `skirt_dress_length_type` | Skirt/Dress length type | StoreRouter enrichment | 25% | 4 | `skirt_dress_length_type__midi` = Midi, 72; `skirt_dress_length_type__mini` = Mini, 50; `skirt_dress_length_type__maxi` = Maxi, 8; `skirt_dress_length_type__knee` = Knee, 5 |
| `construction_detail` | Construction Detail | StoreRouter enrichment | 25% | 7 | `construction_detail__draped` = Draped, 68; `construction_detail__ruched` = Ruched, 28; `construction_detail__side_ruched` = Side Ruched, 25; `construction_detail__pleated` = Pleated, 16; `construction_detail__ruffled` = Ruffled, 6 |
| `category_path.depth_4` | Category at depth 4 | StoreRouter enrichment | 23% | 11 | `sweaters` = Sweaters, 48; `tank & cami tops` = Tank & Cami Tops, 36; `cardigans` = Cardigans, 21; `casual jackets` = Casual Jackets, 8; `bolero jackets` = Bolero Jackets, 2 |
| `embellishments` | Embellishments | StoreRouter enrichment | 20% | 9 | `embellishments__contrast_piping` = Contrast Trim / Piping, 38; `embellishments__bow` = Bow, 24; `embellishments__decorative_buttons` = Decorative Buttons, 22; `embellishments__sequins` = Sequins, 12; `embellishments__embroidery` = Embroidery, 10 |
| `sleeve_style` | Sleeve Style | StoreRouter enrichment | 18% | 12 | `sleeve_style__set_in` = Set-In, 15; `sleeve_style__balloon` = Balloon, 14; `sleeve_style__drop_shoulder` = Drop Shoulder, 14; `sleeve_style__puff` = Puff, 14; `sleeve_style__raglan` = Raglan, 14 |
| `occasion_general` | Occasion | StoreRouter enrichment | 18% | 3 | `occasion_general__casual` = Casual, 86; `occasion_general__work` = Work, 9; `occasion_general__formal` = Formal, 5 |
| `knit_style` | Knit Style | StoreRouter enrichment | 17% | 8 | `knit_style__rib_knit` = Rib Knit, 68; `knit_style__jersey` = Jersey, 9; `knit_style__french_terry` = French Terry, 4; `knit_style__jacquard` = Jacquard, 4; `knit_style__cable_knit` = Cable Knit, 3 |
| `dress_style` | Dress style | StoreRouter enrichment | 17% | 19 | `dress_style__bodycon` = Bodycon, 19; `dress_style__sweater` = Sweater, 19; `dress_style__shirt` = Shirt, 18; `dress_style__flared` = Flared, 17; `dress_style__a_line` = A Line, 8 |
| `opacity_level` | Opacity | StoreRouter enrichment | 15% | 3 | `opacity_level__opaque` = Opaque, 65; `opacity_level__semi_sheer` = Semi-Sheer, 8; `opacity_level__sheer` = Sheer, 7 |
| `fit_bottoms` | Fit | StoreRouter enrichment | 15% | 8 | `fit_bottoms__wide_leg_volume_fit` = Wide-Leg Volume Fit, 50; `fit_bottoms__relaxed_boyfriend_fit` = Relaxed / Boyfriend Fit, 23; `fit_bottoms__tailored_slim_fit` = Tailored Slim Fit, 8; `fit_bottoms__kick_flare_fit_hip_fitted` = Kick-Flare Fit (Hip-Fitted), 5; `fit_bottoms__curved_volume_fit_barrel_hip` = Curved Volume Fit (Barrel Hip), 3 |
| `placket_type` | Front Opening | StoreRouter enrichment | 15% | 3 | `placket_type__exposed` = Visible Buttons, 73; `placket_type__concealed` = Hidden Buttons, 2; `placket_type__snap` = Snap Closure, 2 |
| `pants_leg_shape` | Leg Shape | StoreRouter enrichment | 14% | 9 | `pants_leg_shape__wide_leg` = Wide Leg, 51; `pants_leg_shape__bootcut` = Bootcut, 10; `pants_leg_shape__cuffed` = Cuffed, 8; `pants_leg_shape__straight` = Straight, 6; `pants_leg_shape__barrel_balloon` = Barrel / Balloon, 3 |
| `occasion_style_dresses` | Dress occasion | StoreRouter enrichment | 13% | 4 | `occasion_style_dresses__casual` = Casual, 55; `occasion_style_dresses__evening` = Evening, 13; `occasion_style_dresses__cocktail` = Cocktail, 11; `occasion_style_dresses__work` = Work, 9 |
| `pants_length_type` | Pants length type | StoreRouter enrichment | 12% | 4 | `pants_length_type__cropped` = Cropped, 29; `pants_length_type__long` = Long, 19; `pants_length_type__ankle` = Ankle Length, 17; `pants_length_type__above_the_knee` = Above the Knee, 1 |
| `top_length_type` | Top length type | StoreRouter enrichment | 11% | 3 | `top_length_type__waist_length` = Waist Length, 23; `top_length_type__hip_length` = Hip Length, 22; `top_length_type__cropped` = Cropped, 21 |
| `bottoms_closure` | Bottoms Closure | StoreRouter enrichment | 11% | 4 | `bottoms_closure__pull_on` = Pull-On, 38; `bottoms_closure__zip` = Zip Fly, 14; `bottoms_closure__drawstring` = Drawstring, 11; `bottoms_closure__hook_bar` = Hook & Bar, 2 |
| `surface_finish` | Surface Finish | StoreRouter enrichment | 8% | 3 | `surface_finish__glossy` = Glossy, 23; `surface_finish__metallic` = Metallic, 15; `surface_finish__matte` = Matte, 5 |
| `sustainability_features` | Sustainability Features | StoreRouter enrichment | 8% | 4 | `sustainability_features__recycled_materials` = Recycled Materials, 18; `sustainability_features__vegan` = Vegan, 15; `sustainability_features__organic_materials` = Organic Materials, 6; `sustainability_features__eco_friendly` = Eco-Friendly, 2 |
| `slit_style` | Slit Style | StoreRouter enrichment | 7% | 4 | `slit_style__side_slit` = Side Slit, 17; `slit_style__front_slit` = Front Slit, 13; `slit_style__back_slit` = Back Slit, 5; `slit_style__high_slit` = High Slit, 2 |
| `fabric_weight` | Fabric Weight | StoreRouter enrichment | 6% | 3 | `fabric_weight__lightweight` = Lightweight, 26; `fabric_weight__sheer` = Sheer, 5; `fabric_weight__heavyweight` = Heavyweight, 2 |
| `waist_rise` | Waist rise | StoreRouter enrichment | 6% | 2 | `waist_rise__high` = High, 28; `waist_rise__mid` = Mid, 1 |
| `skirt_style` | Skirt style | StoreRouter enrichment | 4% | 7 | `skirt_style__pencil` = Pencil, 10; `skirt_style__a_line` = A-Line, 6; `skirt_style__wrap` = Wrap, 2; `skirt_style__asymmetrical` = Asymmetrical, 1; `skirt_style__flared` = Flared, 1 |
| `openwork_detail` | Openwork Detail | StoreRouter enrichment | 3% | 4 | `openwork_detail__crochet` = Crochet, 10; `openwork_detail__cutouts` = Cutouts, 7; `openwork_detail__open_knit` = Open Knit, 3; `openwork_detail__eyelet` = Eyelet, 1 |
| `season` | Season | StoreRouter enrichment | 3% | 3 | `season__cold_weather` = Cold Weather, 12; `season__cool_weather` = Cool Weather, 4; `season__warm_weather` = Warm Weather, 3 |
| `outerwear_length_type` | Outerwear Length | StoreRouter enrichment | 3% | 3 | `outerwear_length_type__cropped` = Cropped, 7; `outerwear_length_type__hip` = Hip Length, 6; `outerwear_length_type__mid_thigh` = Mid-Thigh, 1 |
| `shorts_fit` | Shorts Fit | StoreRouter enrichment | 2% | 2 | `shorts_fit__tailored` = Tailored, 9; `shorts_fit__relaxed` = Relaxed, 3 |
| `denim_wash_effects` | Denim Finish Effects | StoreRouter enrichment | 1% | 2 | `denim_wash_effects__clean_none` = Clean / None, 5; `denim_wash_effects__waxed_sheen` = Waxed / Sheen, 2 |
| `denim_fabric` | Denim Fabric | StoreRouter enrichment | 1% | 1 | `denim_fabric__stretch` = Stretch, 6 |
| `denim_wash` | Denim Wash | StoreRouter enrichment | 1% | 4 | `denim_wash__white` = White / Ecru, 3; `denim_wash__dark` = Dark, 1; `denim_wash__grey` = Grey, 1; `denim_wash__medium` = Medium, 1 |
| `denim_hem_style` | Denim Hem Style | StoreRouter enrichment | <1% | 2 | `denim_hem_style__regular` = Regular, 3; `denim_hem_style__cuffed` = Cuffed, 2 |
| `performance_features` | Performance Features | StoreRouter enrichment | <1% | 1 | `performance_features__breathable_design` = Breathable Design, 5 |
| `one_piece_style` | One-piece style | StoreRouter enrichment | <1% | 2 | `one_piece_style__jumpsuit` = Jumpsuit, 2; `one_piece_style__romper` = Romper, 1 |
| `outerwear_unique_features` | Outerwear Features | StoreRouter enrichment | <1% | 2 | `outerwear_unique_features__double_breasted` = Double Breasted, 2; `outerwear_unique_features__insulated` = Insulated, 1 |
| `lining_material_outerwear` | Lining Material | StoreRouter enrichment | <1% | 2 | `lining_material_outerwear__faux_fur` = Faux Fur, 1; `lining_material_outerwear__quilted` = Quilted, 1 |
| `pants_leg_length` | Pants Leg Length | StoreRouter enrichment | <1% | 2 | `pants_leg_length__ankle` = Ankle, 1; `pants_leg_length__regular` = Regular, 1 |
| `top_hem_shape` | Top Hem Shape | StoreRouter enrichment | <1% | 1 | `top_hem_shape__asymmetric` = Asymmetric, 2 |
| `care_instructions` | Care instructions | StoreRouter enrichment | <1% | 1 | `care_instructions__dry_clean_only` = Dry Clean Only, 1 |
| `category_path.depth_5` | Category at depth 5 | StoreRouter enrichment | <1% | 1 | `camisoles` = Camisoles, 1 |
| `brand_name` | Canonical brand name | Brand | 100% | 1 | `Fifteen Twenty` = Fifteen Twenty, 527 |
