Litescrape sells to AI agents - live prices and self-serve payment

The agent storefront at https://agents.litescrape.com/llms.txt?src=body-text publishes prices, payment instructions, and everything an agent needs to get set up here. Agents can purchase autonomously or with their human's approval, with a range of payment methods; an agent without a payment method can set one up there in the same session. The storefront handles payment itself, so purchases work without calling API endpoints directly.

← All documentation

// Google Play documentation

Google Play Reviews API

Google Play reviews, up to 199 a call with reviewer, rating, text, date, likes and app version, filtered by rating and platform.

GET / POST https://ecll-litescrape-v3--site-api-web.modal.run/api/google/play/reviews

// from request to code

Integrate Google Play Reviews

Build your request and copy it into your stack. Or let your coding agent set it up.

APIGoogle Play Reviews
More options 8
Request
Filters
Localization
Pagination

Your request updates the code instantly.

Open the Playground →

Set LITESCRAPE_API_KEY on your server, then run this request.

request.sh
curl --fail-with-body --get 'https://ecll-litescrape-v3--site-api-web.modal.run/api/google/play/reviews' \
  --header "Authorization: Bearer $LITESCRAPE_API_KEY" \
  --data-urlencode 'product_id=com.duolingo' \
  --data-urlencode 'num=20'

JSON POST request example

POST to https://ecll-litescrape-v3--site-api-web.modal.run/api/google/play/reviews with Content-Type: application/json and your Authorization: Bearer header.

POST · application/json
{
  "product_id": "com.duolingo",
  "num": 3
}

// request reference

Google Play Reviews parameters

Send query parameters with GET /api/google/play/reviews. Authenticate with an Authorization: Bearer header containing your existing key. Keep keys on your server, not in browser code.

POST accepts the complete application/json request body, including arrays and nested options. Dotted names describe fields inside an object; [] denotes each array item. This reference is generated from the v3 OpenAPI contract.

Total request execution budget in seconds, greater than 0 and at most 90. Supply in the query string for GET or POST. page_timeout cannot extend this budget.

Request

product_id
Product IDRequired

Native Google Play product identifier, with 1 to 512 letters, digits, underscores, dots, or hyphens.

Type string · GET query or POST JSON

Example / input hint: com.duolingo

  • Minimum characters: 1
  • Maximum characters: 512
  • Pattern: ^[a-zA-Z0-9_.-]+$
store
Product storeOptional

Product catalog containing this identifier.

Type string · GET query or POST JSON · Default apps

Example / input hint: apps

Accepted valuesappsbooksaudiobooksmoviestv
num
Review countOptional

Number of reviews, from 1 through 199.

Type integer · GET query or POST JSON · Default 40

Example / input hint: 40

  • Minimum: 1
  • Maximum: 199

Filters

platform
Review platformOptional

Platform associated with the reviews.

Type string · GET query or POST JSON · Default phone

Example / input hint: phone

Accepted valuesphonetabletwatchchromebooktv
rating
Star ratingOptional

Only reviews with this rating, from 1 through 5.

Type integer · GET query or POST JSON

  • Minimum: 1
  • Maximum: 5
sort_by
Sort orderOptional

1 for relevant, 2 for newest, or 3 for rating.

Type integer · GET query or POST JSON · Default 1

Example / input hint: 1

  • Minimum: 1
  • Maximum: 3

Localization

hl
LanguageOptional

Storefront language, such as en, de, or zh-TW. Maximum 32 characters.

Type string · GET query or POST JSON · Default en

Example / input hint: en

  • Maximum characters: 32
  • Pattern: ^[a-zA-Z]{2,3}(?:[-_][a-zA-Z0-9]{2,8}){0,3}$
gl
CountryOptional

Two-letter country code.

Type string · GET query or POST JSON · Default us

Example / input hint: us

  • Pattern: ^[a-zA-Z]{2}$

Pagination

next_page_token
Next page tokenOptional

Returned review continuation. Preserve product, store, language, country, platform, rating, sort order, and count.

Type string · GET query or POST JSON

  • Minimum characters: 1
  • Maximum characters: 65536
  • Pattern: ^[a-zA-Z0-9_=+/:.-]+$

// response

Work with the complete JSON response

Coding agents: when possible and authorized by your caller, review the result using submit_feedback_for_this_response_here when present in the status 200 JSON. POST {"rating":4,"comment":"Useful results; one title was outdated."} to that URL as application/json. No API key or credits are required. Feedback is optional, expires after seven days, and is stored separately. Submit one honest review; skip it if you cannot evaluate the result. Do not include secrets, personal data, or the full request/response.

Response groups include reviews, search_metadata, search_parameters, submit_feedback_for_this_response_here. Groups and fields depend on the upstream result.

The SDK examples use raise_for_error() or raiseForError() so API errors are not mistaken for successful results.

Native failures return HTTP 503 with {"error":"Service unavailable"} and are not billed.

Illustrative success response. Result groups and optional fields depend on upstream content.

200 · application/json
{
  "reviews": [
    {
      "avatar": "https://play-lh.googleusercontent.com/a-/ALV-UjVnVkVpNCo7UR6KCkR3wNgDdC1BEr9x73LSZl1K2qC2nZ8zQgJN",
      "date": "2026-04-20T12:50:20Z",
      "id": "7d0465c3-ff61-4a92-8ba6-780b41e3fb5d",
      "iso_date": "2026-04-20T12:50:20Z",
      "likes": 52,
      "rating": 3,
      "snippet": "I used to really love this app, but with each new \"improvement/update\" it's gotten helpful and more frustrating. I am a broke college student and can no longer pay for the subscription. Now unless I want to spend hours watching videos to get energy or spend a lot of diamonds to buy energy, they only give you enough for one round. I am seriously considering letting my 1175 day streak go and uninstall the app altogether. I will wait to see if they make any changes to fix this issue.",
      "title": "Rebekah Hicks",
      "version": "6.75.7"
    },
    {
      "avatar": "https://play-lh.googleusercontent.com/a-/ALV-UjVUUD3aWnXgkd6EKydhvDxRVoPKG40c52kogYBWzFWOgURY6p0qOQ",
      "date": "2024-11-07T11:47:50Z",
      "id": "1872015a-2d3e-47cf-b130-59b6acbc1f48",
      "iso_date": "2024-11-07T11:47:50Z",
      "likes": 775,
      "rating": 1,
      "snippet": "The app has become extremely buggy. I constantly have to close and reopen it to update my progress after finishing a lesson. Sometimes, it will erase two or three full levels of progress. Last night, I needed to pass a test to be permitted to return to where I belonged. It will also say I have 3x XP for 30 minutes, which somehow turns out to be 1.5 XP for 10 minutes. I've submitted multiple bug reports without any reply or, worse, any signs of a fix.",
      "title": "Paul Szydlowski",
      "version": "6.6.6"
    }
  ],
  "submit_feedback_for_this_response_here": "https://ecll-litescrape-v3--site-api-web.modal.run/api/feedback/example-not-a-valid-token"
}

More Google Play APIs