Description
n8n-nodes-app-store
n8n community nodes for Apple App Store customer reviews, via the App Store Connect API:
- App Store — fetch and reply to customer reviews.
- App Store Trigger — polls one or several apps for new (and optionally updated) customer reviews.
Looking for Google Play? See @maximiliana/n8n-nodes-google-play.
Installation
Follow the community nodes installation guide and install:
@maximiliana/n8n-nodes-app-store
Credentials
Authentication uses an App Store Connect API key. The credential signs a short-lived ES256 JWT (the token Apple expects as bearer) and regenerates it automatically when it expires.
1. In App Store Connect → Users and Access → Integrations → App Store Connect API, create a Team key with the App Manager role (required to reply to reviews).
2. Download the .p8 private key file (it can only be downloaded once) and note the Key ID and Issuer ID.
3. In n8n, create an App Store Connect API credential with the Issuer ID, the Key ID and the contents of the .p8 file (pasted formatting is handled automatically).
Operations
| Operation | Description |
| — | — |
| Get | Retrieve a single customer review by ID |
| Get Many | List customer reviews of an app, with rating / territory / response status filters and sorting |
| Reply | Publish or update the developer response to a review (max 5970 characters) |
The app is selected with a searchable picker (or by its numeric Apple ID). The published developer response (if any) is fetched alongside each review. Responding again to the same review replaces the previous response.
Trigger
The trigger watches one or several apps (multi-select picker, or numeric Apple IDs via expression) and uses n8n polling (configure the schedule in the node’s Poll Times). On each poll it fetches, per app, the reviews newer than the previous poll and emits the ones not seen before, each tagged with its appId. Every app keeps its own polling state: a temporary failure in one app never loses or duplicates reviews of the others. Options:
The first poll only establishes the baseline and emits nothing (historical reviews are not replayed). Executing the trigger manually returns the latest reviews, so you can inspect the output shape while building the workflow.
Simplified output
{
"appId": "1234567890",
"id": "00000000-0000-0000-0000-000000000000",
"rating": 4,
"title": "Muy útil",
"body": "A mi madre le encanta",
"reviewerNickname": "pedro_es",
"createdDate": "2026-08-12T12:00:00Z",
"territory": "ESP",
"responseBody": "¡Gracias!",
"responseState": "PUBLISHED"
}
Rate limits
The App Store Connect API allows roughly 3600 requests per hour per API key (Apple reports the live limit in the X-Rate-Limit response header). A poll normally costs a single request, so polling comfortably stays within the limit.
Troubleshooting
“Class could not be found. Please check if the class is named correctly.” while installing. n8n installs community packages into ~/.n8n/nodes with a shared node_modules; if another community package left an old n8n-workflow 1.x hoisted there, npm reuses it (any version satisfies the * peer range that n8n verification mandates) and older releases of this package failed to load against it. Since 0.2.2 the nodes tolerate old copies, but if you still hit loading issues, refresh the hoisted copy and retry the install:
cd ~/.n8n/nodes && npm install n8n-workflow@latest
Security notes
password-type fields) and never leave the instance: tokens are generated locally and only sent to the official Apple endpoints over HTTPS.About
This package is built and maintained by Maximiliana (BUKIT APP, SL), where we use it in production for our own apps. It is offered as-is, on a best-effort basis, with no warranty or support commitment — but it’s here, it works, and we intend to keep it that way.
Issues and pull requests are welcome on GitHub. For anything else, reach out at pedro@maximiliana.es.
App Store, App Store Connect and the App Store logo are trademarks of Apple Inc. This project is not affiliated with, endorsed or sponsored by Apple; the names and logos are used solely to identify the service the nodes integrate with.
License
MIT