#[non_exhaustive]pub struct User {Show 39 fields
pub id: String,
pub username: String,
pub display_name: String,
pub full_name: Option<String>,
pub bio: Option<String>,
pub email: Option<String>,
pub public_email: Option<String>,
pub photo: Option<String>,
pub timezone: String,
pub website: Option<String>,
pub human_readable_website: Option<String>,
pub plan: Option<String>,
pub has_premium_features: bool,
pub is_email_public: bool,
pub is_photo_public: bool,
pub is_email_confirmed: bool,
pub is_hireable: bool,
pub logged_time_public: bool,
pub languages_used_public: bool,
pub editors_used_public: bool,
pub categories_used_public: bool,
pub os_used_public: bool,
pub last_heartbeat_at: Option<String>,
pub last_plugin: Option<String>,
pub last_plugin_name: Option<String>,
pub last_project: Option<String>,
pub last_branch: Option<String>,
pub city: Option<City>,
pub github_username: Option<String>,
pub twitter_username: Option<String>,
pub linkedin_username: Option<String>,
pub wonderfuldev_username: Option<String>,
pub location: Option<String>,
pub profile_url: Option<String>,
pub writes_only: bool,
pub timeout: Option<u32>,
pub time_format_24hr: Option<bool>,
pub created_at: String,
pub modified_at: Option<String>,
}Expand description
A WakaTime user account.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.id: StringUnique user identifier (UUID).
username: StringThe user’s login handle.
display_name: StringHuman-readable display name (full name or @username).
full_name: Option<String>Full legal name (may be None if not set).
bio: Option<String>Optional user-defined bio.
email: Option<String>Email address (only present when the authenticated user requests their
own profile; requires email scope).
public_email: Option<String>Public-facing email (distinct from the account email).
photo: Option<String>URL of the user’s avatar image.
timezone: StringIANA timezone string (e.g. "America/New_York").
website: Option<String>Personal website URL.
human_readable_website: Option<String>Human-readable website URL (without protocol prefix).
plan: Option<String>Subscription plan (e.g. "free", "premium").
Whether the user has access to premium features.
is_email_public: boolWhether the user’s email address is publicly visible on leaderboards.
is_photo_public: boolWhether the user’s avatar is publicly visible on leaderboards.
is_email_confirmed: boolWhether the user’s email address has been verified.
is_hireable: boolWhether the user is open to work (shows “hireable” badge on profile).
logged_time_public: boolWhether total coding time is visible on the public leaderboard.
languages_used_public: boolWhether language usage is visible on the public profile.
editors_used_public: boolWhether editor usage is visible on the public profile.
categories_used_public: boolWhether category usage is visible on the public profile.
os_used_public: boolWhether operating system usage is visible on the public profile.
last_heartbeat_at: Option<String>ISO 8601 timestamp of the most recently received heartbeat.
last_plugin: Option<String>User-agent string from the last plugin used.
last_plugin_name: Option<String>Editor name extracted from the last plugin user-agent.
last_project: Option<String>Name of the last project coded in.
last_branch: Option<String>Name of the last branch coded in.
city: Option<City>Geographic location associated with the account.
github_username: Option<String>GitHub username.
twitter_username: Option<String>Twitter/X handle.
linkedin_username: Option<String>The user’s LinkedIn username.
wonderfuldev_username: Option<String>wonderful.dev username.
location: Option<String>Geographic location string (legacy / undocumented).
profile_url: Option<String>Absolute URL of the user’s public profile (undocumented).
writes_only: boolWhether this account is in write-only mode (undocumented).
timeout: Option<u32>Heartbeat timeout in minutes (undocumented on this endpoint).
time_format_24hr: Option<bool>Whether the user prefers 24-hour time format (undocumented).
created_at: StringISO 8601 timestamp when the account was created.
modified_at: Option<String>ISO 8601 timestamp when the account was last modified.