Budgets

Store new budget limit.

POST
https://firefly.example.com/api/v1/budgets/{id}/limits

Store a new budget limit under this budget.

Body

JSON array or key=value pairs with the necessary budget information. See the model for the exact specifications.

application/json,application/x-www-form-urlencodedBudgetLimitStore
currency_idstring

Use either currency_id or currency_code. Defaults to the user's primary currency.

Example
5
currency_codestring

Use either currency_id or currency_code. Defaults to the user's primary currency.

Example
EUR
startstring<date>required

Start date of the budget limit.

Example
2026-10-01
endstring<date>required

End date of the budget limit.

Example
2026-10-31
amountstring<amount>required
Example
123.45
notesstring | null

Some notes for this specific budget limit.

Example
Some example notes
fire_webhooksbooleantrue

Whether or not to fire the webhooks that are related to this event.

Example
true

Parameters

X-Trace-Idstring<uuid>header

Unique identifier associated with this request.

idstringrequiredpath

The ID of the budget.

Response

New budget limit stored, result in response.

Response fields application/vnd.api+json
dataBudgetLimitReadrequired
Show child attributes
typestringrequired

Immutable value

Example
budget_limits
idstringrequired
Example
2
attributesBudgetLimitPropertiesrequired
Show child attributes
created_atstring<date-time>read only
Example
2026-10-01T00:00:00+00:00
updated_atstring<date-time>read only
Example
2026-10-01T00:00:00+00:00
startstring<date-time>

Start date of the budget limit.

Example
2026-10-01T00:00:00+00:00
endstring<date-time>

End date of the budget limit.

Example
2026-10-31T23:59:59+00:00
budget_idstringread only

The budget ID of the associated budget.

Example
23
object_has_currency_settingbooleanread only

Indicates whether the object has a currency setting. If false, the object uses the administration's primary currency.

Example
true
currency_idstring

The currency ID of the currency associated with this object.

Example
5
currency_namestring

The currency name of the currency associated with this object.

Example
Euro
currency_codestring

The currency code of the currency associated with this object.

Example
EUR
currency_symbolstringread only
Example
$
currency_decimal_placesinteger<int32>read only
Example
2
primary_currency_idstringread only

The currency ID of the administration's primary currency.

Example
5
primary_currency_namestringread only

The currency name of the administration's primary currency.

Example
Euro
primary_currency_codestringread only

The currency code of the administration's primary currency.

Example
EUR
primary_currency_symbolstringread only

The currency symbol of the administration's primary currency.

Example
$
primary_currency_decimal_placesinteger<int32>read only

The currency decimal places of the administration's primary currency.

Example
2
amountstring<amount>
Example
123.45
pc_amountstring<amount> | nullread only

The amount of this budget limit in the user's primary currency, if the original amount is in a different currency.

Example
123.45
periodstring | nullread only

Period of the budget limit. Only used when auto-generated by auto-budget.

Example
monthly

Amount(s) spent in the currencies in the database for this budget limit.

Show child attributes
currency_idstring
Example
5
currency_codestring
Example
USD
currency_symbolstring
Example
$
currency_decimal_placesinteger<int32>

Number of decimals supported by the currency

Example
2
sumstring<amount>

The amount earned, spent or transferred.

Example
123.45

Amount(s) spent in the primary currency in the database for this budget limit.

Show child attributes
currency_idstring
Example
5
currency_codestring
Example
USD
currency_symbolstring
Example
$
currency_decimal_placesinteger<int32>

Number of decimals supported by the currency

Example
2
sumstring<amount>

The amount earned, spent or transferred.

Example
123.45
notesstring | null

Some notes for this specific budget limit.

Example
Some example notes
400Bad RequestBadRequestResponse

Bad request

Response fields application/json
messagestring
Example
Bad Request
exceptionstring
Example
BadRequestHttpException

Unauthenticated

Response fields application/json
messagestring
Example
Unauthenticated
exceptionstring
Example
AuthenticationException
404Not FoundNotFoundResponse

Page not found

Response fields application/json
messagestring
Example
Resource not found
exceptionstring
Example
NotFoundHttpException
422Unprocessable EntityValidationErrorResponse

Validation error. The body will have the exact details.

Response fields application/json
messagestring
Example
The given data was invalid.
errorsobject
Show child attributes
emailArray<string>
forceArray<string>
blockedArray<string>
fieldArray<string>
roleArray<string>
blocked_codeArray<string>
nameArray<string>
typeArray<string>
ibanArray<string>
startArray<string>
endArray<string>
dateArray<string>
500Internal Server ErrorInternalExceptionResponse

Internal exception

Response fields application/json
messagestring
Example
Internal Exception
exceptionstring
Example
InternalException

Authorization

firefly_iii_authoauth2

OAuth2 authorization code flow. Create a client on your installation's /profile page; it authorizes at /oauth/authorize and issues tokens at /oauth/token there. The URLs below are the demo site's. How to use the API walks through it.

local_bearer_authhttp (bearer)

A Personal Access Token, sent as a bearer token. Create one on your installation under Options > Profile > OAuth > Personal Access Tokens.