Partner-side CRUD on the accounts the partner owns.
Partner-side CRUD on the accounts the partner owns. Accounts are top-level tenant resources — only partners create / edit / archive them.
Prerequisites
- A bearer token in the
Authorizationheader. Any endpoint that needs no token says so on its own page. - The id of each record the call targets. Every endpoint page lists the ids it needs.
Errors
| Status | Meaning |
|---|---|
401 | The bearer token is missing, expired or invalid |
403 | The token is valid but the record sits outside your account |
422 | The request failed validation — the response names the fields |
500 | Unexpected server error |
Individual endpoints may return more; each page lists its own.
Endpoints
| Method | Endpoint | Description |
|---|---|---|
GET | List accounts | Get a paginated list of accounts (bundle_id=3) under the authenticated partner, with owner email, status, location/active-plan counts and current plan name. |
POST | Create account | Create a new account (bundle_id=3) account under the authenticated partner together with its owner user/person, links an account-level plan, sends the owner a set-password welcome email, and (when with_location=1) auto-creates one location-account + store on that plan. |
POST | Edit account | Update an existing account company row plus its owner user/person and account company_options. |
GET | Get assigned plan for account | Get the account company record plus the plan currently assigned to it (with the plan's features and review-site profile included), or plan: null when no plan is assigned. |
GET | Get account details | Get a single account with everything the account-edit form needs: account row + company_options + city/state/country, the owner (name/email/phone), and the account's current plan_id. |
GET | List accounts with inactive plans | Get a paginated list of accounts (bundle_id=3) under the authenticated partner that have NO active store-plan subscription, with owner email, cancelled-location count and last plan name. |
POST | Assign plan to an account | Assign a plan to an account and propagates it to every store under that account: existing active/expired store_plans are closed and a fresh active store_plan (running to month-end) is created per store, and the account-level company_plans link is updated/created. |
DELETE | Delete a store (soft delete) | Soft-delete a store and its paired location-account record, closes any active/expired store plans (sets status close, plan_end + cancel_subscription_at = now), and cascade-soft-deletes the store's reviews, response_reviews, review_flag, and store_review_sites. |
DELETE | Delete account (cascade + dormant if enabled) | Soft-delete an account and cascades to everything beneath it — its location-account companies, their stores, and each store's reviews/responses/flags/review-site rows; open plans are closed. |
POST | Bulk import accounts + locations (CSV upload) | Bulk-imports accounts from a single CSV — one account + one location (store) per row — designed for up to ~100K rows. |
GET | Bulk import status | Get live progress and the final outcome of a bulk account+location import (Bulk import accounts + locations (CSV upload)). |
