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
- A Partner token. See Authentication.
Base URL
| Environment | URL |
|---|---|
| Production | https://production-api.shoutaboutus.com |
| Development | https://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
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
limit | query | integer | No | Page size, 10 to 100. Default 10. Values below 10 are raised to 10; above 100 returns 422. |
page | query | integer | No | Page number. Default 1. |
Request body
None.
Request payload
None.
Response body
The payload is inside data, as a page of results.
| Field | Type | Description |
|---|---|---|
current_page | integer | The page number. |
data | array | The accounts on this page. |
data[].id | integer | The account's id. |
data[].company_name | string | The account's name. |
data[].client_account_id | string or null | Your own id for the account. |
data[].email | string or null | The account owner's email. |
data[].store_ids | string or null | The ids of the account's locations, comma-separated (e.g. "3007,3008"), or null when it has none. |
data[].total_cancelled_location | integer | The number of the account's locations. None of them is on an active plan. |
data[].plan_name | string or null | The account's last plan, or null. |
first_page_url | string | URL of the first page. |
from | integer or null | Position of the first result on this page. |
last_page | integer | The last page number. |
last_page_url | string | URL of the last page. |
links | array | Page links, each with url, label, page and active. |
next_page_url | string or null | URL of the next page, or null. |
path | string | The endpoint URL. |
per_page | integer | The page size. |
prev_page_url | string or null | URL of the previous page, or null. |
to | integer or null | Position of the last result on this page. |
total | integer | The 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."]
}
}| Status | Meaning |
|---|---|
200 | The accounts without an active plan. |
401 | The token is missing, expired or invalid. |
403 | The token isn't a Partner token. |
422 | limit is above 100, or a parameter has the wrong type. |
500 | Unexpected 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'Updated 17 days ago
Did this page help you?
