Amazon Wishlist & Registry Scraper avatar

Amazon Wishlist & Registry Scraper

Pricing

from $0.49 / 1,000 results

Go to Apify Store
Amazon Wishlist & Registry Scraper

Amazon Wishlist & Registry Scraper

Scrape public/shareable Amazon wishlists, gift lists, baby registries, and wedding registries from URLs you supply. Get list metadata, item ASINs, prices, quantities needed/purchased, priority, and comments.

Pricing

from $0.49 / 1,000 results

Rating

0.0

(0)

Developer

Dataspryva

Dataspryva

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

4 days ago

Last modified

Features

Limited permissions

Share

Scrape public and shareable Amazon wishlists, gift lists, baby registries, and wedding registries from URLs or bare wishlist IDs. Get list metadata (owner/title, description, event date, item counts) and per-item details — ASIN, title, price, quantity needed/purchased, priority, rating, and comments. This actor never searches for or enumerates people's lists; it only visits the exact URL(s) or ID(s) you provide.

What this actor does

  • Two input modes — paste full list URLs (listUrls) or bare wishlist IDs (listIds + marketplace)
  • Every current Amazon list URL shape — /hz/wishlist/ls/<ID>, the mobile /gp/aw/ls?lid=<ID>, /gp/registry/wishlist/<ID>, /baby-reg/<name>/<ID>, /wedding/guest-view/<ID> (and the older /wedding/<name>/registry/<ID>), and /registries/gl/guest-view/<ID>
  • Classifies access before extracting anything — every list is tagged PUBLIC, SHAREABLE, PRIVATE_OR_AUTH_REQUIRED, NOT_FOUND, or BLOCKED; private/deleted lists return zero item records, never a fake empty "success"
  • Full pagination — follows Amazon's own "See More" pages until the list ends or maxItems is reached, so long lists are not silently truncated at the first screen
  • Real quantities, not guesses — requestedQuantity ("Needs N") and purchasedQuantity ("Has N") are separate, real fields
  • Registry metadata — baby/wedding/Gift List records include the real displayed event/arrival date and city-level event location, plus Amazon's own purchased-item count when shown
  • Empty fields are omitted — never a null/placeholder value

Privacy — please read

This actor only scrapes the exact URL(s) or wishlist ID(s) you supply. It does not crawl Amazon's registry search to discover or enumerate people or lists. It never infers or exposes a delivery address. Only use it on lists that are genuinely public or explicitly shared with you.

Credential-free by design. No cookies, logins, API keys, or tokens are accepted or stored. A private list is reported honestly as PRIVATE_OR_AUTH_REQUIRED; the actor cannot open it.

Registry search is not supported — Amazon's public "Find a registry" search (/registries/search) redirects anonymous visitors to a sign-in page. That is a confirmed Amazon-side gate, not an actor limitation that extra code can bypass. Use the direct registry link instead.

Output: per-list record (recordType: "list")

  • listId — the wishlist/registry ID parsed from the URL or supplied in listIds
  • type — wishlist / giftList / babyRegistry / weddingRegistry / customRegistry
  • title, ownerName — the list/registry display name (only when Amazon shows it publicly)
  • description — the owner-written description, when the list shows one
  • eventDate — baby arrival/due date or registry event date, ISO YYYY-MM-DD, when displayed
  • eventLocation — city/state only (never a street address, unit, or postal code)
  • declaredItemCount — Amazon's own displayed item total, when shown
  • purchasedItemCount — Amazon's own "N/M items purchased" count, when shown
  • extractedItemCount — how many item records this run produced
  • accessClassification — PUBLIC, SHAREABLE, PRIVATE_OR_AUTH_REQUIRED, NOT_FOUND, or BLOCKED
  • sourceUrl, canonicalUrl — the URL you supplied and the final resolved URL
  • marketplace — {countryCode, domain, currency, language}
  • recordType: "list", scrapedAt

Output: per-item record (recordType: "listItem")

  • listId, listItemId — Amazon's own stable per-item ID (classic wishlist data-itemid, Gift List entry UUID, a wedding-registry card's ASIN, or the entry UUID of a wedding gift-fund card)
  • position — 1-based position in the list as scraped (output order may differ for price sorts)
  • asin, title, url, imageUrl, brand
  • price, listPrice — {value, currency, display}, only when Amazon shows a parseable amount
  • rating, ratingsCount — only when the item shows a rating
  • requestedQuantity — "Needs N"/"N of M purchased" requested count
  • purchasedQuantity — "Has N"/purchased count
  • priority — high/medium/low, Most Wanted (Gift List), or Must Have (baby registry), only when the owner/badge sets one
  • comment — the owner's note, when present
  • variant — selected size/color/style text, when shown
  • availabilityText, discountText — raw availability/discount text, when shown
  • badge — real status badge ({label, category}), e.g. {"label": "Best Seller", "category": "in Packing Tape"}
  • isIdea — true only for a free-text "idea" entry with no linked product (no asin/url/imageUrl)
  • listUrl, marketplace
  • recordType: "listItem", scrapedAt

