HaloPSA REST API v2 — Swagger Spec
Live OpenAPI 3.0.1 spec for the HaloPSA REST API v2. 952 paths, 760 schemas. Use this as the authoritative field-level reference when the endpoint pages in this book don't carry enough detail.
Spec Location
| Path | |
|---|---|
| Live URL | https://dtcdev.halopsa.com/api/swagger/v2/swagger.json |
| Repo snapshot | docs/halo/swagger.json in dtc-inc/client-portal (committed on branch feature/deferred-revenue-modes, commit 87c4d3b; lands on development after PR merge) |
The URL is tenant-agnostic — replace the host for any Halo instance (e.g. https://dtc.halopsa.com/api/swagger/v2/swagger.json for production).
Refreshing the Snapshot
curl -sS https://dtcdev.halopsa.com/api/swagger/v2/swagger.json | \
python -m json.tool > docs/halo/swagger.json
Run from the repo root. Commit the result to keep the snapshot current. The file is ~7 MB pretty-printed; do not paste it into KB pages.
Deferred Revenue — GET /api/Control Fields
GET /api/Control returns the tenant-level Control object. The fields relevant to deferred-revenue and down-payment behaviour:
| Field | Type | Notes |
|---|---|---|
enable_deferred_revenue |
boolean | Master DR toggle for the tenant |
enable_downpayment_invoices |
boolean | Down-payment invoice feature toggle |
deferred_revenue_client |
integer | Client ID used for DR accounting entries |
deferred_revenue_code |
string | Accounting code for DR entries |
deferred_revenue_prepay_item_name |
string | Item name used for prepay DR line items |
downpayment_item |
integer | Halo's configured down-payment line item ID (DTC dev: item 3) |
These fields are not documented in the HaloPSA UI. The swagger spec is the only reliable source for them.
Related
- System Config Endpoints —
GET /Controlentry in this book - API Endpoints Reference — Portal-scoped endpoint list (book 1792)
- API Testing & curl Patterns at DTC — Auth setup and curl examples