pub struct Goal {Show 31 fields
pub average_status: Option<String>,
pub chart_data: Option<Vec<GoalChartEntry>>,
pub created_at: String,
pub cumulative_status: Option<String>,
pub custom_title: Option<String>,
pub delta: String,
pub editors: Vec<String>,
pub id: String,
pub ignore_days: Vec<String>,
pub ignore_zero_days: bool,
pub improve_by_percent: Option<f64>,
pub is_current_user_owner: bool,
pub is_enabled: bool,
pub is_inverse: bool,
pub is_snoozed: bool,
pub is_tweeting: bool,
pub languages: Vec<String>,
pub modified_at: Option<String>,
pub owner: Option<GoalOwner>,
pub projects: Vec<String>,
pub range_text: Option<String>,
pub range_status: Option<String>,
pub range_status_reason: Option<String>,
pub seconds: f64,
pub shared_with: Vec<GoalSharedWith>,
pub snooze_until: Option<String>,
pub status: String,
pub status_percent_calculated: u32,
pub subscribers: Vec<GoalSubscriber>,
pub title: String,
pub goal_type: String,
}Expand description
A single coding goal.
Fields§
§average_status: Option<String>"fail" when failure days outnumber success days, otherwise "success".
chart_data: Option<Vec<GoalChartEntry>>Per-period chart data (populated when fetching goal details).
created_at: StringISO 8601 timestamp when the goal was created.
cumulative_status: Option<String>Overall cumulative status across all delta periods
("success", "fail", or "ignored").
custom_title: Option<String>Optional user-defined title that overrides the generated title.
delta: StringGoal period (e.g. "day", "week").
editors: Vec<String>Editors this goal is restricted to (empty = all editors).
id: StringUnique goal identifier (UUID).
ignore_days: Vec<String>Days of the week to ignore (e.g. ["saturday", "sunday"]).
ignore_zero_days: boolWhether days with zero activity are excluded from streak calculations.
improve_by_percent: Option<f64>Target improvement percentage over baseline.
is_current_user_owner: boolWhether the currently authenticated user owns this goal.
is_enabled: boolWhether the goal is active.
is_inverse: boolWhether passing means staying below the target.
is_snoozed: boolWhether the goal is temporarily snoozed.
is_tweeting: boolWhether achievements are tweeted automatically.
languages: Vec<String>Languages this goal is restricted to (empty = all languages).
modified_at: Option<String>ISO 8601 timestamp when the goal was last modified (optional).
owner: Option<GoalOwner>Owner of this goal.
projects: Vec<String>Projects this goal is restricted to (empty = all projects).
range_text: Option<String>Human-readable range description covering all delta periods.
range_status: Option<String>Status for the most recent period ("success", "fail", etc.).
Present at the top level on list responses.
range_status_reason: Option<String>Human-readable explanation of the most recent period’s status.
seconds: f64Target coding seconds per period.
Users this goal has been shared with.
snooze_until: Option<String>ISO 8601 timestamp when email notifications will be re-enabled.
status: StringOverall goal status (e.g. "success", "fail", "ignored", "pending").
status_percent_calculated: u32Percent calculated (0–100) for goals that are pre-calculated in the background.
subscribers: Vec<GoalSubscriber>Goal subscribers (users who receive progress emails).
title: StringHuman-readable goal title.
goal_type: StringGoal type (e.g. "coding").