Find accounts without an active plan

Overview

List accounts that have no location on an active plan (for example because the plan was cancelled or has expired), with the owner's email, how many locations they have, and the last plan they were on.

Use this as a regular check. An account without an active plan has locations that aren't collecting reviews.

You'll need a partner token. Results are paginated.

Returns the accounts that need a plan assigned.

Prerequisites

Base URL

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

Endpoint

GET /api/v1/partner/account/inactive-plan-list

Authentication

Partner token

  • Lists accounts directly under your partner and under your sub-partners.
  • Any other token gets 403.

Rate limit

This endpoint has no rate limit.

Request parameters

ParameterInTypeRequiredDescription
limitqueryintegerNoPage size, 10 to 100. Default 10. Values below 10 are raised to 10; above 100 returns 422.
pagequeryintegerNoPage number. Default 1.

Request body

None.

Request payload

None.

Response body

The payload is inside data, as a page of results.

FieldTypeDescription
current_pageintegerThe page number.
dataarrayThe accounts on this page.
data[].idintegerThe account's id.
data[].company_namestringThe account's name.
data[].client_account_idstring or nullYour own id for the account.
data[].emailstring or nullThe account owner's email.
data[].store_idsstring or nullThe ids of the account's locations, comma-separated (e.g. "3007,3008"), or null when it has none.
data[].total_cancelled_locationintegerThe number of the account's locations. None of them is on an active plan.
data[].plan_namestring or nullThe account's last plan, or null.
first_page_urlstringURL of the first page.
frominteger or nullPosition of the first result on this page.
last_pageintegerThe last page number.
last_page_urlstringURL of the last page.
linksarrayPage links, each with url, label, page and active.
next_page_urlstring or nullURL of the next page, or null.
pathstringThe endpoint URL.
per_pageintegerThe page size.
prev_page_urlstring or nullURL of the previous page, or null.
tointeger or nullPosition of the last result on this page.
totalintegerThe number of accounts across all pages.

Response payload

{
  "data": {
    "current_page": 1,
    "data": [
      {
        "id": 6021,
        "company_name": "Acme Brand",
        "client_account_id": "ACC-001",
        "email": "[email protected]",
        "store_ids": "3101,3102,3103",
        "total_cancelled_location": 3,
        "plan_name": "Growth — Unlimited"
      }
    ],
    "first_page_url": "https://production-api.shoutaboutus.com/api/v1/partner/account/inactive-plan-list?page=1",
    "from": 1,
    "last_page": 1,
    "last_page_url": "https://production-api.shoutaboutus.com/api/v1/partner/account/inactive-plan-list?page=1",
    "links": [
      { "url": null, "label": "« Previous", "page": null, "active": false },
      { "url": "https://production-api.shoutaboutus.com/api/v1/partner/account/inactive-plan-list?page=1", "label": "1", "page": 1, "active": true },
      { "url": null, "label": "Next »", "page": null, "active": false }
    ],
    "next_page_url": null,
    "path": "https://production-api.shoutaboutus.com/api/v1/partner/account/inactive-plan-list",
    "per_page": 10,
    "prev_page_url": null,
    "to": 1,
    "total": 1
  }
}

Examples

Success payload

See Response payload.

Error payload

403 Not a partner

{
  "message": "Forbidden",
  "status": "error",
  "errors": "Only partner can access this endpoint!"
}

422 Page size too large

{
  "message": "The limit field must not be greater than 100.",
  "errors": {
    "limit": ["The limit field must not be greater than 100."]
  }
}
StatusMeaning
200The accounts without an active plan.
401The token is missing, expired or invalid.
403The token isn't a Partner token.
422limit is above 100, or a parameter has the wrong type.
500Unexpected server error.

Example request

curl --request GET \
  --url "https://production-api.shoutaboutus.com/api/v1/partner/account/inactive-plan-list?limit=10&page=1" \
  --header 'Authorization: Bearer <bearer-token>' \
  --header 'Accept: application/json'

Did this page help you?