๐ข Clients
Clients API
Client records represent the law firms and organizations that send you work. Manage client records, billing configuration, and contact information programmatically.
List Clients
GET
/clients
Returns a paginated list of client records for your firm, sorted by name ascending.
Query Parameters
| Parameter | Type | Description |
|---|---|---|
| search | string | Full-text search against client name and contact name |
| page | integer | Page number, default 1 |
| per_page | integer | Results per page, default 50, max 100 |
Client Object Fields (list)
| Field | Type | Description |
|---|---|---|
| id | uuid | Client identifier |
| name | string | Client firm or organization name |
| primary_contact_name | string | Name of primary contact person |
| primary_contact_email | string | Primary contact email address |
| phone | string | Main phone number |
| address | object | Billing address (street, city, state, zip) |
| job_count | integer | Total jobs ever created for this client |
| outstanding_balance | integer | Outstanding invoice balance in cents (USD) |
| created_at | ISO 8601 | When the client record was created |
Example Request
bash
curl "https://api.proxiant.co/v1/clients?search=harmon" \ -H "Authorization: Bearer prx_live_xxxxxxxxxxxx"
Example Response
json
{ "data": [ { "id": "a3c4e5f6-1a2b-3c4d-5e6f-7g8h9i0j1k2l", "name": "Harmon & Keyes LLP", "primary_contact_name": "Rachel Keyes", "primary_contact_email": "rkeyes@harmonkeyes.com", "phone": "(512) 555-0192", "address": { "street": "200 West 6th Street, Suite 1800", "city": "Austin", "state": "TX", "zip": "78701" }, "job_count": 148, "outstanding_balance": 247500, // $2,475.00 "created_at": "2024-11-03T10:00:00Z" } ], "meta": { "page": 1, "per_page": 50, "total": 1 } }
Get Client
GET
/clients/:id
Returns the full client object including billing configuration.
Additional Fields (single client)
| Field | Type | Description |
|---|---|---|
| billing_config | object | Client billing settings (see below) |
| billing_config.invoice_timing | string | on_serve ยท monthly ยท on_close |
| billing_config.cod_enabled | boolean | Whether cash-on-delivery is required |
| billing_config.custom_rates | object | Per-job-type custom pricing overrides; keys are job_type slugs |
json โ billing_config example
"billing_config": { "invoice_timing": "monthly", "cod_enabled": false, "custom_rates": { "subpoena": 6500, // $65.00 "summons_complaint": 7500 // $75.00 } }
Create Client
POST
/clients
Creates a new client record. The client is immediately available for use when creating jobs.
Request Body
| Field | Type | Required | Description |
|---|---|---|---|
| name | string | required | Client firm or organization name |
| primary_contact_email | string | required | Primary contact's email address |
| primary_contact_name | string | optional | Name of primary contact person |
| phone | string | optional | Main phone number |
| address | object | optional | Billing address object |
| billing_config | object | optional | Billing configuration; uses firm defaults if omitted |
bash
curl -X POST https://api.proxiant.co/v1/clients \ -H "Authorization: Bearer prx_live_xxxxxxxxxxxx" \ -H "Content-Type: application/json" \ -d '{ "name": "Delgado Rivera & Associates", "primary_contact_email": "intake@delgado-rivera.com", "primary_contact_name": "Carmen Rivera", "phone": "(512) 555-0847", "address": { "street": "501 Congress Ave, Suite 300", "city": "Austin", "state": "TX", "zip": "78701" }, "billing_config": { "invoice_timing": "on_serve", "cod_enabled": false } }'
Update Client
PATCH
/clients/:id
Updates one or more fields on a client record. All fields are optional โ send only what you want to change.
Updatable Fields
| Field | Type | Notes |
|---|---|---|
| name | string | Update client firm name |
| primary_contact_name | string | Update primary contact person |
| primary_contact_email | string | Update primary contact email |
| phone | string | Update main phone number |
| address | object | Replaces the entire address object |
| billing_config | object | Merges with existing billing config (not a full replace) |
billing_config is merged, not replaced. To update only one billing field (e.g.,
invoice_timing), send only that field โ other billing settings are preserved.bash
curl -X PATCH https://api.proxiant.co/v1/clients/a3c4e5f6-1a2b-3c4d-5e6f-7g8h9i0j1k2l \ -H "Authorization: Bearer prx_live_xxxxxxxxxxxx" \ -H "Content-Type: application/json" \ -d '{ "primary_contact_name": "Rachel Keyes-Harmon", "billing_config": { "invoice_timing": "monthly" } }'