Scrape apps from Google Play and the Apple App Store by keyword or ID
Scrape apps from Google Play and the Apple App Store by keyword or ID: rating, ratings count, downloads, price, category, update date, description, plus the developer's email, phone, address and website from Google Play. App developer leads. No login. One search per call (result caps in the input schema); failed lookups are not charged.
Answeringour last check, 2026-10-24
1 of 1checks answered this week
411 msmedian answer time
$0.01listed price per call
$0.01price it asked us
Paid test badge: not yet. The checks above are free: we call the tool without paying and read the payment request it sends back. The Verified badge needs paid calls whose answers match the promised output, and nobody can buy a badge.
Endpoint
POST https://agent-data.centorprat.workers.dev/tools/app-store-scraper
| Category | Code and developer |
|---|---|
| Provider host | agent-data.centorprat.workers.dev |
| Networks | eip155:137, eip155:8453, solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp |
| Payment schemes | exact |
| Self-reported calls, 30 days | 3 from 2 payers (the provider's figure, not ours) |
Our checks, last 30 days
| Day | Result | HTTP | Asked | Time |
|---|---|---|---|---|
| 2026-10-24 | valid payment request | 402 | $0.01 | 411 ms |
Example input (from the provider)
{
"body": {
"maxAppsPerSearch": 5,
"searchQueries": [
"habit tracker"
],
"stores": [
"googlePlay"
]
},
"bodyType": "json",
"method": "POST",
"type": "http"
}
Promised output schema (from the provider)
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"input": {
"additionalProperties": false,
"properties": {
"body": {
"properties": {
"apps": {
"description": "Google Play package names or URLs (com.duolingo) and App Store URLs or numeric IDs (570060128).",
"items": {
"type": "string"
},
"maxItems": 10,
"type": "array"
},
"country": {
"description": "Store country code, e.g. us, gb, de.",
"type": "string"
},
"language": {
"description": "Language code for Google Play texts.",
"type": "string"
},
"maxAppsPerSearch": {
"description": "Google Play search shows up to ~30-50 apps; the App Store up to 200.",
"maximum": 10,
"type": "integer"
},
"minRating": {
"description": "Keep apps rated at least this.",
"type": "number"
},
"minRatingsCount": {
"description": "Keep apps with at least this many ratings.",
"type": "integer"
},
"onlyFree": {
"description": "Keep free apps only.",
"type": "boolean"
},
"onlyWithEmail": {
"description": "Keep apps whose developer email is published (Google Play) - for outreach lists.",
"type": "boolean"
},
"searchQueries": {
"description": "e.g. [\"habit tracker\", \"invoice app\"].",
"items": {
"type": "string"
},
"maxItems": 1,
"type": "array"
},
"stores": {
"description": "Which stores to search.",
"items": {
"enum": [
"googlePlay",
"appStore"
],
"type": "string"
},
"maxItems": 3,
"type": "array"
}
},
"required": []
},
"bodyType": {
"enum": [
"json",
"form-data",
"text"
],
"type": "string"
},
"method": {
"enum": [
"POST",
"PUT",
"PATCH"
],
"type": "string"
},
"type": {
"const": "http",
"type": "string"
}
},
"required": [
"type",
"method",
"bodyType",
"body"
],
"type": "object"
},
"output": {
"properties": {
"example": {
"type": "object"
},
"type": {
"type": "string"
}
},
"required": [
"type"
],
"type": "object"
}
},
"required": [
"input"
],
"type": "object"
}