Retail category and campaign monitoring
Kohl'sエンドポイントを使えば、「Retail category and campaign monitoring」をドキュメント化された入力とJSONレスポンスによる再現可能なAPIリクエストに変えられます。
Turn Kohl's into structured retail data: normalized category and campaign product grids with facets, per-product customer reviews, physical store locations with weekly hours, and the site's own search typeahead — all as JSON, credential-free.
Browse Kohl's category grids and facets, product reviews, store locations, and search typeahead as structured JSON.
エンドポイントファミリー
4
ドキュメント化されたパラメータ
9
サンプル数
4
ライブカタログスナップショット
稼働エンドポイント
4
メソッド
GET
必須パラメータ
8
スキーマ参照
4
{
"platform": "Kohl's",
"endpoint": "kohls-category",
"method": "GET",
"path": "/kohls/category",
"auth": "apiKey"
}ユースケース
Browse Kohl's category grids and facets, product reviews, store locations, and search typeahead as structured JSON.
Kohl'sエンドポイントを使えば、「Retail category and campaign monitoring」をドキュメント化された入力とJSONレスポンスによる再現可能なAPIリクエストに変えられます。
Kohl'sエンドポイントを使えば、「Product review and rating analysis」をドキュメント化された入力とJSONレスポンスによる再現可能なAPIリクエストに変えられます。
Kohl'sエンドポイントを使えば、「Store footprint and locator research」をドキュメント化された入力とJSONレスポンスによる再現可能なAPIリクエストに変えられます。
Kohl'sエンドポイントを使えば、「Search-term and keyword discovery」をドキュメント化された入力とJSONレスポンスによる再現可能なAPIリクエストに変えられます。
マネージド実行
以下の数値はすべて、稼働中のKohl'sエンドポイントカタログから取得しています(エンドポイント4件、ドキュメント化されたリクエストパラメータ9個、公開レスポンススキーマ4件)。DocsとPlaygroundが参照しているカタログと同じものです。
Kohl'sのエンドポイントは4件、4つのリクエストファミリーに分類されています(Category、Product、Storesほか1件)。
これらのKohl'sエンドポイントには9個のリクエストパラメータがドキュメント化されており、うち8個が必須です。統合コードを書く前に入力仕様をすべて確認できます。
4件のKohl'sエンドポイントのうち4件が実際のサンプルレスポンスを、4件がドキュメント化されたレスポンススキーマを備えています。最初のリクエストの前に実データの形に合わせて実装できます。
Kohl'sのエンドポイントは成功時のスキーマに加えてエラーレスポンス(400、404、429、503)もドキュメント化しています。ブロック、レート制限、レコード欠損は空データではなく型付きのエラーとして返ります。
Kohl'sのエンドポイントは4個のホスト型MCPツールとして提供されており、エージェントは同じパラメータと同じJSON契約のまま、追加の実装なしに同じルートを呼び出せます。
カバレッジマップ
これらのカードは稼働中のエンドポイントカタログから生成されるため、このページはDocsとPlaygroundが使うAPIサーフェスをそのまま反映します。
/kohls/category
/kohls/product/reviews
/kohls/stores
/kohls/suggest
エンドポイントカタログ
/kohls/categoryReturns a Kohl's category or curated campaign page's product grid (page 1 only), with normalized products (title, image, colors, pricing, rating, availability) and facets for discovering further category values. category is Kohl's own catalog taxonomy string, e.g. "Room:Dorm" or "Department:Kitchen & Dining" -- combine multiple dimensions with a literal "+", percent-encoded as "%2B" so it survives as "+" rather than being decoded to a space (e.g. "Room%3ADorm%2BDepartment%3ABedding"). Every facets[].options[].category value in a response is a ready-to-use category string for a follow-up call, so a caller can discover the full taxonomy by starting from a known category (e.g. "Room:Dorm") and following facets. A category value Kohl's does not recognize returns a 404 rather than an unfiltered listing; a recognized dimension with no matching products returns a genuine zero-result response instead.
レスポンスに関する注記
- Pagination is page 1 only. `product_count` is the category's total result count across all pages; `total_pages` and `limit` describe the upstream page size, but this endpoint does not fetch page 2 or beyond. - Every `facets[].options[].category` value in a response is a ready-to-use `category` string for a follow-up call -- this is how a caller discovers the full taxonomy, starting from a known category (e.g. `Room:Dorm`) and following its facets (e.g. `Department`, `Brand`, `Price`). - A `category` value Kohl's does not recognize at all returns a `404` rather than an unfiltered listing. A recognized dimension with a value that matches nothing (e.g. a real department with a typo'd name) returns a genuine zero-result response (`count: 0`, empty `products`) instead of an error. - `sale_price` is present only when the product is genuinely on sale; `on_sale` is `false` and `sale_price` is omitted otherwise. - `regular_price`/`sale_price` are min/max ranges rather than single prices, because a product can span multiple sizes/colors at different price points. Example response: ```json {"code":200,"msg":"OK","data":{"category":"Room:Dorm","title":"Essential Dorm Items for College-Bound Students | Kohl's","product_count":1317,"count":1,"limit":120,"total_pages":11,"products":[{"web_id":"4569328","title":"The Big One® Solid Bath Towel, Bath Sheet, Hand Towel or Washcloth","image_url":"https://media.kohlsimg.com/is/image/kohls/4569328_Medium_Gray?wid=180&hei=180&op_sharpen=1","colors":["Medium Gray"],"currency_code":"USD","regular_price":{"min_price":2.99,"max_price":9.99},"sale_price":{"min_price":2.09,"max_price":8.99},"on_sale":true,"rating":3.9,"review_count":27103,"available_for_ship":true,"available_for_pickup":false,"url":"https://www.kohls.com/product/prd-4569328/the-big-one-solid-bath-towel-bath-sheet-hand-towel-or-washcloth.jsp"}],"facets":[{"name":"Department","label":"Department","options":[{"category":"Room:Dorm+Department:Bedding","name":"Bedding","product_count":479,"active":false}]}],"source_url":"https://www.kohls.com/shopnext-web-findability/api/web-shop/pmp-catalog?CN=Room:Dorm","fetched_at":"2026-08-12T04:00:00Z"}} ```
MCPツール kohls_category
/kohls/product/reviewsReturns one page of a Kohl's product's normalized customer reviews (title, text, rating, secondary ratings such as quality/durability/value/style, reviewer name and location, submission date, and photo URLs). web_id is the same identifier a GET /kohls/category response's products[].web_id field carries. A web_id with zero reviews returns a genuine zero-result response rather than an error.
レスポンスに関する注記
- `secondary_ratings` (e.g. Quality, Durability, Value, Style) is present only on reviews that carry it -- not every review rates every dimension. - `photo_urls` is present only on reviews with customer-submitted photos. - A `web_id` with zero reviews (a real product that has none yet, or an id the review platform has never heard of) returns a genuine zero-result response (`total_count: 0`, empty `reviews`) rather than an error. Example response: ```json {"code":200,"msg":"OK","data":{"web_id":"4569328","total_count":11249,"page":1,"page_size":10,"reviews":[{"id":"400246016","title":"U Love these towels","text":"I have been buying them for years and love them!","rating":5,"recommended":true,"author":"Kimmy","location":"Fayetteville, AR","submitted_at":"2026-08-12T01:40:45.000+00:00","secondary_ratings":[{"name":"Quality","value":4,"max_value":5}]}],"source_url":"https://apps.bazaarvoice.com/bfd/v1/clients/Kohls/api-products/cv2/resources/data/reviews.json?...","fetched_at":"2026-08-12T10:00:00Z"}} ```
MCPツール kohls_product_reviews
/kohls/storesReturns physical Kohl's store locations near a free-text location (city/state, zip code, or address): address, phone, weekly hours, distance, and store badges/services. A search with no results returns a genuine empty list rather than an error.
レスポンスに関する注記
- `hours` lists every open/close interval for the store's regular weekly schedule, one entry per day the store is open. - `badges` and `services` are flat lists of the store's own labeled amenities (e.g. `Sephora`, `In-Store Pickup`, `Wifi Enabled`) when present. - A search with no nearby stores, or a location the store locator cannot resolve at all, returns a genuine empty result (`count: 0`, empty `stores`) rather than an error. Example response: ```json {"code":200,"msg":"OK","data":{"search":"Seattle, WA","count":13,"stores":[{"id":"1152","name":"Kohl's Tukwila","address":"17150 SOUTHCENTER PKWY","city":"TUKWILA","state":"WA","postal_code":"98188","country":"US","phone":"(206) 394-0078","distance_miles":11.3,"latitude":47.450079,"longitude":-122.2581113,"hours":[{"day":"Sunday","open":"09:00","close":"20:00"},{"day":"Monday","open":"09:00","close":"21:00"}],"badges":["Sephora","Baby Gifting Shop","Kids Room Shop"],"services":["In-Store Pickup","Wifi Enabled"],"url":"https://www.kohls.com/stores/wa/tukwila-1152.shtml"}],"source_url":"https://maps.kohlslocal.com/api/getAsyncLocations?...","fetched_at":"2026-08-12T10:00:00Z"}} ```
MCPツール kohls_stores
/kohls/suggestReturns Kohl's own search-box typeahead result for a partial query: a flat list of suggested search phrases (no product data). A nonsense query returns a genuine, well-formed empty list rather than an error.
レスポンスに関する注記
- There is no pagination -- `suggestions` is a single flat list. - A nonsense query returns a normal, well-formed empty result (`count: 0`, empty `suggestions`) rather than an error. Example response: ```json {"code":200,"msg":"OK","data":{"query":"coff","count":8,"suggestions":["coffee makers","keurig coffee makers","ninja coffee makers","coffee mugs","coffee","cuisinart coffee makers","coffee grinder","keurig single serve coffee maker"],"source_url":"https://www.kohls.com/typeahead/coff.jsp","fetched_at":"2026-08-12T10:00:00Z"}} ```
MCPツール kohls_suggest
関連API
Marketplaces & Retail
Collect marketplace product signals from Amazon without building brittle storefront scrapers.
Marketplaces & Retail
Build resale, pricing, and marketplace workflows from structured eBay data.
Marketplaces & Retail
Turn public Shop.app product and merchant pages into structured JSON for e-commerce product intelligence, price research, shop monitoring, and marketplace discovery workflows.
対象企業
Kohl's Corporation · KSS
Kohl'sを運営するのはKohl's Corporation(KSS)です。CrawloraのSECエンドポイントは同じ企業のCIKを受け取るため、提出書類・財務・インサイダー取引・13F保有を上記のKohl'sエンドポイントと同じAPIキーで取得できます。
SEC提出書類・財務API →Kohl'sのスクレイピング方法
Crawlora's 4 Kohl's endpoints return category grids, product reviews, store locations, and search typeahead as normalized JSON with one API key — no Kohl's account, and no Akamai Bot Manager challenge to solve on your side.
/kohls/category takes Key:Value pairs joined by + (percent-encoded as %2B), not a URL slug — Room:Dorm on its own, or Room:Dorm%2BDepartment:Bedding to narrow. A slug copied from a kohls.com URL returns a 400 that states the expected format.
The response returns page 1 of the grid only, alongside product_count for the whole category and the upstream limit and total_pages — so you can see how much you are not fetching. Every facets[].options[].category value is a ready-made next query.
Each grid product carries a web_id. Pass it to /kohls/product/reviews for a page of normalized reviews with rating, title, text, author and submission date. secondary_ratings (Quality, Durability, Value, Style) appears only on reviews that carry it.
/kohls/stores takes a free-text city and state, ZIP code, or address and returns nearby locations with address, phone, distance, coordinates, the full weekly open/close schedule, and store badges such as Sephora or In-Store Pickup.
/kohls/suggest returns Kohl's own typeahead phrases for a partial query — search terms only, no product records — which is useful for keyword research and for finding the language a category is actually browsed under.
FAQ
It depends on the endpoint. /kohls/category returns page 1 of the grid only — product_count and total_pages tell you the full size, and the returned facets let you narrow into a smaller slice instead of paging. /kohls/product/reviews does paginate: pass page to walk through a product's reviews.
Key:Value pairs joined by + and percent-encoded as %2B — for example Room:Dorm, or Room:Dorm%2BDepartment:Bedding to combine two filters. It is not the slug from a kohls.com URL; passing one returns a 400 that names the expected format.
Not for product records directly. /kohls/suggest returns Kohl's own search-box typeahead phrases for a partial query, which are search terms rather than products. Use those phrases, or a facet's ready-made category value, to reach a product grid.
No. kohls.com runs Akamai Bot Manager, and these endpoints absorb that upstream — every route is a plain GET authenticated with your Crawlora x-api-key header.
No. Every endpoint reads public storefront, review, and store-locator data and needs only your Crawlora API key.