/api/v4/locations/reviews/settings/editAdd or edit review sources for a location
Adds a review source URL, updates an existing one, or changes the positive-review threshold for a location.
Parameters
Body
| Name | Type | Required | Description |
|---|---|---|---|
| locationId | string | required | Location to update. Accepts a base64-encoded Relay ID (e.g. `TG9jYXRpb246MTgwMDI4OQ==`) or a raw numeric location ID. |
| siteUrls | array | optional | Review-source entries to add or update. Each item is an object with `name` (the site identifier, e.g. `yelp.com`) and `url` (the public review page URL for the location on that site). Only the sites you send are changed; omitted sites keep their current values. |
| positiveInteractionThreshold | integer | optional | Minimum star rating (1-5) at which a review is counted as positive in analytics and campaign routing. |
Sample request
Ready-to-paste body. Replace placeholder IDs and values with yours.
{
"locationId": "TG9jYXRpb246MTgwMDI4OQ==",
"siteUrls": [
{ "name": "yelp.com", "url": "https://www.yelp.com/biz/jenny-home-bengaluru" },
{ "name": "tripadvisor.com", "url": "https://www.tripadvisor.com/Restaurant_Review-jenny-home" }
],
"positiveInteractionThreshold": 4
}Responses
200Updated interactions settings for the location.
{
"data": {
"editInteractionsSetting": {
"errors": null,
"interactionSetting": {
"id": "743c8f7e-cc47-42ff-a640-3c4d072dcb86",
"locationId": "TG9jYXRpb246MTgwMDI4OQ==",
"positiveInteractionThreshold": 4,
"siteSettings": [
{ "name": "yelp.com", "url": "https://www.yelp.com/biz/jenny-home-bengaluru", "connected": false },
{ "name": "tripadvisor.com", "url": "https://www.tripadvisor.com/Restaurant_Review-jenny-home", "connected": false },
{ "name": "maps.google.com", "url": null, "connected": true },
{ "name": "facebook.com", "url": null, "connected": false }
]
}
}
}
}400Validation error — e.g. attempting to overwrite an OAuth-connected source (`SY50106`) or an unsupported `name`. Details are in the `errors` array of the payload.
401Unauthenticated — missing or invalid API key.
Use this endpoint to point Listings API at the pages where a location's reviews live, so it can start pulling interactions from them. Send the configuration as a JSON body — the name of each entry must be one of the site identifiers returned by List review sources for an account; the url is the location's public review page on that site.
Use case: onboard a new location's off-Google review sources
When a location is first created it typically has no third-party review URLs configured, so List review sources for a location shows url: null for every non-OAuth site. Call this endpoint once per location to attach the Yelp, TripAdvisor, and Yellowpages URLs your team has on file:
{
"locationId": "TG9jYXRpb246MTgwMDI4OQ==",
"siteUrls": [
{ "name": "yelp.com", "url": "https://www.yelp.com/biz/jenny-home-bengaluru" }
]
}
Within the next crawl cycle those sources begin appearing in the interactions feed.
Use case: tune the positive-review threshold
Send only locationId and positiveInteractionThreshold to change how reviews are bucketed without touching any URLs. Setting it to 4, for example, treats 4- and 5-star reviews as positive for analytics and review-funnel routing.
Google and Facebook entries that are connected via OAuth (connected: true) are managed by the connection, not by this endpoint. Attempting to overwrite a connected OAuth source returns error SY50106 in the payload's errors array — the rest of the request still applies. This is a write operation and is subject to the account's rate limit; batch site changes for a location into a single call rather than one request per site.
curl -X POST 'https://listingsapi.com/api/v4/locations/reviews/settings/edit' \
-H "Authorization: API $LISTINGSAPI_KEY" \
-H 'Content-Type: application/json' \
-d '{
"locationId": "<locationId>",
"siteUrls": "<siteUrls>",
"positiveInteractionThreshold": "<positiveInteractionThreshold>"
}'