ScavioScavio
Pricing
Tools
Sign InsGet Startedg
9 live endpoints

Macy's API

Macy's product data as structured JSON: search, category, brand and deals listings with sale, clearance, Today Only, Last Act and Black Friday feeds; product detail with sale end dates and every variant's UPC; up to 10 products per call; Macy's own reviews; and store pickup per size and color.

Try Macy's APIRead the docs

50 free credits on signup, covering 50 Macy's calls. No card, no Macy's partner account.

POST /api/v1/macys/search
sample
query:
try
{  "data": {    "query": "jeans",    "redirected_to_category": null,    "total": 6711,    "page": 1,    "total_pages": 112,    "per_page": 60,    "sort": "featured",    "count": 60,    "sponsored_dropped": 2,    "items": [      {        "id": 25386711,        "title": "Women's Classic Straight Jeans",        "brand": "Tommy Hilfiger",        "url": "https://www.macys.com/shop/product/tommy-hilfiger-womens-classic-straight-jeans?ID=25386711",        "image": "https://slimages.macysassets.com/is/image/MCY/products/9/optimized/39667019_fpx.tif",        "price": 45.17,        "price_max": 51.67,        "regular_price": 69.5,        "regular_price_max": 79.5,        "sale_price": 45.17,        "percent_off": 35,        "percent_off_max": null,        "price_label": "Sale",        "set_value": null,        "on_sale": true,        "sale_ends": "2026-11-12",        "deal_label": null,        "currency": "USD",        "rating": 4.2,        "review_count": 72,        "colors": [          "Nos Dark Blue",          "… 2 more (trimmed for preview)"        ],        "promotions": [],        "is_sponsored": true      },      "… 59 more (trimmed for preview)"    ],    "applied_filters": [],    "facets": [      {        "name": "UPC_BOPS_PURCHASABLE",        "label": "Pick Up In-Store",        "values": [          {            "label": "10",            "count": 1438,            "value": "10"          }        ]      },      "… 33 more (trimmed for preview)"    ],    "currency": "USD"  },  "response_time": 30434}
captured example · 1 credits3 / 3 free

Live calls against the real endpoints. 3 free runs across every tab, then it's your own key. Listing pages can take up to a minute.

What is the Scavio Macy's API?

The Scavio Macy's API is a REST API that returns macys.com (US) data as structured JSON. Its 9 POST endpoints cover search, category, brand and deals listings, product detail for up to 10 products per call, Macy's reviews, a store locator, store pickup availability and search suggestions. Every call costs 1 credit.

9
endpoints, all live in production
1
credit per call, on every endpoint
60
items per listing page, up to page 1,000

The Macy's data buyers actually need

What an item costs today, when the sale ends, which deal it is in, and which store can hand it over.

Today Only, Black Friday and Last Act as feeds

POST /api/v1/macys/deals

Each Macy's sale program is its own listing: sale, clearance, today_only, last_act, limited_time_special or black_friday. The clearance listing held 23,124 items on 2026-11-09; its Discount Range facet counted 14,488 at 50% off or more and 700 at 80% or more.

10 products per call for a price tracker

POST /api/v1/macys/product

Send up to 10 product ids in one 1-credit call and store price, regular price, price label and sale end date each day. The Calvin Klein straight-fit jeans were $59.40 against $99, 40% off, Sale until 2026-11-12.

Store pickup per size and color

POST /api/v1/macys/store-availability

At one store, every variant's pickup_available and in_store_available. At State Street, Chicago, 31 of the jeans' 60 variants could be picked up and 43 were in the store. Macy's publishes no unit counts, and neither do we.

UPC on every variant

POST /api/v1/macys/product

Each variant carries its UPC, color, size and Macy's online availability message (In Stock, Just a few left), so a Macy's item matches the same UPC at other retailers.

Macy's own reviews, ratings-only counted

POST /api/v1/macys/reviews

Up to 100 reviews per page with star and text filters. Product splits review_count from text_review_count: the jeans had 55 ratings, 32 with written text, and a 41-of-55 five-star histogram.

Facets you can filter on

POST /api/v1/macys/search

