ProjectBudget
A ceiling on what a project may consume โ money or hours โ and how often it resets.
- amountType: stringrequired
The budget ceiling as a decimal string โ an amount in the project currency when
calculation_modeisfee, a number of hours when it istime. - calculationType: string enum
_base requiredWhat counts against the budget: logged time (
billable_time,non_billable_time,billable_and_non_billable_time), billable time plus expenses (billable_time_and_expenses), or expenses alone (expenses).values- billable
_time - non
_billable _time - billable
_and _non _billable _time - billable
_time _and _expenses - expenses
- calculationType: string enum
_mode requiredWhat the budget is measured in:
feefor money,timefor hours.values- fee
- time
- currentType: object ยท ProjectBudgetCyclenullable
_cycle requiredThe cycle running today. A project that has not started yet reports a zeroed cycle over its first window, and one that has ended keeps reporting its last.
nullonly when the project has no start date.- closingType: string | null Format: date
_date requiredLast day the cycle counts, or
nullwhen the budget never resets and the project is open-ended. - consumedType: string
_amount requiredHow much of the budget this cycle has used, as a decimal string, in the same unit as the budget
amount. - consumedType: integer
_percentage requiredHow much of the budget this cycle has used, as a whole percentage. Exceeds 100 once the budget is over.
- openingType: string Format: date
_date requiredFirst day the cycle counts.
- expensesType: string enum
_calculation _base requiredWhich expenses count, when
calculation_baseincludes them:billable,non_billableorall.values- billable
- non
_billable - all
- idType: integerrequired
Unique identifier for the budget.
- overType: string enum
_budget _notification requiredWhether Bonsai alerts the project team when spending passes
over_budget_notification_threshold.values- enabled
- disabled
- overType: string
_budget _notification _threshold requiredPercentage of the budget that triggers the alert, as a decimal string.
- resetType: string enum
_frequency requiredHow often the budget starts over.
neverruns one cycle for the life of the project; the rest open a fresh cycle everyweekly,monthlyorquarterlyperiod from the project start date.values- never
- weekly
- monthly
- quarterly