Skip to content

Create a budget

POST
/api/v1/money/budgets
curl --request POST \
--url https://example.com/api/v1/money/budgets \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{ "currency": "example", "name": "example" }'

Create a budget for the caller. The request sets its name and supported currency. The server creates the budget folder, Budget.md, and Accounts.md, then returns the new budget. Route: /api/v1/money/budgets. Inputs: . Do not automatically replay this operation after an uncertain result.

Media typeapplication/json

Create a budget: Money/<name>/ with Budget.md and Accounts.md.

object
currency
required

Budget currency, ISO 4217 (for example EUR).

string
name
required

Budget name; also the folder name.

string
Examplegenerated
{
"currency": "example",
"name": "example"
}

Created Money// with Budget.md and Accounts.md

Media typeapplication/json

One budget folder in the User’s Money/ folder.

object
currency
required

Budget currency, ISO 4217.

string
folder
required

Folder name under Money/.

string
id
required

Stable budget ID (budget-id in the frontmatter).

string
name
required

Display name (the # title of Budget.md).

string
problem

Why the files cannot be posted, when they are broken.

string | null
scale
required

Decimal places of currency.

integer format: int32
Examplegenerated
{
"currency": "example",
"folder": "example",
"id": "example",
"name": "example",
"problem": "example",
"scale": 1
}
Media typeapplication/json

The standard API error response: { "error": { ... } }.

object
error
required

Error details.

object
code
required

Stable machine-readable code.

string
Allowed values: bad_request unauthorized forbidden not_found conflict name_conflict_case name_too_long push_endpoint_rejected too_many_requests internal service_unavailable
details
One of:

Optional field or operation details.

object
key
additional properties
string
message
required

Safe text for logs or a user-facing error message.

string
Example
{
"error": {
"code": "bad_request"
}
}
Media typeapplication/json

The standard API error response: { "error": { ... } }.

object
error
required

Error details.

object
code
required

Stable machine-readable code.

string
Allowed values: bad_request unauthorized forbidden not_found conflict name_conflict_case name_too_long push_endpoint_rejected too_many_requests internal service_unavailable
details
One of:

Optional field or operation details.

object
key
additional properties
string
message
required

Safe text for logs or a user-facing error message.

string
Example
{
"error": {
"code": "bad_request"
}
}
Media typeapplication/json

The standard API error response: { "error": { ... } }.

object
error
required

Error details.

object
code
required

Stable machine-readable code.

string
Allowed values: bad_request unauthorized forbidden not_found conflict name_conflict_case name_too_long push_endpoint_rejected too_many_requests internal service_unavailable
details
One of:

Optional field or operation details.

object
key
additional properties
string
message
required

Safe text for logs or a user-facing error message.

string
Example
{
"error": {
"code": "bad_request"
}
}