Every listing returns Macy's facets with counts (brand, color, offers, discount range, pick up in-store) and any value goes back in as a filter. Ad-only tiles are dropped; organic items in a paid slot stay, flagged is_sponsored.

All 9 Macy's API endpoints

Every route is a POST, returns JSON, and takes the same API key. 1 credit per successful call; errors are not charged.

EndpointReturnsCredits
Search/api/v1/macys/searchKeyword search, 60 organic items per page, six sorts, filters for brand, color, special offer, any price range, store pickup and any facet: id, title, brand, price, regular and sale price, percent off, price label, sale end date, deal label, promotions, rating and review count, plus facets with counts1
Product detail/api/v1/macys/productOne product by id or URL, or up to 10 ids per call: price block with sale end date, promotions, star histogram, written vs total review count, fit slider, AI review summary, colors with prices, and every variant with UPC, color, size and availability message1
Reviews/api/v1/macys/reviewsMacy's own customer reviews, up to 100 per page, newest, highest or lowest rated or with photos first, star and text filters: rating, title, text, date, nickname, helpful votes, incentivized and syndicated flags, fit rating, photos and brand response1
Category/api/v1/macys/categoryAny category by id or URL, 60 items per page with the search sorts and filters, the category's name and URL and the facets with counts1
Brand page/api/v1/macys/brandOne brand's Macy's page by its page id or URL, 60 items per page with the search sorts and filters1
Deals/api/v1/macys/dealsSales & Offers, Clearance, Today Only, Last Act, Limited-Time Specials or Black Friday Deals as listings, 60 items per page, with the Discount Range facet and the search filters1
Store locator/api/v1/macys/storesUp to 15 Macy's stores near a ZIP, a point or a city: store_id, address, phone, distance, today's and tomorrow's hours, curbside hours and the same-day pickup cut-off1
Store availability/api/v1/macys/store-availabilityStore pickup for one product: near a location, which stores can hand it over; at one store, pickup_available and in_store_available for every variant. No unit quantities1
Search suggestions/api/v1/macys/suggestionsThe macys.com search-box autocomplete: up to 7 suggested searches for a partial query1

50 free credits on signup covers 50 Macy's calls. See plans

Track prices, pull clearance, check pickup

Product prices 10 items per call for a daily tracker; deals turns each sale program into a feed; store-availability answers which sizes a store can hand over. The response on the right is a real capture.

from scavio import ScavioClient

client = ScavioClient(api_key="sk_live_your_key")

# Up to 10 products in one 1-credit call. Run it daily and keep
# your own history: the API returns today's price only.
watch = [25822310, 719388, 19206874]
res = client.macys.product(product_ids=watch)["data"]

for p in res["products"]:
    print(p["id"], p["price"], p["regular_price"], p["price_label"], p["sale_ends"], p["deal_label"])
