---
title: AppFollow API Integration on Truto
slug: appfollow
category: Product Development
canonical: "https://truto.one/integrations/detail/appfollow/"
---

# AppFollow API Integration on Truto



**Category:** Product Development  
**Status:** Beta

## MCP-ready AI tools

Truto exposes 43 tools for AppFollow that AI agents can call directly.

- **list_all_app_follow_collections** — List all workspaces (collections) in your AppFollow account. Returns: apps_id, title, countries, default_country. The collection id (apps_id) is required by other AppFollow endpoints.
- **create_a_app_follow_collection** — Create a new workspace (collection) in your AppFollow account. Returns the created collection with apps_id, title, countries, and default_country. Required: title, countries.
- **app_follow_collections_bulk_delete** — Delete a workspace (collection) from your AppFollow account by its collection id. Returns: apps_id, title, countries, default_country. Required: apps_id (get it from the list endpoint).
- **list_all_app_follow_apps** — List the apps in an AppFollow app collection (workspace). Returns app records with id and upstream-defined attributes; the upstream docs do not enumerate the record fields. Required: apps_id (Collection ID, available from the App Collections List endpoint).
- **create_a_app_follow_app** — Add an app to an AppFollow collection. Returns the added app record with id and upstream-defined attributes; the upstream docs do not enumerate the record fields. Requires store (store code), ext_id (app external ID), apps_id (Collection ID), and locale (country code).
- **app_follow_apps_bulk_delete** — Remove an app from an AppFollow collection. Returns a success response including id and upstream-defined attributes for the removed app; the upstream docs do not enumerate the record fields. Requires store (store code), ext_id (app external ID), and apps_id (Collection ID).
- **list_all_app_follow_users** — List API users of your Appfollow account. Returns each user's id, name, email, role, and collections.
- **create_a_app_follow_user** — Add a user to your Appfollow account. Returns the created user including id, name, email, role, and collections. Requires name, role, and email; get Collection IDs from the App Collections List endpoint.
- **app_follow_users_bulk_update** — Update a user's permissions and details in AppFollow. Returns the updated user record including id, name, role, email, and collections. Required: id, name, role, email. Collection IDs come from the App Collections List endpoint.
- **app_follow_users_bulk_delete** — Remove a user from your AppFollow account. Returns an empty 204 response on success. Required: id (user ID).
- **list_all_app_follow_reviews** — List AppFollow reviews for an app or collection within a date range. Returns review records with id, review_id, store, title, content, author, rating, created, and updated. Required: from, to. One of ext_id or collection_name must also be provided.
- **app_follow_reviews_list_featured** — List AppFollow featured reviews for an app. Returns review records with id, review_id, title, content, author, and rating. Required: ext_id.
- **app_follow_reviews_list_semantic_tags** — List AppFollow reviews matched by semantic tags, sentiment, or rating for an app. Returns review records with id, review_id, title, content, author, and rating. Required: ext_id.
- **app_follow_reviews_create_reply** — Reply to a review on behalf of an AppFollow-connected app. Returns the updated review record including id, review_id, author, rating, content, and is_answer. Required: ext_id, review_id, answer_text.
- **app_follow_reviews_update_tags** — Update tags on an AppFollow review. Returns the updated review record including id, review_id, author, rating, and content. Required: ext_id, review_id, tags.
- **app_follow_reviews_update_bug_trackers** — Set bugtracker tags on a review in AppFollow, using a bugtracker-specific prefix such as OTRS. Returns an opaque 200 confirmation; the upstream docs do not define response body fields. Requires ext_id, review_id, and tags.
- **app_follow_reviews_update_notes** — Add or update a note on a review in AppFollow. Returns an opaque 200 confirmation; the upstream docs do not define response body fields. Requires ext_id, review_id, and content (the note message).
- **app_follow_reviews_update_status** — Set a custom status on a review in AppFollow (private beta). Returns an opaque 200 confirmation; the upstream docs do not define response body fields. Requires ext_id, review_id, and custom_status (reopened or closed).
- **app_follow_reviews_report_concern** — Report a concern on a review in AppFollow. Returns an opaque 200 confirmation; the upstream docs do not define response body fields. Requires store, ext_id, review_id, concern_type, and concern_explanation.
- **app_follow_reviews_upload_bulk** — Upload a batch of custom-source reviews to AppFollow. Returns per-review results (reviews), each with id, ext_review_id, and upload_status. Requires reviews and ext_id; on_conflict sets duplicate handling (defaults to error).
- **app_follow_review_summaries_list_summary** — Get the AppFollow reviews summary for an app, optionally filtered by country, language, app version, and date range. Returns: status, summary. Required: ext_id. Each request costs 10 credits, plus 10 per 30-day window.
- **app_follow_review_summaries_get_ai** — Get an AI-generated summary of AppFollow reviews for an app over a date range. Returns: status, summary. Required: from, to, ext_id, collection_name, and store. Each request costs 10 credits.
- **app_follow_review_stats_get_replies** — Get AppFollow review-reply statistics for an app, showing the number of replies grouped by user with daily totals. Returns a report object (attributes) whose fields are report-specific. Required: ext_id.
- **app_follow_review_stats_get_replies_speed** — Get AppFollow reply-speed statistics showing reply time by user by day; defaults to yesterday when no date is supplied. Returns a report object (attributes) whose fields are report-specific. Required: ext_id.
- **app_follow_review_stats_get_replies_count** — Get AppFollow reply statistics split by whether ratings became worse or better, defaulting to the last 30 days. Returns a report object (attributes) whose fields are report-specific. Required: ext_id.
- **app_follow_review_stats_get_ratings** — Get AppFollow rating statistics for an app for a single reviews date. Returns the rating stat record including date, stars (total ratings), stars1 through stars5 per-star counts, and avg_rating. Required: ext_id. Costs 10 credits per request.
- **app_follow_review_stats_get_by_version** — Get AppFollow rating statistics for a specific app version. Returns the stat record including date, version, country, stars, stars1 through stars5 per-star counts, and avg_rating. Required: ext_id. Costs 10 credits per request.
- **list_all_app_follow_review_stats** — Get review statistics for an AppFollow app — the number of reviews and replies over the requested date range. Returns an aggregated stats payload whose field-level shape AppFollow does not document. Required: ext_id. Each additional 30-day period requested costs extra API credits.
- **app_follow_ratings_list_history** — List AppFollow ratings history data points for an app, returning per-date ratings totals or diffs depending on the requested calculation type. Returns records with date, stars, avg_rating, and stars1–stars5 counts. Required: store, collection_name, ext_id. Max 100 per page.
- **app_follow_ratings_list_console_gp** — List Google Play Console ratings and user counts in AppFollow for the requested period. Returns: fields. Required: ext_id, collection_name, fields. Request either ratings or users via fields — not both at the same time.
- **list_all_app_follow_rankings** — List AppFollow app category rankings for an app. Returns rank records with their id and store-specific rank attributes for the requested date, country, device, and store genre. Required: ext_id.
- **list_all_app_follow_versions** — List app versions with their changes and meta data for an app in AppFollow. Returns paginated version records (field names not documented by AppFollow). Required: ext_id, country.
- **app_follow_versions_list_whatsnew** — List an app's What's New release notes (new versions) in AppFollow. Returns paginated release-note records (field names not documented by AppFollow). Required: ext_id.
- **app_follow_charts_list_top** — Get AppFollow's public store Top Charts for a given country, device, genre, and date. Required: country, device, genre, date. Costs 10 API credits per request.
- **list_all_app_follow_aso_featured** — List App Store featured apps placements for an app in AppFollow ASO. Returns the featured placement data for the requested app and date range. Required: ext_id. Costs 10 credits per request, plus 10 additional credits per 30 days tracked.
- **list_all_app_follow_keyword_suggestions** — List AppFollow ASO keyword suggestions (store suggestions) for a search term. Returns the store-generated suggestions payload with store-defined fields. Required: term. Costs 5 credits per request.
- **list_all_app_follow_aso_search** — Search AppFollow's app store index for apps matching a keyword. Returns the keyword search results for the requested term. Required: term. Optional: country, device.
- **list_all_app_follow_aso_reports** — List Appfollow ASO report data for an app, with download numbers by source channel or as total time-series values. Returns report data whose field names are not enumerated in the API reference and vary by the requested channel, country, date range, and period. Required: ext_id. period accepts daily, weekly, or monthly — send only one value for the chosen date range.
- **app_follow_aso_reports_list_gdc** — List Appfollow GDC ASO report data for an app. Returns report data whose field names are not enumerated in the API reference and vary by the requested channel, country, and date range. Required: ext_id, channel, from, to. channel accepts all, search, explore, or 3rdparty.
- **app_follow_aso_reports_list_search_ads** — List App Store Search Ads report data for an app in Appfollow. Returns report data whose field names are not enumerated in the API reference and vary by the requested country, date range, and report_type. Required: ext_id, from, to. Set country=all and pass report_type to get the country breakdown.
- **list_all_app_follow_keywords** — List keyword rankings for an app from the AppFollow workspace. Returns the tracked keyword data including date, store, device, country, total, pos, popularity, and no_pos. Required: ext_id. Costs 10 API credits per request.
- **update_a_app_follow_keyword_by_id** — Edit the keywords tracked for an app in the AppFollow workspace. Returns the updated keyword data including date, store, device, country, total, pos, and popularity. Required: country, device, keywords. Costs 5 API credits per request.
- **app_follow_aso_search_ads_keywords_list_recommendations** — List AppFollow ASO Search Ads keyword recommendations for an app. Returns recommendation records with an id and app-specific keyword attributes. Requires app. Consumes 10 API credits per request.

