Users
User management and authentication within the application. Provides endpoints to get the current authenticated user's profile, verify email addresses using verification keys from email links (with token expiration handling), and resend verification emails to authenticated users. Also includes tenant-scoped user management (CRUD operations) accessed via /tenants/{tenant}/users for managing users within specific tenants.
-
GET Get current authenticated userReturns the profile information of the currently authenticated user/users/me
-
PUT Verify user's email addressVerifies a user's email address using the verification key from the email link. Returns 200 if email is successfully verified (idempotent - also retur.../users/email-verification
-
POST Resend email verification linkResends a verification email to the authenticated user's email address./users/email-verifications
-
GET List TenantUsersLists all TenantUsers for the given tenant./tenants/{tenant}/users
-
POST Create TenantUserCreates a new TenantUser for the specified tenant. An hourly or cost rate seeds the user's first rate entry; setting a cost rate requires the Cost Rat.../tenants/{tenant}/users
-
GET Get TenantUserGets a TenantUser for the specified tenant./tenants/{tenant}/users/{code}
-
PUT Update TenantUserUpdates a TenantUser for the specified tenant./tenants/{tenant}/users/{code}
-
DELETE Delete TenantUserDeletes a TenantUser for the specified tenant./tenants/{tenant}/users/{code}
-
PATCH Patch UserApplies a partial update to a user. Currently patches the time tracking fields: the working pattern (always applied — null clears it so the practice d.../tenants/{tenant}/users/{code}
-
GET List User RatesLists the user's date-effective rate entries: the current entry first, then history by start date descending. Cost rates are null without the Cost Rat.../tenants/{tenant}/users/{userCode}/rates
-
POST Change User RateChanges the user's current rates. With preserveHistory the current entry is closed the day before effectiveFrom and a new current entry begins; withou.../tenants/{tenant}/users/{userCode}/rates
-
PUT Update User RateFull replacement of one rate entry — for correcting a historical entry's rates or dates. The edited entry must not overlap the user's other entries, a.../tenants/{tenant}/users/{userCode}/rates/{rateCode}
-
DELETE Delete User RateDeletes one rate entry. Deleting the current entry leaves the user with no rate of their own, so the practice default applies to newly logged time unt.../tenants/{tenant}/users/{userCode}/rates/{rateCode}