P4 Software / activoHQ English

Developer API

REST API for developers (overview)

ActivoHQ exposes a REST API at /api/v1 so you can integrate fixed asset data with your own systems, automate bulk updates or build custom dashboards. This page covers every endpoint available in Phase 1.


API reference


Base URL

https://{tenant}.activohq.cloud/api/v1

Replace {tenant} with your subdomain (for example acme -> https://acme.activohq.cloud/api/v1). Every request is scoped to the tenant identified by the host header; there is no tenant segment in the path.


Authentication

Every request to /api/v1 must carry an API key in the X-Api-Key header.

X-Api-Key: ahq_your_key_here

How to get a key: sign in as an Administrator, open Profile -> Developer API and click Generate API key. Copy the key (it is shown once only, right after it is generated). To rotate a compromised key use Regenerate; to disable access use Revoke.

A missing or invalid key returns:

HTTP 401 Unauthorized

Company scope

Every endpoint except GET /api/v1/Companies requires a companyId query parameter. Get your company IDs from GET /api/v1/Companies.

Error Cause
400 {"error":"companyId is required."} The parameter is absent from the request.
404 {"error":"Company not found."} The ID matches no company in your tenant.

Paging

List endpoints accept skip (default 0) and take (default 50, maximum 200) and return a standard envelope:

{
  "items": [...],
  "total": 312,
  "skip": 0,
  "take": 50
}

Walk the full result set by incrementing skip by the value of take until skip >= total.


Error shape

Every error returns a non-2xx status and a small JSON body:

{ "error": "Human-readable message." }
Status Meaning
400 Validation failed, or a business rule was broken.
401 X-Api-Key missing or invalid.
404 Resource not found.

A typical integration flow

  1. Call GET /api/v1/Companies to get your companyId.
  2. Call the catalog endpoints (/Locations, /cost-centers and so on) to map codes to IDs.
  3. POST /api/v1/Assets for each new asset.
  4. PUT /api/v1/Assets/{id} to update existing ones.
  5. GET /api/v1/Assets?search=... to query the register.

Questions and support

Contact support@activohq.cloud or your ActivoHQ instance's administrator. Include the request ID (returned in the response) and the exact payload you sent.

Was this page helpful?