# App Store Scraper | Charts & Developer Sites (`lentic_clockss/apple-app-store-scraper`) Actor

Scrape Apple App Store search, charts, reviews and developer pages. Extract adamId, ratings, seller/developer names, and Developer Website URLs. Guest pages only — App Store listings do not publish developer phone, email, or street address. 174 storefronts. Excel, CSV, JSON.

- **URL**: https://apify.com/lentic\_clockss/apple-app-store-scraper.md
- **Developed by:** [kane liu](https://apify.com/lentic_clockss) (community)
- **Categories:** SEO tools, Lead generation, Automation
- **Stats:** 1 total users, 0 monthly users, 0.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $2.20 / 1,000 results

This Actor is paid per event and usage. You are charged both the fixed price for specific events and for Apify platform usage.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

Learn more: https://docs.apify.com/platform/actors/running/actors-in-store#pay-per-event

## What's an Apify Actor?

Actors are web data automations that power AI and operations. They run on the Apify platform to scrape websites, process data, connect APIs, and automate workflows.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

- **AI agents and MCP clients** — the [Apify MCP server](https://docs.apify.com/integrations/mcp.md) at `https://mcp.apify.com` (remote, streamable HTTP, OAuth on first use).
- **Agentic workflows and local Actor development** — [Agent Skills](https://apify.com/.well-known/agent-skills/index.json) with the [Apify CLI](https://docs.apify.com/cli/docs.md): `npm install -g apify-cli`, then `apify login`.
- **JavaScript/TypeScript projects** — the official [JS/TS client](https://docs.apify.com/api/client/js/docs.md): `npm install apify-client`.
- **Python projects** — the official [Python client](https://docs.apify.com/api/client/python/docs.md): `pip install apify-client`.
- **Any other language** — the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).

# README

## App Store Scraper | Charts & Developer Sites

**Scrape the [Apple App Store](https://apps.apple.com) — search iOS apps, pull top charts, collect guest reviews, and download developer names plus Developer Website URLs as Excel, CSV, or JSON.**

Use this Actor as a practical **Apple App Store scraper / App Store data API** for **ASO**, competitor research, chart monitoring, and outreach lists. Pick a mode, set a storefront (`us`, `gb`, `jp`, `cn`, …), and get Dataset rows with `adamId`, `bundleId`, titles, developers, ratings, `web.website` (when listed), and live `apps.apple.com` URLs.

- **Keyword search** across **174 Apple storefronts** (`/{cc}/{platform}/search?term=`)
- **Top charts** — `top-free` and `top-paid` by `genreId` (Games `6014`, Weather `6001`, and other opened iOS genres)
- **App details (PDP)** — lockup identity, ratings, `isFree`, `hasInAppPurchases`, Information seller + website
- **Today / Games / Apps / Arcade** editorial shelves
- **Developer portfolios** by `artistId`
- **Guest reviews** and **similar apps** (“customers also bought”)
- Optional **iTunes lookup** enrich (`itunes.apple.com/lookup`) for `sellerName` / `sellerUrl`
- Lead keys on every row: `phones`, `emails`, `address`, `person`, `org`, `web`, `leadAbsences`
- Export to **Excel / CSV / JSON**, or connect Make, n8n, Zapier, Python, or the Apify API
- **Pay per event** — Actor start + each Dataset result; **platform usage is included** (you do not pay separate Apify compute on top)

> **Unofficial tool.** This Actor is not affiliated with, endorsed by, or sponsored by Apple Inc. It collects **guest / public** App Store web pages (`apps.apple.com`) and does **not** log in with an Apple ID, unlock Get/Buy, or scrape private account data.

***

### What does the Apple App Store Scraper do?

[Apple App Store Scraper](https://apify.com/lentic_clockss/apple-app-store-scraper) lets you **extract structured iOS App Store data** without running your own proxy and browser fleet. Give it a search term, a charts `genreId`, an app `adamId`, a developer `artistId`, a grouping id, or a batch of live `apps.apple.com` URLs, then start a run.

Under the hood, the Actor:

1. Validates your input (mode, storefront, platform path, ids, URLs)
2. Enforces free-tier caps when you are on a free Apify plan
3. Fetches guest App Store HTML and parses `#serialized-server-data`
4. Normalizes apps, charts, reviews, and shelf rows into a clean Dataset
5. Writes `INPUT_ECHO`, `RUN_SUMMARY` (and `ERROR_SUMMARY` on failure) to the key-value store

You run it like any other Apify Actor — schedule it, call it from the API, or plug it into automations.

***

### What App Store data can I extract?

| Data | Search | Charts | App details | Today / Games / Arcade | Developer | Reviews | Similar |
| --- | :---: | :---: | :---: | :---: | :---: | :---: | :---: |
| adamId / url | ✅ | ✅ | ✅ | ✅ shelves | ✅ | ✅ | ✅ |
| bundleId | enrich | enrich | ✅ | enrich | enrich | — | enrich |
| title / name | ✅ | ✅ | ✅ | ✅ | ✅ | — | ✅ |
| developerName / artistId | ✅ | ✅ | ✅ | ✅ | ✅ | — | ✅ |
| rating / rating count | ✅ | ✅ | ✅ | varies | varies | score | varies |
| isFree / hasInAppPurchases | ✅ | ✅ | ✅ | varies | varies | — | varies |
| genreId / chart type | — | ✅ | — | — | — | — | — |
| review text / reviewId | — | — | — | — | — | ✅ guest | — |
| storefront (`country`) + platform | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| developer website (`web.website`) | enrich | enrich | ✅ | enrich | — | — | enrich |
| phones / emails / street address | 本站无 | 本站无 | 本站无 | 本站无 | 本站无 | — | 本站无 |

**Login-only surfaces are out of scope** (Get/Buy, write-a-review, authenticated review history). Guest fields are what this Actor returns.

#### Lead / contact fields

App Store **guest pages do not publish developer phone numbers, emails, or street/门牌 addresses**. Those arrays stay empty and `leadAbsences` records `本站无`. What *is* public:

| Field | Type | What you actually get |
| --- | --- | --- |
| `phones` | `[{value, type, e164?}]` | Always `[]` on this site |
| `emails` | `[{value, type}]` | Always `[]` on this site |
| `address` | `{street, unit, locality, region, postalCode, country, full}` | All null (`unit` would be 门牌 if Apple showed one) |
| `geo` | `{lat, lng}` | Null — not a map listing |
| `person` | `{name, role}` | Indie seller name when it is a person, e.g. `Wesley Dudok van Heel` |
| `org` | `{name, id}` | Seller / artist, e.g. `The Weather Channel` + `artistId` |
| `web` | `{website, socials[]}` | Developer Website / Privacy / App Support URLs (`https://github.com/wdudokvanheel/kombuchakeeper`, `https://www.weather.com`) |
| `leadSource` | string | `search` | `detail` | `itunes-lookup` |
| `leadReveal` | string | `visible` (no Show-phone control) |
| `leadAbsences` | object | Per-field `本站无` when empty |

`enrichDetails` defaults **on** so list rows fetch PDP Information links. `enrichItunes` (default on) supplies `sellerUrl` without extra HTML. Turn `enrichDetails` off if you hit HTTP 429; then website may still come from iTunes, or `leadAbsences.web` if lookup has none.

This Actor does **not** crawl the developer’s own site for a hidden phone. Footer “Support” on apps.apple.com is Apple billing help, not the app developer.

Web charts on `apps.apple.com` expose **top-free** and **top-paid**. This Actor does **not** invent a top-grossing web chart that the guest page does not show.

***

### Why scrape the Apple App Store?

The Apple App Store is the primary catalog for **iPhone and iPad apps**. Teams scrape it for **ASO**, **competitor tracking**, **chart monitoring**, and **review intelligence**:

- See which apps rank for a **keyword** on a given storefront
- Watch **top free / top paid** charts by category (`genreId`)
- Pull **app details** with `adamId`, `bundleId`, ratings, and free/IAP flags
- Collect **guest reviews** for sentiment and support signals
- List a **developer’s public catalog**
- Feed CRM, BI dashboards, Google Sheets, BigQuery, or AI agents with clean rows

Compared with a generic URL scraper, this Actor returns **App Store-specific fields** (`adamId`, `bundleId`, `genreId`, `isFree`, `hasInAppPurchases`, `recordType`) in one input surface.

***

### More Actors like this

Need Play Store data, social graphs, ads intelligence, or a different vertical? Use a **dedicated Actor** below for structured fields. Use this Actor for **Apple App Store** (`apps.apple.com`) guest search, charts, reviews, and app details.

#### Similar app, ASO & content scrapers

- [YouTube Research Scraper](https://apify.com/lentic_clockss/youtube-research-scraper) — YouTube videos, channels & research
- [TikTok Scraper](https://apify.com/lentic_clockss/tiktok-scraper) — TikTok posts & profiles
- [YouTube Shorts Scraper](https://apify.com/lentic_clockss/youtube-shorts-scraper) — Shorts metadata
- [Reddit Scraper](https://apify.com/lentic_clockss/reddit-scraper) — Reddit threads & comments
- [Hacker News Scraper](https://apify.com/lentic_clockss/hacker-news-scraper) — HN stories & comments
- [Facebook Ad Library Scraper](https://apify.com/lentic_clockss/facebook-ad-library-scraper) — Meta ads (ASO / UA creative intel)
- [Google Maps Scraper](https://apify.com/lentic_clockss/google-maps-scraper) — local listings
- [Stealth Web Scraper](https://apify.com/lentic_clockss/stealth-web-scraper) — generic protected pages (prefer a dedicated Actor when one exists)

#### Prefer another specialized scraper?

If your target has a specialized Actor below, use that first — usually cheaper and more structured than a generic scrape.

**Jobs & Freelance**

- [LinkedIn Jobs Scraper](https://apify.com/lentic_clockss/linkedin-jobs-scraper)
- [Indeed Jobs Scraper](https://apify.com/lentic_clockss/indeed-jobs-scraper)
- [Upwork Jobs Scraper](https://apify.com/lentic_clockss/upwork-jobs-scraper)
- [Glassdoor Scraper](https://apify.com/lentic_clockss/glassdoor-scraper)
- [Fiverr Gigs Scraper](https://apify.com/lentic_clockss/fiverr-programming-tech-gigs-scraper)
- [Bayt Jobs Scraper](https://apify.com/lentic_clockss/bayt-scraper)

**Real Estate**

- [Zillow & Zumper Scraper](https://apify.com/lentic_clockss/us-real-estate-scraper)
- [Realtor.com Scraper](https://apify.com/lentic_clockss/realtor-com-scraper)
- [Apartments.com Rental Scraper](https://apify.com/lentic_clockss/apartments-com-rental-scraper)
- [Rightmove Scraper](https://apify.com/lentic_clockss/rightmove-property-scraper)
- [Idealista Scraper](https://apify.com/lentic_clockss/idealista-scraper)
- [realestate.com.au Scraper](https://apify.com/lentic_clockss/realestate-com-au-scraper)

**E-commerce**

- [Amazon Search Scraper](https://apify.com/lentic_clockss/amazon-search-results-collector)
- [Walmart Product Scraper](https://apify.com/lentic_clockss/walmart-scraper)
- [Etsy Scraper](https://apify.com/lentic_clockss/etsy-scraper)
- [Shopee Search Scraper](https://apify.com/lentic_clockss/shopee-search-scraper)
- [SHEIN Product Scraper](https://apify.com/lentic_clockss/shein-scraper)
- [Temu Product Scraper](https://apify.com/lentic_clockss/temu-scraper)
- [Target Product Scraper](https://apify.com/lentic_clockss/target-scraper)
- [Allegro Scraper](https://apify.com/lentic_clockss/allegro-scraper)

**Travel & Stays**

- [Booking.com Hotels Scraper](https://apify.com/lentic_clockss/booking-hotels-scraper)
- [Airbnb Listings Scraper](https://apify.com/lentic_clockss/airbnb-listings-scraper)
- [Expedia Scraper](https://apify.com/lentic_clockss/expedia-scraper)
- [TripAdvisor Scraper](https://apify.com/lentic_clockss/tripadvisor-scraper)

**Ads Intelligence**

- [Facebook Ad Library Scraper](https://apify.com/lentic_clockss/facebook-ad-library-scraper)
- [TikTok Ads Scraper](https://apify.com/lentic_clockss/tiktok-ads-top-ads-actor)

**General Tools**

- [Stealth Web Scraper](https://apify.com/lentic_clockss/stealth-web-scraper)
- [Email Risk Validator](https://apify.com/lentic_clockss/email-risk-validator)
- [Phone Number Intelligence](https://apify.com/lentic_clockss/phone-number-intelligence)

→ See the full catalog in [Related Actors](#related-actors) below, or browse [apify.com/lentic\_clockss](https://apify.com/lentic_clockss).

***

### How to scrape the App Store (no code required)

1. Create a free [Apify](https://apify.com/) account
2. Open [Apple App Store Scraper](https://apify.com/lentic_clockss/apple-app-store-scraper)
3. Choose a **mode**: `search`, `charts`, `detail`, `today`, `games`, `apps`, `arcade`, `developer`, `reviews`, or `similar`
4. Set **country** (ISO2 storefront) and **platform** (`iphone`, `ipad`, …). Search URLs must include the platform path (`/us/iphone/search?term=` — `/us/search` 404s)
5. Enter a **term**, **genreId**, **adamId**, **artistId**, **groupingId**, and/or **startUrls**
6. *(Optional)* Leave `enrichItunes` and `enrichDetails` on (both default on) so seller URLs and Developer Website are filled; turn `enrichDetails` off if you hit HTTP 429
7. Click **Start** and download the Dataset as JSON, CSV, Excel, or JSONL

Start with `maxResults: 5–15` to verify the query, then scale up.

#### Search apps by keyword

**In plain English:** pick a storefront and a keyword → get a table of matching apps with `adamId` and ratings.

**You give:** `mode=search`, `country=us`, `platform=iphone`, `term=photo editor`, `maxResults=20`.

#### Pull a Games top-free chart

**In plain English:** set charts mode and Games `genreId=6014` → ranked free games for that storefront.

**You give:** `mode=charts`, `genreId=6014`, `chart=top-free`.

#### Read guest reviews for one app

**In plain English:** pass a live `adamId` (from search/charts, or from the App Store URL `/id…`) → guest review rows with text and score. Do **not** invent ids.

#### Feed AI agents and automations

**In plain English:** start the Actor from Make, n8n, Zapier, LangChain, or the Apify API → Dataset rows are structured JSON (`adamId`, `bundleId`, `title`, `url`, `rating`).

***

### How much does it cost to scrape the App Store?

This Actor uses **pay-per-event** pricing. You are charged for:

| Event | Price |
| --- | --- |
| Actor Start (`apify-actor-start`) | **$0.005** per start |
| Result (`apify-default-dataset-item`) | **$3.00 / 1,000** results (**$0.003** each on FREE/BRONZE) |

**Platform usage costs are included** — you do **not** pay separate Apify compute/proxy usage for this Actor on top of the event prices above (**User pays platform usage costs = No**).

#### Volume discount tiers (per result)

| Tier | $/1,000 | per result |
| --- | ---: | ---: |
| FREE\* | $3.00 | $0.003 |
| BRONZE | $3.00 | $0.003 |
| SILVER | $2.60 | $0.0026 |
| GOLD | $2.20 | $0.0022 |
| PLATINUM | $2.00 | $0.002 |
| DIAMOND | $1.60 | $0.0016 |

\*FREE matches BRONZE for this Actor.

#### Example cost estimates (FREE/BRONZE)

| Results collected | Approx. event cost\* |
| --- | ---: |
| 100 | ~$0.31 |
| 1,000 | ~$3.01 |
| 10,000 | ~$30.01 |

\*Assumes one Actor start at default memory billing for start events, plus `$0.003` per Dataset item. Exact start billing can scale with allocated memory (one start event per GB, minimum one). Default memory is **1024 MB**.

#### Free plan limits

On a **free Apify plan**, this Actor enforces developer limits of **10 runs** and **200 results per run**. Upgrade to a paid Apify plan for unlimited runs (event prices still apply).

***

### Input examples

#### Keyword search

```json
{
  "mode": "search",
  "country": "us",
  "platform": "iphone",
  "term": "photo editor",
  "maxResults": 20
}
```

#### Top charts (Games, top-free)

```json
{
  "mode": "charts",
  "country": "us",
  "platform": "iphone",
  "genreId": "6014",
  "chart": "top-free",
  "maxResults": 25
}
```

#### App details

```json
{
  "mode": "detail",
  "country": "us",
  "adamId": "310633997",
  "enrichItunes": true
}
```

#### Guest reviews

```json
{
  "mode": "reviews",
  "country": "us",
  "platform": "iphone",
  "adamId": "310633997",
  "maxResults": 20
}
```

#### Today shelves

```json
{
  "mode": "today",
  "country": "us",
  "platform": "iphone",
  "maxResults": 15
}
```

#### Batch start URLs

```json
{
  "mode": "search",
  "startUrls": [
    "https://apps.apple.com/us/iphone/search?term=notes",
    "https://apps.apple.com/us/iphone/charts/6014?chart=top-free"
  ],
  "maxResults": 20
}
```

***

### FAQ

#### How do I scrape the Apple App Store?

Open this Actor, pick `search` or `charts`, set `country` + `platform`, enter a `term` or `genreId`, and click Start. Export the Dataset as CSV, Excel, or JSON. You can also call it as an **App Store API** via the Apify REST API or Python/JavaScript clients.

#### Do I need an Apple ID or API key?

No. This Actor reads **guest** `apps.apple.com` pages. You do not log in, and you do not pass an Apple developer key.

#### Which countries / storefronts are supported?

Pass ISO2 `country` (`us`, `gb`, `de`, `jp`, `cn`, …). **Search is opened on 174 storefronts.** Charts, Today, reviews, and other modes are opened on the cells recorded in `coverage-matrix.json`. Unopened cells return partial/empty rows plus a warning — they are **not** filled with invented apps.

#### Does it scrape top-grossing charts?

No. Guest web charts expose **top-free** and **top-paid**. This Actor does not fabricate a top-grossing list.

#### How many reviews can I get?

Guest review overlays and PDP `ProductReview` nodes. This is **not** a login review dump and not a guaranteed thousands-deep catalog. Use `maxResults` and a live `adamId`. Empty review lists are a successful run with zero review rows.

#### Why does `/us/search` fail?

Apple’s web search requires a **platform path**: `/{cc}/{platform}/search?term=`. Use `platform=iphone` (default) unless you are targeting iPad/Mac/etc.

#### Can I pass App Store URLs instead of ids?

Yes — `startUrls` accepts live `apps.apple.com` search, charts, app, developer, today, games, arcade, grouping, similar, and reviews URLs.

#### Is scraping the App Store legal?

This Actor collects publicly reachable guest pages. You are responsible for how you use the data (including GDPR/CCPA for user-generated review text). This is an unofficial third-party tool.

#### Is this affiliated with Apple?

No.

***

### Input reference

| Parameter | Type | Description |
| --- | --- | --- |
| `mode` | string | `search` | `charts` | `detail` | `today` | `games` | `apps` | `arcade` | `developer` | `grouping` | `editorial` | `story` | `room` | `reviews` | `similar` |
| `country` | string | Storefront ISO2 (default `us`) |
| `platform` | string | Path segment: `iphone` | `ipad` | `mac` | `vision` | `watch` | `tv` |
| `term` / `query` | string | Search keyword |
| `genreId` | string | Charts genre (Weather `6001`, Games `6014`, …) |
| `chart` | string | `top-free` | `top-paid` |
| `adamId` | string | App id for detail / reviews / similar — live ids only |
| `artistId` | string | Developer page id |
| `groupingId` | string | Collection id for grouping / editorial / story / room |
| `startUrls` | array | Live `apps.apple.com` URLs |
| `maxResults` | integer | Cap Dataset rows (free plan ≤ 200) |
| `enrichItunes` | boolean | `itunes.apple.com/lookup` identity + `sellerUrl` (default `true`) |
| `enrichDetails` | boolean | Fetch PDP HTML for list rows so Developer Website / Privacy / App Support are present (default `true`; watch 429) |
| `enrichLimit` | integer | Cap enrich calls (`0` = auto) |
| `language` | string | Optional `?l=` override |
| `proxyCountry` | string | ISO2 egress hint (keep `US` — App Store HTML is US-hosted) |

Full output schema is available in the Dataset tab. Key-value records: `INPUT_ECHO`, `RUN_SUMMARY`, `ERROR_SUMMARY` (no internal worker URLs).

***

### Connect to your tools

| Platform | How to connect |
| --- | --- |
| **Make.com** | Search "Apify" → "Run Actor" → Actor ID: `lentic_clockss/apple-app-store-scraper` |
| **n8n** | Add Apify node → "Run Actor" → same Actor ID |
| **Zapier** | Apify integration → "Run Actor" |
| **Python / Node.js** | Apify SDK or direct HTTPS call |

#### API call example

```bash
curl "https://api.apify.com/v2/acts/lentic_clockss~apple-app-store-scraper/runs" \
  -X POST \
  -H "Authorization: Bearer YOUR_APIFY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"mode":"search","country":"us","platform":"iphone","term":"photo editor","maxResults":10}'
```

Results:

```http
GET https://api.apify.com/v2/datasets/{datasetId}/items?format=json
```

***

### Live-view Standby API

This Actor enables Apify Standby and ships `.actor/openapi.json` for Live-view:

- `GET /` / `GET /health` — Actor readiness (no scrape)
- `GET /input-example` — safe low-cost example input
- `GET /openapi.json` — OpenAPI document
- `POST /search` — optional Live-view preview (capped `maxResults`); persist production results with a **normal Actor run**

Full jobs should be launched as normal Apify Actor runs so Dataset rows plus `INPUT_ECHO`, `RUN_SUMMARY`, and `ERROR_SUMMARY` are persisted.

***

### Runtime

| Setting | Value |
| --- | --- |
| Default memory | **1024 MB** |
| Timeout default | **3600 s** |
| Standby | Enabled (lightweight Live-view) |
| Free plan caps | **10 runs** / **200 results** per run |
| Content depth | **guest** (no Apple login) |

***

### Related Actors

All public Actors from [lentic\_clockss](https://apify.com/lentic_clockss). Click a name to open the Store detail page.

#### Apps & ASO

- [Apple App Store Scraper](https://apify.com/lentic_clockss/apple-app-store-scraper) — Apple App Store search, charts, reviews & app details (this Actor)

#### E-commerce

- [Watsons Product Scraper](https://apify.com/lentic_clockss/watsons-scraper)
- [Shopee Search Scraper](https://apify.com/lentic_clockss/shopee-search-scraper)
- [E-commerce Scraper](https://apify.com/lentic_clockss/ecommerce-scraper)
- [1688 Global Product Search Scraper](https://apify.com/lentic_clockss/1688-global-scraper)
- [Allegro Scraper](https://apify.com/lentic_clockss/allegro-scraper)
- [Amazon Search Scraper](https://apify.com/lentic_clockss/amazon-search-results-collector)
- [ASOS Product Scraper](https://apify.com/lentic_clockss/asos-scraper)
- [Cdiscount Product Scraper](https://apify.com/lentic_clockss/cdiscount-scraper)
- [Costco Product Scraper](https://apify.com/lentic_clockss/costco-scraper)
- [Coupang Product Scraper](https://apify.com/lentic_clockss/coupang-scraper)
- [Etsy Scraper](https://apify.com/lentic_clockss/etsy-scraper)
- [Lazada Scraper](https://apify.com/lentic_clockss/lazada-ph-search-results-collector)
- [MercadoLibre Scraper](https://apify.com/lentic_clockss/mercadolibre-scraper)
- [Mercari Japan Scraper](https://apify.com/lentic_clockss/mercari-scraper)
- [Rakuten Japan Scraper](https://apify.com/lentic_clockss/rakuten-scraper)
- [SHEIN Product Scraper](https://apify.com/lentic_clockss/shein-scraper)
- [Target Product Scraper](https://apify.com/lentic_clockss/target-scraper)
- [Temu Product Scraper](https://apify.com/lentic_clockss/temu-scraper)
- [Walmart Product Scraper](https://apify.com/lentic_clockss/walmart-scraper)

#### Food Delivery

- [Grab Scraper](https://apify.com/lentic_clockss/grab-scraper) — GrabFood / GrabMart SEA
- [Foodpanda Scraper](https://apify.com/lentic_clockss/foodpanda-scraper) — Foodpanda APAC
- [Foodora Scraper](https://apify.com/lentic_clockss/foodora-scraper) — Foodora NO / SE / AT / HU / CZ
- [Uber Eats Scraper](https://apify.com/lentic_clockss/ubereats-scraper) — multi-locale Uber Eats
- [Deliveroo Scraper](https://apify.com/lentic_clockss/deliveroo-scraper) — Deliveroo markets
- [DoorDash Scraper](https://apify.com/lentic_clockss/doordash-scraper) — DoorDash stores & menus
- [Wolt Scraper](https://apify.com/lentic_clockss/wolt-scraper) — Wolt restaurants & cities

#### Jobs & Freelance

- [Job Seek Career Jobs Monitor](https://apify.com/lentic_clockss/jseek-scraper)
- [LinkedIn Jobs Scraper](https://apify.com/lentic_clockss/linkedin-jobs-scraper)
- [Bayt Jobs Scraper](https://apify.com/lentic_clockss/bayt-scraper)
- [Fiverr Gigs Scraper](https://apify.com/lentic_clockss/fiverr-programming-tech-gigs-scraper)
- [Freelancer.com Scraper](https://apify.com/lentic_clockss/freelancer-scraper)
- [Glassdoor Scraper](https://apify.com/lentic_clockss/glassdoor-scraper)
- [Himalayas Jobs Scraper](https://apify.com/lentic_clockss/himalayas-jobs-scraper)
- [Indeed Jobs Scraper](https://apify.com/lentic_clockss/indeed-jobs-scraper)
- [Jobicy Remote Jobs Scraper](https://apify.com/lentic_clockss/jobicy-remote-jobs-scraper)
- [RemoteOK Jobs Scraper](https://apify.com/lentic_clockss/remoteok-all-jobs-scraper)
- [SEEK Jobs Scraper](https://apify.com/lentic_clockss/seek-scraper)
- [Upwork Jobs Scraper](https://apify.com/lentic_clockss/upwork-jobs-scraper)

#### Real Estate

- [Zillow & Zumper Scraper](https://apify.com/lentic_clockss/us-real-estate-scraper)
- [Realtor.com Scraper](https://apify.com/lentic_clockss/realtor-com-scraper)
- [99.co Scraper](https://apify.com/lentic_clockss/ninetynine-co-sg-scraper)
- [Realtor.com Agents Scraper](https://apify.com/lentic_clockss/realtor-com-agents-scraper)
- [Apartments.com Rental Scraper](https://apify.com/lentic_clockss/apartments-com-rental-scraper)
- [Bayut Scraper](https://apify.com/lentic_clockss/bayut-uae-scraper)
- [Craigslist Housing Scraper](https://apify.com/lentic_clockss/craigslist-housing-scraper)
- [Daft.ie Scraper](https://apify.com/lentic_clockss/daft-property-scraper)
- [Dot Property Scraper](https://apify.com/lentic_clockss/dot-property-th-scraper)
- [FINN.no Scraper](https://apify.com/lentic_clockss/finn-scraper)
- [Funda Scraper](https://apify.com/lentic_clockss/funda-scraper)
- [Hepsiemlak Scraper](https://apify.com/lentic_clockss/hepsiemlak-scraper)
- [Idealista Scraper](https://apify.com/lentic_clockss/idealista-scraper)
- [Immobiliare.it Scraper](https://apify.com/lentic_clockss/immobiliare-property-scraper)
- [ImmoScout24 Scraper](https://apify.com/lentic_clockss/immobilienscout24-scraper)
- [Naver Land Scraper](https://apify.com/lentic_clockss/naver-land-scraper)
- [OpenSooq Scraper](https://apify.com/lentic_clockss/opensooq-real-estate-scraper)
- [Otodom Scraper](https://apify.com/lentic_clockss/otodom-scraper)
- [Property Finder Scraper](https://apify.com/lentic_clockss/property-finder-uae-scraper)
- [PropertyGuru Scraper](https://apify.com/lentic_clockss/propertyguru-sg-scraper)
- [realestate.com.au Scraper](https://apify.com/lentic_clockss/realestate-com-au-scraper)
- [Realtor.ca Scraper](https://apify.com/lentic_clockss/realtor-ca-scraper)
- [Rightmove Scraper](https://apify.com/lentic_clockss/rightmove-property-scraper)
- [SeLoger Scraper](https://apify.com/lentic_clockss/seloger-property-scraper)
- [SUUMO Scraper](https://apify.com/lentic_clockss/suumo-property-scraper)
- [Zillow Group Scraper](https://apify.com/lentic_clockss/zillow-group-scraper)

#### Travel & Stays

- [Booking.com & Airbnb Scraper](https://apify.com/lentic_clockss/booking-airbnb-scraper)
- [Agoda Scraper](https://apify.com/lentic_clockss/agoda-scraper)
- [Airbnb Listings Scraper](https://apify.com/lentic_clockss/airbnb-listings-scraper)
- [Booking.com Hotels Scraper](https://apify.com/lentic_clockss/booking-hotels-scraper)
- [Despegar Scraper](https://apify.com/lentic_clockss/despegar-scraper)
- [Expedia Scraper](https://apify.com/lentic_clockss/expedia-scraper)
- [Traveloka Scraper](https://apify.com/lentic_clockss/traveloka-scraper)
- [Travelstart Flights Scraper](https://apify.com/lentic_clockss/travelstart-scraper)
- [Trip.com Scraper](https://apify.com/lentic_clockss/trip-com-scraper)
- [TripAdvisor Scraper](https://apify.com/lentic_clockss/tripadvisor-scraper)

#### Social & Content

- [TikTok Scraper](https://apify.com/lentic_clockss/tiktok-scraper)
- [Reddit Scraper](https://apify.com/lentic_clockss/reddit-scraper)
- [YouTube Shorts Scraper](https://apify.com/lentic_clockss/youtube-shorts-scraper)
- [YouTube Research Scraper](https://apify.com/lentic_clockss/youtube-research-scraper)
- [Hacker News Scraper](https://apify.com/lentic_clockss/hacker-news-scraper)

#### Ads Intelligence

- [Facebook Ad Library Scraper](https://apify.com/lentic_clockss/facebook-ad-library-scraper)
- [Google Ads Transparency VN](https://apify.com/lentic_clockss/google-ads-transparency-center-vn)
- [TikTok Ads Scraper](https://apify.com/lentic_clockss/tiktok-ads-top-ads-actor)

#### Local & Maps

- [Google Maps Scraper](https://apify.com/lentic_clockss/google-maps-scraper)

#### General Tools

- [Stealth Web Scraper](https://apify.com/lentic_clockss/stealth-web-scraper)
- [Email Risk Validator](https://apify.com/lentic_clockss/email-risk-validator)
- [Phone Number Intelligence](https://apify.com/lentic_clockss/phone-number-intelligence)

→ Browse the full profile: [apify.com/lentic\_clockss](https://apify.com/lentic_clockss)

***

### Changelog

- **0.1.8** — Lead keys (`phones`/`emails`/`address`/`person`/`org`/`web`/`leadAbsences`). App Store has no developer phone/email/门牌; website + seller name from PDP + iTunes lookup. `enrichDetails` default on.
- **0.1.7** — Output schema for Console Output tab (`?view=overview` + RUN\_SUMMARY). Dataset `fields` describe adamId / bundleId / review rows.
- **0.1.6** — Rate-limited empty worker responses finish as PARTIAL SUCCEEDED (not FAILED/exit 91). Dataset view includes reviewId / reviewText. Search opened on mac/vision/watch/tv.
- **0.1.5** — Store README (SEO, How to use, pricing, More Actors, Related Actors). PPE: Actor Start $0.005 + result $3.00/1k with volume tiers. Platform usage paid by developer.
- **0.1.4** — Coverage expansion: 174 storefront Search, charts genres, reviews/similar, SSR `nextPage.results`.
- **0.1** — Guest search, charts, Today, Games, developer, PDP. Identity `adamId` / `bundleId`.

# Actor input Schema

## `mode` (type: `string`):

search | charts | detail | today | games | apps | arcade | developer | grouping | editorial | story | room | reviews | similar

## `country` (type: `string`):

apps.apple.com/{cc}/… ISO2. Worker accepts all Apple storefronts (~175). Opened cells are in coverage-matrix.json; others return partial/empty + warning, not invented data.

## `platform` (type: `string`):

Path segment: iphone, ipad, mac, vision, watch, tv. Search is opened on all six. Other modes: only opened cells in coverage-matrix.json (empty cells stay unverified).

## `term` (type: `string`):

Used in search mode. Empty {} uses this default so platform auto-test SUCCEEDED.

## `query` (type: `string`):

Alias of term for search mode.

## `genreId` (type: `string`):

Charts genre id. Weather=6001 and Games=6014 verified on us iPhone. Other 6000–6027 and Games sub 7001–7018 are requestable; status in worker /v1/categories.

## `chart` (type: `string`):

top-free or top-paid. Recon-verified on us iPhone charts.

## `adamId` (type: `string`):

Required for detail/reviews/similar unless startUrls is set. Do not invent ids.

## `artistId` (type: `string`):

Developer page id. Required for developer mode unless startUrls is set.

## `groupingId` (type: `string`):

Collection id for grouping / editorial / story / room (recon grouping example 25236). Required unless startUrls is set.

## `startUrls` (type: `array`):

Live apps.apple.com URLs (search/charts/app/developer/today/games/arcade/grouping/story/room/editorial/similar).

## `maxResults` (type: `integer`):

Maximum records to return (free plan capped at 200).

## `enrichDetails` (type: `boolean`):

Fetch app detail SSR for list rows so Developer Website / Privacy / App Support URLs are present. Default on for lead fields. Raises 429 risk; cap with enrichLimit.

## `enrichItunes` (type: `boolean`):

itunes.apple.com/lookup identity fields (trackId schema).

## `enrichLimit` (type: `integer`):

0 = min(maxResults, 8)

## `language` (type: `string`):

Optional apps.apple.com ?l= language override.

## `proxyCountry` (type: `string`):

ISO2 egress hint. Keep US — Apple HTML is US-hosted.

## `workerBaseUrl` (type: `string`):

Optional https Cloud Run override (allowlisted)

## Actor input object example

```json
{
  "mode": "search",
  "country": "us",
  "platform": "iphone",
  "term": "calendar",
  "chart": "top-free",
  "maxResults": 20,
  "enrichDetails": true,
  "enrichItunes": true,
  "enrichLimit": 0,
  "proxyCountry": "US"
}
```

# Actor output Schema

## `results` (type: `string`):

Normalized App Store app / chart / review / shelf rows from the default dataset (overview view).

## `runSummary` (type: `string`):

Structured run outcome stored as RUN\_SUMMARY in the default key-value store.

## `inputEcho` (type: `string`):

Normalized input saved at run start as INPUT\_ECHO.

## `errorSummary` (type: `string`):

Present when a failed run stores ERROR\_SUMMARY.

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "mode": "search",
    "country": "us",
    "platform": "iphone",
    "term": "calendar",
    "chart": "top-free",
    "maxResults": 20,
    "enrichDetails": true,
    "enrichItunes": true,
    "enrichLimit": 0,
    "proxyCountry": "US"
};

// Run the Actor and wait for it to finish
const run = await client.actor("lentic_clockss/apple-app-store-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "mode": "search",
    "country": "us",
    "platform": "iphone",
    "term": "calendar",
    "chart": "top-free",
    "maxResults": 20,
    "enrichDetails": True,
    "enrichItunes": True,
    "enrichLimit": 0,
    "proxyCountry": "US",
}

# Run the Actor and wait for it to finish
run = client.actor("lentic_clockss/apple-app-store-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "mode": "search",
  "country": "us",
  "platform": "iphone",
  "term": "calendar",
  "chart": "top-free",
  "maxResults": 20,
  "enrichDetails": true,
  "enrichItunes": true,
  "enrichLimit": 0,
  "proxyCountry": "US"
}' |
apify call lentic_clockss/apple-app-store-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,lentic_clockss/apple-app-store-scraper"
        }
    }
}

```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/277BY5z7whbEfICGB/builds/KmIM8250Sv0VliSFv/openapi.json
