QR code statistics

Overview

Get aggregate QR code counts for the authenticated account-user's company: total, a breakdown by destination type, and a count of those created in the last 30 days. Optionally scope to a store and/or a created-at date range.

Prerequisites

  • A bearer token. Callable with Account tokens.

Base URL

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

Endpoint

GET /api/v1/qr-codes/stats

Authentication

  • Requires a bearer token in the Authorization: Bearer <bearer-token> header.

  • Who can call it: Account tokens.

  • The base query is scoped to the caller's own company.

  • The optional store_id must sit inside your own account tree.

  • This route is declared before qr-codes/{id}, so stats is matched as a literal path, not an {id}.

Rate limit

  • No rate limit.

Query parameters

  • Query: store_id (integer, optional) — Must be an existing location + must belong to the auth company hierarchy.
  • Query: start_date (string Y-m-d, optional) — filters created_at from this day.
  • Query: end_date (string Y-m-d, optional) — filters created_at to this day.

Response

  • data.status (string) — "success".
  • data.data.total_qr_codes (int)
  • data.data.by_destination_type (object) — keyed by destination type (landing_page, review_site, custom_url) → count; only types present in the data appear.
  • data.data.recently_created (int) — created in the last 30 days.
  • data.message (string) — "QR code statistics retrieved successfully".

200 OK · 200

{
  "data": {
    "status": "success",
    "data": {
      "total_qr_codes": 120,
      "by_destination_type": {
        "landing_page": 80,
        "review_site": 30,
        "custom_url": 10
      },
      "recently_created": 5
    },
    "message": "QR code statistics retrieved successfully"
  }
}

Errors

StatusMeaning
401The bearer token is missing, expired or invalid
422The request failed validation — the response names the fields
500Unexpected server error

Example request

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

Did this page help you?