Input

FieldTypeDefaultDescription
listUrlsarray–Public/shareable list URLs (any supported Amazon list/registry shape)
listIdsarray–Bare wishlist IDs, opened on the selected marketplace
marketplaceselectamazon.comMarketplace used to build URLs from listIds (23 Amazon domains)
maxItemsinteger100Max items per list (1–10,000); pagination stops at this cap or the real end of the list
sortByselectlist defaultdate-added / priority / price-asc / price-desc / custom for wishlists
proxyConfigurationobjectAUTOApify proxy; the actor escalates automatically only if Amazon blocks the request

Example: scrape a public wishlist

{
"listUrls": ["https://www.amazon.com/hz/wishlist/ls/2PBHI0DGWAAAF"],
"maxItems": 100
}

Example: IDs mode across two marketplaces

{
"listIds": ["2PBHI0DGWAAAF"],
"marketplace": "amazon.co.uk",
"maxItems": 50
}

Example: baby registry and wedding registry

{
"listUrls": [
"https://www.amazon.com/baby-reg/example-name/EXAMPLEID123",
"https://www.amazon.com/wedding/guest-view/EXAMPLEID456"
],
"maxItems": 200
}

Example: a Gift List (school supply drive / birthday list)

{
"listUrls": ["https://www.amazon.com/registries/gl/guest-view/EXAMPLEID123"],
"maxItems": 50
}

Use cases

  • Charity and hospital donation drives — export a shared wishlist so volunteers see current needs
  • Classroom supply lists — track what teachers still need, including requested vs purchased counts
  • Wedding/baby registry gift coordination — see remaining needs and the registry's event date
  • Gift-list price monitoring — watch current prices and rating changes on a shared list
  • Archiving a list you own or administer — export it before editing or deleting it

FAQ

Can this actor find someone's wishlist for me? No. It only opens URLs or wishlist IDs you provide. Amazon's public registry search requires sign-in, and this actor never enumerates people.

What happens with a private or deleted list? You get a list record with accessClassification: "PRIVATE_OR_AUTH_REQUIRED" or "NOT_FOUND" and zero item records — never a fake "0 items, success" result.

What does BLOCKED mean? Every retry, including the automatic residential fallback, hit an Amazon anti-bot/CAPTCHA page instead of the list. The list may exist; re-run later. It is never reported as NOT_FOUND.

Does it show delivery addresses? No. It never infers or exposes a delivery address. Registry event locations are reduced to city/state and street-like text is refused.

Why is my price in a different currency than the marketplace? Amazon renders cross-border prices in the visitor's local currency (for example, a US registry viewed from Pakistan can show PKR). The price.currency field reports the currency Amazon actually displayed; marketplace.currency reports the list's own marketplace currency.

Why are some items missing? Classic wishlists hide items the owner marked as purchased (the public page only offers an "Unpurchased" filter); some registries hide purchased items the same way. Gift-fund/contribution entries and deleted items may have no product card at all. When a gift-fund card does render, it is returned with its displayed name and a stable entry ID, but with no fabricated ASIN, product URL, or price. Amazon's own counters can therefore be higher than extractedItemCount.

Why are some fields missing on some items? Amazon only shows priority labels, comments, ratings, variants, and availability text when the owner or product has that data. Fields are included only with real evidence.

Why does an item have no asin/url/imageUrl? It is a free-text "idea" entry with no linked product (isIdea: true). This is distinct from an extraction gap.

Can I scrape my own private list? No. This actor is credential-free and does not accept a session cookie. Set the list to public/shareable and use its link.

How many items can I get per list? Up to maxItems (maximum 10,000). Long lists are followed through Amazon's own pagination pages, not just the first screen.

Is sortBy honored on every list type? date-added, priority, price-asc, price-desc, and custom map to the live wishlist sort control. Registry pages expose their own fixed sort sets; an unsupported value falls back to the list's default order. For price sorts, the actor re-sorts the parsed prices in Python so the output is strictly monotonic even when Amazon's DOM order is not.

Why is a non-English marketplace showing English or native-language text? The actor requests Amazon's English cross-border view. Some marketplaces (confirmed: Germany, Japan) honor it; others (confirmed: Turkey; likely Saudi Arabia/Sweden/UAE/Egypt) render natively. Titles/comments may be English or native; prices, ratings, ASINs, and URLs remain correct. Machine-translation is never fabricated.

What if I supply the same list twice? It is fetched and returned once, even when the duplicate is a different URL form (exact, mobile lid=, or share-ref variant) of the same underlying list.