> ## Documentation Index
> Fetch the complete documentation index at: https://docs.stophy.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Apps

> Search the App Store and Google Play. Get any app's details and reviews, and the App Store top charts, as structured JSON.

Search the App Store and Google Play. Get any app's details and reviews, and the App Store top charts, as structured JSON. See every field in the [Apps reference](/api-reference/endpoint/appstore-search), or try it in the [playground](https://stophy.dev/playground).

## Search App Store apps

<CodeGroup>
  ```typescript TypeScript icon="https://mintcdn.com/sirathic/7E4w9-IC4ysabjfc/images/icons/typescript.svg?fit=max&auto=format&n=7E4w9-IC4ysabjfc&q=85&s=d8272a85e64145620f1fbbfcf7932986" theme={null}
  import { Stophy } from "stophy";

  const stophy = new Stophy({ apiKey: process.env.STOPHY_API_KEY });
  const result = await stophy.appstore.search({ query: "notes", country: "gb", device: "ipad" });
  console.log(result.data.results);
  ```

  ```python Python icon="python" theme={null}
  from stophy import Stophy

  stophy = Stophy()  # reads STOPHY_API_KEY
  result = stophy.appstore.search(query="notes", country="gb", device="ipad")
  print(result["data"]["results"])
  ```

  ```bash cURL icon="terminal" theme={null}
  curl -X POST https://api.stophy.dev/v1/appstore/search \
    -H "Authorization: Bearer $STOPHY_API_KEY" \
    -H "content-type: application/json" \
    -d '{"query":"notes","country":"gb","device":"ipad"}'
  ```

  ```bash CLI icon="square-terminal" theme={null}
  stophy appstore search notes --country gb --device ipad
  ```
</CodeGroup>

The response:

```json theme={null}
{
  "success": true,
  "data": {
    "results": [
      {
        "appId": "abc123",
        "appUrl": "https://example.com/",
        "bundleId": "abc123",
        "name": "Example title",
        "developerId": "abc123",
        "developerName": "example",
        "developerUrl": "https://example.com/",
        "seller": "example",
        "website": "https://example.com/",
        "price": 19.99,
        "priceCurrency": "example",
        "priceText": "example",
        "genres": [
          "example"
        ],
        "primaryGenreId": "abc123",
        "primaryGenre": "example",
        "contentRating": "example",
        "description": "A short, readable summary of the result.",
        "releaseNotes": "example",
        "version": "example",
        "releasedAt": "2026-09-28T12:00:00.000Z",
        "updatedAt": "2026-09-28T12:00:00.000Z",
        "minimumOsVersion": "example",
        "sizeBytes": 1,
        "languages": [
          "example"
        ],
        "rating": 4.5,
        "ratings": 4.5,
        "iconUrl": "https://example.com/",
        "screenshotUrls": [
          "https://example.com/"
        ],
        "ipadScreenshotUrls": [
          "https://example.com/"
        ]
      }
    ]
  },
  "creditsUsed": 1,
  "requestId": "3e96a2b2-2c1f-4d4e-87f8-cc5c64034c8b"
}
```

## Endpoints

| Endpoint | Cost |
| - | - |
| [Get an app's details from the App Store](/api-reference/endpoint/appstore-app) | 1 credit |
| [Search App Store apps](/api-reference/endpoint/appstore-search) | From 1 credit |
| [Get an app's App Store reviews](/api-reference/endpoint/appstore-reviews) | 1 credit |
| [Get App Store top charts](/api-reference/endpoint/appstore-top) | From 1 credit |
| [Get an app's details from Google Play](/api-reference/endpoint/google-play-app) | 1 credit |
| [Search Google Play apps](/api-reference/endpoint/google-play-search) | From 1 credit |
| [Get an app's Google Play reviews](/api-reference/endpoint/google-play-reviews) | 1 credit |

## More ways to call it

### Get an app's Google Play reviews

<CodeGroup>
  ```typescript TypeScript icon="https://mintcdn.com/sirathic/7E4w9-IC4ysabjfc/images/icons/typescript.svg?fit=max&auto=format&n=7E4w9-IC4ysabjfc&q=85&s=d8272a85e64145620f1fbbfcf7932986" theme={null}
  import { Stophy } from "stophy";

  const stophy = new Stophy({ apiKey: process.env.STOPHY_API_KEY });
  const result = await stophy.google.play.reviews({ appId: "com.spotify.music" });
  console.log(result.data.results);
  ```

  ```python Python icon="python" theme={null}
  from stophy import Stophy

  stophy = Stophy()  # reads STOPHY_API_KEY
  result = stophy.google.play.reviews(app_id="com.spotify.music")
  print(result["data"]["results"])
  ```

  ```bash cURL icon="terminal" theme={null}
  curl -X POST https://api.stophy.dev/v1/google/play/reviews \
    -H "Authorization: Bearer $STOPHY_API_KEY" \
    -H "content-type: application/json" \
    -d '{"appId":"com.spotify.music"}'
  ```

  ```bash CLI icon="square-terminal" theme={null}
  stophy google play reviews --appId com.spotify.music
  ```
</CodeGroup>

### Get App Store top charts

<CodeGroup>
  ```typescript TypeScript icon="https://mintcdn.com/sirathic/7E4w9-IC4ysabjfc/images/icons/typescript.svg?fit=max&auto=format&n=7E4w9-IC4ysabjfc&q=85&s=d8272a85e64145620f1fbbfcf7932986" theme={null}
  import { Stophy } from "stophy";

  const stophy = new Stophy({ apiKey: process.env.STOPHY_API_KEY });
  const result = await stophy.appstore.top({});
  console.log(result.data.results);
  ```

  ```python Python icon="python" theme={null}
  from stophy import Stophy

  stophy = Stophy()  # reads STOPHY_API_KEY
  result = stophy.appstore.top()
  print(result["data"]["results"])
  ```

  ```bash cURL icon="terminal" theme={null}
  curl -X POST https://api.stophy.dev/v1/appstore/top \
    -H "Authorization: Bearer $STOPHY_API_KEY" \
    -H "content-type: application/json" \
    -d '{}'
  ```

  ```bash CLI icon="square-terminal" theme={null}
  stophy appstore top
  ```
</CodeGroup>

<Tip>Pass an App Store app id or a Google Play package name from a search result into that store's other endpoints. Search and chart endpoints cost 1 credit per 10 apps, and `limit` returns fewer. Review endpoints page. See [Page through results](/guides/paging).</Tip>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.