Loki Docs
Tools › Profile › Update budget profile

Update budget profile

update_profileChanges
What it does
Changes or deletes something you had. Your assistant can ask you to confirm first. Safe to retry: the same call twice changes nothing more.
Permission
Profile, change profile:write

What your assistant is told

Update one or more fields on the calling user's Budget profile. Sparse patch - only pass fields you want to change; omitted fields are left alone. Idempotent. Use this when the user tells you something durable about how they budget ("I switched to biweekly pay", "I want to focus on paying off debt now", "track everything from now on", "keep an eye on groceries instead of travel"). Do NOT use this to log transactions or set budget caps - those have their own tools. Listed fields accept only the values shown; a value outside a list or over a length rejects the whole call (nothing is saved) with an error naming the field. Returns the profile after the patch.

Parameters

  • primaryGoaltext, optionalsave-more | pay-off-debt | track-spending | build-net-worth | unsure
  • displayCurrencytext, optionalISO-4217 currency code, e.g. USD, EUR, GBP.
  • incomeCadencetext, optionalweekly | biweekly | monthly | irregular
  • monthlyIncomeMinorwhole number, optionalRoughly how much comes in each month after tax, in minor units of the display currency (cents for USD: 4200.00 is 420000). Only when the user tells you; pass 0 to clear it.
  • budgetingStyletext, optionalenvelope | zero-based | 50-30-20 | just-track
  • trackingScopetext, optionaleverything | expenses-only | discretionary
  • experiencetext, optionalfirst-time | some | experienced
  • savingsBallparktext, optional<1mo | 1-3mo | 3-6mo | 6mo+ | prefer-not
  • topConcernCategorytext, optionalFree text (~80 chars) - the category the user is most anxious about. At most 120 characters.
  • notestext, optionalFree text (~500 chars) - anything else the AI assistant should know. Replace the whole note when set. At most 2000 characters.
  • watchedCategoryIdslist of id, optionalUp to 3 category ids (from list_categories - a system default or one of the user's own) the user wants to watch first; the monthly summary in the app shows them first, in this order. Replaces the whole list when set; pass an empty list to stop watching any.