Accounts
API reference for managing client accounts — list, create, update, suspend, and delete.
The Accounts API manages client records in the billing system. Use it for reseller automation, CRM sync, or custom admin dashboards.
List clients
/api/admin/client/get_listRetrieve a paginated list of client accounts.
Parameters:
| Param | Type | Default | Description |
|---|---|---|---|
page | integer | 1 | Page number |
per_page | integer | 50 | Results per page (max 100) |
status | string | all | Filter: active, suspended, cancelled |
search | string | — | Search by name, email, or company |
Example:
curl -s "https://billing.openhost.one/api/admin/client/get_list?status=active&per_page=10" \
-H "Authorization: Bearer oh_live_..."Response:
{
"result": {
"list": [
{
"id": 42,
"email": "user@example.com",
"first_name": "Jane",
"last_name": "Doe",
"company": "Acme Ltd",
"status": "active",
"created_at": "2026-03-15T10:30:00Z"
}
],
"total": 156,
"page": 1
}
}Get client
/api/admin/client/{id}Fetch a single client record by ID.
curl -s "https://billing.openhost.one/api/admin/client/42" \
-H "Authorization: Bearer oh_live_..."Create client
/api/admin/client/createCreate a new client account.
Body:
{
"email": "new@example.com",
"first_name": "John",
"last_name": "Smith",
"password": "secure-generated-password",
"company": "Smith Corp",
"currency": "ILS"
}Required fields: email, first_name, last_name, password
Notes:
- Email must not already exist in the system
- Password must meet minimum complexity (8+ chars, mixed case + number)
- A welcome email is sent automatically unless
skip_welcome: true
Update client
/api/admin/client/{id}Update client profile fields.
{
"company": "New Company Name",
"phone": "+972-50-1234567"
}Only include fields you want to change.
Suspend client
/api/admin/client/{id}/suspendSuspend a client and all their services.
{
"reason": "Non-payment"
}Suspended clients:
- Cannot log in to client area
- Hosting services are suspended (sites show maintenance page)
- Can be unsuspended without data loss
Unsuspend client
/api/admin/client/{id}/unsuspendReactivate a suspended client.
No body required. All services are restored to active state.
Delete client
/api/admin/client/{id}Permanently delete a client and all associated data.
Client services
/api/admin/client/{id}/servicesList all services (hosting accounts) belonging to a client.
Response:
{
"result": [
{
"id": 101,
"product_id": 5,
"product_title": "WP Growth",
"domain": "example.com",
"status": "active",
"billing_cycle": "monthly",
"next_due": "2026-08-15"
}
]
}Error codes
| Code | Meaning |
|---|---|
| 404 | Client not found |
| 409 | Email already exists (on create) |
| 422 | Validation error (check error.message for details) |