Macy's
Macy's Product API
One macys.com (US) product by id or URL, or up to 10 by product_ids in one call: title, brand with its brand page id, type, description, bullets, category path, the price block (current, regular and sale price, percent off, price label, on-sale flag, sale end date, deal label), promotions, rating, review count and written-review count, star histogram, recommended counts, fit slider, AI review summary, purchased message, question and answer counts, images, colors with each color's price, sizes and every variant with UPC, color, size, availability message, low-stock flag and ship days. Costs 1 credit per request, whatever the number of ids.
Authorizations
AuthorizationstringheaderrequiredBearer authentication header of the form Bearer <token>, where <token> is your Scavio API key (e.g. Bearer sk_live_your_key).
Body
application/jsonproduct_idintegerMacy's product id: a search result's id, or the ID= number in a macys.com product URL.
Example: 25822310
urlstringA macys.com product URL (its ID= is used). Alternative to product_id.
Example: https://www.macys.com/shop/product/calvin-klein-mens-straight-fit-stretch-denim-jeans?ID=25822310
product_idsinteger[] | stringUp to 10 product ids in one call, as an array or a comma-separated string, instead of product_id or url. Returns Macy's summary view of each.
Example: [25822310, 719388, 19206874]
Request
from scavio import ScavioClient
client = ScavioClient(api_key="sk_live_your_key")
p = client.macys.product(product_id=25822310)["data"]
print(p["full_title"], p["price"], "reg", p["regular_price"], p["price_label"], "until", p["sale_ends"])
print(p["review_count"], "ratings,", p["text_review_count"], "written", p["rating_distribution"])
for v in p["variants"]:
print(v["upc"], v["color"], v["size"], v["availability_message"])Response