> For the complete documentation index, see [llms.txt](https://docs.pullbay.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.pullbay.com/documentation/guides/what-is-review-monitoring/app-store-review-api-guide.md).

# App Store Review API Guide

When you're building or maintaining an app, understanding user feedback is critical. But manually checking your app store reviews? That doesn't scale. An app store review API lets you pull review data automatically, in structured format, so you can build tools, track trends, and respond to feedback at scale. This guide covers everything you need to know about app store data APIs—and how to implement Pullbay's API in your workflows.

## What Is an App Store Review API?

An app store review API is a programmatic interface that lets you retrieve user reviews, ratings, and metadata directly from app stores like Apple's App Store. Instead of logging in manually and scrolling through reviews, an API lets you:

* **Fetch reviews programmatically** using code
* **Retrieve structured data** (rating, text, author, date, country, etc.)
* **Automate monitoring** with scheduled requests
* **Scale to thousands of reviews** without manual effort
* **Integrate with your own tools** (dashboards, alerts, CRMs)

### Why You Need an App Store Review API

Manual review monitoring is slow and error-prone. An app store review API solves three core problems:

1. **Speed**: Get fresh review data in seconds, not hours
2. **Scale**: Fetch 1,000s of reviews automatically without clicking through pages
3. **Integration**: Feed review data into your analytics, CRM, or alerting systems

Whether you're tracking competitor apps, monitoring your own reputation, or analyzing user feedback for feature development, an API approach is faster, cheaper, and more reliable than manual tools.

## How Pullbay's App Store Review API Works

Pullbay's API retrieves reviews from Apple's App Store in three simple steps:

{% stepper %}
{% step %}

#### You Send a Request

You specify the app you want (by App Store ID) and any filters (country, date range).
{% endstep %}

{% step %}

#### Pullbay Scrapes the App Store

Pullbay handles all the heavy lifting: proxy rotation, JavaScript rendering, pagination, retries, and error handling.
{% endstep %}

{% step %}

#### You Get Structured JSON

Reviews arrive as clean, normalized JSON with consistent field names, data types, and metadata.
{% endstep %}
{% endstepper %}

You don't need App Store credentials, API tokens, or manual setup—just your Pullbay API key and the App Store app ID you want to monitor.

## Key Features

### Auto-Pagination

With `/v1/app-store/reviews/all`, Pullbay automatically fetches **all pages** of reviews internally. No manual cursor management needed. Ideal for batch jobs and data exports.

### Standard Pagination

The `/v1/app-store/reviews` endpoint returns paginated results with a `next_cursor` token. Use this for real-time, cursor-based polling in your own application loops.

### Proxy Handling & Retries

Pullbay rotates proxies and retries failed requests automatically. You get reliable, consistent responses without managing infrastructure.

### Normalized Data

Review text, titles, and metadata are cleaned and normalized for consistency. No special characters, encoding issues, or missing fields to debug.

### Rate Limiting

Plans scale from 10 requests/minute (Free) to 1,000+ requests/minute (Scale). See the [plans documentation](broken://pages/5ca1e1319c0612c8c1f4120eae98bb9ae45f7655) for details.

## How to Get App Store Reviews: Practical Examples

Let's walk through a real request. First, you'll need:

* A Pullbay API key (get one free at [Pullbay](https://pullbay.com/))
* An App Store app ID (e.g., `284882215` for X/Twitter)

### Using cURL

```bash
curl -X GET "https://api.pullbay.com/v1/app-store/reviews" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -d "app_id=284882215&country=us&limit=50"
```

### Using Python

```python
import requests

api_key = "YOUR_API_KEY"
headers = {"Authorization": f"Bearer {api_key}"}

params = {
    "app_id": "284882215",  # X/Twitter
    "country": "us",
    "limit": 50
}

response = requests.get(
    "https://api.pullbay.com/v1/app-store/reviews",
    headers=headers,
    params=params
)

reviews = response.json()
print(f"Retrieved {len(reviews['data'])} reviews")
for review in reviews['data']:
    print(f"{review['rating']}⭐ — {review['title']}")
    print(f"  {review['content'][:100]}...")
```

### Fetching All Reviews with Auto-Pagination

For complete data exports, use the `/all` endpoint to fetch all pages automatically:

```python
import requests

api_key = "YOUR_API_KEY"
headers = {"Authorization": f"Bearer {api_key}"}

params = {
    "app_id": "284882215",
    "country": "us"
}

response = requests.get(
    "https://api.pullbay.com/v1/app-store/reviews/all",
    headers=headers,
    params=params
)

data = response.json()
print(f"Total reviews: {len(data['data'])}")
print(f"Credits used: {data['meta']['credits_used']}")
```

## Understanding the API Response

Here's an annotated example response:

```json
{
  "data": [
    {
      "id": "review_abc123",
      "app_id": "284882215",
      "rating": 5,
      "title": "Best app for staying connected",
      "content": "Love the new features in the latest update!",
      "author": "JohnDoe123",
      "date": "2024-01-15T10:30:00Z",
      "version": "10.2.1",
      "helpful_count": 42
    }
  ],
  "pagination": {
    "next_cursor": "cursor_xyz789",
    "has_more": true
  },
  "meta": {
    "credits_used": 1,
    "request_id": "req_abc123"
  }
}
```

### Response Field Breakdown

* **id**: Unique identifier for this review
* **rating**: Star rating (1–5)
* **title**: Review headline
* **content**: Full review text
* **author**: Reviewer's App Store username
* **date**: When the review was posted (ISO 8601 format)
* **version**: App version when the review was submitted
* **helpful\_count**: Number of times users marked this review as helpful

### Pagination Fields

* **next\_cursor**: Token to fetch the next batch of results. Use this in your next request's `cursor` parameter.
* **has\_more**: Boolean indicating whether more results exist

### Metadata

* **credits\_used**: Number of Pullbay credits consumed by this request (1 per successful request)
* **request\_id**: Unique request identifier for debugging and support

## Rate Limits by Plan

| Plan    | Requests/Min | Monthly Credits | Best For                  |
| ------- | ------------ | --------------- | ------------------------- |
| Free    | 10           | Limited         | Learning & testing        |
| Starter | 60           | Included        | Small apps & monitoring   |
| Growth  | 300          | Included        | Mid-scale apps & analysis |
| Scale   | 1000+        | Included        | Enterprise & high-volume  |

For current pricing and credit details, see your Pullbay dashboard or contact sales.

## Frequently Asked Questions

<details>

<summary>Does Pullbay require App Store credentials?</summary>

No. You don't need an Apple Developer account or App Store credentials. Just provide the public app ID (visible in the App Store URL), and Pullbay handles the rest. This makes setup fast and secure.

</details>

<details>

<summary>How fresh is the review data?</summary>

Review data is typically updated within 1–2 hours of publication on the App Store. Pullbay continuously monitors apps and refreshes data, but there's a natural lag due to App Store indexing. For real-time monitoring, implement polling with reasonable intervals (every 30–60 minutes for most use cases).

</details>

<details>

<summary>Can I get reviews for any country?</summary>

Yes. Use the `country` parameter (e.g., `country=us`, `country=gb`, `country=jp`) to fetch reviews for specific regions. The App Store has regional review feeds; Pullbay supports all active regions.

</details>

<details>

<summary>What about Google Play reviews?</summary>

Google Play reviews are coming soon. Currently, Pullbay's live service is the App Store Reviews API. For updates, check the [Pullbay roadmap](https://pullbay.com/roadmap).

</details>

<details>

<summary>Can I filter reviews by date?</summary>

Currently, the API returns reviews in order of recency. For date-based filtering, implement it in your application code after fetching results. We're evaluating date range filters for future releases.

</details>

<details>

<summary>Are test API keys different from live keys?</summary>

Yes. Test keys (prefixed `test_`) connect to sandbox data and don't consume credits, so you can test without impact. Live keys (prefixed `live_`) access real production data and consume credits normally. Always test with `test_` keys first.

</details>

<details>

<summary>What happens if a request fails?</summary>

Failed requests don't consume credits—you're only charged for successful responses. Pullbay automatically retries transient errors (network issues, temporary outages). If a request consistently fails, we'll return a clear error message in the response.

</details>

## Next Steps

Ready to get started? Here's what to do:

1. **Get Your API Key**: Sign up at [Pullbay](https://pullbay.com/) and grab a free API key from your dashboard.
2. **Read the Quickstart**: See [quickstart.md](broken://pages/52ea2d15c6fed0a5afe2baf26061e1e764111a72) for a 5-minute setup guide.
3. **Authenticate**: Learn about [authentication](broken://pages/6d6603a748cd61bed3a7217513083220417962f9) and managing API keys securely.
4. **Explore Use Cases**: Check [review monitoring guide](broken://pages/d7638066cb7ad3f4115949205510111d0d2821ac) for practical applications.
5. **Deep Dive**: Read the [app store data guide](broken://pages/9f8ef19c8ab2100cc82771bd8a31e1a147e11570) to understand every field in the response.

For API reference details, questions, or to request features, contact <support@pullbay.com>.

## Key Takeaways

* An **app store review API** lets you fetch reviews programmatically instead of manually, at scale
* Pullbay's API works in **3 steps**: you send a request → Pullbay scrapes → you get structured JSON
* The `/v1/app-store/reviews` endpoint provides **paginated results** with cursor-based navigation
* The `/v1/app-store/reviews/all` endpoint handles **auto-pagination** for complete data exports
* You're only **charged on successful requests**; failed requests are free
* **Rate limits scale** from 10 req/min (Free) to 1000+ req/min (Scale)
* **No App Store credentials needed**—just an app ID and your Pullbay API key
* Review data is typically **fresh within 1–2 hours** of publication


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.pullbay.com/documentation/guides/what-is-review-monitoring/app-store-review-api-guide.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