print("not found:", res["not_found"])
200 response.jsoncaptured
{
  "data": {
    "requested_id": 25822310,
    "id": 25822310,
    "title": "Men's Standard Straight Fit Stretch Denim Jeans",
    "full_title": "Calvin Klein Men's Standard Straight Fit Stretch Denim Jeans",
    "brand": "Calvin Klein",
    "brand_page_id": 337747,
    "brand_url": "https://www.macys.com/shop/brands/calvin-klein?id=337747",
    "type": "JEANS",
    "url": "https://www.macys.com/shop/product/calvin-klein-mens-straight-fit-stretch-denim-jeans?ID=25822310",
    "description": "Crafted from comfort-stretch denim, these Calvin Klein straight-fit jeans offer lasting flexibility and all-day comfort. Featuring a timeless straight-leg silhouette and signature logo details, they bring together classic style and iconic brand appeal.",
    "bullets": [
      "Approx. inseam: 32\"",
      "Type of fit: straight fit"
    ],
    "categories": [
      {
        "id": 1,
        "name": "Men's Fashion, Shoes & Accessories",
        "url": "https://www.macys.com/shop/mens?id=1"
      },
      {
        "id": 11221,
        "name": "Jeans & Denim",
        "url": "https://www.macys.com/shop/mens/clothing/jeans?id=11221"
      }
    ],
    "price": 59.4,
    "price_max": 71.4,
    "regular_price": 99,
    "regular_price_max": 119,
    "sale_price": 59.4,
    "percent_off": 40,
    "percent_off_max": null,
    "price_label": "Sale",
    "set_value": null,
    "on_sale": true,
    "sale_ends": "2026-11-12",
    "deal_label": null,
    "currency": "USD",
    "price_valid_until": "2026-11-12",
    "promotions": [],
    "rating": 4.5,
    "review_count": 55,
    "text_review_count": 32,
    "rating_distribution": {
      "1": 2,
      "2": 2,
      "3": 3,
      "4": 7,
      "5": 41
    },
    "recommended_count": 14,
    "not_recommended_count": 2,
    "fit": {
      "value": 4,
      "scale": 7,
      "label": "neutral",
      "min_label": "Runs Small",
      "max_label": "Runs Large"
    },
    "review_summary": "* Customers frequently praise the comfortable feel of the denim.\n* Many reviewers find the fit to be accurate and true to size.\n* The jeans are noted for their high-quality material and durable construction.\n* Customers appreciate the versatile style for various occasions.",
    "purchased_message": "859 customers purchased",
    "questions_count": 0,
    "answers_count": 0,
    "available": true,
    "images": [
      "https://slimages.macysassets.com/is/image/MCY/products/7/optimized/40869767_fpx.tif"
    ],
    "colors": [
      {
        "id": 11426969,
        "name": "WINTER HAZE",
        "normal_name": "Blue",
        "swatch": "https://slimages.macysassets.com/is/image/MCY/swatches/8/optimized/39126708_fpx.tif",
        "image": "https://slimages.macysassets.com/is/image/MCY/products/0/optimized/39142680_fpx.tif",
        "price": 71.4
      },
      {
        "id": 11000904,
        "name": "CK Classic Black",
        "normal_name": "Black",
        "swatch": "https://slimages.macysassets.com/is/image/MCY/swatches/0/optimized/36091800_fpx.tif",
        "image": "https://slimages.macysassets.com/is/image/MCY/products/9/optimized/36091809_fpx.tif",
        "price": 65.4
      }
    ],
    "sizes": [
      "29",
      "30",
      "31"
    ],
    "size_label": "Waist",
    "variant_count": 60,
    "variants": [
      {
        "upc": "198629836923",
        "variant_id": 57591604,
        "color": "CK Classic Black",
        "size": "29x30",
        "available": true,
        "availability_message": "Just a few left",
        "low_availability": true,
        "ship_days": 2,
        "ship_message": "Usually ships within 2 business days."
      },
      {
        "upc": "198629836978",
        "variant_id": 57591605,
        "color": "CK Classic Black",
        "size": "30x30",
        "available": true,
        "availability_message": "In Stock",
        "low_availability": false,
        "ship_days": 2,
        "ship_message": "Usually ships within 2 business days."
      }
    ]
  },
  "response_time": 8156
}

Why not the official Macy's API?

Macy's runs a developer portal for its partners. Here is where the Scavio Macy's API differs.

Macy's MINT API Developer Portal

  • "OAuth2.0 Credentials or API keys are available only to pre-approved Macy's Partners" (its FAQ)
  • Built for marketplace operations: offers, orders, sellers, invoices, shipping and returns
  • No public endpoint for searching the Macy's catalog, its deals or store pickup
  • Its own OAuth integration, separate from every other retailer you track

Scavio Macy's API

  • One Scavio key, issued at signup, shared with Nordstrom, Best Buy, Target and 70+ other platforms
  • Search, category, brand and deals listings with Macy's own facets as filters
  • Sale, clearance, Today Only, Last Act and Black Friday listings as separate feeds
  • Store pickup and in-store flags per variant at any Macy's store
  • Up to 10 products priced in one 1-credit call
  • Plain JSON over POST, the same request style as every other Scavio retailer

Scavio returns publicly available macys.com data only, never signs in as a Macy's customer and never places orders.

What developers build with it

Macy's price tracker and sale alerts

Keep a watchlist, check up to 10 products per 1-credit call each day, and alert when the price drops, the price label changes or a sale end date appears.

product

Today Only and Black Friday monitoring

Pull the today_only and black_friday listings every morning and record which items, brands and discounts Macy's features.

