Get a project
Header Parameters
Query Parameters
Comma-separated allow-list of top-level fields to return, e.g. ?fields=id,name. Narrows the response only; it cannot widen it, and ?expand= does nothing on this API.
Comma-separated list of top-level fields to leave out, e.g. ?omit=children.
Path Parameters
Company ID. Must be one of the IDs returned by GET /api/v2/companies/.
Row id. A row belonging to another company is 404 on every verb, never 403.
Response
The row. Soft-deleted rows are returned here too, with deleted set.
Response Attributes
A active, C closed.
AC Show child attributes
Show child attributes
Show child attributes
Read-only. Maintained through the departments themselves, not here.
Show child attributes
Read-only. The full delivery addresses linked to the project.
Show child attributes
USE_PURCHASE_REQUEST_WORKFLOWSSIMPLEMEDIUMEXTENDEDDecimal string, e.g. "1250.00".
ISO 4217 code, inherited from the company.
The project's budget as stored. amount follows totalProjectBudget. pendingBudget is computed by Hivebuy from open purchase requests and remainingBudget is always amount minus used minus pending. usedBudget is computed by Hivebuy from orders and invoices, or, while useExternalBudget is true, the figure the ERP last pushed (see BudgetWrite). This is the read shape; the write shape is BudgetWrite.
The budget itself.
ISO 4217 code. The company currency unless a write set another one.
Spent. Hivebuy's figure from orders and invoices, or the ERP's figure while useExternalBudget is true.
Committed in open purchase requests, not yet spent. Always computed by Hivebuy.
amount minus used minus pending. Always derived.
true while an external system (the ERP) owns usedBudget. Set when an API key writes usedBudget, cleared by releaseExternalBudget.
When the ERP last wrote usedBudget. null while Hivebuy computes the used figure itself.
When the row was created.
When the row itself last changed.
null on a live row; the timestamp of the soft delete otherwise. Read-only everywhere.
Missing, invalid, or expired API key, or a session credential was used instead of an API key.
Response Attributes
validationErrorclientErrorserverError Show child attributes
Authenticated but not entitled: the key's user is not an active member of this company, the External API feature (or the resource's own feature) is not enabled for it, the key lacks the scope this verb needs, or a browser session was used.
Response Attributes
validationErrorclientErrorserverError Show child attributes
No such row for this company, including a row that belongs to another company, and a soft-deleted row you tried to write to. The API does not confirm whether the id exists elsewhere.
Response Attributes
validationErrorclientErrorserverError Show child attributes
Rate limit exceeded (60 requests per minute per API key). Retry after the number of seconds given in the message.
Response Attributes
validationErrorclientErrorserverError