List a location's review sites

Overview

Get every review site on a location with the state of each connection: whether it has a review URL, whether collection is on, and whether posting is authorized.

Use this to see what's set up before making changes, or to build a connection-status view in your own dashboard. It's also where you get each connection's store_review_site_id.

You'll need the store_id or your client_location_id.

Returns one entry per site with its IDs, URLs, and status. Google comes first, then Yelp and Facebook, then the other sites.

Prerequisites

  • A bearer token. See Authentication.
  • The location's store_id, or your own client_location_id for it.

Base URL

EnvironmentURL
Productionhttps://production-api.shoutaboutus.com
Developmenthttps://development-api.shoutaboutus.com

Endpoint

POST /api/v1/store-review-site/list

Authentication

Partner or Account token

  • The location must be inside your own account tree. A Partner token can list any location under the partner; an Account token only its own account's locations.
  • A location outside your tree is rejected with 422.

Rate limit

This endpoint has no rate limit.

Request parameters

None.

Request body

FieldTypeRequiredDescription
store_idintegerNoThe location. Required unless you send client_location_id. Must exist and be inside your account tree.
client_location_idstringNoYour own id for the location, used instead of store_id. Up to 255 characters.
has_landing_pageintegerNo1: only sites that have a landing page URL. 0 or left out: all sites.
check_connectionintegerNo0: skip the connection check for a faster call; the connection fields come back empty (connectionStatus "", the card-state fields null). 1 or left out: include them.
sort_fieldstringNoreview_site. Accepted, but the order is fixed (see Overview).
sort_bystringNoasc or desc. Accepted, but the order is fixed (see Overview).

Request payload

{
  "store_id": 3007,
  "has_landing_page": 0,
  "check_connection": 1
}

Response body

The rows are in a top-level data array, next to store_name.

FieldTypeDescription
dataarray of objectsOne entry per review site on the location.
data[].idintegerThe connection's id (store_review_site_id).
data[].urlstring or nullThe site's review URL for this location. null when not set.
data[].landing_page_urlstring or nullThe landing page URL: where review requests send customers to leave a review. null when not set.
data[].created_atstringWhen the site was added to the location (ISO 8601).
data[].url_statusstringenable or disable. Whether the landing page URL is used in review requests.
data[].connectionStatusstringConnected, Awaiting or Disconnected. "" with check_connection 0.
data[].is_connectedinteger1 when connected, otherwise 0.
data[].lock_colorstringStatus colour: green (connected), orange (awaiting) or gray.
data[].sendto_scrapperstringY when review collection is on, N when it's off.
data[].display_as_connectedbooleantrue when the site is set to show as connected without a live connection.
data[].reviews_statusstring or nullReview collection: streaming, offline or no_url.
data[].posting_statusstring or nullResponse posting: active, in_progress, off, access_lost or offline.
data[].has_urlboolean or nullWhether the site has a review URL.
data[].error_codestring or nullThe connection problem's code, e.g. E-002. null when posting isn't blocked.
data[].error_titlestring or nullShort title of the problem, e.g. Connection sign-in lost.
data[].error_reasonstring or nullWhat went wrong and how to fix it, in plain language.
data[].fix_sheetstring or nullThe next step to show: none, pending, connect_url, enable_posting, oauth_reconnect or manager_invite.
data[].last_scraped_atstring or nullWhen reviews were last collected (ISO 8601), or null.
data[].connect_page_urlstringThis site's page in the Shout About Us web app (or your white-label domain), where the connection is set up.
data[].review_siteobjectThe review site.
data[].review_site.idintegerThe review site's id (review_site_id).
data[].review_site.namestringThe review site's name, e.g. Yelp.
data[].review_site.publisherstringThe site's domain, e.g. yelp.com.
data[].review_site.linkstringThe site's home page.
data[].review_site.review_site_iconstringURL of the site's logo.
data[].review_site.review_site_colorstringThe site's brand colour, e.g. #d32200.
data[].review_site.self_form_enabledstringY when review requests for this site open the Shout About Us review form instead of the site's landing page. Otherwise N.
data[].review_site.auth_typestring or nullHow the site connects: oauth, cookie, credential, default, restapi, or null. See List supported review sites.
data[].review_site.scraping_enabledbooleanWhether reviews can be collected from this site.
data[].review_site.posting_enabledbooleanWhether responses can be posted to this site.
data[].review_site.keywordsarray of stringsThe site's placeholders for review-request templates, e.g. [reviewSite_1].
store_namestringThe location's name, followed by - and your client_location_id, or the location's storeId label (by default its city) when it has none.

Response payload

