Skip to main content
The HoopAI Platform Sub-Accounts API gives your integration full programmatic control over every client account in your agency. Use it to provision new sub-accounts, update settings, search across your portfolio, manage contact-level custom fields and values, organise records with tags, maintain email and SMS templates, and run task searches — all over a single, versioned REST API.

Base URL

https://services.leadconnectorhq.com

Authentication

All requests must carry a signed Bearer token and the API version header.
Authorization: Bearer <access_token>
Version: 2021-07-28
Use an Agency-level access token when creating or deleting sub-accounts. Sub-account-level tokens are sufficient for reading and updating a single sub-account’s resources. See OAuth 2.0 for token generation details.

OAuth scopes

ScopeAccess
locations.readonlyRead sub-account details and settings
locations.writeCreate, update, and delete sub-accounts
locations/customFields.readonlyRead custom field definitions
locations/customFields.writeCreate, update, and delete custom fields
locations/customValues.readonlyRead stored custom values
locations/customValues.writeCreate, update, and delete custom values
locations/tags.readonlyRead tags attached to a sub-account
locations/tags.writeCreate, update, and delete tags
locations/tasks.readonlyRead tasks and recurring tasks
locations/templates.readonlyRead email and SMS templates

Quick start

Retrieve a sub-account by its ID:
curl -X GET "https://services.leadconnectorhq.com/locations/{locationId}" \
  -H "Authorization: Bearer <access_token>" \
  -H "Version: 2021-07-28" \
  -H "Accept: application/json"

Endpoints

MethodPathDescription
GET/locations/searchSearch sub-accounts within your agency
POST/locations/Create a new sub-account
GET/locations/{locationId}Get details of a sub-account by ID
PUT/locations/{locationId}Update a sub-account
DELETE/locations/{locationId}Delete a sub-account from the agency
GET/locations/{locationId}/tagsGet all tags for a sub-account
POST/locations/{locationId}/tagsCreate a tag on a sub-account
GET/locations/{locationId}/tags/{tagId}Get a specific tag by ID
PUT/locations/{locationId}/tags/{tagId}Update a tag
DELETE/locations/{locationId}/tags/{tagId}Delete a tag
POST/locations/{locationId}/tasks/searchSearch and filter tasks
GET/locations/{locationId}/recurring-tasks/{id}Get a recurring task by ID
POST/locations/{locationId}/recurring-tasksCreate a recurring task
PUT/locations/{locationId}/recurring-tasks/{id}Update a recurring task
DELETE/locations/{locationId}/recurring-tasks/{id}Delete a recurring task
GET/locations/{locationId}/customFieldsGet all custom field definitions
POST/locations/{locationId}/customFieldsCreate a custom field
GET/locations/{locationId}/customFields/{id}Get a specific custom field
PUT/locations/{locationId}/customFields/{id}Update a custom field
DELETE/locations/{locationId}/customFields/{id}Delete a custom field
POST/locations/{locationId}/customFields/uploadUpload a file to a custom field
GET/locations/{locationId}/customValuesGet all custom values
POST/locations/{locationId}/customValuesCreate a custom value
GET/locations/{locationId}/customValues/{id}Get a specific custom value
PUT/locations/{locationId}/customValues/{id}Update a custom value
DELETE/locations/{locationId}/customValues/{id}Delete a custom value
GET/locations/{locationId}/timezonesFetch available timezones
GET/locations/{locationId}/templatesGet all email and SMS templates
DELETE/locations/{locationId}/templates/{id}Delete an email or SMS template
  • OAuth 2.0 overview — Generate and refresh access tokens
  • Users API — Manage users assigned to sub-accounts
  • SaaS API — Enable, disable, and manage SaaS mode for sub-accounts
Last modified on March 4, 2026