---
title: "Update a location's review-source settings (monitored sites) and positive-review threshold."
method: POST
path: "/api/v4/locations/reviews/settings/edit"
tags: ["Reviews"]
---

# Update a location's review-source settings (monitored sites) and positive-review threshold.

`POST /api/v4/locations/reviews/settings/edit`

## Request

- Base URL: `https://listingsapi.com`
- URL: `https://listingsapi.com/api/v4/locations/reviews/settings/edit`
- Auth: one of:
  - API key in header `Authorization`
  - API key in header `X-RapidAPI-Key` and API key in header `X-RapidAPI-Host`
- TypeScript: <https://skmtc.dev/listingsapi/apis/listings-api/docs/api/v4/locations/reviews/settings/edit/post.ts> (a function with typed inputs; its response is checked against the schema)

Sets which review sources a location is monitored on, and its positive-review threshold.

## Request body

- object
  - `locationId` union, required
    - integer: Raw numeric ID
    - string, base64-or-int: Base64-encoded Relay ID
  - `siteUrls` SiteSettingInputType[]
    - `name` string
    - `url` string
  - `positiveInteractionThreshold` integer

## Response `200`

Successful response

- object
  - `data` object, required
    - `editInteractionsSetting` EditInteractionsSetting
      - `errors` ErrorType[]
        - `message` string
        - `contextInfo` ContextInfoType[]
          - `key` string
          - `value` string
        - `code` string
      - `interactionSetting` InteractionsSetting
        - `id` string
        - `positiveInteractionThreshold` integer
        - `siteSettings` SiteSetting[]
          - `name` string
          - `url` string
          - `connected` boolean
          - `totalReviews` integer
          - `averageRating` number, float
          - `lastReviewAt` string
          - `monitored` boolean
          - `type` string
          - `canRespond` boolean
        - `locationId` string
  - `errors` ApiError[]: Present when the operation reported a request-level failure. Writes can also report validation nested under `data.<field>.errors` on a 200.
    - `message` string, required: Human-readable reason, prefixed with the `SYxxxxx` code where one applies.
    - `code` string: The `SYxxxxx` error code on its own, when one applies.
    - `contextInfo` object[]: Key/value pairs naming the field or value that failed.
      - `key` string
      - `value` string

## Other responses

- `400`: Bad request: a malformed filter, an invalid enum value, or a malformed ID. The body carries an `errors` array, or a single `error` object when the request was rejected before it ran (e.g. `SY90001` on `reviewDetails` with no `interactionIds`).
- `401`: Unauthorized — the API key is missing, malformed, or revoked (`SY90005`).
- `403`: Forbidden — the key is valid but not permitted for this resource or operation (`SY90003`).
- `429`: Rate limit exceeded. Wait `retry_after_seconds` (or the `Retry-After` header) and retry with backoff.
- `500`: Server error. The body carries a single `error` object with code `INTERNAL_SERVER_ERROR`.

## Changes

- **2026-09-25** `91249a5e08be`: 1 breaking, 1 info
  - added `#/components/schemas/ApiErrorObject` to the response body `oneOf` list for the response status `400`
  - removed `#/components/schemas/GatewayError` from the response body `oneOf` list for the response status `400`
- **2026-09-09** `8bc826bc148c`: 1 info
  - endpoint added
- **2026-07-26** `f41a4d1dfdb8`: 1 breaking
  - api path removed without deprecation

[Operation history](https://skmtc.dev/listingsapi/apis/listings-api/changes/api/v4/locations/reviews/settings/edit/post.md)

---

[API](https://skmtc.dev/listingsapi/apis/listings-api.md) - [All operations](https://skmtc.dev/listingsapi/apis/listings-api/llms.txt) - [OpenAPI document](https://skmtc.dev/listingsapi/apis/listings-api/revisions/2658a20b9b66?raw)
