# New review received for a location

**Event:** `interaction.review`

**Event name:** `interaction.review`

Sent when Synup detects a new review for one of your locations on any monitored platform (Google, Yelp, TripAdvisor, etc.). Delivered to your Webhooks URL (Reviews webhook — requires the reviews webhook permission). Location-scoped. Social-category interactions are not delivered.

Source: https://developer.synup.com/webhooks/interaction-review

## Header parameters

| Name | Type | Required | Description |
| --- | --- | --- | --- |
| `X-Synup-Signature` | string | required | sha256=base64(HMAC-SHA256(signing_secret, raw_request_body)). Present when the account has generated a signing secret; verify before processing. |

## Request body

| Name | Type | Required | Description |
| --- | --- | --- | --- |
| `event` | string | optional | Dotted event name. |
| `timestamp` | string | optional | ISO-8601 datetime Synup detected and processed this interaction (UTC). |
| `account_id` | integer | optional | The Synup account that owns this location. |
| `location_id` | string | optional | Synup's numeric location ID, as a string. |
| `data` | object | optional |  |
| `data.interaction` | object | optional | The review or response. |
| `data.interaction.id` | string | optional | Synup's unique ID (UUID) for this interaction. |
| `data.interaction.type` | string | optional | "Review" for this event. |
| `data.interaction.content` | string | optional | Full text of the review. |
| `data.interaction.rating` | integer | optional | Reviewer rating on a normalized 1-10 scale (null for platforms without ratings). For Facebook Recommendations, 10 = positive (thumbs up), 2 = negative (thumbs down). Divide if you need a 1-5 scale. |
| `data.interaction.author_name` | string | optional | Name of the person who left the review. |
| `data.interaction.author_avatar` | string | optional | URL to the reviewer's profile photo; null if the platform provides none. |
| `data.interaction.date` | string | optional | ISO-8601 datetime the review was originally posted on the platform. |
| `data.interaction.source` | string | optional | Platform the review came from (e.g. "maps.google.com", "yelp.com"). |
| `data.interaction.parent_id` | string | optional | Always null for reviews (used by responses to reference the original review). |
| `data.interaction.interaction_request_id` | string | optional | Internal tracking ID (UUID) for the crawl request that surfaced this review. |
| `data.interaction.title` | string | optional | Review title if provided; usually null for Google reviews. |
| `data.interaction.permalink` | string | optional | Direct URL to the review on the original platform. |
| `data.interaction.category` | string | optional | "Review" for standard reviews, "Recommendation" for Facebook Recommendations. |
| `data.interaction.interaction_status` | string | optional | Always null for reviews. |
| `agency_account_id` | integer | optional | Present only when the account is managed by a parent agency account. |

## Responses

| Status | Description |
| --- | --- |
| `200` | Acknowledge with any 2xx. A non-2xx (or timeout) is recorded as a failed delivery; failures are logged but not automatically retried at this time. |
