# Walmart Category API (https://www.socialcrawl.dev/platforms/walmart/category) > Returns products listed in a Walmart category, up to 100 per call, with title, price, rating, review count, image, availability, and seller. Unlike keyword search this endpoint DOES return real prices, which makes it the better source for price monitoring across a product set. Category ids appear in the category URLs on a product detail response (for example 3944 for Electronics). Two upstream caveats measured against the live source: sort_by is applied loosely and does not guarantee a globally ordered page (sort client-side if you need one), and brand is not populated on category rows, so read it from GET /v1/walmart/product when you need it. TL;DR: `GET /v1/walmart/category` costs 5 credits per call and returns SocialCrawl's unified JSON schema. Single x-api-key auth, 100 free credits on signup. ## Parameters | Parameter | Required | Description | | --- | --- | --- | | `category_id` | yes | Walmart category id, for example 3944 for Electronics. Category ids and their URLs are returned in the categories array of GET /v1/walmart/product. | | `page` | no | Page number, starting at 1. Prefer the universal cursor parameter. | | `sort_by` | no | Result ordering: best_match (default), price_low, price_high, best_seller, or top_rated. (best_match \| price_low \| price_high \| best_seller \| top_rated) | | `min_price` | no | Lowest price to include. Must be below max_price when both are set. Applied by Walmart and approximate: it narrows the result set but occasionally returns a row outside the bound, so filter on product.price.current if you need a hard limit. | | `max_price` | no | Highest price to include. Must be above min_price when both are set. Applied by Walmart and approximate: it narrows the result set but occasionally returns a row outside the bound, so filter on product.price.current if you need a hard limit. | | `zip_code` | no | ZIP code used to localise availability, pickup, and shipping options. Walmart pricing and stock are store-level, so results differ by location. | | `state` | no | Two-letter US state code used to localise results (for example CA, NY). | | `store_id` | no | Walmart store id, to restrict results to one physical store's assortment. | | `facet` | no | Opaque refinement token taken from a previous response's facet data (for example a brand or category filter). | | `country` | no | Walmart marketplace as a two-letter country code: US (walmart.com, default) or CA (walmart.ca). A product id from one marketplace will not resolve in the other. (US \| CA) | | `limit` | no | Products per page, 1 to 100. Defaults to 40. Enforced by SocialCrawl: the page is trimmed to exactly this many rows. | | `max_pages` | no | 1 to 50 (default 1, or 50 when `max_items` or `max_credits` is sent). Walk up to this many pages in one call and return the rows from all of them. Each page walked is billed exactly as one call to this endpoint (a cached page is free) and counts against your rate limit; its charge and any refund are recorded under the page's own request id, listed in `data.walk.request_ids`. The walk stops early at the last page, or when the request's time budget runs low; `data.walk.stopped` says why (`end`, `max_pages`, `max_items`, `max_credits`, `time_budget`, `page_error`) and `pagination.next_cursor` continues from where it stopped. | | `max_items` | no | 1 to 5000. Get more in one call: keep walking pages until the response holds at least this many rows, then stop with `data.walk.stopped: "max_items"`. The last page is returned whole (it was billed), so `data.items` can hold up to one page more than this, and `pagination.next_cursor` resumes right after it without skipping a row. Walks up to 50 pages unless `max_pages` says fewer; each page is billed as one call (a cached page is free). Add `max_credits` to cap the spend. A long walk can stop on the time budget first (`"time_budget"`): send the returned cursor with the same params to continue. | | `max_credits` | no | 1 to 100000. The most this call may spend, across every page it walks. A page starts only while the credits already spent plus that page's price (or, when higher, the most any page of this walk has cost) still fit, so the call never goes past it; the walk then stops with `data.walk.stopped: "max_credits"` and the cursor to resume. Sent alone, it walks as far as the budget goes (up to 50 pages). A value below the price of one page is a free 400 whose `error.details.page_credits` names that price. Credits a row join (`include=`) adds are known only once a page has run, so page 1 is checked against its own price. | ## Code example ```bash curl -G "https://www.socialcrawl.dev/v1/walmart/category" \ --data-urlencode "category_id=3944" \ -H "x-api-key: sc_YOUR_API_KEY" ``` ## FAQ ### Where do I find a Walmart category id? Category ids and their URLs come back in the categories array on any product detail response, so you can walk from a known product into its category. Common ids are stable, for example 3944 for Electronics. ### Does the category endpoint return real prices? Yes. Category rows carry the actual current and list price, which makes this the right endpoint for price monitoring across a product set, and the only Walmart listing endpoint that returns prices at all. ### How many products come back per call? Up to 100 per call, defaulting to 40, and you page with the standard cursor parameter. At 5 credits per call, a full 100-row page works out at 0.05 credits per product. ### Why is brand empty on category results? Walmart does not populate the brand field on category listings. When you need brand, read it from the product endpoint using the product id returned on each category row. ### What if the category id does not exist? You get an empty list and the credits are refunded automatically, so probing for valid category ids costs nothing on the misses. See the full Walmart API: https://www.socialcrawl.dev/platforms/walmart ## Pricing - Standard endpoints: 1 credit per call - Advanced endpoints: 5 credits per call - Premium endpoints: 10 credits per call - 100 free credits on signup, no credit card required. Cached responses cost 0 credits. Credit packs never expire. - Full pricing: https://www.socialcrawl.dev/pricing ## Explore with AI Questions this API answers, phrased for an AI assistant: - How to list Walmart products in a category with an API - Walmart API for bulk product prices by category