Skip to main content

Overview

Once your agency has completed the agency-level GoHighLevel OAuth (installing the Assistable marketplace app), you can provision a sub-account for any Location your agency has installed — directly over the API, with no per-location manual OAuth step. This is the automation path for onboarding many clients at once.
The agency OAuth install is the only prerequisite. Assistable mints a location-level token from your agency install on demand, so individual Locations do not each need to authorize separately.

Provision from a Location ID

POST /v3/subaccounts with a location_id creates a GoHighLevel-connected sub-account for that Location and hydrates its details (name, address, timezone, contact info) from GoHighLevel. Needs a key with the subaccounts:create scope.
POST /v3/subaccounts takes exactly one of location_id (provision from GoHighLevel, shown here) or name (create a native Assistable Direct sub-account). Supplying both — or neither — returns 400 validation_error.

Ownership & idempotency

  • Agency ownership is enforced. Assistable provisions a Location only if it is installed under your agency. A Location that isn’t returns 404 location_not_found.
  • Idempotent per Location. Re-calling with a location_id your workspace has already provisioned returns the existing sub-account (200) instead of creating a duplicate — safe to retry.
  • A Location already provisioned in another workspace returns 409 location_conflict.

Errors

Sub-Account Management

Manage provisioned sub-accounts

Assistable Direct Provisioning

Create native (GHL-free) sub-accounts