List child accounts

Overview

Get the immediate child companies (accounts/locations) directly under the authenticated user's own company, formatted as value/label option pairs for dropdowns.

Prerequisites

  • A bearer token. Callable with Partner and Account tokens.

Base URL

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

Endpoint

GET /api/v1/account/child-accounts

Authentication

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

  • Who can call it: Partner and Account tokens.

  • Authentication. Role-agnostic account prefix: the target company is always the current user's company.

  • The endpoint resolves the children as direct one-level children only, not a recursive tree walk.

  • If the user has account assignments, results are further restricted to the ids returned.

  • The role only differs in reachable scope. A partner user sees its account/location children. An account user sees its own children. The same single query applies to both.

Rate limit

  • No rate limit.

Query parameters

  • Query: search (string, optional, max 255) — filters by account name or client account id (partial match).
  • Query: limit (integer, optional) — page size for the filtered mode; 10–50 (values below 10 are raised to 10), default 10.
  • Passing search or limit switches to a name-ordered, limited slice (for autocomplete); passing neither returns the full list.

Response

  • value (integer) — the child company id (aliased from the account's id).
  • label (string) — the child company name, suffixed with " - {client account id}" when one is set. When the child has bundle_id = 1 (a partner row) the label is suffixed with " (Partner)" instead.

Note: the OpenAPI attribute on the method advertises a client_account_id field, but the actual query select only returns value and label. client_account_id is NOT in the response.

Returns 404 with Company not found. in errors if the authenticated user has no associated company.

200 OK · 200

{
  "data": [
    { "value": 12, "label": "Acme Plumbing (Partner)" },
    { "value": 34, "label": "Acme Plumbing - North Brand" },
    { "value": 35, "label": "Acme Plumbing - South Brand" }
  ]
}

404 Company not found · 404

{
  "message": "Not Found",
  "status": "error",
  "errors": "Company not found."
}

Errors

StatusMeaning
401The bearer token is missing, expired or invalid
404Company not found
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/account/child-accounts" \
  --header 'Authorization: Bearer <bearer-token>' \
  --header 'Accept: application/json'

Did this page help you?