Skip to main content
POST
Create budget

Authorizations

X-API-Key
string
header
required

Owner-typed API key (ORGANIZATION, PERSON, VALUE_UNIT). Manage org-scoped lifecycle with /v1/public-api-keys; cross-org governance is restricted to /v1/sys/public-api-keys.

Body

application/json

Create payload for a budget. Resolve targetId via GET /v1/public/value-units, /v1/public/organizational-units or /v1/public/teams. Resolve currencyUnitId via GET /v1/public/units.

targetId
string
required

Id of the target (value unit, organizational unit or team) the budget applies to.

Maximum string length: 100
Pattern: \S
Example:

"6b9a8462-e58f-4697-a725-f55bb86e3b2d"

targetType
enum<string>
required

Type of the target. One of VALUEUNIT, ORGANIZATIONALUNIT, TEAM.

Available options:
VALUEUNIT,
ORGANIZATIONALUNIT,
TEAM
Example:

"VALUEUNIT"

periodStart
string<date>
required

Budget period start (inclusive).

Example:

"2026-01-01"

periodEnd
string<date>
required

Budget period end (inclusive).

Example:

"2026-12-31"

budgetAmount
number
required

Budget amount in the budget currency.

Required range: x >= 0
Example:

250000

currencyUnitId
string
required

Id of the currency unit. Resolve via GET /v1/public/units.

Maximum string length: 100
Pattern: \S
Example:

"7c9e6679-7425-40de-944b-e07fc1f90ae7"

description
string

Optional budget description.

Maximum string length: 500
Example:

"Q1 platform budget"

externalId
string

Optional external system identifier. Must be unique within the organization.

Maximum string length: 255
Example:

"BUDGET_Q1_2026"

Response

Budget created

id
string
targetId
string
targetType
enum<string>
Available options:
VALUEUNIT,
ORGANIZATIONALUNIT,
TEAM
periodStart
string<date>
Example:

"2022-03-10"

periodEnd
string<date>
Example:

"2022-03-10"

budgetAmount
number
currencyUnitId
string
description
string
externalId
string
spentAmount
number
remainingAmount
number
spentPercentage
number<double>
unvaluedMinutes
integer<int64>