User-settings
GET Retrieve user settings
https://focus.toggl.com/api/users/me/settings
- cURL
- Go
- Ruby
- JavaScript
- Python
- Rust
curl https://focus.toggl.com/api/users/me/settings \
-H "Content-Type: application/json" \
-u <email>:<password>
req, err := http.NewRequest(http.MethodGet,
"https://focus.toggl.com/api/users/me/settings")
if err != nil {
print(err)
}
req.Header.Set("Content-Type", "application/json; charset=utf-8")
req.SetBasicAuth("<email>", "<password>")
client := &http.Client{}
resp, err := client.Do(req)
if err != nil {
print(err)
}
defer resp.Body.Close()
body, err := ioutil.ReadAll(resp.Body)
if err != nil {
print(err)
}
fmt.Print(string(body))
require 'net/http'
require 'uri'
require 'json'
uri = URI('https://focus.toggl.com/api/users/me/settings')
http = Net::HTTP.new(uri.host, uri.port)
req = Net::HTTP::Get.new(uri.path)
req['Content-Type'] = "application/json"
request.basic_auth '<email>', '<password>'
res = http.request(req)
puts JSON.parse(res.body)
fetch("https://focus.toggl.com/api/users/me/settings", {
method: "GET",
headers: {
"Content-Type": "application/json",
"Authorization": `Basic ${base64.encode(<email>:<password>)}`
},
})
.then((resp) => resp.json())
.then((json) => {
console.log(json);
})
.catch(err => console.error(err));
import requests
from base64 import b64encode
data = requests.get('https://focus.toggl.com/api/users/me/settings', headers={'content-type': 'application/json', 'Authorization' : 'Basic %s' % b64encode(b"<email>:<password>").decode("ascii")})
print(data.json())
extern crate tokio;
extern crate serde_json;
use reqwest::{Client};
use reqwest::header::{CONTENT_TYPE};
#[tokio::main]
async fn main() -> Result<(), reqwest::Error> {
let client = Client::new().basic_auth("<email>", "<password>");
let json = client.request(Method::GET, "https://focus.toggl.com/api/users/me/settings".to_string())
.header(CONTENT_TYPE, "application/json")
.send()
.await?
.json()
.await?;
println!("{:#?}", json);
Ok(())
}
Response
200
| Name | Type | Description |
|---|---|---|
| attachments_display_mode | string | - |
| autocomplete_task_with_time_block | boolean | - |
| autolog_time | boolean | Deprecated: gates auto-log only for the manual task-completion path (updateTaskAndRelated). Per-calendar DefaultAction governs auto-log in the calendar-sync path. |
| calendar_future_defaults_to_plan | boolean | CalendarFutureDefaultsToPlan, when enabled, makes the unified-view event popover open future slots in Plan time (past slots stay Log time). When disabled (default) the unified view always opens in Log time. Does not affect the split view. |
| calendar_project_suggestion_fallback | boolean | CalendarProjectSuggestionFallback enables automatic project suggestion for newly-created calendar tasks. |
| calendar_range_type | string | - |
| calendar_show_calendar_events | boolean | - |
| calendar_show_completed_tasks | boolean | - |
| calendar_show_tasks_list | boolean | - |
| calendar_split_view_columns | string | - |
| calendar_task_creation_behavior | string | CalendarTaskCreationBehavior controls how calendar events map to tasks during sync. |
| current_workspace_id | integer | - |
| date_format | string | - |
| default_page | string | - |
| duration_format | string | - |
| first_interaction | boolean | FirstInteraction determines the settings update was the first user interaction done. This is what is used to dispatch the Focus product sign-up event. This is not a setting that can be managed by FE. This is purely an internal BE setting. |
| first_interaction_date | string | FirstInteractionDate records when the user first interacted with Focus. Set automatically by the BE alongside first_interaction. |
| focus_mode_count_up | boolean | - |
| goal_reminder_time | string | GoalReminderTime is the local clock time the daily goal reminder is sent, formatted HH:MM (24h). |
| goal_reminders_enabled | boolean | GoalRemindersEnabled opts the user into daily goal-reminder push notifications. Defaults to true. |
| has_reached_task_threshold | boolean | HasReachedTaskThreshold indicates the user has created 5+ tasks at some point. |
| import_data_banner_dismissed | boolean | - |
| language_code | string | - |
| new_users_trial_dismissed | boolean | - |
| onboarding_calendar_step_at | string | OnboardingCalendarStepAt is the ISO 8601 timestamp when the user left the calendar step (submitted or skipped) |
| onboarding_checklist_dismissed | boolean | - |
| onboarding_completed_at | string | OnboardingCompletedAt is the ISO 8601 timestamp when the user finished the onboarding flow |
| onboarding_flow_dismissed | boolean | - |
| onboarding_multi_day_task_created | boolean | - |
| onboarding_started_at | string | OnboardingStartedAt is the ISO 8601 timestamp when the user first saw the onboarding page |
| onboarding_task_dragged | boolean | - |
| onboarding_tasks_step_at | string | OnboardingTasksStepAt is the ISO 8601 timestamp when the user left the tasks step (submitted or skipped) |
| onboarding_variant_selected | string | - |
| plan_tour_dismissed | boolean | PlanTourDismissed indicates whether the user has dismissed the plan onboarding tour |
| platform_nudges | object | PlatformNudges maps a platform-discoverability nudge id to the ISO 8601 timestamp it was last dismissed. Keys are opaque to the backend (nudge ids are owned by the web app), so new nudges need no backend change. Absent/empty means nothing has been dismissed. |
| pomodoro_mode_auto_start_break | boolean | - |
| pomodoro_mode_break_duration_mins | integer | - |
| pomodoro_mode_session_duration_mins | integer | - |
| pomodoro_mode_sound_enabled | boolean | - |
| scheduler_nudge_dismissed | boolean | - |
| seats_billing_change_acknowledged_at | string | SeatsBillingChangeAcknowledgedAt is the ISO 8601 timestamp when the user dismissed the seats-billing change announcement modal. |
| shortcuts_enabled | boolean | - |
| show_goals_panel | boolean | ShowGoalsPanel controls whether the Goals panel is visible on the Timer page. Defaults to true. |
| show_google_calendar_events | boolean | - |
| start_week_on | integer | StartWeekOn determines which day the week starts on: 0 for Sunday, 1 for Monday |
| switch_to_focus_dismissed | boolean | - |
| sync_external_calendar | string | SyncExternalCalendar can either be 'never', 'always' or 'ask' |
| theme | string | - |
| time_block_color | string | - |
| time_format | string | - |
| time_tracking_mode | string | - |
| time_tracking_mode_duration_mins | integer | - |
| time_tracking_mode_enabled | boolean | - |
| time_tracking_mode_fullscreen | boolean | - |
| timezone | string | Timezone is the IANA timezone name (e.g. "America/New_York") used to localise time-sensitive features such as goal current-period detection. Mirrors the timezone stored in Toggl Track. |
| tooltip_onboarding_dismissed | boolean | TooltipOnboardingDismissed indicates whether the user has dismissed the tooltip onboarding tour |
| welcome_modal_dismissed | boolean | WelcomeModalDismissed indicates whether the user has dismissed the welcome modal |
| whats_new_may_2026_dismissed | boolean | WhatsNewMay2026Dismissed indicates whether the user has dismissed the May 2026 "What's new" tour |
| whats_new_tasks_tour_dismissed | boolean | WhatsNewTasksTourDismissed indicates whether the user has dismissed the tasks "What's new" tour |
platform_nudges
400
Invalid request
500
Internal Server Error
PATCH Partial update user settings
https://focus.toggl.com/api/users/me/settings
Partial update user settings.
- cURL
- Go
- Ruby
- JavaScript
- Python
- Rust
curl -X PATCH https://focus.toggl.com/api/users/me/settings \
-H "Content-Type: application/json" \
-d '\{"attachments_display_mode":"string","autocomplete_task_with_time_block":"boolean","autolog_time":"boolean","calendar_future_defaults_to_plan":"boolean","calendar_project_suggestion_fallback":"boolean","calendar_range_type":"string","calendar_show_calendar_events":"boolean","calendar_show_completed_tasks":"boolean","calendar_show_tasks_list":"boolean","calendar_split_view_columns":"string","calendar_task_creation_behavior":"string","current_workspace_id":"integer","date_format":"string","default_page":"string","duration_format":"string","focus_mode_count_up":"boolean","goal_reminder_time":"string","goal_reminders_enabled":"boolean","has_reached_task_threshold":"boolean","import_data_banner_dismissed":"boolean","language_code":"string","new_users_trial_dismissed":"boolean","onboarding_calendar_step_at":"string","onboarding_checklist_dismissed":"boolean","onboarding_completed_at":"string","onboarding_flow_dismissed":"boolean","onboarding_multi_day_task_created":"boolean","onboarding_started_at":"string","onboarding_task_dragged":"boolean","onboarding_tasks_step_at":"string","onboarding_variant_selected":"string","plan_tour_dismissed":"boolean","platform_nudges":\{\},"pomodoro_mode_auto_start_break":"boolean","pomodoro_mode_break_duration_mins":"integer","pomodoro_mode_session_duration_mins":"integer","pomodoro_mode_sound_enabled":"boolean","scheduler_nudge_dismissed":"boolean","seats_billing_change_acknowledged_at":"string","shortcuts_enabled":"boolean","show_goals_panel":"boolean","show_google_calendar_events":"boolean","start_week_on":"integer","switch_to_focus_dismissed":"boolean","sync_external_calendar":"string","theme":"string","time_block_color":"string","time_format":"string","time_tracking_mode":"string","time_tracking_mode_duration_mins":"integer","time_tracking_mode_enabled":"boolean","time_tracking_mode_fullscreen":"boolean","tooltip_onboarding_dismissed":"boolean","welcome_modal_dismissed":"boolean","whats_new_may_2026_dismissed":"boolean","whats_new_tasks_tour_dismissed":"boolean"\}' \
-u <email>:<password>
bytes, err := json.Marshal('\{"attachments_display_mode":"string","autocomplete_task_with_time_block":"boolean","autolog_time":"boolean","calendar_future_defaults_to_plan":"boolean","calendar_project_suggestion_fallback":"boolean","calendar_range_type":"string","calendar_show_calendar_events":"boolean","calendar_show_completed_tasks":"boolean","calendar_show_tasks_list":"boolean","calendar_split_view_columns":"string","calendar_task_creation_behavior":"string","current_workspace_id":"integer","date_format":"string","default_page":"string","duration_format":"string","focus_mode_count_up":"boolean","goal_reminder_time":"string","goal_reminders_enabled":"boolean","has_reached_task_threshold":"boolean","import_data_banner_dismissed":"boolean","language_code":"string","new_users_trial_dismissed":"boolean","onboarding_calendar_step_at":"string","onboarding_checklist_dismissed":"boolean","onboarding_completed_at":"string","onboarding_flow_dismissed":"boolean","onboarding_multi_day_task_created":"boolean","onboarding_started_at":"string","onboarding_task_dragged":"boolean","onboarding_tasks_step_at":"string","onboarding_variant_selected":"string","plan_tour_dismissed":"boolean","platform_nudges":\{\},"pomodoro_mode_auto_start_break":"boolean","pomodoro_mode_break_duration_mins":"integer","pomodoro_mode_session_duration_mins":"integer","pomodoro_mode_sound_enabled":"boolean","scheduler_nudge_dismissed":"boolean","seats_billing_change_acknowledged_at":"string","shortcuts_enabled":"boolean","show_goals_panel":"boolean","show_google_calendar_events":"boolean","start_week_on":"integer","switch_to_focus_dismissed":"boolean","sync_external_calendar":"string","theme":"string","time_block_color":"string","time_format":"string","time_tracking_mode":"string","time_tracking_mode_duration_mins":"integer","time_tracking_mode_enabled":"boolean","time_tracking_mode_fullscreen":"boolean","tooltip_onboarding_dismissed":"boolean","welcome_modal_dismissed":"boolean","whats_new_may_2026_dismissed":"boolean","whats_new_tasks_tour_dismissed":"boolean"\}')
if err != nil {
print(err)
}
req, err := http.NewRequest(http.MethodGet,
"https://focus.toggl.com/api/users/me/settings", bytes.NewBuffer(bytes))
if err != nil {
print(err)
}
req.Header.Set("Content-Type", "application/json; charset=utf-8")
req.SetBasicAuth("<email>", "<password>")
client := &http.Client{}
resp, err := client.Do(req)
if err != nil {
print(err)
}
defer resp.Body.Close()
body, err := ioutil.ReadAll(resp.Body)
if err != nil {
print(err)
}
fmt.Print(string(body))
require 'net/http'
require 'uri'
require 'json'
uri = URI('https://focus.toggl.com/api/users/me/settings')
http = Net::HTTP.new(uri.host, uri.port)
req = Net::HTTP::Patch.new(uri.path)
req['Content-Type'] = "application/json"
req.body = \{"attachments_display_mode":"string","autocomplete_task_with_time_block":"boolean","autolog_time":"boolean","calendar_future_defaults_to_plan":"boolean","calendar_project_suggestion_fallback":"boolean","calendar_range_type":"string","calendar_show_calendar_events":"boolean","calendar_show_completed_tasks":"boolean","calendar_show_tasks_list":"boolean","calendar_split_view_columns":"string","calendar_task_creation_behavior":"string","current_workspace_id":"integer","date_format":"string","default_page":"string","duration_format":"string","focus_mode_count_up":"boolean","goal_reminder_time":"string","goal_reminders_enabled":"boolean","has_reached_task_threshold":"boolean","import_data_banner_dismissed":"boolean","language_code":"string","new_users_trial_dismissed":"boolean","onboarding_calendar_step_at":"string","onboarding_checklist_dismissed":"boolean","onboarding_completed_at":"string","onboarding_flow_dismissed":"boolean","onboarding_multi_day_task_created":"boolean","onboarding_started_at":"string","onboarding_task_dragged":"boolean","onboarding_tasks_step_at":"string","onboarding_variant_selected":"string","plan_tour_dismissed":"boolean","platform_nudges":\{\},"pomodoro_mode_auto_start_break":"boolean","pomodoro_mode_break_duration_mins":"integer","pomodoro_mode_session_duration_mins":"integer","pomodoro_mode_sound_enabled":"boolean","scheduler_nudge_dismissed":"boolean","seats_billing_change_acknowledged_at":"string","shortcuts_enabled":"boolean","show_goals_panel":"boolean","show_google_calendar_events":"boolean","start_week_on":"integer","switch_to_focus_dismissed":"boolean","sync_external_calendar":"string","theme":"string","time_block_color":"string","time_format":"string","time_tracking_mode":"string","time_tracking_mode_duration_mins":"integer","time_tracking_mode_enabled":"boolean","time_tracking_mode_fullscreen":"boolean","tooltip_onboarding_dismissed":"boolean","welcome_modal_dismissed":"boolean","whats_new_may_2026_dismissed":"boolean","whats_new_tasks_tour_dismissed":"boolean"\}.to_json
request.basic_auth '<email>', '<password>'
res = http.request(req)
puts JSON.parse(res.body)
fetch("https://focus.toggl.com/api/users/me/settings", {
method: "PATCH",
body: \{"attachments_display_mode":"string","autocomplete_task_with_time_block":"boolean","autolog_time":"boolean","calendar_future_defaults_to_plan":"boolean","calendar_project_suggestion_fallback":"boolean","calendar_range_type":"string","calendar_show_calendar_events":"boolean","calendar_show_completed_tasks":"boolean","calendar_show_tasks_list":"boolean","calendar_split_view_columns":"string","calendar_task_creation_behavior":"string","current_workspace_id":"integer","date_format":"string","default_page":"string","duration_format":"string","focus_mode_count_up":"boolean","goal_reminder_time":"string","goal_reminders_enabled":"boolean","has_reached_task_threshold":"boolean","import_data_banner_dismissed":"boolean","language_code":"string","new_users_trial_dismissed":"boolean","onboarding_calendar_step_at":"string","onboarding_checklist_dismissed":"boolean","onboarding_completed_at":"string","onboarding_flow_dismissed":"boolean","onboarding_multi_day_task_created":"boolean","onboarding_started_at":"string","onboarding_task_dragged":"boolean","onboarding_tasks_step_at":"string","onboarding_variant_selected":"string","plan_tour_dismissed":"boolean","platform_nudges":\{\},"pomodoro_mode_auto_start_break":"boolean","pomodoro_mode_break_duration_mins":"integer","pomodoro_mode_session_duration_mins":"integer","pomodoro_mode_sound_enabled":"boolean","scheduler_nudge_dismissed":"boolean","seats_billing_change_acknowledged_at":"string","shortcuts_enabled":"boolean","show_goals_panel":"boolean","show_google_calendar_events":"boolean","start_week_on":"integer","switch_to_focus_dismissed":"boolean","sync_external_calendar":"string","theme":"string","time_block_color":"string","time_format":"string","time_tracking_mode":"string","time_tracking_mode_duration_mins":"integer","time_tracking_mode_enabled":"boolean","time_tracking_mode_fullscreen":"boolean","tooltip_onboarding_dismissed":"boolean","welcome_modal_dismissed":"boolean","whats_new_may_2026_dismissed":"boolean","whats_new_tasks_tour_dismissed":"boolean"\},
headers: {
"Content-Type": "application/json",
"Authorization": `Basic ${base64.encode(<email>:<password>)}`
},
})
.then((resp) => resp.json())
.then((json) => {
console.log(json);
})
.catch(err => console.error(err));
import requests
from base64 import b64encode
data = requests.patch('https://focus.toggl.com/api/users/me/settings', json=\{"attachments_display_mode":"string","autocomplete_task_with_time_block":"boolean","autolog_time":"boolean","calendar_future_defaults_to_plan":"boolean","calendar_project_suggestion_fallback":"boolean","calendar_range_type":"string","calendar_show_calendar_events":"boolean","calendar_show_completed_tasks":"boolean","calendar_show_tasks_list":"boolean","calendar_split_view_columns":"string","calendar_task_creation_behavior":"string","current_workspace_id":"integer","date_format":"string","default_page":"string","duration_format":"string","focus_mode_count_up":"boolean","goal_reminder_time":"string","goal_reminders_enabled":"boolean","has_reached_task_threshold":"boolean","import_data_banner_dismissed":"boolean","language_code":"string","new_users_trial_dismissed":"boolean","onboarding_calendar_step_at":"string","onboarding_checklist_dismissed":"boolean","onboarding_completed_at":"string","onboarding_flow_dismissed":"boolean","onboarding_multi_day_task_created":"boolean","onboarding_started_at":"string","onboarding_task_dragged":"boolean","onboarding_tasks_step_at":"string","onboarding_variant_selected":"string","plan_tour_dismissed":"boolean","platform_nudges":\{\},"pomodoro_mode_auto_start_break":"boolean","pomodoro_mode_break_duration_mins":"integer","pomodoro_mode_session_duration_mins":"integer","pomodoro_mode_sound_enabled":"boolean","scheduler_nudge_dismissed":"boolean","seats_billing_change_acknowledged_at":"string","shortcuts_enabled":"boolean","show_goals_panel":"boolean","show_google_calendar_events":"boolean","start_week_on":"integer","switch_to_focus_dismissed":"boolean","sync_external_calendar":"string","theme":"string","time_block_color":"string","time_format":"string","time_tracking_mode":"string","time_tracking_mode_duration_mins":"integer","time_tracking_mode_enabled":"boolean","time_tracking_mode_fullscreen":"boolean","tooltip_onboarding_dismissed":"boolean","welcome_modal_dismissed":"boolean","whats_new_may_2026_dismissed":"boolean","whats_new_tasks_tour_dismissed":"boolean"\}, headers={'content-type': 'application/json', 'Authorization' : 'Basic %s' % b64encode(b"<email>:<password>").decode("ascii")})
print(data.json())
extern crate tokio;
extern crate serde_json;
use reqwest::{Client};
use reqwest::header::{CONTENT_TYPE};
#[tokio::main]
async fn main() -> Result<(), reqwest::Error> {
let client = Client::new().basic_auth("<email>", "<password>");
let json = client.request(Method::PATCH, "https://focus.toggl.com/api/users/me/settings".to_string())
.json(&serde_json::json!(\{"attachments_display_mode":"string","autocomplete_task_with_time_block":"boolean","autolog_time":"boolean","calendar_future_defaults_to_plan":"boolean","calendar_project_suggestion_fallback":"boolean","calendar_range_type":"string","calendar_show_calendar_events":"boolean","calendar_show_completed_tasks":"boolean","calendar_show_tasks_list":"boolean","calendar_split_view_columns":"string","calendar_task_creation_behavior":"string","current_workspace_id":"integer","date_format":"string","default_page":"string","duration_format":"string","focus_mode_count_up":"boolean","goal_reminder_time":"string","goal_reminders_enabled":"boolean","has_reached_task_threshold":"boolean","import_data_banner_dismissed":"boolean","language_code":"string","new_users_trial_dismissed":"boolean","onboarding_calendar_step_at":"string","onboarding_checklist_dismissed":"boolean","onboarding_completed_at":"string","onboarding_flow_dismissed":"boolean","onboarding_multi_day_task_created":"boolean","onboarding_started_at":"string","onboarding_task_dragged":"boolean","onboarding_tasks_step_at":"string","onboarding_variant_selected":"string","plan_tour_dismissed":"boolean","platform_nudges":\{\},"pomodoro_mode_auto_start_break":"boolean","pomodoro_mode_break_duration_mins":"integer","pomodoro_mode_session_duration_mins":"integer","pomodoro_mode_sound_enabled":"boolean","scheduler_nudge_dismissed":"boolean","seats_billing_change_acknowledged_at":"string","shortcuts_enabled":"boolean","show_goals_panel":"boolean","show_google_calendar_events":"boolean","start_week_on":"integer","switch_to_focus_dismissed":"boolean","sync_external_calendar":"string","theme":"string","time_block_color":"string","time_format":"string","time_tracking_mode":"string","time_tracking_mode_duration_mins":"integer","time_tracking_mode_enabled":"boolean","time_tracking_mode_fullscreen":"boolean","tooltip_onboarding_dismissed":"boolean","welcome_modal_dismissed":"boolean","whats_new_may_2026_dismissed":"boolean","whats_new_tasks_tour_dismissed":"boolean"\}))
.header(CONTENT_TYPE, "application/json")
.send()
.await?
.json()
.await?;
println!("{:#?}", json);
Ok(())
}
Parameters
Body
| Name | Type | Description |
|---|---|---|
| attachments_display_mode | string | null |
| autocomplete_task_with_time_block | boolean | - |
| autolog_time | boolean | - |
| calendar_future_defaults_to_plan | boolean | - |
| calendar_project_suggestion_fallback | boolean | - |
| calendar_range_type | string | null |
| calendar_show_calendar_events | boolean | - |
| calendar_show_completed_tasks | boolean | - |
| calendar_show_tasks_list | boolean | - |
| calendar_split_view_columns | string | null |
| calendar_task_creation_behavior | string | - |
| current_workspace_id | integer | null |
| date_format | string | - |
| default_page | string | null |
| duration_format | string | - |
| focus_mode_count_up | boolean | - |
| goal_reminder_time | string | null |
| goal_reminders_enabled | boolean | - |
| has_reached_task_threshold | boolean | - |
| import_data_banner_dismissed | boolean | - |
| language_code | string | null |
| new_users_trial_dismissed | boolean | - |
| onboarding_calendar_step_at | string | null |
| onboarding_checklist_dismissed | boolean | - |
| onboarding_completed_at | string | null |
| onboarding_flow_dismissed | boolean | - |
| onboarding_multi_day_task_created | boolean | - |
| onboarding_started_at | string | null |
| onboarding_task_dragged | boolean | - |
| onboarding_tasks_step_at | string | null |
| onboarding_variant_selected | string | null |
| plan_tour_dismissed | boolean | - |
| platform_nudges | object | - |
| pomodoro_mode_auto_start_break | boolean | - |
| pomodoro_mode_break_duration_mins | integer | - |
| pomodoro_mode_session_duration_mins | integer | - |
| pomodoro_mode_sound_enabled | boolean | - |
| scheduler_nudge_dismissed | boolean | - |
| seats_billing_change_acknowledged_at | string | null |
| shortcuts_enabled | boolean | - |
| show_goals_panel | boolean | - |
| show_google_calendar_events | boolean | - |
| start_week_on | integer | - |
| switch_to_focus_dismissed | boolean | - |
| sync_external_calendar | string | - |
| theme | string | - |
| time_block_color | string | null |
| time_format | string | - |
| time_tracking_mode | string | null |
| time_tracking_mode_duration_mins | integer | null |
| time_tracking_mode_enabled | boolean | - |
| time_tracking_mode_fullscreen | boolean | - |
| tooltip_onboarding_dismissed | boolean | - |
| welcome_modal_dismissed | boolean | - |
| whats_new_may_2026_dismissed | boolean | - |
| whats_new_tasks_tour_dismissed | boolean | - |
platform_nudges
Response
200
Successfully updated
| Name | Type | Description |
|---|---|---|
| attachments_display_mode | string | - |
| autocomplete_task_with_time_block | boolean | - |
| autolog_time | boolean | Deprecated: gates auto-log only for the manual task-completion path (updateTaskAndRelated). Per-calendar DefaultAction governs auto-log in the calendar-sync path. |
| calendar_future_defaults_to_plan | boolean | CalendarFutureDefaultsToPlan, when enabled, makes the unified-view event popover open future slots in Plan time (past slots stay Log time). When disabled (default) the unified view always opens in Log time. Does not affect the split view. |
| calendar_project_suggestion_fallback | boolean | CalendarProjectSuggestionFallback enables automatic project suggestion for newly-created calendar tasks. |
| calendar_range_type | string | - |
| calendar_show_calendar_events | boolean | - |
| calendar_show_completed_tasks | boolean | - |
| calendar_show_tasks_list | boolean | - |
| calendar_split_view_columns | string | - |
| calendar_task_creation_behavior | string | CalendarTaskCreationBehavior controls how calendar events map to tasks during sync. |
| current_workspace_id | integer | - |
| date_format | string | - |
| default_page | string | - |
| duration_format | string | - |
| first_interaction | boolean | FirstInteraction determines the settings update was the first user interaction done. This is what is used to dispatch the Focus product sign-up event. This is not a setting that can be managed by FE. This is purely an internal BE setting. |
| first_interaction_date | string | FirstInteractionDate records when the user first interacted with Focus. Set automatically by the BE alongside first_interaction. |
| focus_mode_count_up | boolean | - |
| goal_reminder_time | string | GoalReminderTime is the local clock time the daily goal reminder is sent, formatted HH:MM (24h). |
| goal_reminders_enabled | boolean | GoalRemindersEnabled opts the user into daily goal-reminder push notifications. Defaults to true. |
| has_reached_task_threshold | boolean | HasReachedTaskThreshold indicates the user has created 5+ tasks at some point. |
| import_data_banner_dismissed | boolean | - |
| language_code | string | - |
| new_users_trial_dismissed | boolean | - |
| onboarding_calendar_step_at | string | OnboardingCalendarStepAt is the ISO 8601 timestamp when the user left the calendar step (submitted or skipped) |
| onboarding_checklist_dismissed | boolean | - |
| onboarding_completed_at | string | OnboardingCompletedAt is the ISO 8601 timestamp when the user finished the onboarding flow |
| onboarding_flow_dismissed | boolean | - |
| onboarding_multi_day_task_created | boolean | - |
| onboarding_started_at | string | OnboardingStartedAt is the ISO 8601 timestamp when the user first saw the onboarding page |
| onboarding_task_dragged | boolean | - |
| onboarding_tasks_step_at | string | OnboardingTasksStepAt is the ISO 8601 timestamp when the user left the tasks step (submitted or skipped) |
| onboarding_variant_selected | string | - |
| plan_tour_dismissed | boolean | PlanTourDismissed indicates whether the user has dismissed the plan onboarding tour |
| platform_nudges | object | PlatformNudges maps a platform-discoverability nudge id to the ISO 8601 timestamp it was last dismissed. Keys are opaque to the backend (nudge ids are owned by the web app), so new nudges need no backend change. Absent/empty means nothing has been dismissed. |
| pomodoro_mode_auto_start_break | boolean | - |
| pomodoro_mode_break_duration_mins | integer | - |
| pomodoro_mode_session_duration_mins | integer | - |
| pomodoro_mode_sound_enabled | boolean | - |
| scheduler_nudge_dismissed | boolean | - |
| seats_billing_change_acknowledged_at | string | SeatsBillingChangeAcknowledgedAt is the ISO 8601 timestamp when the user dismissed the seats-billing change announcement modal. |
| shortcuts_enabled | boolean | - |
| show_goals_panel | boolean | ShowGoalsPanel controls whether the Goals panel is visible on the Timer page. Defaults to true. |
| show_google_calendar_events | boolean | - |
| start_week_on | integer | StartWeekOn determines which day the week starts on: 0 for Sunday, 1 for Monday |
| switch_to_focus_dismissed | boolean | - |
| sync_external_calendar | string | SyncExternalCalendar can either be 'never', 'always' or 'ask' |
| theme | string | - |
| time_block_color | string | - |
| time_format | string | - |
| time_tracking_mode | string | - |
| time_tracking_mode_duration_mins | integer | - |
| time_tracking_mode_enabled | boolean | - |
| time_tracking_mode_fullscreen | boolean | - |
| timezone | string | Timezone is the IANA timezone name (e.g. "America/New_York") used to localise time-sensitive features such as goal current-period detection. Mirrors the timezone stored in Toggl Track. |
| tooltip_onboarding_dismissed | boolean | TooltipOnboardingDismissed indicates whether the user has dismissed the tooltip onboarding tour |
| welcome_modal_dismissed | boolean | WelcomeModalDismissed indicates whether the user has dismissed the welcome modal |
| whats_new_may_2026_dismissed | boolean | WhatsNewMay2026Dismissed indicates whether the user has dismissed the May 2026 "What's new" tour |
| whats_new_tasks_tour_dismissed | boolean | WhatsNewTasksTourDismissed indicates whether the user has dismissed the tasks "What's new" tour |
platform_nudges
400
Invalid request
500
Internal Server Error