Docyrus Account Settings
Two related settings surfaces, both under docyrus account:
- User profile (
account user-profile) — the signed-in user's own personal details. Self-service: no admin rights needed, and it always acts on the current user (there is no id/selector). - Tenant preferences (
account tenant-preferences) — the whole workspace's regional & formatting defaults (language, dates, numbers, currency, working hours). Anyone can read them; updating requires tenant-admin.
Both are read + update only — there is no create or delete (each record exists for the lifetime of the user / workspace).
For the complete field list (every flag, accepted values, and the snake_case key
to use inside --data) read references/fields.md.
Workflow
-
Confirm auth and the right workspace — preferences are workspace-wide, so make sure the active tenant is the intended one.
docyrus auth who --jsonNo session → stop and ask the user to run
docyrus auth login. -
Read current values first, so an update only changes what's intended.
docyrus account user-profile get --json docyrus account tenant-preferences get --json -
Update only the fields that change. Updates are partial — unsent fields keep their current value. An update with no fields is rejected.
-
Re-read to confirm the values landed.
Commands
Add --json for machine-readable output. Run docyrus account <group> <cmd> --help
for the live flag list.
User profile
docyrus account user-profile get --json
docyrus account user-profile update \
--firstname "Jane" \
--lastname "Doe" \
--mobile "+1 555 0100" \
--dateOfBirth "1990-04-15" \
--timeZone "America/New_York" \
--language "en_US" \
--json
Editable fields: --firstname, --lastname, --mobile, --dateOfBirth
(YYYY-MM-DD), --gender, --timeZone, --language. These are the only things a
user can change about themselves — email, photo, job title, roles, and
organization unit are managed elsewhere (admin tools), so they are not editable
here even though get may show them.
Tenant preferences
docyrus account tenant-preferences get --json
# Regional
docyrus account tenant-preferences update \
--language "en_US" --locale "en_GB" --timeZone "Europe/Istanbul" \
--startWeekOn 1 --fiscalYear 1 --json
# Date / time format strings (PHP-style, e.g. Y-m-d, d.m.Y H:i)
docyrus account tenant-preferences update \
--dateFormat "Y-m-d" --timeFormat "H:i" --dateTimeFormat "Y-m-d H:i" --json
# Working hours
docyrus account tenant-preferences update \
--businessHoursBegin "09:00:00" --businessHoursEnd "17:00:00" \
--dailyWorkingHours 28800 --weeklyWorkingCapacity 40 --json
# Currency & numbers
docyrus account tenant-preferences update \
--baseCurrency "EUR" --currencyAbbrPosition AFTER \
--decimalPrecision 2 --decimalSeparator "," --thousandSeparator "." --json
Bulk / scripted payloads
Both update commands also accept --data '<json>' / --from-file <file.json>
(JSON only). Convenience flags win over --data keys when both set the same
field. Inside --data, use the snake_case keys (e.g. time_zone,
date_format, business_hours_begin, currency_abbr_position,
decimal_precision) — the full mapping is in
references/fields.md.
docyrus account tenant-preferences update \
--from-file prefs.json --json
docyrus account user-profile update \
--data '{"firstname":"Jane","time_zone":"America/New_York"}' --json
Key rules
- Only
getandupdate— no create, no delete. An empty update (no fields resolved) is rejected before any request is sent. - Profile is self-only.
account user-profilealways targets the signed-in user; there is no selector and no way to edit another user here. - Preference updates need tenant-admin. A non-admin caller gets a permission error from the server.
- Time units matter:
--businessHoursBegin/--businessHoursEndareHH:mm:ss(end must be after begin);--dailyWorkingHoursis in seconds (8h = 28800);--weeklyWorkingCapacityis in hours. - Value ranges:
--startWeekOnis 0 (Sunday) – 6 (Saturday);--fiscalYearis the start month1–12;--decimalPrecisionis 0–8;--decimalSeparator/--thousandSeparatorare single characters;--currencyAbbrPositionisBEFOREorAFTER. - Reading preferences returns just the preferences record with camelCase keys
that line up with the flag names (e.g.
timeZone,dateFormat,currencyAbbrPosition). - Clearing a nullable field (
longDateFormat,timeRounding): passnullvia--data— an empty flag value is ignored, not cleared.
Related skills
- docyrus-cli-app — full
docyrusCLI command index and global conventions (--json, auth, environments). - docyrus-tenant-brand-management — tenant brand identity (
account brands). - docyrus-platform — Docyrus platform concepts and building blocks.