Loki Docs
Tools › Body measurements › Update a body measurement

Update a body measurement

update_body_measurementChanges
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
Body measurements, change measurements:write

What your assistant is told

Replace the contents of an existing measurement entry (full overwrite — the supplied circumferences replace the previous set; pass an empty array to clear them, and an omitted weightKg / bodyFatPercent clears that number). The entry's date and time are the exception: omit takenAt and the entry stays where it is. Use this to fix a typo or add measurements taken later from the same session. It cannot edit a weigh-in imported from the user's health store (Apple Health / Health Connect): Loki only holds a copy, so the next import would overwrite any change with the device's own value. An imported entry can only be deleted (delete_body_measurement) — to correct the number, the user edits it where it was recorded. list_body_measurements reports each entry's source, so plan edits on entries whose source is Loki. An entry you are not allowed to see — one imported while the assistant switch for imported data is off — reports as not found, exactly like an id that does not exist.

Parameters

  • idid, requiredMeasurement UUID from list_body_measurements.
  • weightKgnumber, optionalBodyweight in kilograms. Omit to clear.
  • bodyFatPercentnumber, optionalBody-fat percentage as a plain percent, 2-70, one decimal (12.5 means 12.5%). Never a fraction and never converted — it reads the same whatever units the user prefers. Only log what the user measured or was told; never estimate it from weight or tape readings. Omit to clear.
  • circumferenceslist of object, optionalTape readings, in centimetres, per site. See log_body_measurement for allowed site names. Pass an empty array to clear.
  • notestext, optionalOptional free-text note.
  • takenAtdate and time, optionalOptional ISO 8601 datetime the reading was taken. Omit to keep the entry's current date and time. Passing a different value MOVES the entry to that moment — only do that when the user says the reading was taken at another time.
  • clientHandletext, optionalOptional client_handle from list_clients to run this tool against a coached client's data instead of your own. Omit (or pass null) for your own data — the legacy default.