{
  "data": [
    {
      "id": 8784,
      "url": "https://www.google.com/maps/place/Wynyard/@-33.8648805,151.2065622,1523m/data=!3m1!1e3!4m6!3m5!1s0x6b12ae40e6fcf9eb:0x45845f7ff56e0d1!8m2!3d-33.86594!4d151.2061!16s%2Fg%2F1262gn7v0?entry=ttu&g_ep=EgoyMDI2MDkyMC4wIKXMDSoASAFQAw%3D%3D",
      "landing_page_url": "https://www.google.com/maps/place/Wynyard/@-33.8648805,151.2065622,1523m/data=!3m1!1e3!4m6!3m5!1s0x6b12ae40e6fcf9eb:0x45845f7ff56e0d1!8m2!3d-33.86594!4d151.2061!16s%2Fg%2F1262gn7v0?entry=ttu&g_ep=EgoyMDI2MDkyMC4wIKXMDSoASAFQAw%3D%3D",
      "created_at": "2026-09-23T10:43:45.000000Z",
      "url_status": "disable",
      "connectionStatus": "Disconnected",
      "is_connected": 0,
      "lock_color": "gray",
      "sendto_scrapper": "Y",
      "display_as_connected": false,
      "reviews_status": "streaming",
      "posting_status": "offline",
      "has_url": true,
      "error_code": "E-002",
      "error_title": "Connection sign-in lost",
      "error_reason": "Your Google connection dropped, so responses are paused. Tap Reconnect and sign in with the same account, then approve access to resume.",
      "fix_sheet": "oauth_reconnect",
      "last_scraped_at": null,
      "connect_page_url": "https://production.shoutaboutus.com/connect-review-sites/5oogfx/edit-site/3007/Google/8784/",
      "review_site": {
        "id": 44,
        "name": "Google",
        "publisher": "maps.google.com",
        "link": "http://maps.google.com",
        "review_site_icon": "https://d2ny6zb7otrnhl.cloudfront.net/assets/backend/images/logos/google_ic.png",
        "review_site_color": "#4285F4",
        "self_form_enabled": "N",
        "auth_type": "oauth",
        "scraping_enabled": true,
        "posting_enabled": true,
        "keywords": [
          "[reviewSite_44]"
        ]
      }
    },
    {
      "id": 8782,
      "url": null,
      "landing_page_url": null,
      "created_at": "2026-09-23T10:43:45.000000Z",
      "url_status": "disable",
      "connectionStatus": "Disconnected",
      "is_connected": 0,
      "lock_color": "gray",
      "sendto_scrapper": "Y",
      "display_as_connected": false,
      "reviews_status": "no_url",
      "posting_status": "off",
      "has_url": false,
      "error_code": null,
      "error_title": null,
      "error_reason": null,
      "fix_sheet": "connect_url",
      "last_scraped_at": null,
      "connect_page_url": "https://production.shoutaboutus.com/connect-review-sites/5oogfx/edit-site/3007/Yelp/8782/",
      "review_site": {
        "id": 1,
        "name": "Yelp",
        "publisher": "yelp.com",
        "link": "http://www.yelp.com",
        "review_site_icon": "https://d2ny6zb7otrnhl.cloudfront.net/assets/backend/images/logos/yelp_ic.png",
        "review_site_color": "#d32200",
        "self_form_enabled": "N",
        "auth_type": "cookie",
        "scraping_enabled": true,
        "posting_enabled": true,
        "keywords": [
          "[reviewSite_1]"
        ]
      }
    }
  ],
  "store_name": "Acme Coffee - docs-test-loc-001"
}

Examples

Success payload

See Response payload.

Error payload

422 Missing store_id

{
  "message": "The store id field is required when client location id is not present.",
  "errors": {
    "store_id": [
      "The store id field is required when client location id is not present."
    ]
  }
}

422 Location outside your tree

{
  "message": "The selected store id does not belong to your company hierarchy.",
  "errors": {
    "store_id": [
      "The selected store id does not belong to your company hierarchy."
    ]
  }
}

422 Invalid values

{
  "message": "The selected sort by is invalid. (and 3 more errors)",
  "errors": {
    "sort_by": [
      "The selected sort by is invalid."
    ],
    "has_landing_page": [
      "The selected has landing page is invalid."
    ],
    "check_connection": [
      "The check connection field must be an integer.",
      "The selected check connection is invalid."
    ]
  }
}
StatusMeaning
200The location's review sites.
401The token is missing, expired or invalid.
422No location sent, the location is outside your tree, or a value isn't allowed.
500Unexpected server error.

Example request

curl --request POST \
  --url "https://production-api.shoutaboutus.com/api/v1/store-review-site/list" \
  --header 'Authorization: Bearer <bearer-token>' \
  --header 'Accept: application/json' \
  --header 'Content-Type: application/json' \
  --data '{"store_id": 3007, "has_landing_page": 0, "check_connection": 1}'

Did this page help you?