## How it works

1. **Link your customer's AppFollow account.** Use Truto's frontend SDK; we handle every OAuth and API key flow so you don't need to create the OAuth app.
2. **Authentication is automatic.** Truto refreshes tokens, stores credentials securely, and injects them into every API request.
3. **Call Truto's API to reach AppFollow.** The Proxy API is a 1-to-1 mapping of the AppFollow API.
4. **Get a unified response format.** Every response uses a single shape, with cursor-based pagination and data in the `result` field.

## Use cases

- **Embed App Store Reviews in Your Helpdesk** — Omnichannel support platforms can offer App Store and Google Play as a native channel, letting agents triage and reply to mobile reviews from the same inbox they use for email and chat — without building direct integrations to Apple and Google developer consoles.
- **Pipe Mobile Feedback into Product Roadmaps** — Feedback aggregation and roadmapping tools can ingest tagged reviews and AI-generated sentiment summaries so PMs see mobile complaints alongside interviews, NPS, and support tickets when prioritizing work.
- **Add ASO Metrics to BI and Marketing Dashboards** — Analytics and attribution platforms can pull keyword rankings, ratings history, and ASO reports into customer dashboards so growth teams correlate app store performance with paid acquisition spend.
- **Automate Bug Triage from App Reviews** — Issue trackers and QA platforms can filter reviews by semantic tags like 'bug', convert them into engineering tickets, and write the ticket reference back to AppFollow so support knows when a reported issue is fixed.
- **Launch Sentiment Reporting for Release Tools** — Release management and product analytics tools can tie each new app version to the reviews that followed, auto-generating a sentiment digest for every rollout so teams catch regressions early.

