Fetch iOS and macOS App Store reviews as structured JSON with one API call: ratings, text, versions, and helpfulness across 50+ country stores.

I kept hitting the same wall whenever I wanted to understand how an app was landing with users: the App Store shows you reviews a few at a time, in a browser, with no export button. Copying them by hand does not scale past a page, and every scraper I tried broke the moment Apple tweaked its markup. So I built an API that just returns the reviews.
The Apple App Store Reviews API fetches iOS and macOS app reviews on demand and returns them as clean, structured JSON, so you can analyze ratings and sentiment without writing or maintaining a scraper.

Every run gives you one JSON row per review, with the fields you actually work with:
Star rating (1 to 5)
Review title and full review text
Review date, both human-readable and ISO format
The app version the review was left on
The author and the helpfulness count
Its position in the result set
It reaches across 50+ country stores, and you can sort by most recent, most helpful, most favorable, or most critical. One honest limitation: it reads what Apple publishes on the public store, so coverage and freshness track the store itself, and an unlimited pull is capped internally at 50 pages.
Pass a numeric App Store product ID or just an app name, pick a country and a sort order, and set how many reviews you want. A typical run to grab the 100 most critical reviews looks like this:
{
"product_ids": ["835599320"],
"country": "us",
"sort": "mostcritical",
"max_reviews": 100
}Set max_reviews to 0 to drain everything available, and pass a list of product IDs to sweep several competitors in one run. Results export as JSON, CSV, or Excel straight from the dataset.
You can call the actor over the Apify API from any language. From Python with the Apify client:
from apify_client import ApifyClient
client = ApifyClient("YOUR_APIFY_TOKEN")
run = client.actor("johnvc/apple-app-store-reviews-api").call(run_input={"app_name": "spotify", "country": "us", "sort": "mostrecent", "max_reviews": 200})
for review in client.dataset(run["defaultDatasetId"]).iterate_items():
print(review["rating"], review["review_title"])
The actor runs over MCP, so Claude, Cursor, and other AI clients can discover it and call it as a tool. Point your client at the hosted Apify MCP endpoint:
https://mcp.apify.comThen ask, in plain English, "pull the 100 most-recent App Store reviews for Spotify in the UK store and bucket them by star rating." The agent runs the actor and reasons over the structured result, no scraping code required.
Teams use it to track sentiment after a release, to pull a competitor's one-star reviews and find product gaps, and to feed review data into app store optimization dashboards. There are four runnable examples, each a single click, on the App Store Reviews API examples page. You can also see the full listing and pricing on the Peerlist project page.
It reads reviews published on Apple's public App Store for the app and country store you request. Freshness tracks the store itself, so sorting by most recent gives you the newest reviews Apple is showing. Coverage is broad across 50+ country stores, though very old reviews on high-volume apps are paginated.
Call it over the Apify REST API or the Python client with an app ID or name, a country, a sort order, and a review count. Output comes back as JSON, CSV, or Excel. Pricing is pay-per-result, from $0.01 per 1,000 results, so a few hundred reviews cost almost nothing and there is no subscription.
Yes. It is built MCP-first, so you register it as a tool through the hosted Apify MCP endpoint and let Claude, Cursor, or Claude Cowork call it. Your agent can fetch reviews for an app and then summarize themes or extract feature requests in the same conversation, with no code on your side.
Yes. From the Apify Console you can put any task on a daily or weekly schedule, so a fresh batch of reviews lands on its own. That is ideal for watching a release over time, monitoring a competitor, or feeding a sentiment dashboard. Set it up on the Apple App Store Reviews API.
Issues get a response within a day, so if you hit a country store or app that behaves oddly, flag it and it gets looked at.
0
0
0