Retail category and campaign monitoring
Usa los endpoints de Kohl's para convertir retail category and campaign monitoring en solicitudes API repetibles con inputs documentados y respuestas JSON.
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.
Familias de endpoints
4
Parámetros documentados
9
Ejemplos
4
Snapshot en vivo del catálogo
Endpoints activos
4
Métodos
GET
Parámetros obligatorios
8
Referencias de esquema
4
{
"platform": "Kohl's",
"endpoint": "kohls-category",
"method": "GET",
"path": "/kohls/category",
"auth": "apiKey"
}Casos de uso
Browse Kohl's category grids and facets, product reviews, store locations, and search typeahead as structured JSON.
Usa los endpoints de Kohl's para convertir retail category and campaign monitoring en solicitudes API repetibles con inputs documentados y respuestas JSON.
Usa los endpoints de Kohl's para convertir product review and rating analysis en solicitudes API repetibles con inputs documentados y respuestas JSON.
Usa los endpoints de Kohl's para convertir store footprint and locator research en solicitudes API repetibles con inputs documentados y respuestas JSON.
Usa los endpoints de Kohl's para convertir search-term and keyword discovery en solicitudes API repetibles con inputs documentados y respuestas JSON.
Ejecución gestionada
Cada cifra de abajo se lee directamente del catálogo de endpoints en vivo de Kohl's — 4 endpoints, 9 parámetros de solicitud documentados y 4 esquemas de respuesta publicados — el mismo catálogo contra el que corren Docs y Playground.
4 documented Kohl's endpoints, grouped into 4 request families — Category, Product and Stores, plus 1 more.
9 request parameters are documented across those Kohl's endpoints, 8 of them required — the full input contract is public before you write any integration code.
4 of the 4 Kohl's endpoints ship a recorded example response, and 4 carry a documented response schema — you can code against the real JSON before the first request.
Kohl's endpoints document their error responses (400, 404, 429 and 503) alongside the success schema, so a block, a rate limit, or a missing record comes back as a typed error rather than silently empty data.
4 hosted MCP tools back the Kohl's endpoints, so an agent can call the same routes with the same parameters and the same JSON contract, with no custom glue.
Mapa de cobertura
/kohls/category
/kohls/product/reviews
/kohls/stores
/kohls/suggest
Catálogo de endpoints
/kohls/categoryReturns a Kohl's category or curated campaign page's product grid (page 1 only), with 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.
Notas de la respuesta
- 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.
Herramienta MCP kohls_category
/kohls/product/reviewsReturns one page of a Kohl's product's 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.
Notas de la respuesta
- `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.
Herramienta 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.
Notas de la respuesta
- `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.
Herramienta 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.
Notas de la respuesta
- 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.
Herramienta MCP kohls_suggest
APIs relacionadas
Marketplaces & Retail
Research new, used, and vintage instruments across Reverb listings, seller shops, and the Price Guide. Keep current asking prices separate from historical sales, and preserve model, finish, year, condition, and currency when comparing gear.
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.
Cobertura de la empresa
Kohl's Corporation · KSS
Kohl's es operado por Kohl's Corporation (KSS). Los endpoints SEC de Crawlora usan el mismo CIK de esa empresa, así que los filings, datos financieros, transacciones de insiders y participaciones 13F provienen de la misma API key que los endpoints de Kohl's de arriba.
API de filings y datos financieros SEC →Cómo hacer scraping de 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.
Preguntas frecuentes
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.