## What you can build

- **Two-way review reply sync** — Ingest reviews from AppFollow and publish agent replies back to the originating store without leaving your UI.
- **Status and tag mirroring** — Keep review status (open/closed), tags, and internal notes in sync between your platform and AppFollow so both systems reflect the same workflow state.
- **Bug tracker linking** — Attach your internal ticket IDs to AppFollow reviews so support and engineering share a single source of truth for mobile-reported issues.
- **AI-powered release sentiment digests** — Pull version metadata and AI review summaries to auto-generate per-release sentiment reports inside your product.
- **Keyword and ranking dashboards** — Surface tracked keywords, ranking history, and ASO reports natively in your analytics product, and let users add or update tracked keywords from your UI.
- **Bulk review ingestion for custom feedback** — Push proprietary feedback — like in-app NPS or survey responses — into AppFollow so customers can analyze it alongside their public store reviews.

## FAQs

### How do end users authenticate their AppFollow account?

Truto handles the AppFollow credential exchange for you. Your users connect their AppFollow workspace through Truto's connect flow, and your backend uses the resulting connection to call any AppFollow tool without storing or rotating credentials yourself.

### Do I need to know the user's workspace structure before fetching reviews?

Yes. Most AppFollow endpoints are scoped to a collection and app, so integrations typically call list_all_app_follow_collections and list_all_app_follow_apps first to map the user's workspace, then pass the relevant IDs into review, rating, or ASO calls.

### Can I both read reviews and post replies through Truto?

Yes. list_all_app_follow_reviews pulls reviews for ingestion, and app_follow_reviews_create_reply publishes a reply back to the originating store, enabling a full two-way support workflow.

### What review metadata can I write back to AppFollow?

You can update tags (app_follow_reviews_update_tags), status (app_follow_reviews_update_status), internal notes (app_follow_reviews_update_notes), and linked bug tracker references (app_follow_reviews_update_bug_trackers), which is enough to mirror most helpdesk or issue-tracker workflows.

### How do I keep review data fresh in my product?

AppFollow's API is poll-based, so you schedule periodic calls to list_all_app_follow_reviews (filtered by date) through Truto. Truto normalizes pagination and retries so you only need to decide the polling cadence that fits your freshness SLA.

### Can I push my own feedback data into AppFollow?

Yes. app_follow_reviews_upload_bulk lets you send proprietary feedback — such as in-app surveys or NPS responses — into AppFollow so your customers can analyze it next to their public store reviews.

### Are ASO and keyword management supported, not just reviews?

Yes. You can read keyword rankings and ASO reports via list_all_app_follow_keywords, list_all_app_follow_rankings, and list_all_app_follow_aso_reports, and modify tracked keywords with update_a_app_follow_keyword_by_id.
