Review and response totals

Overview

Get review and response totals for the last 30 days, the previous 30, and all time before that.

Use this to show recent momentum.

You'll need a partner token.

Returns the three windows, plus the response rate, average response time and reviews awaiting a response.

Prerequisites

Base URL

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

Endpoint

GET /api/v1/partner/stats/review-response

Authentication

Partner token

  • Results cover your partner's active and pending locations.
  • When the user behind the token is limited to some accounts, review and response counts cover those accounts only.
  • Reviews are bucketed by review date and responses by the date the response was created. The windows are counted back from the time of the call.

Rate limit

120 requests per minute, counted per user (the token’s user). See Rate limits.

Request parameters

None.

Request body

None.

Request payload

None.

Response body

The payload is inside data.

FieldTypeDescription
review_statsobjectReview counts by review date. Reviews from a site that's been removed from the location aren't counted.
review_stats.last_30_daysintegerReviews dated within the last 30 days.
review_stats.previous_30_days_countintegerReviews dated 30 to 60 days ago.
review_stats.before_30_daysintegerReviews dated more than 30 days ago. This includes the 30 to 60 day window.
response_statsobjectResponse counts by the date the response was created.
response_stats.last_30_daysintegerResponses created within the last 30 days.
response_stats.previous_30_days_countintegerResponses created 30 to 60 days ago.
response_stats.before_30_daysintegerResponses created more than 30 days ago. This includes the 30 to 60 day window.
kpi_summaryobjectHeadline numbers for the last 30 days.
kpi_summary.response_rate_pctnumberresponse_stats.last_30_days as a percentage of review_stats.last_30_days, to 2 decimals. 0 when there are no reviews.
kpi_summary.response_rate_pct_previousnumberThe same percentage for the 30 to 60 day window. 0 when that window has no reviews.
kpi_summary.avg_response_timenumberAverage time to respond, in days, for responses created in the last 30 days, to 2 decimals. 0 when there are none.
kpi_summary.awaiting_responseintegerReviews from the last 30 days that still have no response and that the location may respond to: reviews dated on or after the location was added, plus older reviews when the location's plan includes responding to past reviews.

Response payload

{
  "data": {
    "review_stats": {
      "last_30_days": 324,
      "previous_30_days_count": 298,
      "before_30_days": 1820
    },
    "response_stats": {
      "last_30_days": 310,
      "previous_30_days_count": 285,
      "before_30_days": 1750
    },
    "kpi_summary": {
      "response_rate_pct": 95.68,
      "response_rate_pct_previous": 95.64,
      "avg_response_time": 1.42,
      "awaiting_response": 22
    }
  }
}

Examples

Success payload

See Response payload.

Error payload

401 Unauthenticated

{
  "message": "Unauthenticated."
}

429 Too many requests

{
  "message": "Too Many Attempts."
}
StatusMeaning
200The totals for each window.
401The token is missing, expired or invalid.
429More than 120 requests in a minute from this user.
500Unexpected server error.

Example request

curl --request GET \
  --url "https://production-api.shoutaboutus.com/api/v1/partner/stats/review-response" \
  --header 'Authorization: Bearer <bearer-token>' \
  --header 'Accept: application/json'

Did this page help you?