Recent activity log

Overview

Get a paginated, newest-first audit/activity feed for the authenticated partner and (if a partner) all of its child account companies.

Prerequisites

  • A bearer token. Callable with Partner tokens.

Base URL

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

Endpoint

GET /api/v1/partner/stats/activities

Authentication

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

  • Who can call it: Partner tokens.

  • Mounted under the partner/ prefix group.

  • Scope comes from the caller's company.

  • getAccessibleCompanyIds collects that company's id plus, if bundle_id == 1 (partner), all non-deleted child companies (company.company_id == partner.id).

  • Activities cover only those company_ids.

  • If the user has assign_brand set, results are further narrowed to the user's assignBrands company ids.

  • Returns Company not found error if the user has no associated company.

Rate limit

  • No rate limit.

Query parameters

  • Query: limit (integer, optional) — items per page; 10–100 (values below 10 are raised to 10), defaults to 10. (page is honored by the underlying paginate but is not validated in the request validation.)

Response

  • data.data[] (array) — list of activity rows, newest first. Each item:
  • id (integer) — activity row id.
  • description (string) — ucfirst of the activity's description column.
  • date (string, ISO-8601) — the activity's created_at.
  • activity_type (string) — e.g. location_created, brand_created.
  • entity_type (string) — e.g. location, brand.
  • data.current_page (integer) — current paginator page.
  • data.per_page (integer) — page size.
  • data.total (integer) — total matching activities.

200 Success · 200

{
  "data": {
    "data": [
      {
        "id": 101,
        "description": "Partner account created for Acme Partner",
        "date": "2026-05-29T14:30:00.000000Z",
        "activity_type": "partner_created",
        "entity_type": "partner"
      }
    ],
    "current_page": 1,
    "per_page": 10,
    "total": 42
  }
}

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/partner/stats/activities?limit=10" \
  --header 'Authorization: Bearer <bearer-token>' \
  --header 'Accept: application/json'

Did this page help you?