deals

Clearance and Last Act feeds

List clearance or Last Act items at 50%, 70% or 80% off or more in one department, sorted by price, and flag new markdowns.

deals + category

Store pickup checker

Find the stores near a shopper's ZIP, then check which sizes and colors of a product can be picked up at their store.

stores + store-availability

Price comparison across retailers

Match Macy's variants to other retailers by UPC and compare the price and regular price side by side.

product + Nordstrom, Target, Walmart APIs

Brand and MAP monitoring

Watch one brand's Macy's page sorted by price and flag items sold below the price you expect, or newly marked down.

brand + search

Review and fit mining

Read a product's lowest-rated reviews, filter by a word like sizing, and track the Runs Small / Runs Large fit rating.

reviews + product

Assortment research

Use a category's facets and counts to see how many items Macy's lists per brand, color, discount range or size.

category + search

Keyword research

Expand a seed term into the searches macys.com suggests, then run each one.

suggestions + search

How to get Macy's data as JSON

  1. 1

    Get an API key

    Sign up for a Scavio account and copy your key from the dashboard. You get 50 free credits on signup, enough for 50 Macy's calls, with no card required and no Macy's partner account.

  2. 2

    Search Macy's

    Send {"query": "jeans"} to https://api.scavio.dev/api/v1/macys/search with an Authorization: Bearer header. Each item comes back with its id, price, regular price, percent off and deal label.

  3. 3

    Open the product

    Pass that id to /api/v1/macys/product for the full price block, star histogram and every variant's UPC, color and size, or send up to 10 ids as product_ids in one call.

  4. 4

    Check store pickup

    Find a store_id near a ZIP with /api/v1/macys/stores, then send the product id and store_id to /api/v1/macys/store-availability for per-variant pickup and in-store flags.

One key, 55 platformsMCP server for agentsPython & JS SDKsn8n community node

Macy's API FAQ

Does Macy's have a public API?

+

Macy's runs a developer portal, the MINT API Developer Portal at developer.macys.com, for marketplace partners. Its FAQ says "OAuth2.0 Credentials or API keys are available only to pre-approved Macy's Partners", and its services manage offers, orders, sellers, invoices, shipping and returns. There is no public API for searching the Macy's catalog. The Scavio Macy's API is a separate option: 9 POST endpoints that return what macys.com shows today as JSON.

How do I build a Macy's price tracker?

+

Keep a list of product ids and send up to 10 at a time to /api/v1/macys/product as product_ids, on a schedule: 1 credit per call whatever the count. Store price, regular_price, price_label, sale_ends and deal_label per product with a timestamp, and alert when the price drops or a regular price rises ahead of a sale.

Does the API return Macy's price history?

+

No. Every endpoint returns today's price. A price history starts the day you start polling: record the product endpoint's prices yourself, daily or more often around Black Friday.

Can I get Macy's Today Only, Black Friday and Last Act deals?

+

Yes. /api/v1/macys/deals takes type: sale (all Sales & Offers), clearance, today_only, last_act, limited_time_special or black_friday, and returns 60 items per page with price, regular price, percent off and sale end date when Macy's states one. Last Act items are final sale; Macy's says so in their promotions text.

Can I list Macy's clearance by discount?

+

Yes. Send type clearance to /api/v1/macys/deals, or special_offer clearance to search, category or brand, and pass a Discount Range value back in filters. On 2026-11-09 the clearance listing held 23,124 items: 14,488 at 50% off or more and 700 at 80% or more. Counts move daily.

Can I check whether a Macy's store has an item for pickup?

+

Yes. /api/v1/macys/store-availability with a ZIP, a point or a city returns each nearby store with available and available_items_count. With a store_id it returns every variant's pickup_available and in_store_available at that store. pickup_store_id on search, category, brand and deals lists only items a store can hand over.

Does the API say how many units a store has?

+

No. Macy's publishes no unit quantities, so no response carries a stock count. You get pickup and in-store flags per variant at a store, and Macy's online availability message (In Stock, Just a few left) per variant on product.

Does it return Macy's reviews, including ratings-only ones?

+

