Updated Oct 2026
New review alerts in Slack for every platform
Most teams find out about a bad review when a customer mentions it. The platforms don’t help much: Google needs a Pub/Sub pipeline for notifications, the App Store and Google Play send nothing, and Yelp, Tripadvisor or Booking.com have no API for owners at all. This guide sets up one Slack alert for new reviews on all 58 platforms Prisma reads, in about 15 minutes, with n8n or with a plain webhook.
What you need
- A Prisma account with at least one connected location (free for 2 locations). A
pk_test_key works for the whole setup: it produces sample reviews so you can see the alert before connecting a real listing. - A Slack workspace where you can add an app or an incoming webhook.
- n8n (Cloud or self-hosted), or any service that can receive a webhook: Zapier, Make, Pipedream, or your own endpoint.
Option A: n8n, three nodes
- Install the node. Settings → Community Nodes →
n8n-nodes-prisma-reviews, then create a Prisma Reviews API credential with your key. Details on the n8n reviews automation page. - Prisma Reviews Trigger. Event:
review.created. When you activate the workflow the node registers the webhook with Prisma; nothing to copy. - Prisma Reviews → Review → Get. Review ID:
{{ $json.data.id }}. Webhook events carry the id only, so this step fetches the full review (rating, text, author, url). - Slack → Send a message. Channel
#reviews, text:
{{ $json.rating }}★ on {{ $json.platform }} from {{ $json.author }}
{{ $json.text }}
Reply: {{ $json.url }}- Test with “Listen for test event” and
POST /v1/locations/{id}/refreshon a test location, or just wait for a sample review. Then activate.
Optional, route by rating: add an If node after step 3 with {{ $json.rating }} ≤ 2 → #reviews-urgent, else #reviews. Route by location: switch on {{ $json.location_id }} so each store or app has its channel.
Option B: a webhook and ten lines of code
Register an endpoint once:
curl -X POST https://api.prismareviews.com/v1/webhooks \
-H "Authorization: Bearer $PRISMA_API_KEY" \
-H "Content-Type: application/json" \
-d '{"url": "https://yourapp.com/webhooks/prisma", "events": ["review.created"]}'The response includes the signing secret (shown once). Then, on each delivery, verify the Prisma-Signature header, fetch the review and post to Slack’s incoming webhook:
// Node 18+ (Express). Signature check as on /review-webhooks.
app.post("/webhooks/prisma", express.raw({ type: "application/json" }), async (req, res) => {
if (!verifySignature(req)) return res.sendStatus(401);
const event = JSON.parse(req.body);
if (event.type === "review.created") {
const r = await fetch(`https://api.prismareviews.com/v1/reviews/${event.data.id}`, {
headers: { Authorization: `Bearer ${process.env.PRISMA_API_KEY}` },
}).then((x) => x.json());
await fetch(process.env.SLACK_WEBHOOK_URL, {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({ text: `${r.rating}★ on ${r.platform} from ${r.author}\n${r.text}\nReply: ${r.url}` }),
});
}
res.sendStatus(200);
});# Flask
@app.post("/webhooks/prisma")
def prisma_webhook():
if not verify_signature(request):
abort(401)
event = request.get_json()
if event["type"] == "review.created":
r = requests.get(f"https://api.prismareviews.com/v1/reviews/{event['data']['id']}",
headers={"Authorization": f"Bearer {os.environ['PRISMA_API_KEY']}"}).json()
requests.post(os.environ["SLACK_WEBHOOK_URL"],
json={"text": f"{r['rating']}★ on {r['platform']} from {r['author']}\n{r['text']}\nReply: {r['url']}"})
return "", 200The verifySignature function is the HMAC check from review webhooks: timestamp and SHA-256 of the body, compared in constant time.
Zapier and Make: use their “Catch Hook” or “Custom Webhook” trigger as the URL in the registration call, then an HTTP module to GET /v1/reviews/{id} and a Slack module. Same three steps, no code.
Where the review links go
url always points at the review on the platform, so the person who sees the alert can answer it in one click, including on the platforms where no API can post replies (Google Maps, Yelp, Tripadvisor, Booking.com, G2 and the other read-only ones). On the App Store, Google Play, Judge.me, eBay, Trusted Shops and eKomi you can also reply from the workflow with POST /v1/reviews/{id}/reply.
FAQ
How do I get Google reviews in Slack?
Google has no Slack integration for reviews and its Business Profile notifications need the Notifications API plus Cloud Pub/Sub. The simpler route is a review webhook: Prisma reads the public Google Maps reviews of your listing and sends review.created to n8n, Zapier, Make or your own endpoint, which posts to Slack.
How fast is the alert?
Minutes after the review appears on platforms with an official API (App Store, Google Play, Judge.me and others); a few hours on platforms read through their public page, such as Google Maps, Yelp or Tripadvisor, depending on the check frequency of your plan.
Can I route 1-star reviews to a different channel?
Yes. The review object has a rating field, so an If node (or one line of code) sends ratings of 1 and 2 to an urgent channel and the rest to the general one. The location_id field lets you route by store or app.
One Slack alert for every review platform.
2 locations free. Test keys send sample reviews so you see the alert today.