ToolAssay

Scrape App Store and Google Play reviews in one run

Scrape App Store and Google Play reviews in one run: rating, title, text, app version, date, author, helpful votes, developer reply, country. Every review tagged with complaint themes (crash, login, billing, bugs, ads...). Keyless, cheap per review. 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
393 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-reviews-scraper

CategoryCode and developer
Provider hostagent-data.centorprat.workers.dev
Networkseip155:137, eip155:8453, solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp
Payment schemesexact
Self-reported calls, 30 days3 from 2 payers (the provider's figure, not ours)

Our checks, last 30 days

DayResultHTTPAskedTime
2026-10-24 valid payment request 402$0.01 393 ms

Example input (from the provider)

{
  "body": {
    "apps": [
      "com.spotify.music"
    ],
    "maxReviewsPerApp": 20
  },
  "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": "App Store ids or URLs (324684580, https://apps.apple.com/us/app/.../id324684580), Google Play package names or URLs (com.spotify.music), or app names (searched on the App Store).",
              "items": {
                "type": "string"
              },
              "maxItems": 1,
              "type": "array"
            },
            "countries": {
              "description": "Two-letter country codes. App Store: reviews from each country's store (up to 500 each). Google Play: the first country is used.",
              "items": {
                "type": "string"
              },
              "maxItems": 1,
              "type": "array"
            },
            "includeSummary": {
              "description": "One extra row per app: rating mix and its most frequent complaint themes. Not billed.",
              "type": "boolean"
            },
            "language": {
              "description": "Review language for Google Play, e.g. en, es, de, fr, pt.",
              "type": "string"
            },
            "maxRating": {
              "description": "Keep reviews with at most this many stars (e.g. 2 = only complaints).",
              "type": "integer"
            },
            "maxReviewsPerApp": {
              "description": "Up to this many reviews per app. Google Play: thousands. App Store: up to 500 per country (add countries for more).",
              "maximum": 100,
              "type": "integer"
            },
            "minRating": {
              "description": "Keep reviews with at least this many stars.",
              "type": "integer"
            },
            "onlyComplaints": {
              "description": "Keep only reviews with a complaint theme (crash, login, billing, bugs...) or 1-2 stars.",
              "type": "boolean"
            },
            "since": {
              "description": "Only reviews on/after this date (YYYY-MM-DD).",
              "type": "string"
            },
            "sort": {
              "description": "Which reviews come first.",
              "enum": [
                "newest",
                "most_relevant",
                "rating"
              ],
              "type": "string"
            }
          },
          "required": [
            "apps"
          ]
        },
        "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"
}

This page as JSON