/api/v1/macys/reviews returns Macy's own written reviews, up to 100 per page, sorted newest, highest or lowest rated or with photos first, with star and text filters. Ratings without text have no review to return: product counts them in review_count (55 for the jeans) next to text_review_count (32) and the star histogram. Reviewers appear by nickname only.

Can I get many products in one call?

+

Yes, up to 10 ids per call as product_ids, for 1 credit. Macy's serves its summary view in a batch: price, rating and review_count, but no star histogram, and a collection without its members' variants. Ids Macy's does not know are listed in not_found.

Why does a product id return a different product?

+

Some Macy's products belong to a collection (one towel size, say). Asking for the member returns the collection product, and requested_id echoes the id you asked for.

Are sponsored products included in search results?

+

Ad-only sponsored tiles are left out by default and counted in sponsored_dropped (2 on the first page of "jeans"); pass include_sponsored: true to keep them. Organic items that also hold a paid slot always stay, flagged is_sponsored: true (6 of 60 in that capture).

Does it return Macy's coupon or promo codes?

+

No. Promotions come through as Macy's prints them on the item, such as "Buy the matching jacket and pant together for $329.99. Ends 11/28/26", but no coupon or promo codes are returned.

How much does a Macy's request cost?

+

Every Macy's endpoint costs 1 credit. New accounts get 50 free credits on signup, one time and with no card, which covers 50 Macy's calls. Paid plans start at $15 per month for 3,000 credits; on the Growth plan ($1 per 1,000 credits) that is $1 per 1,000 Macy's calls. Errors (400, 404, 502) are not charged.

How fast and fresh is the data?

+

Every request reads macys.com when you call it; nothing is cached, and each response carries fetched_at. In our captures reviews took 0.9 seconds, suggestions 3.5, deals 4.3, store availability 4.4, stores 4.8 and product 8.2, while the larger listing pages took longer: search 30.4, category 35.5 and brand 61.7. Upstream checks sometimes fail; they are retried automatically, and a call that still fails is a 502 that is not charged.

Which countries does it cover?

+

macys.com in the United States, with prices in US dollars and US stores. International prices and Bloomingdale's are not covered.

What do Macy's terms say about collecting data?

+

The macys.com Legal Notice says the site licence "does not include ... (b) any collection or use of any product listings, descriptions, images or videos; ... or (e) any use of data mining, robots or similar data gathering and extraction tools." Scavio returns publicly available macys.com data and does not sign in to customer accounts or place orders. You remain responsible for how you use the data; talk to your own counsel for your use case.

Explore more of Scavio

Best Macy's price tracker APIs

Six options priced and tested during the holiday sales, November 2026.

How to get Macy's sale prices

Sale lists, deep clearance and store stock per size, step by step.

Did Macy's raise the price before the sale?

Check 10 products per call and keep your own price history.

Macy's API docs

All 9 endpoints with params and real responses.

Nordstrom API

Department-store listings, sizes priced and store pickup.

Best Buy API

Open-box prices, store pickup and deals.

Target API

Search, categories, detail and reviews.

Walmart API

Search, product, reviews and store-level pricing.

Amazon API

Search, product detail by ASIN and seller offers.

Google Shopping API

Compare prices across stores for one product.

Try the Macy's API free

50 free credits on signup, no card. Your first request is a POST with a product name in it.

Get your API keySee pricing
ScavioScavio

One scraper API for every social, search, e-commerce and real estate platform. Built for AI agents.

Product

  • Features
  • Pricing
  • Dashboard
  • Affiliates

Developers

  • Documentation
  • API Reference
  • Quickstart
  • MCP Integration
  • Python SDK

Alternatives

  • Tavily Alternative
  • SerpAPI Alternative
  • Firecrawl Alternative
  • Exa Alternative
  • Serper Alternative
  • Tavily vs Scavio
  • SerpAPI vs Scavio
  • All alternatives
  • Compare Scavio vs alternatives

Search APIs

  • Google Search API
  • Amazon Product API
  • YouTube API
  • Reddit API
  • Walmart Product API
  • TikTok API
  • Instagram API

Tools

  • All Tools

Ask AI about Scavio

© 2026 Scavio. All rights reserved.

Featured on TAAFT
Terms of ServicePrivacy Policy