{"openapi":"3.1.0","info":{"title":"FastAPI","version":"0.1.0"},"paths":{"/v1/auth/google/auth":{"get":{"tags":["Google"],"summary":"Auth","description":"Redirect Google OAuth back to our desktop/mobile app with new scopes.","operationId":"auth_v1_auth_google_auth_get","parameters":[{"name":"add_scopes","in":"query","required":false,"schema":{"type":"string","default":"openid email profile","title":"Add Scopes"}},{"name":"redirect_callback_url","in":"query","required":false,"schema":{"type":"string","title":"Redirect Callback Url"}},{"name":"mode","in":"query","required":false,"schema":{"type":"string","default":"app","title":"Mode"}},{"name":"return_to","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Return To"}},{"name":"promo","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Promo"}},{"name":"invite_code","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Invite Code"}},{"name":"telegram_link","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Telegram Link"}},{"name":"app_redirect_scheme","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"App Redirect Scheme"}},{"name":"require_google_data","in":"query","required":false,"schema":{"type":"boolean","default":false,"title":"Require Google Data"}},{"name":"signup_source","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Signup Source"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/auth/google/permissions-required":{"get":{"tags":["Google"],"summary":"Permissions Required","description":"Explain the read-only Gmail and Calendar requirement before retrying OAuth.","operationId":"permissions_required_v1_auth_google_permissions_required_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/auth/google/login_callback":{"get":{"tags":["Google"],"summary":"Auth Callback","description":"Google OAuth callback","operationId":"auth_callback_v1_auth_google_login_callback_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/auth/google/revoke":{"post":{"tags":["Google"],"summary":"Revoke Google Access","description":"Revoke Google OAuth access and clear tokens","operationId":"revoke_google_access_v1_auth_google_revoke_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/auth/google/permissions":{"get":{"tags":["Google"],"summary":"Get User Permissions","description":"Check which Google scopes a user has granted","operationId":"get_user_permissions_v1_auth_google_permissions_get","parameters":[{"name":"db_user_id","in":"query","required":true,"schema":{"type":"string","title":"Db User Id"}},{"name":"label","in":"query","required":false,"schema":{"type":"string","default":"personal","title":"Label"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/auth/google/accounts/relabel":{"post":{"tags":["Google"],"summary":"Relabel Google Account","description":"Update a connected Google account's work/personal label.","operationId":"relabel_google_account_v1_auth_google_accounts_relabel_post","parameters":[{"name":"ut","in":"query","required":true,"schema":{"type":"string","title":"Ut"}},{"name":"k","in":"query","required":true,"schema":{"type":"string","title":"K"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GoogleAccountRelabelRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/auth/google/reauth":{"get":{"tags":["Google"],"summary":"Reauth","description":"Redirect Google OAuth back to our telegram bot with new scopes","operationId":"reauth_v1_auth_google_reauth_get","parameters":[{"name":"add_scopes","in":"query","required":false,"schema":{"type":"string","default":"","title":"Add Scopes"}},{"name":"redirect_callback_url","in":"query","required":false,"schema":{"type":"string","title":"Redirect Callback Url"}},{"name":"db_user_id","in":"query","required":false,"schema":{"type":"string","title":"Db User Id"}},{"name":"telegram_callback_url","in":"query","required":false,"schema":{"type":"string","title":"Telegram Callback Url"}},{"name":"telegram_user_id","in":"query","required":false,"schema":{"type":"string","default":"","title":"Telegram User Id"}},{"name":"continue_query","in":"query","required":false,"schema":{"type":"string","title":"Continue Query"}},{"name":"mode","in":"query","required":false,"schema":{"type":"string","default":"telegram","title":"Mode"}},{"name":"label","in":"query","required":false,"schema":{"type":"string","default":"personal","title":"Label"}},{"name":"context_window_id","in":"query","required":false,"schema":{"type":"string","title":"Context Window Id"}},{"name":"work_email","in":"query","required":false,"schema":{"type":"string","title":"Work Email"}},{"name":"after_connect","in":"query","required":false,"schema":{"type":"string","title":"After Connect"}},{"name":"linq_chat_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Linq Chat Id"}},{"name":"required_scopes","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Required Scopes"}},{"name":"return_to","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Return To"}},{"name":"resume_handoff","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Resume Handoff"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/User"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/auth/google/callback":{"get":{"tags":["Google"],"summary":"Reauth Callback","description":"Google OAuth callback","operationId":"reauth_callback_v1_auth_google_callback_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/auth/google/{reauth_callback}":{"get":{"tags":["Google"],"summary":"Home","operationId":"home_v1_auth_google__reauth_callback__get","parameters":[{"name":"reauth_callback","in":"path","required":true,"schema":{"type":"string","title":"Reauth Callback"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/auth/google/revoke_calendar":{"post":{"tags":["Google"],"summary":"Revoke Calendar","description":"Revoke calendar access for a specific label (personal/work)","operationId":"revoke_calendar_v1_auth_google_revoke_calendar_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/auth/granola/connect":{"get":{"tags":["Granola"],"summary":"Granola Connect","description":"Initiate Granola OAuth — DCR + PKCE + redirect to Granola auth page.","operationId":"granola_connect_v1_auth_granola_connect_get","parameters":[{"name":"db_user_id","in":"query","required":false,"schema":{"type":"string","title":"Db User Id"}},{"name":"web","in":"query","required":false,"schema":{"type":"boolean","default":false,"title":"Web"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/auth/granola/callback":{"get":{"tags":["Granola"],"summary":"Granola Callback","description":"Handle Granola OAuth callback — exchange code for tokens.","operationId":"granola_callback_v1_auth_granola_callback_get","parameters":[{"name":"code","in":"query","required":false,"schema":{"type":"string","title":"Code"}},{"name":"state","in":"query","required":false,"schema":{"type":"string","title":"State"}},{"name":"error","in":"query","required":false,"schema":{"type":"string","title":"Error"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/auth/granola/disconnect":{"post":{"tags":["Granola"],"summary":"Granola Disconnect","description":"Disconnect Granola — remove tokens and disable.","operationId":"granola_disconnect_v1_auth_granola_disconnect_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/auth/slack/connect":{"get":{"tags":["Slack"],"summary":"Slack Connect","description":"Initiate Slack OAuth — redirect to Slack authorize page.","operationId":"slack_connect_v1_auth_slack_connect_get","parameters":[{"name":"db_user_id","in":"query","required":false,"schema":{"type":"string","title":"Db User Id"}},{"name":"web","in":"query","required":false,"schema":{"type":"boolean","default":false,"title":"Web"}},{"name":"continue_query","in":"query","required":false,"schema":{"type":"string","title":"Continue Query"}},{"name":"context_window_id","in":"query","required":false,"schema":{"type":"string","title":"Context Window Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/auth/slack/callback":{"get":{"tags":["Slack"],"summary":"Slack Callback","description":"Handle Slack OAuth callback — exchange code for tokens.","operationId":"slack_callback_v1_auth_slack_callback_get","parameters":[{"name":"code","in":"query","required":false,"schema":{"type":"string","title":"Code"}},{"name":"state","in":"query","required":false,"schema":{"type":"string","title":"State"}},{"name":"error","in":"query","required":false,"schema":{"type":"string","title":"Error"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/auth/slack/disconnect":{"post":{"tags":["Slack"],"summary":"Slack Disconnect","description":"Disconnect Slack — remove a specific workspace or all.\n\nBody params:\n    team_id: optional — if provided, disconnect only that workspace.\n             If omitted, disconnect ALL Slack workspaces.","operationId":"slack_disconnect_v1_auth_slack_disconnect_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/auth/plaid/link-token":{"post":{"tags":["Plaid"],"summary":"Plaid Link Token","operationId":"plaid_link_token_v1_auth_plaid_link_token_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/auth/plaid/exchange":{"post":{"tags":["Plaid"],"summary":"Plaid Exchange Public Token","operationId":"plaid_exchange_public_token_v1_auth_plaid_exchange_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicTokenExchange"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/auth/plaid/status":{"get":{"tags":["Plaid"],"summary":"Plaid Status","operationId":"plaid_status_v1_auth_plaid_status_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/auth/plaid/items/{item_id}/logo":{"get":{"tags":["Plaid"],"summary":"Plaid Institution Logo","operationId":"plaid_institution_logo_v1_auth_plaid_items__item_id__logo_get","parameters":[{"name":"item_id","in":"path","required":true,"schema":{"type":"integer","title":"Item Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/auth/plaid/disconnect":{"post":{"tags":["Plaid"],"summary":"Plaid Disconnect All","description":"Disconnect every bank Item for the signed-in user and erase its data.","operationId":"plaid_disconnect_all_v1_auth_plaid_disconnect_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/auth/plaid/disconnect/{item_id}":{"post":{"tags":["Plaid"],"summary":"Plaid Disconnect","operationId":"plaid_disconnect_v1_auth_plaid_disconnect__item_id__post","parameters":[{"name":"item_id","in":"path","required":true,"schema":{"type":"integer","title":"Item Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/slack/events":{"post":{"tags":["Slack"],"summary":"Slack Events","description":"Handle Slack Events API callbacks.\n\n- url_verification: respond with challenge (app setup)\n- event_callback: process assistant_thread_started, message.im, app_mention, etc.","operationId":"slack_events_v1_slack_events_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/slack/interactions":{"post":{"tags":["Slack"],"summary":"Slack Interactions","description":"Handle Slack interactivity payloads (block actions, modals, shortcuts).","operationId":"slack_interactions_v1_slack_interactions_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/auth/linear/connect":{"get":{"tags":["Linear"],"summary":"Linear Connect","operationId":"linear_connect_v1_auth_linear_connect_get","parameters":[{"name":"db_user_id","in":"query","required":false,"schema":{"type":"string","title":"Db User Id"}},{"name":"web","in":"query","required":false,"schema":{"type":"boolean","default":false,"title":"Web"}},{"name":"continue_query","in":"query","required":false,"schema":{"type":"string","title":"Continue Query"}},{"name":"context_window_id","in":"query","required":false,"schema":{"type":"string","title":"Context Window Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/auth/linear/callback":{"get":{"tags":["Linear"],"summary":"Linear Callback","operationId":"linear_callback_v1_auth_linear_callback_get","parameters":[{"name":"code","in":"query","required":false,"schema":{"type":"string","title":"Code"}},{"name":"state","in":"query","required":false,"schema":{"type":"string","title":"State"}},{"name":"error","in":"query","required":false,"schema":{"type":"string","title":"Error"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/auth/linear/disconnect":{"post":{"tags":["Linear"],"summary":"Linear Disconnect","operationId":"linear_disconnect_v1_auth_linear_disconnect_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/auth/notion/connect":{"get":{"tags":["Notion"],"summary":"Notion Connect","description":"Initiate Notion OAuth — redirect to Notion's authorization page.","operationId":"notion_connect_v1_auth_notion_connect_get","parameters":[{"name":"db_user_id","in":"query","required":false,"schema":{"type":"string","title":"Db User Id"}},{"name":"web","in":"query","required":false,"schema":{"type":"boolean","default":false,"title":"Web"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/auth/notion/callback":{"get":{"tags":["Notion"],"summary":"Notion Callback","description":"Handle Notion OAuth callback — exchange code for tokens.","operationId":"notion_callback_v1_auth_notion_callback_get","parameters":[{"name":"code","in":"query","required":false,"schema":{"type":"string","title":"Code"}},{"name":"state","in":"query","required":false,"schema":{"type":"string","title":"State"}},{"name":"error","in":"query","required":false,"schema":{"type":"string","title":"Error"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/auth/notion/disconnect":{"post":{"tags":["Notion"],"summary":"Notion Disconnect","description":"Disconnect Notion — remove tokens and disable.","operationId":"notion_disconnect_v1_auth_notion_disconnect_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/auth/reflect/connect":{"get":{"tags":["Reflect"],"summary":"Reflect Connect","description":"Initiate Reflect OAuth — redirect to Reflect's authorization page.","operationId":"reflect_connect_v1_auth_reflect_connect_get","parameters":[{"name":"db_user_id","in":"query","required":false,"schema":{"type":"string","title":"Db User Id"}},{"name":"web","in":"query","required":false,"schema":{"type":"boolean","default":false,"title":"Web"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/auth/reflect/callback":{"get":{"tags":["Reflect"],"summary":"Reflect Callback","description":"Handle Reflect OAuth callback — exchange code for tokens.","operationId":"reflect_callback_v1_auth_reflect_callback_get","parameters":[{"name":"code","in":"query","required":false,"schema":{"type":"string","title":"Code"}},{"name":"state","in":"query","required":false,"schema":{"type":"string","title":"State"}},{"name":"error","in":"query","required":false,"schema":{"type":"string","title":"Error"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/auth/reflect/disconnect":{"post":{"tags":["Reflect"],"summary":"Reflect Disconnect","description":"Disconnect Reflect — remove tokens.","operationId":"reflect_disconnect_v1_auth_reflect_disconnect_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/auth/reflect/entries":{"get":{"tags":["Reflect"],"summary":"Reflect Entries","description":"Proxy endpoint: fetch links + books from Reflect and return combined entries.","operationId":"reflect_entries_v1_auth_reflect_entries_get","parameters":[{"name":"db_user_id","in":"query","required":false,"schema":{"type":"string","title":"Db User Id"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","default":50,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/auth/discord/connect":{"get":{"tags":["Discord"],"summary":"Discord Connect","description":"Initiate Discord OAuth — redirect to Discord authorize page.","operationId":"discord_connect_v1_auth_discord_connect_get","parameters":[{"name":"db_user_id","in":"query","required":false,"schema":{"type":"string","title":"Db User Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/auth/discord/callback":{"get":{"tags":["Discord"],"summary":"Discord Callback","description":"Handle Discord OAuth callback — exchange code for tokens.","operationId":"discord_callback_v1_auth_discord_callback_get","parameters":[{"name":"code","in":"query","required":false,"schema":{"type":"string","title":"Code"}},{"name":"state","in":"query","required":false,"schema":{"type":"string","title":"State"}},{"name":"error","in":"query","required":false,"schema":{"type":"string","title":"Error"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/auth/discord/disconnect":{"post":{"tags":["Discord"],"summary":"Discord Disconnect","description":"Disconnect Discord — remove tokens.","operationId":"discord_disconnect_v1_auth_discord_disconnect_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/auth/microsoft/reauth":{"get":{"tags":["Microsoft"],"summary":"Microsoft Reauth","description":"Initiate Microsoft OAuth flow for an existing user (incremental consent).","operationId":"microsoft_reauth_v1_auth_microsoft_reauth_get","parameters":[{"name":"db_user_id","in":"query","required":false,"schema":{"type":"string","title":"Db User Id"}},{"name":"add_scopes","in":"query","required":false,"schema":{"type":"string","default":"","title":"Add Scopes"}},{"name":"mode","in":"query","required":false,"schema":{"type":"string","default":"app","title":"Mode"}},{"name":"label","in":"query","required":false,"schema":{"type":"string","default":"personal","title":"Label"}},{"name":"continue_query","in":"query","required":false,"schema":{"type":"string","title":"Continue Query"}},{"name":"context_window_id","in":"query","required":false,"schema":{"type":"string","title":"Context Window Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/auth/microsoft/callback":{"get":{"tags":["Microsoft"],"summary":"Microsoft Callback","description":"Microsoft OAuth callback — exchange code for tokens and store.","operationId":"microsoft_callback_v1_auth_microsoft_callback_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/auth/microsoft/revoke":{"post":{"tags":["Microsoft"],"summary":"Revoke Microsoft Access","description":"Revoke Microsoft OAuth access and clear tokens.","operationId":"revoke_microsoft_access_v1_auth_microsoft_revoke_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/auth/microsoft/permissions":{"get":{"tags":["Microsoft"],"summary":"Get Microsoft Permissions","description":"Check which Microsoft scopes a user has granted.","operationId":"get_microsoft_permissions_v1_auth_microsoft_permissions_get","parameters":[{"name":"db_user_id","in":"query","required":true,"schema":{"type":"string","title":"Db User Id"}},{"name":"label","in":"query","required":false,"schema":{"type":"string","default":"personal","title":"Label"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/auth/github/connect":{"get":{"tags":["GitHub"],"summary":"Github Connect","description":"Start a PKCE-backed GitHub App user authorization for the signed-in user.","operationId":"github_connect_v1_auth_github_connect_get","parameters":[{"name":"db_user_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Db User Id"}},{"name":"web","in":"query","required":false,"schema":{"type":"boolean","default":false,"title":"Web"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/auth/github/callback":{"get":{"tags":["GitHub"],"summary":"Github Callback","operationId":"github_callback_v1_auth_github_callback_get","parameters":[{"name":"code","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Code"}},{"name":"state","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"State"}},{"name":"error","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Error"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/auth/github/refresh":{"post":{"tags":["GitHub"],"summary":"Github Refresh","description":"Refresh the repositories visible to the signed-in GitHub App user token.","operationId":"github_refresh_v1_auth_github_refresh_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/auth/github/disconnect":{"post":{"tags":["GitHub"],"summary":"Github Disconnect","description":"Remove Jo's stored GitHub user token and selected repository bindings.","operationId":"github_disconnect_v1_auth_github_disconnect_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/discord/guilds":{"get":{"tags":["Discord"],"summary":"List Guilds","description":"List Discord servers the user is in.","operationId":"list_guilds_v1_discord_guilds_get","parameters":[{"name":"user_id","in":"query","required":true,"schema":{"type":"integer","title":"User Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/discord/channels":{"get":{"tags":["Discord"],"summary":"List Channels","description":"List text channels in a guild.","operationId":"list_channels_v1_discord_channels_get","parameters":[{"name":"user_id","in":"query","required":true,"schema":{"type":"integer","title":"User Id"}},{"name":"guild_id","in":"query","required":true,"schema":{"type":"string","title":"Guild Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/discord/channels/select":{"post":{"tags":["Discord"],"summary":"Save Selected Channels","description":"Save selected Discord channels as UserSelection rows.\n\nUses the same deactivate-then-activate pattern as\n``websocket_save_group_selections`` in ``user_selections.py``.\n\nSupports source_platform param to distinguish bot-watched channels\n(\"discord\") from local reading/briefing channels (\"discord_local\").","operationId":"save_selected_channels_v1_discord_channels_select_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/discord/channels/selected":{"get":{"tags":["Discord"],"summary":"Get Selected Channels","description":"Get user's active Discord channel selections.\n\nsource_platform: \"discord\" for bot-watched, \"discord_local\" for legacy.","operationId":"get_selected_channels_v1_discord_channels_selected_get","parameters":[{"name":"user_id","in":"query","required":true,"schema":{"type":"integer","title":"User Id"}},{"name":"source_platform","in":"query","required":false,"schema":{"type":"string","default":"discord","title":"Source Platform"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/discord/channels/watch":{"post":{"tags":["Discord"],"summary":"Get Watched Channels","description":"Return ALL active discord channel selections across ALL users.\n\nCalled by the jo-discord Node bot to know which channels to monitor.\nAuth: ``bot_token_hash`` in the request body (simple shared secret).","operationId":"get_watched_channels_v1_discord_channels_watch_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/discord/incoming":{"post":{"tags":["Discord"],"summary":"Discord Incoming Message","description":"Receive a DM from the jo-discord bot and process it.\n\nBody:\n    discord_user_id: str — Discord snowflake ID of the sender\n    discord_username: str — Discord username\n    text: str — message content\n    message_id: str — Discord message ID (for dedup)\n    channel_id: str — DM channel ID","operationId":"discord_incoming_message_v1_discord_incoming_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/apple-messages/incoming":{"post":{"tags":["Apple Messages"],"summary":"Apple Messages Incoming","description":"Receive a message forwarded by the Connect Lambda.\n\nBody (from Lambda):\n    contact_id: str — Connect contact ID\n    participant_id: str — customer participant ID\n    connection_token: str — participant connection token for replies\n    message: str — customer message text\n    display_name: str — customer display name (if available)\n    apple_customer_id: str — Apple Business Chat Customer ID (urn:mbid:...)\n    instance_id: str — Connect instance ID\n    webhook_secret: str — shared secret for auth","operationId":"apple_messages_incoming_v1_apple_messages_incoming_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/apple-messages/store-contact":{"post":{"tags":["Apple Messages"],"summary":"Store Contact Endpoint","description":"Called by Lambda to store contact session for multi-turn.\n\nPersists participant_token in Postgres so the SNS streaming\nhandler can reply to follow-up messages on the same contact.","operationId":"store_contact_endpoint_v1_apple_messages_store_contact_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/apple-messages/contact":{"post":{"tags":["Apple Messages"],"summary":"Apple Messages Contact","description":"New contact notification from Lambda (dumb proxy).\n\nLambda just forwards contact metadata from the Connect ContactFlowEvent.\njo_bot handles everything: participant creation, transcript reading,\nstreaming setup, message processing, and reply.\n\nBody (from Lambda):\n    contact_id: str — Connect contact ID\n    instance_id: str — Connect instance ID (extracted from InstanceARN)\n    apple_customer_id: str — Apple Business Chat Customer ID\n    webhook_secret: str — shared secret for auth","operationId":"apple_messages_contact_v1_apple_messages_contact_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/apple-messages/linq/webhook":{"post":{"tags":["Apple Messages"],"summary":"Linq Webhook","description":"Receive Linq Standard Webhooks events for Apple Messages ingestion.","operationId":"linq_webhook_v1_apple_messages_linq_webhook_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/apple-messages/generate-link-code":{"post":{"tags":["Apple Messages Link"],"summary":"Generate Link Code","description":"Generate a code that a user can send via Apple Messages to link their account.\n\nReturns a 6-character alphanumeric code valid for 10 minutes.","operationId":"generate_link_code_v1_apple_messages_generate_link_code_post","parameters":[{"name":"ut","in":"query","required":true,"schema":{"type":"string","title":"Ut"}},{"name":"k","in":"query","required":true,"schema":{"type":"string","title":"K"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/apple-messages/status":{"get":{"tags":["Apple Messages Link"],"summary":"Apple Messages Status","description":"Check if the authenticated user has a linked Apple Messages account.","operationId":"apple_messages_status_v1_apple_messages_status_get","parameters":[{"name":"ut","in":"query","required":true,"schema":{"type":"string","title":"Ut"}},{"name":"k","in":"query","required":true,"schema":{"type":"string","title":"K"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/apple-messages/desktop-login/exchange":{"post":{"tags":["Apple Messages Link"],"summary":"Exchange Desktop Login Code","operationId":"exchange_desktop_login_code_v1_apple_messages_desktop_login_exchange_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DesktopLoginExchangeRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/apple-messages/stream-event":{"post":{"tags":["Apple Messages Streaming"],"summary":"Handle Stream Event","description":"Receive SNS notifications from Connect Contact Streaming.\n\nHandles:\n- SubscriptionConfirmation: auto-confirms the SNS subscription\n- Notification: processes customer messages, handles chat.ended cleanup","operationId":"handle_stream_event_v1_apple_messages_stream_event_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/users/webdav_config":{"post":{"summary":"Get Webdav Config","operationId":"get_webdav_config_v1_users_webdav_config_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WebDAVConfigRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/users/get":{"get":{"summary":"Get User","operationId":"get_user_v1_users_get_get","parameters":[{"name":"user_id","in":"query","required":true,"schema":{"type":"string","title":"User Id"}},{"name":"k","in":"query","required":true,"schema":{"type":"string","title":"K"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/users/update_location":{"post":{"summary":"Update User Location","operationId":"update_user_location_v1_users_update_location_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/users/update_auto_archive_days":{"post":{"summary":"Update Auto Archive Days","operationId":"update_auto_archive_days_v1_users_update_auto_archive_days_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateAutoArchiveDaysRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/users/update_integration":{"post":{"summary":"Update Integration","description":"Toggle bear_enabled or obsidian_enabled for a user.\nCalled by the Swift app when the user connects/disconnects Bear or Obsidian.","operationId":"update_integration_v1_users_update_integration_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateIntegrationRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/users/register_push_token":{"post":{"summary":"Register Push Token","description":"Register or update a user's APNs device token for push notifications.\nCalled by the Swift app after receiving a device token from Apple.","operationId":"register_push_token_v1_users_register_push_token_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RegisterPushTokenRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/users/reports/submit":{"post":{"summary":"Submit Issue Report","operationId":"submit_issue_report_v1_users_reports_submit_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReportIssueRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/users/logout":{"post":{"summary":"Logout User","operationId":"logout_user_v1_users_logout_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/users/calendar/today":{"get":{"summary":"Today","description":"Returns today's blended events across all connected calendars","operationId":"today_v1_users_calendar_today_get","parameters":[{"name":"ut","in":"query","required":true,"schema":{"type":"string","title":"Ut"}},{"name":"k","in":"query","required":true,"schema":{"type":"string","title":"K"}},{"name":"num_days","in":"query","required":false,"schema":{"type":"string","default":"3","title":"Num Days"}},{"name":"refresh","in":"query","required":false,"schema":{"type":"boolean","default":false,"title":"Refresh"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/CalendarEventSchema"},"title":"Response Today V1 Users Calendar Today Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/users/calendar/jo_notes":{"get":{"summary":"Jo Notes","description":"Returns Jo's notes on the next few days across all connected calendars","operationId":"jo_notes_v1_users_calendar_jo_notes_get","parameters":[{"name":"ut","in":"query","required":true,"schema":{"type":"string","title":"Ut"}},{"name":"k","in":"query","required":true,"schema":{"type":"string","title":"K"}},{"name":"num_days","in":"query","required":false,"schema":{"type":"string","default":"3","title":"Num Days"}},{"name":"refresh","in":"query","required":false,"schema":{"type":"boolean","default":false,"title":"Refresh"}},{"name":"conflicts","in":"query","required":false,"schema":{"type":"string","default":"","title":"Conflicts"}},{"name":"early_lates","in":"query","required":false,"schema":{"type":"string","default":"","title":"Early Lates"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GCalJoAgendaNotesExtractor"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/users/calendar/agenda_guidance":{"get":{"summary":"Agenda Guidance Text","description":"Returns agenda guidance text for user or default","operationId":"agenda_guidance_text_v1_users_calendar_agenda_guidance_get","parameters":[{"name":"ut","in":"query","required":true,"schema":{"type":"string","title":"Ut"}},{"name":"k","in":"query","required":true,"schema":{"type":"string","title":"K"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/users/calendar/update_agenda_guidance":{"post":{"summary":"Update Agenda Guidance Text","operationId":"update_agenda_guidance_text_v1_users_calendar_update_agenda_guidance_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/users/calendar/create_event":{"post":{"summary":"Create Event","description":"Creates a blocked calendar event at the specified time slot","operationId":"create_event_v1_users_calendar_create_event_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateEventRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/users/messages/insert_assistant_message":{"post":{"summary":"Insert Assistant Msg","description":"Insert an assistant message into the conversation history.","operationId":"insert_assistant_msg_v1_users_messages_insert_assistant_message_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/users/screens/mic":{"post":{"summary":"Mic","description":"Toggle microphone state for the user.","operationId":"mic_v1_users_screens_mic_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/users/screens/page":{"get":{"summary":"Page","description":"Analyze current page content and provide AI insights.","operationId":"page_v1_users_screens_page_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/users/screens/gmail_timeslots":{"get":{"summary":"Gmail Timeslots","description":"Get available time slots for Gmail calendar scheduling.","operationId":"gmail_timeslots_v1_users_screens_gmail_timeslots_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/lists/":{"post":{"summary":"Create List","operationId":"create_list_v1_lists__post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}},"get":{"summary":"Get Lists","operationId":"get_lists_v1_lists__get","parameters":[{"name":"ut","in":"query","required":true,"schema":{"type":"string","title":"Ut"}},{"name":"k","in":"query","required":true,"schema":{"type":"string","title":"K"}},{"name":"list_type","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"List Type"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/lists/{list_id}/items":{"post":{"summary":"Create List Item","operationId":"create_list_item_v1_lists__list_id__items_post","parameters":[{"name":"list_id","in":"path","required":true,"schema":{"type":"integer","title":"List Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/lists/{list_id}/items/{item_id}":{"put":{"summary":"Update List Item","operationId":"update_list_item_v1_lists__list_id__items__item_id__put","parameters":[{"name":"list_id","in":"path","required":true,"schema":{"type":"integer","title":"List Id"}},{"name":"item_id","in":"path","required":true,"schema":{"type":"integer","title":"Item Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/lists/{list_id}/items/{item_id}/touch":{"put":{"summary":"Touch List Item Modified At","operationId":"touch_list_item_modified_at_v1_lists__list_id__items__item_id__touch_put","parameters":[{"name":"list_id","in":"path","required":true,"schema":{"type":"integer","title":"List Id"}},{"name":"item_id","in":"path","required":true,"schema":{"type":"integer","title":"Item Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/lists/list_items/{item_id}/context_window":{"get":{"summary":"Get Context Window","operationId":"get_context_window_v1_lists_list_items__item_id__context_window_get","parameters":[{"name":"item_id","in":"path","required":true,"schema":{"type":"integer","title":"Item Id"}},{"name":"ut","in":"query","required":true,"schema":{"type":"string","title":"Ut"}},{"name":"k","in":"query","required":true,"schema":{"type":"string","title":"K"}},{"name":"query","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Query"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/lists/list_items/{item_id}/context_window/{context_window_id}":{"delete":{"summary":"Delete Context Window","operationId":"delete_context_window_v1_lists_list_items__item_id__context_window__context_window_id__delete","parameters":[{"name":"item_id","in":"path","required":true,"schema":{"type":"integer","title":"Item Id"}},{"name":"context_window_id","in":"path","required":true,"schema":{"type":"integer","title":"Context Window Id"}},{"name":"ut","in":"query","required":true,"schema":{"type":"string","title":"Ut"}},{"name":"k","in":"query","required":true,"schema":{"type":"string","title":"K"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/lists/list_items/{item_id}/context_window/message":{"post":{"summary":"Add Message To Context Window","operationId":"add_message_to_context_window_v1_lists_list_items__item_id__context_window_message_post","parameters":[{"name":"item_id","in":"path","required":true,"schema":{"type":"integer","title":"Item Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/lists/list_items/{item_id}/context_window/messages/bulk":{"post":{"summary":"Add Bulk Messages To Context Window","operationId":"add_bulk_messages_to_context_window_v1_lists_list_items__item_id__context_window_messages_bulk_post","parameters":[{"name":"item_id","in":"path","required":true,"schema":{"type":"integer","title":"Item Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/lists/list/{list_id}/items":{"get":{"summary":"Get List Items","operationId":"get_list_items_v1_lists_list__list_id__items_get","parameters":[{"name":"list_id","in":"path","required":true,"schema":{"type":"integer","title":"List Id"}},{"name":"ut","in":"query","required":true,"schema":{"type":"string","title":"Ut"}},{"name":"k","in":"query","required":true,"schema":{"type":"string","title":"K"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/lists/default/items":{"get":{"summary":"Get Default List Items","operationId":"get_default_list_items_v1_lists_default_items_get","parameters":[{"name":"ut","in":"query","required":true,"schema":{"type":"string","title":"Ut"}},{"name":"k","in":"query","required":true,"schema":{"type":"string","title":"K"}},{"name":"archive_days","in":"query","required":false,"schema":{"type":"integer","default":7,"title":"Archive Days"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/lists/default/items/paginated":{"get":{"summary":"Get Default List Items Paginated","operationId":"get_default_list_items_paginated_v1_lists_default_items_paginated_get","parameters":[{"name":"ut","in":"query","required":true,"schema":{"type":"string","title":"Ut"}},{"name":"k","in":"query","required":true,"schema":{"type":"string","title":"K"}},{"name":"page","in":"query","required":false,"schema":{"type":"integer","default":0,"title":"Page"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","default":20,"title":"Limit"}},{"name":"search","in":"query","required":false,"schema":{"type":"string","title":"Search"}},{"name":"include_archived","in":"query","required":false,"schema":{"type":"boolean","default":true,"title":"Include Archived"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/lists/feed-cards/search":{"get":{"summary":"Search Feed Cards Endpoint","operationId":"search_feed_cards_endpoint_v1_lists_feed_cards_search_get","parameters":[{"name":"ut","in":"query","required":true,"schema":{"type":"string","title":"Ut"}},{"name":"k","in":"query","required":true,"schema":{"type":"string","title":"K"}},{"name":"query","in":"query","required":false,"schema":{"type":"string","default":"","title":"Query"}},{"name":"page","in":"query","required":false,"schema":{"type":"integer","default":0,"title":"Page"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","default":20,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/lists/search-at-menu":{"get":{"summary":"Search At Menu","operationId":"search_at_menu_v1_lists_search_at_menu_get","parameters":[{"name":"ut","in":"query","required":true,"schema":{"type":"string","title":"Ut"}},{"name":"k","in":"query","required":true,"schema":{"type":"string","title":"K"}},{"name":"q","in":"query","required":true,"schema":{"type":"string","title":"Q"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","default":10,"title":"Limit"}},{"name":"include_integrations","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Include Integrations"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/lists/summarize":{"post":{"summary":"Summarize Text","operationId":"summarize_text_v1_lists_summarize_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/lists/list_items/{item_id}/generate_title":{"post":{"summary":"Generate Title From Context","operationId":"generate_title_from_context_v1_lists_list_items__item_id__generate_title_post","parameters":[{"name":"item_id","in":"path","required":true,"schema":{"type":"integer","title":"Item Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/lists/list_items/{item_id}/promote":{"post":{"summary":"Promote Suggestion","operationId":"promote_suggestion_v1_lists_list_items__item_id__promote_post","parameters":[{"name":"item_id","in":"path","required":true,"schema":{"type":"integer","title":"Item Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/users/process_message/":{"post":{"summary":"Process User Message","description":"Process a user message with the LLM, using app version to determine available tools\n\nArgs:\n    request: FastAPI request with headers containing app version\n    message_request: The user message and processing options\n    \nReturns:\n    Processed response from the LLM with tools used","operationId":"process_user_message_v1_users_process_message__post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UserMessageRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MessageResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/users/memory":{"get":{"summary":"Get Memories","operationId":"get_memories_v1_users_memory_get","parameters":[{"name":"ut","in":"query","required":true,"schema":{"type":"string","title":"Ut"}},{"name":"k","in":"query","required":true,"schema":{"type":"string","title":"K"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/users/memory/create":{"post":{"summary":"Create Memory","operationId":"create_memory_v1_users_memory_create_post","requestBody":{"content":{"application/x-www-form-urlencoded":{"schema":{"$ref":"#/components/schemas/Body_create_memory_v1_users_memory_create_post"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/users/memory/update_combined":{"post":{"summary":"Update Memory Combined","operationId":"update_memory_combined_v1_users_memory_update_combined_post","requestBody":{"content":{"application/x-www-form-urlencoded":{"schema":{"$ref":"#/components/schemas/Body_update_memory_combined_v1_users_memory_update_combined_post"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/users/memory/delete":{"post":{"summary":"Delete Memory","operationId":"delete_memory_v1_users_memory_delete_post","requestBody":{"content":{"application/x-www-form-urlencoded":{"schema":{"$ref":"#/components/schemas/Body_delete_memory_v1_users_memory_delete_post"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/images/{image_uuid}":{"get":{"summary":"Serve Image","description":"Proxy an authenticated user's image from their Fly machine.","operationId":"serve_image_v1_images__image_uuid__get","parameters":[{"name":"image_uuid","in":"path","required":true,"schema":{"type":"string","title":"Image Uuid"}},{"name":"ut","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Ut"}},{"name":"k","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"K"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/bots":{"get":{"tags":["bots"],"summary":"List Bots","operationId":"list_bots_v1_bots_get","parameters":[{"name":"ut","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Ut"}},{"name":"k","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"K"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["bots"],"summary":"Create Bot","operationId":"create_bot_v1_bots_post","parameters":[{"name":"ut","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Ut"}},{"name":"k","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"K"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/bots/{project_id}":{"patch":{"tags":["bots"],"summary":"Rename Bot","description":"Rename a project and refresh its visual identity without blocking the save.","operationId":"rename_bot_v1_bots__project_id__patch","parameters":[{"name":"project_id","in":"path","required":true,"schema":{"type":"string","title":"Project Id"}},{"name":"ut","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Ut"}},{"name":"k","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"K"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/bots/conversations":{"post":{"tags":["bots"],"summary":"Create Bot Conversation","description":"Create or select today's project context window for the authenticated user.","operationId":"create_bot_conversation_v1_bots_conversations_post","parameters":[{"name":"ut","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Ut"}},{"name":"k","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"K"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/bots/{project_id}/conversations":{"get":{"tags":["bots"],"summary":"Get Bot Conversation","description":"Look up the project's existing context binding for this authenticated user.","operationId":"get_bot_conversation_v1_bots__project_id__conversations_get","parameters":[{"name":"project_id","in":"path","required":true,"schema":{"type":"string","title":"Project Id"}},{"name":"ut","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Ut"}},{"name":"k","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"K"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/bots/{project_id}/routine-status":{"get":{"tags":["bots"],"summary":"Get Bot Routine Status","description":"Return active background routine runs for one project.","operationId":"get_bot_routine_status_v1_bots__project_id__routine_status_get","parameters":[{"name":"project_id","in":"path","required":true,"schema":{"type":"string","title":"Project Id"}},{"name":"ut","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Ut"}},{"name":"k","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"K"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/bots/{project_id}/cycles/{cycle_id}/run/stream":{"post":{"tags":["bots"],"summary":"Stream Bot Routine","operationId":"stream_bot_routine_v1_bots__project_id__cycles__cycle_id__run_stream_post","parameters":[{"name":"project_id","in":"path","required":true,"schema":{"type":"string","title":"Project Id"}},{"name":"cycle_id","in":"path","required":true,"schema":{"type":"string","title":"Cycle Id"}},{"name":"ut","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Ut"}},{"name":"k","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"K"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/bots/{suffix}":{"get":{"tags":["bots"],"summary":"Bots Proxy","operationId":"bots_proxy_v1_bots__suffix__get","parameters":[{"name":"suffix","in":"path","required":true,"schema":{"type":"string","title":"Suffix"}},{"name":"ut","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Ut"}},{"name":"k","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"K"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["bots"],"summary":"Bots Proxy","operationId":"bots_proxy_v1_bots__suffix__get","parameters":[{"name":"suffix","in":"path","required":true,"schema":{"type":"string","title":"Suffix"}},{"name":"ut","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Ut"}},{"name":"k","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"K"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"patch":{"tags":["bots"],"summary":"Bots Proxy","operationId":"bots_proxy_v1_bots__suffix__get","parameters":[{"name":"suffix","in":"path","required":true,"schema":{"type":"string","title":"Suffix"}},{"name":"ut","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Ut"}},{"name":"k","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"K"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["bots"],"summary":"Bots Proxy","operationId":"bots_proxy_v1_bots__suffix__get","parameters":[{"name":"suffix","in":"path","required":true,"schema":{"type":"string","title":"Suffix"}},{"name":"ut","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Ut"}},{"name":"k","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"K"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/charts/{chart_uuid}":{"get":{"summary":"Get Chart Data","description":"Get chart data by UUID for client-side rendering.","operationId":"get_chart_data_v1_charts__chart_uuid__get","parameters":[{"name":"chart_uuid","in":"path","required":true,"schema":{"type":"string","title":"Chart Uuid"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/documents/{document_uuid}":{"get":{"summary":"Serve Document","description":"Serve stored document with authentication.","operationId":"serve_document_v1_documents__document_uuid__get","parameters":[{"name":"document_uuid","in":"path","required":true,"schema":{"type":"string","title":"Document Uuid"}},{"name":"ut","in":"query","required":true,"schema":{"type":"string","title":"Ut"}},{"name":"k","in":"query","required":true,"schema":{"type":"string","title":"K"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/documents/upload":{"post":{"summary":"Upload Document","description":"Upload and process a document file","operationId":"upload_document_v1_documents_upload_post","parameters":[{"name":"ut","in":"query","required":true,"schema":{"type":"string","title":"Ut"}},{"name":"k","in":"query","required":true,"schema":{"type":"string","title":"K"}}],"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/Body_upload_document_v1_documents_upload_post"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/saved-documents/":{"get":{"summary":"List Saved Documents","description":"List recently saved documents for a user.\n\nLegacy stub — documents now live on per-user Fly machines.\nReturns an empty list so the Swift client doesn't 404.","operationId":"list_saved_documents_v1_saved_documents__get","parameters":[{"name":"ut","in":"query","required":true,"schema":{"type":"string","description":"User token","title":"Ut"},"description":"User token"},{"name":"k","in":"query","required":true,"schema":{"type":"string","description":"User key","title":"K"},"description":"User key"},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","description":"Maximum number of documents to return","default":50,"title":"Limit"},"description":"Maximum number of documents to return"},{"name":"search","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Search term to filter documents","title":"Search"},"description":"Search term to filter documents"},{"name":"since","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Only return documents created after this timestamp","title":"Since"},"description":"Only return documents created after this timestamp"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SavedDocumentsResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/analytics":{"post":{"summary":"Track Event","description":"Proxy analytics events from client to PostHog server-side.\n\nThis endpoint:\n1. Authenticates the user (ut/k parameters)\n2. Validates and sanitizes the analytics event\n3. Forwards to PostHog using server-side API key\n4. Prevents API key exposure in client app\n\nArgs:\n    event: Analytics event data\n    ut: User ID for authentication\n    k: Auth hash for authentication\n    request: FastAPI request with app version headers\n\nReturns:\n    Success/failure status","operationId":"track_event_v1_analytics_post","parameters":[{"name":"ut","in":"query","required":true,"schema":{"type":"string","title":"Ut"}},{"name":"k","in":"query","required":true,"schema":{"type":"string","title":"K"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AnalyticsEvent"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/analytics/batch":{"post":{"summary":"Track Events Batch","description":"Batch analytics event endpoint for better performance.\n\nAccepts multiple events in a single request to reduce network overhead.","operationId":"track_events_batch_v1_analytics_batch_post","parameters":[{"name":"ut","in":"query","required":true,"schema":{"type":"string","title":"Ut"}},{"name":"k","in":"query","required":true,"schema":{"type":"string","title":"K"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/AnalyticsEvent"},"title":"Events"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/models":{"get":{"summary":"List Cloud Models","operationId":"list_cloud_models_v1_models_get","parameters":[{"name":"ut","in":"query","required":true,"schema":{"type":"string","title":"Ut"}},{"name":"k","in":"query","required":true,"schema":{"type":"string","title":"K"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CloudModelsResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/auth/config":{"get":{"summary":"Get Auth Config","operationId":"get_auth_config_v1_auth_config_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/auth/config/salt-hash":{"get":{"summary":"Get Salt Hash","operationId":"get_salt_hash_v1_auth_config_salt_hash_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/auth/token":{"post":{"summary":"Issue Auth Token","operationId":"issue_auth_token_v1_auth_token_post","parameters":[{"name":"ut","in":"query","required":true,"schema":{"type":"string","title":"Ut"}},{"name":"k","in":"query","required":true,"schema":{"type":"string","title":"K"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AuthTokenResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/auth-sessions/list":{"post":{"tags":["auth-sessions"],"summary":"List Auth Sessions","operationId":"list_auth_sessions_v1_auth_sessions_list_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AuthSessionListRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/auth-sessions/revoke":{"post":{"tags":["auth-sessions"],"summary":"Revoke Auth Session Endpoint","operationId":"revoke_auth_session_endpoint_v1_auth_sessions_revoke_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AuthSessionDomainRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/auth-sessions/load":{"post":{"tags":["auth-sessions"],"summary":"Load Auth Session Endpoint","operationId":"load_auth_session_endpoint_v1_auth_sessions_load_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AuthSessionLoadRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/auth-sessions/cookies":{"post":{"tags":["auth-sessions"],"summary":"Upload Auth Session Cookies","operationId":"upload_auth_session_cookies_v1_auth_sessions_cookies_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AuthSessionUploadRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/endpoints/version":{"get":{"summary":"Server Version","description":"Expose the exact Git commit serving this request for desktop diagnostics.","operationId":"server_version_v1_endpoints_version_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/endpoints/config":{"get":{"summary":"Get Endpoint Config","description":"Get the current endpoint configuration with fallback options.\n\nReturns the current environment's configuration plus any available fallback endpoints,\nsorted by priority (lower priority number = higher priority).\n\nIf empty configs are returned, the app should use its built-in defaults.","operationId":"get_endpoint_config_v1_endpoints_config_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/EndpointConfigResponse"}}}}}}},"/v1/endpoints/health":{"get":{"summary":"Health Check","description":"Simple health check endpoint","operationId":"health_check_v1_endpoints_health_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/endpoints/kill-switch":{"post":{"summary":"Update Kill Switch","description":"Update the remote inference kill switch and broadcast to all connected clients.\n\nRequires X-Admin-Secret header matching ADMIN_API_SECRET env var.\n\nTo disable remote inference:\n    curl -X POST -H \"X-Admin-Secret: $ADMIN_API_SECRET\" \\\n        \"https://askjo.ai/v1/endpoints/kill-switch?enabled=false&message=Cloud%20AI%20temporarily%20unavailable\"\n\nTo re-enable:\n    curl -X POST -H \"X-Admin-Secret: $ADMIN_API_SECRET\" \\\n        \"https://askjo.ai/v1/endpoints/kill-switch?enabled=true\"","operationId":"update_kill_switch_v1_endpoints_kill_switch_post","parameters":[{"name":"enabled","in":"query","required":true,"schema":{"type":"boolean","description":"Whether remote inference should be enabled","title":"Enabled"},"description":"Whether remote inference should be enabled"},{"name":"message","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Message to display to users when disabled","title":"Message"},"description":"Message to display to users when disabled"},{"name":"X-Admin-Secret","in":"header","required":true,"schema":{"type":"string","title":"X-Admin-Secret"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/endpoints/admin/current-image":{"get":{"summary":"Get Current Image","description":"Get the current user machine Docker image tag.","operationId":"get_current_image_v1_endpoints_admin_current_image_get","parameters":[{"name":"X-Admin-Secret","in":"header","required":true,"schema":{"type":"string","title":"X-Admin-Secret"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"summary":"Set Current Image","description":"Set the current user machine Docker image tag used for new machine provisioning.","operationId":"set_current_image_v1_endpoints_admin_current_image_post","parameters":[{"name":"image","in":"query","required":true,"schema":{"type":"string","description":"Full image tag, e.g. registry.fly.io/jo-user-image:v20260302-abc1234","title":"Image"},"description":"Full image tag, e.g. registry.fly.io/jo-user-image:v20260302-abc1234"},{"name":"X-Admin-Secret","in":"header","required":true,"schema":{"type":"string","title":"X-Admin-Secret"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/endpoints/admin/rerun-crons":{"post":{"summary":"Rerun Crons","description":"Run isolated cron previews inside the uvicorn worker (has Redis relay).\n\nDebug runs deliberately avoid the recurring execution path so they cannot\nadvance ``next_run_at`` or consume the regular daily delivery markers.\nUses a shorter collector timeout (300s) and an overall per-job timeout\n(default 600s) to prevent hanging when the machine silently drops messages.\nThe normal cron path uses 600s collector idle timeout (events reset the\ndeadline during active tool use), but manual reruns should fail fast.","operationId":"rerun_crons_v1_endpoints_admin_rerun_crons_post","parameters":[{"name":"job_ids","in":"query","required":true,"schema":{"type":"array","items":{"type":"integer"},"description":"Cron job IDs to re-run","title":"Job Ids"},"description":"Cron job IDs to re-run"},{"name":"timeout","in":"query","required":false,"schema":{"type":"integer","description":"Overall timeout per job in seconds (default 600)","default":600,"title":"Timeout"},"description":"Overall timeout per job in seconds (default 600)"},{"name":"briefing_reference_at","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Original ISO-8601 scheduled time for daily-briefing replays","title":"Briefing Reference At"},"description":"Original ISO-8601 scheduled time for daily-briefing replays"},{"name":"X-Admin-Secret","in":"header","required":true,"schema":{"type":"string","title":"X-Admin-Secret"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/vote/up":{"post":{"tags":["Votes"],"summary":"Vote Up","operationId":"vote_up_v1_vote_up_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/vote/down":{"post":{"tags":["Votes"],"summary":"Vote Down","operationId":"vote_down_v1_vote_down_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/integration-details":{"post":{"summary":"Get Integration Details","description":"Fetch full details for a selected integration item and return formatted text for insertion.\n\nThis endpoint is called when user selects an item from the @ menu dropdown\nto fetch complete details and generate text to insert into the message.","operationId":"get_integration_details_v1_integration_details_post","parameters":[{"name":"ut","in":"query","required":true,"schema":{"type":"string","title":"Ut"}},{"name":"k","in":"query","required":true,"schema":{"type":"string","title":"K"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/IntegrationDetailRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IntegrationDetailResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/api/youtube/search":{"get":{"summary":"Youtube Search Endpoint","description":"Search YouTube videos using YouTube Data API v3","operationId":"youtube_search_endpoint_v1_api_youtube_search_get","parameters":[{"name":"query","in":"query","required":true,"schema":{"type":"string","description":"Search query","title":"Query"},"description":"Search query"},{"name":"max_results","in":"query","required":false,"schema":{"type":"integer","description":"Maximum results","default":10,"title":"Max Results"},"description":"Maximum results"},{"name":"ut","in":"query","required":true,"schema":{"type":"string","description":"User token","title":"Ut"},"description":"User token"},{"name":"k","in":"query","required":true,"schema":{"type":"string","description":"Key","title":"K"},"description":"Key"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/api/podcasts/search":{"get":{"summary":"Search Podcasts","description":"Search Apple Podcasts using iTunes API","operationId":"search_podcasts_v1_api_podcasts_search_get","parameters":[{"name":"query","in":"query","required":true,"schema":{"type":"string","description":"Search query","title":"Query"},"description":"Search query"},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","description":"Maximum results","default":10,"title":"Limit"},"description":"Maximum results"},{"name":"ut","in":"query","required":true,"schema":{"type":"string","description":"User token","title":"Ut"},"description":"User token"},{"name":"k","in":"query","required":true,"schema":{"type":"string","description":"Key","title":"K"},"description":"Key"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/import/openclaw":{"post":{"summary":"Import Openclaw Endpoint","description":"Import OpenClaw workspace ZIP with SSE progress updates","operationId":"import_openclaw_endpoint_v1_import_openclaw_post","parameters":[{"name":"ut","in":"query","required":true,"schema":{"type":"string","title":"Ut"}},{"name":"k","in":"query","required":true,"schema":{"type":"string","title":"K"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/skills":{"get":{"tags":["skills"],"summary":"List Skills","description":"List all available skills (catalog).","operationId":"list_skills_v1_skills_get","parameters":[{"name":"source","in":"query","required":false,"schema":{"anyOf":[{"enum":["anthropic","clawdhub"],"type":"string"},{"type":"null"}],"title":"Source"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/skills/user":{"get":{"tags":["skills"],"summary":"List User Skills","description":"List skills enabled for a specific user. Syncs missing skills to Fly machine if needed.","operationId":"list_user_skills_v1_skills_user_get","parameters":[{"name":"ut","in":"query","required":true,"schema":{"type":"string","title":"Ut"}},{"name":"k","in":"query","required":true,"schema":{"type":"string","title":"K"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/skills/user/sync":{"post":{"tags":["skills"],"summary":"Sync User Skills","description":"Force sync all enabled skills to user's Fly machine.","operationId":"sync_user_skills_v1_skills_user_sync_post","parameters":[{"name":"ut","in":"query","required":true,"schema":{"type":"string","title":"Ut"}},{"name":"k","in":"query","required":true,"schema":{"type":"string","title":"K"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/skills/user/{skill_id}":{"post":{"tags":["skills"],"summary":"Add User Skill","description":"Add a skill to a user's enabled skills.","operationId":"add_user_skill_v1_skills_user__skill_id__post","parameters":[{"name":"skill_id","in":"path","required":true,"schema":{"type":"string","title":"Skill Id"}},{"name":"ut","in":"query","required":true,"schema":{"type":"string","title":"Ut"}},{"name":"k","in":"query","required":true,"schema":{"type":"string","title":"K"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"patch":{"tags":["skills"],"summary":"Update User Skill","description":"Enable or disable a skill for a user.","operationId":"update_user_skill_v1_skills_user__skill_id__patch","parameters":[{"name":"skill_id","in":"path","required":true,"schema":{"type":"string","title":"Skill Id"}},{"name":"ut","in":"query","required":true,"schema":{"type":"string","title":"Ut"}},{"name":"k","in":"query","required":true,"schema":{"type":"string","title":"K"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/EnableSkillRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["skills"],"summary":"Remove User Skill","description":"Remove a skill from a user's enabled skills.","operationId":"remove_user_skill_v1_skills_user__skill_id__delete","parameters":[{"name":"skill_id","in":"path","required":true,"schema":{"type":"string","title":"Skill Id"}},{"name":"ut","in":"query","required":true,"schema":{"type":"string","title":"Ut"}},{"name":"k","in":"query","required":true,"schema":{"type":"string","title":"K"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/skills/install":{"post":{"tags":["skills"],"summary":"Install Skill","operationId":"install_skill_v1_skills_install_post","parameters":[{"name":"ut","in":"query","required":true,"schema":{"type":"string","title":"Ut"}},{"name":"k","in":"query","required":true,"schema":{"type":"string","title":"K"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/InstallSkillRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/skills/install/url":{"post":{"tags":["skills"],"summary":"Install Skill From Url","operationId":"install_skill_from_url_v1_skills_install_url_post","parameters":[{"name":"ut","in":"query","required":true,"schema":{"type":"string","title":"Ut"}},{"name":"k","in":"query","required":true,"schema":{"type":"string","title":"K"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/InstallSkillUrlRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/skills/{skill_id}/enable":{"patch":{"tags":["skills"],"summary":"Enable Skill","operationId":"enable_skill_v1_skills__skill_id__enable_patch","parameters":[{"name":"skill_id","in":"path","required":true,"schema":{"type":"string","title":"Skill Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/EnableSkillRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/skills/{skill_id}":{"delete":{"tags":["skills"],"summary":"Delete Skill","operationId":"delete_skill_v1_skills__skill_id__delete","parameters":[{"name":"skill_id","in":"path","required":true,"schema":{"type":"string","title":"Skill Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/skills/{slug}/bundle":{"get":{"tags":["skills"],"summary":"Download Bundle","operationId":"download_bundle_v1_skills__slug__bundle_get","parameters":[{"name":"slug","in":"path","required":true,"schema":{"type":"string","title":"Slug"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/user_facts":{"get":{"summary":"Get User Facts","operationId":"get_user_facts_v1_user_facts_get","parameters":[{"name":"ut","in":"query","required":true,"schema":{"type":"string","title":"Ut"}},{"name":"k","in":"query","required":true,"schema":{"type":"string","title":"K"}},{"name":"labels","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Labels"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"summary":"Create User Fact","operationId":"create_user_fact_v1_user_facts_post","requestBody":{"required":true,"content":{"application/x-www-form-urlencoded":{"schema":{"$ref":"#/components/schemas/Body_create_user_fact_v1_user_facts_post"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/user_facts/{fact_id}":{"put":{"summary":"Update User Fact","operationId":"update_user_fact_v1_user_facts__fact_id__put","parameters":[{"name":"fact_id","in":"path","required":true,"schema":{"type":"integer","title":"Fact Id"}}],"requestBody":{"required":true,"content":{"application/x-www-form-urlencoded":{"schema":{"$ref":"#/components/schemas/Body_update_user_fact_v1_user_facts__fact_id__put"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"summary":"Delete User Fact","operationId":"delete_user_fact_v1_user_facts__fact_id__delete","parameters":[{"name":"fact_id","in":"path","required":true,"schema":{"type":"integer","title":"Fact Id"}}],"requestBody":{"required":true,"content":{"application/x-www-form-urlencoded":{"schema":{"$ref":"#/components/schemas/Body_delete_user_fact_v1_user_facts__fact_id__delete"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/cron_jobs/":{"post":{"summary":"Create Cron Job","operationId":"create_cron_job_v1_cron_jobs__post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}},"get":{"summary":"List Cron Jobs","operationId":"list_cron_jobs_v1_cron_jobs__get","parameters":[{"name":"user_id","in":"query","required":true,"schema":{"type":"integer","title":"User Id"}},{"name":"k","in":"query","required":false,"schema":{"type":"string","title":"K"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/cron_jobs/{job_id}":{"put":{"summary":"Update Cron Job","operationId":"update_cron_job_v1_cron_jobs__job_id__put","parameters":[{"name":"job_id","in":"path","required":true,"schema":{"type":"integer","title":"Job Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"summary":"Delete Cron Job","operationId":"delete_cron_job_v1_cron_jobs__job_id__delete","parameters":[{"name":"job_id","in":"path","required":true,"schema":{"type":"integer","title":"Job Id"}},{"name":"user_id","in":"query","required":true,"schema":{"type":"integer","title":"User Id"}},{"name":"k","in":"query","required":false,"schema":{"type":"string","title":"K"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/cron_jobs/preview":{"post":{"summary":"Queue Adhoc Cron","description":"Queue an ad-hoc prompt for execution with full tool access and deliver through the actual channel.","operationId":"queue_adhoc_cron_v1_cron_jobs_preview_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/cron_jobs/adhoc":{"post":{"summary":"Queue Adhoc Cron","description":"Queue an ad-hoc prompt for execution with full tool access and deliver through the actual channel.","operationId":"queue_adhoc_cron_v1_cron_jobs_adhoc_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/cron_jobs/adhoc/internal":{"post":{"summary":"Queue Adhoc Cron Internal","description":"Queue an ad-hoc prompt via internal auth (machine → joprod). Same execution path as normal crons.","operationId":"queue_adhoc_cron_internal_v1_cron_jobs_adhoc_internal_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/cron_jobs/{job_id}/preview":{"post":{"summary":"Preview Cron Job","description":"Queue a cron preview and deliver it through the job's actual channel.","operationId":"preview_cron_job_v1_cron_jobs__job_id__preview_post","parameters":[{"name":"job_id","in":"path","required":true,"schema":{"type":"integer","title":"Job Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/cron_jobs/briefing/{token}":{"get":{"summary":"View Briefing","operationId":"view_briefing_v1_cron_jobs_briefing__token__get","parameters":[{"name":"token","in":"path","required":true,"schema":{"type":"string","title":"Token"}}],"responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/cron_jobs/manual-today-cycle":{"post":{"summary":"Run Manual Today Cycle","description":"Run the Today action-tracking cycle immediately for manual QA/debugging.","operationId":"run_manual_today_cycle_v1_cron_jobs_manual_today_cycle_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/cron_jobs/trigger-briefing":{"post":{"summary":"Trigger Onboarding Briefing","description":"Trigger the user's daily-briefing cron job on demand (e.g. during onboarding).\n\nFinds the user's daily-briefing system cron and executes it in the background\nusing the normal cron execution pipeline. Returns immediately.","operationId":"trigger_onboarding_briefing_v1_cron_jobs_trigger_briefing_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/cron_jobs/briefing-preview":{"post":{"summary":"Briefing Preview","description":"Generate a real briefing synchronously and return the text.\n\nUses the same data-gathering + LLM synthesis pipeline as the daily briefing\ncron, but returns the result directly instead of delivering to channels.\nDesigned for onboarding previews where we want to show the user their\nactual briefing inline.\n\nTimeout: 150s total (data gathering + synthesis).","operationId":"briefing_preview_v1_cron_jobs_briefing_preview_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/tui/login":{"get":{"summary":"Tui Login","description":"Initiate Google OAuth for TUI login.\n\nSets up the OAuth redirect directly (rather than routing through\n/auth/google/auth) so we can store tui_callback_port in the session\nAFTER save_new_state() clears it.","operationId":"tui_login_v1_tui_login_get","parameters":[{"name":"port","in":"query","required":true,"schema":{"type":"integer","description":"Local callback port","title":"Port"},"description":"Local callback port"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/tui/token":{"post":{"summary":"Issue Tui Token","description":"Exchange user auth (ut + k) for Fly machine credentials.\n\nReturns the sprite_token (HMAC secret) and machine URL so the\nTUI extension can sign its own short-lived JWTs.","operationId":"issue_tui_token_v1_tui_token_post","parameters":[{"name":"ut","in":"query","required":true,"schema":{"type":"string","title":"Ut"}},{"name":"k","in":"query","required":true,"schema":{"type":"string","title":"K"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/claude-code/login":{"get":{"summary":"Claude Code Login","operationId":"claude_code_login_v1_claude_code_login_get","parameters":[{"name":"port","in":"query","required":true,"schema":{"type":"integer","description":"Local callback port","title":"Port"},"description":"Local callback port"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/claude-code/token":{"post":{"summary":"Issue Claude Code Token","operationId":"issue_claude_code_token_v1_claude_code_token_post","parameters":[{"name":"ut","in":"query","required":true,"schema":{"type":"string","title":"Ut"}},{"name":"k","in":"query","required":true,"schema":{"type":"string","title":"K"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/codex/login":{"get":{"summary":"Codex Login","operationId":"codex_login_v1_codex_login_get","parameters":[{"name":"port","in":"query","required":true,"schema":{"type":"integer","description":"Local callback port","title":"Port"},"description":"Local callback port"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/codex/token":{"post":{"summary":"Issue Codex Token","operationId":"issue_codex_token_v1_codex_token_post","parameters":[{"name":"ut","in":"query","required":true,"schema":{"type":"string","title":"Ut"}},{"name":"k","in":"query","required":true,"schema":{"type":"string","title":"K"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/llm-pool/connect/anthropic":{"post":{"summary":"Connect Anthropic","operationId":"connect_anthropic_v1_llm_pool_connect_anthropic_post","parameters":[{"name":"ut","in":"query","required":true,"schema":{"type":"string","title":"Ut"}},{"name":"k","in":"query","required":true,"schema":{"type":"string","title":"K"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConnectAnthropicRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/llm-pool/connect/openai":{"post":{"summary":"Connect Openai","operationId":"connect_openai_v1_llm_pool_connect_openai_post","parameters":[{"name":"ut","in":"query","required":true,"schema":{"type":"string","title":"Ut"}},{"name":"k","in":"query","required":true,"schema":{"type":"string","title":"K"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConnectOpenAIRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/llm-pool/subscriptions":{"get":{"summary":"List Subscriptions","operationId":"list_subscriptions_v1_llm_pool_subscriptions_get","parameters":[{"name":"ut","in":"query","required":true,"schema":{"type":"string","title":"Ut"}},{"name":"k","in":"query","required":true,"schema":{"type":"string","title":"K"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/llm-pool/subscriptions/{provider}":{"delete":{"summary":"Disconnect Subscription","operationId":"disconnect_subscription_v1_llm_pool_subscriptions__provider__delete","parameters":[{"name":"provider","in":"path","required":true,"schema":{"type":"string","title":"Provider"}},{"name":"ut","in":"query","required":true,"schema":{"type":"string","title":"Ut"}},{"name":"k","in":"query","required":true,"schema":{"type":"string","title":"K"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/llm-pool/my-tokens":{"get":{"summary":"My Tokens","description":"Return the calling user's decrypted pool tokens for the client to cache\nand forward as request headers to the LLM proxy.\n\nClients call this once per session (or hourly for OpenAI tokens that\nexpire in ~24h). The llm-proxy itself never calls jo_bot — it only acts on\ntokens that arrive in request headers.","operationId":"my_tokens_v1_llm_pool_my_tokens_get","parameters":[{"name":"ut","in":"query","required":true,"schema":{"type":"string","title":"Ut"}},{"name":"k","in":"query","required":true,"schema":{"type":"string","title":"K"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/internal/llm-pool/tokens/{user_id}":{"get":{"summary":"Internal Get Tokens","operationId":"internal_get_tokens_v1_internal_llm_pool_tokens__user_id__get","parameters":[{"name":"user_id","in":"path","required":true,"schema":{"type":"integer","title":"User Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/voice/preview":{"get":{"summary":"Voice Preview","operationId":"voice_preview_v1_voice_preview_get","parameters":[{"name":"voice","in":"query","required":false,"schema":{"type":"string","pattern":"^(female|male)$","default":"female","title":"Voice"}},{"name":"speed","in":"query","required":false,"schema":{"type":"number","maximum":1.0,"minimum":-1.0,"default":0.0,"title":"Speed"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/privacy/preferences":{"get":{"summary":"Get Privacy Preferences","operationId":"get_privacy_preferences_v1_privacy_preferences_get","parameters":[{"name":"ut","in":"query","required":true,"schema":{"type":"string","title":"Ut"}},{"name":"k","in":"query","required":true,"schema":{"type":"string","title":"K"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PrivacyPreferencesResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"summary":"Update Privacy Preferences","operationId":"update_privacy_preferences_v1_privacy_preferences_post","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PrivacyPreferencesRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PrivacyPreferencesResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/privacy/data-export":{"post":{"summary":"Request Data Export","operationId":"request_data_export_v1_privacy_data_export_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PrivacyActionRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PrivacyActionResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/privacy/delete-account":{"post":{"summary":"Request Account Deletion","operationId":"request_account_deletion_v1_privacy_delete_account_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PrivacyActionRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PrivacyActionResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/privacy/verify/{token}":{"get":{"summary":"Verify Privacy Request","operationId":"verify_privacy_request_v1_privacy_verify__token__get","parameters":[{"name":"token","in":"path","required":true,"schema":{"type":"string","title":"Token"}}],"responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/telegram-link/generate":{"post":{"tags":["Telegram Link"],"summary":"Generate Link Code","description":"Generate a code that a user can enter in Telegram to link their account.\n\nReturns a 6-character alphanumeric code valid for 10 minutes.","operationId":"generate_link_code_v1_telegram_link_generate_post","parameters":[{"name":"ut","in":"query","required":true,"schema":{"type":"string","title":"Ut"}},{"name":"k","in":"query","required":true,"schema":{"type":"string","title":"K"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/r/{token}":{"get":{"summary":"Redirect Tracked Link","operationId":"redirect_tracked_link_v1_r__token__get","parameters":[{"name":"token","in":"path","required":true,"schema":{"type":"string","title":"Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/r/{token}/cached":{"get":{"summary":"Check Cached Summary","description":"Check if a summary already exists for this tracked link.","operationId":"check_cached_summary_v1_r__token__cached_get","parameters":[{"name":"token","in":"path","required":true,"schema":{"type":"string","title":"Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"summary":"Clear Cached Summary","description":"Delete cached summary for this tracked link (dev/test use).","operationId":"clear_cached_summary_v1_r__token__cached_delete","parameters":[{"name":"token","in":"path","required":true,"schema":{"type":"string","title":"Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/r/{token}/save":{"post":{"summary":"Save Article Summary","description":"Save a completed summary and return a share URL.","operationId":"save_article_summary_v1_r__token__save_post","parameters":[{"name":"token","in":"path","required":true,"schema":{"type":"string","title":"Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SaveRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/r/{token}/publish":{"post":{"summary":"Publish Article Summary","description":"Mark a saved summary as public and return the share URL.","operationId":"publish_article_summary_v1_r__token__publish_post","parameters":[{"name":"token","in":"path","required":true,"schema":{"type":"string","title":"Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/s/{slug}":{"get":{"summary":"View Shared Summary","description":"Public share page — pre-rendered summary with OG tags.","operationId":"view_shared_summary_v1_s__slug__get","parameters":[{"name":"slug","in":"path","required":true,"schema":{"type":"string","title":"Slug"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/s/{slug}/og.png":{"get":{"summary":"Share Og Image","description":"Dynamic OG image rendered as PNG (SVG → PNG via resvg).","operationId":"share_og_image_v1_s__slug__og_png_get","parameters":[{"name":"slug","in":"path","required":true,"schema":{"type":"string","title":"Slug"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/r/{token}/stream":{"get":{"summary":"Stream Article Summary","description":"SSE endpoint that fetches the article and streams an LLM summary.","operationId":"stream_article_summary_v1_r__token__stream_get","parameters":[{"name":"token","in":"path","required":true,"schema":{"type":"string","title":"Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/test/article-summary":{"get":{"summary":"Article Summary Test Page","description":"Interactive test page for the full article summary → share flow.","operationId":"article_summary_test_page_v1_test_article_summary_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/confirm":{"get":{"summary":"Confirm Meeting","operationId":"confirm_meeting_confirm_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/v1/onboarding/public_web_search_plan":{"post":{"summary":"Public Web Search Plan","operationId":"public_web_search_plan_v1_onboarding_public_web_search_plan_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OnboardingPublicWebSearchPlanRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/OnboardingPublicWebSearchPlanResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/onboarding/public_web_disambiguate":{"post":{"summary":"Public Web Disambiguate","operationId":"public_web_disambiguate_v1_onboarding_public_web_disambiguate_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OnboardingPublicWebDisambiguateRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/OnboardingPublicWebDisambiguateResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/onboarding/public_web_select_results":{"post":{"summary":"Public Web Select Results","operationId":"public_web_select_results_v1_onboarding_public_web_select_results_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OnboardingPublicWebSelectResultsRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/OnboardingPublicWebSelectResultsResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/onboarding/public_web_profile":{"post":{"summary":"Stream Public Web Profile","operationId":"stream_public_web_profile_v1_onboarding_public_web_profile_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OnboardingPublicWebProfileRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/onboarding/profile_runs/start":{"post":{"summary":"Onboarding Profile Runs Start","operationId":"onboarding_profile_runs_start_v1_onboarding_profile_runs_start_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OnboardingProfileRunStartRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/onboarding/profile_runs/{run_id}":{"get":{"summary":"Onboarding Profile Runs Get","operationId":"onboarding_profile_runs_get_v1_onboarding_profile_runs__run_id__get","parameters":[{"name":"run_id","in":"path","required":true,"schema":{"type":"integer","title":"Run Id"}},{"name":"ut","in":"query","required":true,"schema":{"anyOf":[{"type":"string"},{"type":"integer"}],"title":"Ut"}},{"name":"k","in":"query","required":true,"schema":{"type":"string","title":"K"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/onboarding/profile_runs/{run_id}/sources/{source}/connect":{"post":{"summary":"Onboarding Profile Runs Connect Source","operationId":"onboarding_profile_runs_connect_source_v1_onboarding_profile_runs__run_id__sources__source__connect_post","parameters":[{"name":"run_id","in":"path","required":true,"schema":{"type":"integer","title":"Run Id"}},{"name":"source","in":"path","required":true,"schema":{"type":"string","title":"Source"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OnboardingProfileSourceConnectRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/onboarding/profile_runs/{run_id}/sources/{source}/summary":{"post":{"summary":"Onboarding Profile Runs Submit Source Summary","operationId":"onboarding_profile_runs_submit_source_summary_v1_onboarding_profile_runs__run_id__sources__source__summary_post","parameters":[{"name":"run_id","in":"path","required":true,"schema":{"type":"integer","title":"Run Id"}},{"name":"source","in":"path","required":true,"schema":{"type":"string","title":"Source"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OnboardingProfileSourceSummaryRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/onboarding/browser/action_candidates":{"post":{"summary":"Onboarding Browser Action Candidates","operationId":"onboarding_browser_action_candidates_v1_onboarding_browser_action_candidates_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OnboardingBrowserActionRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/onboarding/notes/action_candidates":{"post":{"summary":"Onboarding Notes Action Candidates","operationId":"onboarding_notes_action_candidates_v1_onboarding_notes_action_candidates_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OnboardingNotesActionRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/onboarding/group_chats/action_candidates":{"post":{"summary":"Onboarding Group Chat Action Candidates","operationId":"onboarding_group_chat_action_candidates_v1_onboarding_group_chats_action_candidates_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OnboardingDirectChatActionRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/onboarding/direct_chats/action_candidates":{"post":{"summary":"Onboarding Direct Chat Action Candidates","operationId":"onboarding_direct_chat_action_candidates_v1_onboarding_direct_chats_action_candidates_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OnboardingDirectChatActionRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/onboarding/profile_runs/{run_id}/confirm":{"post":{"summary":"Onboarding Profile Runs Confirm","operationId":"onboarding_profile_runs_confirm_v1_onboarding_profile_runs__run_id__confirm_post","parameters":[{"name":"run_id","in":"path","required":true,"schema":{"type":"integer","title":"Run Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OnboardingProfileConfirmRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/onboarding/profile_runs/{run_id}/reject":{"post":{"summary":"Onboarding Profile Runs Reject","operationId":"onboarding_profile_runs_reject_v1_onboarding_profile_runs__run_id__reject_post","parameters":[{"name":"run_id","in":"path","required":true,"schema":{"type":"integer","title":"Run Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OnboardingProfileRejectRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/onboarding/profile_runs/{run_id}/feedback":{"post":{"summary":"Onboarding Profile Runs Feedback","operationId":"onboarding_profile_runs_feedback_v1_onboarding_profile_runs__run_id__feedback_post","parameters":[{"name":"run_id","in":"path","required":true,"schema":{"type":"integer","title":"Run Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OnboardingProfileFeedbackRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/onboarding/profile_runs/{run_id}/events":{"get":{"summary":"Onboarding Profile Runs Events","operationId":"onboarding_profile_runs_events_v1_onboarding_profile_runs__run_id__events_get","parameters":[{"name":"run_id","in":"path","required":true,"schema":{"type":"integer","title":"Run Id"}},{"name":"ut","in":"query","required":true,"schema":{"anyOf":[{"type":"string"},{"type":"integer"}],"title":"Ut"}},{"name":"k","in":"query","required":true,"schema":{"type":"string","title":"K"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/onboarding/web_integrations/status":{"get":{"summary":"Web Integrations Status","operationId":"web_integrations_status_v1_onboarding_web_integrations_status_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/onboarding/web_integrations/github-repositories":{"get":{"summary":"Web Github Repositories","operationId":"web_github_repositories_v1_onboarding_web_integrations_github_repositories_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/onboarding/web_integrations/google-accounts":{"get":{"summary":"Web Google Accounts","operationId":"web_google_accounts_v1_onboarding_web_integrations_google_accounts_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/onboarding/web_integrations/slack-accounts":{"get":{"summary":"Web Slack Accounts","operationId":"web_slack_accounts_v1_onboarding_web_integrations_slack_accounts_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/onboarding/web_integrations/accounts/scope":{"patch":{"summary":"Web Integration Account Scope","operationId":"web_integration_account_scope_v1_onboarding_web_integrations_accounts_scope_patch","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/onboarding/web_integrations/telegram-link":{"post":{"summary":"Web Telegram Link","operationId":"web_telegram_link_v1_onboarding_web_integrations_telegram_link_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/onboarding/web_integrations/apple-messages-link":{"post":{"summary":"Web Apple Messages Link","operationId":"web_apple_messages_link_v1_onboarding_web_integrations_apple_messages_link_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/onboarding/web_integrations/apple-messages-status":{"get":{"summary":"Web Apple Messages Status","operationId":"web_apple_messages_status_v1_onboarding_web_integrations_apple_messages_status_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/onboarding/web_integrations/whatsapp-connect":{"post":{"summary":"Web Whatsapp Connect","operationId":"web_whatsapp_connect_v1_onboarding_web_integrations_whatsapp_connect_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/onboarding/web_integrations/whatsapp-qr":{"get":{"summary":"Web Whatsapp Qr","operationId":"web_whatsapp_qr_v1_onboarding_web_integrations_whatsapp_qr_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/onboarding/web_integrations/whatsapp-disconnect":{"post":{"summary":"Web Whatsapp Disconnect","operationId":"web_whatsapp_disconnect_v1_onboarding_web_integrations_whatsapp_disconnect_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/onboarding/web_integrations/{channel}/disconnect":{"post":{"summary":"Web Messaging Disconnect","operationId":"web_messaging_disconnect_v1_onboarding_web_integrations__channel__disconnect_post","parameters":[{"name":"channel","in":"path","required":true,"schema":{"type":"string","title":"Channel"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/onboarding/web_snapshot":{"get":{"summary":"Web Onboarding Snapshot","description":"Return only the authenticated identity and Google connection state for web onboarding.","operationId":"web_onboarding_snapshot_v1_onboarding_web_snapshot_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/onboarding/web_integrations/events":{"get":{"summary":"Web Integration Events","operationId":"web_integration_events_v1_onboarding_web_integrations_events_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/onboarding/web_integration_actions/{integration}":{"get":{"summary":"Web Integration Actions","description":"Fetch fresh connected-source context and return onboarding action cards.","operationId":"web_integration_actions_v1_onboarding_web_integration_actions__integration__get","parameters":[{"name":"integration","in":"path","required":true,"schema":{"type":"string","title":"Integration"}}],"requestBody":{"content":{"application/json":{"schema":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"title":"Excluded Title"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/onboarding/web_action_vote":{"post":{"summary":"Web Action Vote","description":"Persist an onboarding suggestion vote and project it into the user's feed.","operationId":"web_action_vote_v1_onboarding_web_action_vote_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OnboardingActionVote"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/onboarding/web_receipts_preview":{"get":{"summary":"Web Receipts Preview","operationId":"web_receipts_preview_v1_onboarding_web_receipts_preview_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/onboarding/web_receipt_facts":{"get":{"summary":"Web Receipt Facts","operationId":"web_receipt_facts_v1_onboarding_web_receipt_facts_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/OnboardingReceiptFactsResponse"}}}}}}},"/v1/onboarding/email_understanding/events":{"get":{"summary":"Email Understanding Events","operationId":"email_understanding_events_v1_onboarding_email_understanding_events_get","parameters":[{"name":"ut","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"integer"},{"type":"null"}],"title":"Ut"}},{"name":"k","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"K"}},{"name":"days","in":"query","required":false,"schema":{"type":"integer","default":90,"title":"Days"}},{"name":"account_label","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Account Label"}}],"requestBody":{"content":{"application/json":{"schema":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"title":"Excluded Title"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/onboarding/web_receipt_facts/events":{"get":{"summary":"Web Receipt Facts Events","operationId":"web_receipt_facts_events_v1_onboarding_web_receipt_facts_events_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/onboarding/web_public_profile":{"get":{"summary":"Web Public Profile","operationId":"web_public_profile_v1_onboarding_web_public_profile_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/onboarding/web_public_profile/confirm":{"post":{"summary":"Web Public Profile Confirm","operationId":"web_public_profile_confirm_v1_onboarding_web_public_profile_confirm_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/onboarding/web_public_profile/events":{"get":{"summary":"Web Public Profile Events","operationId":"web_public_profile_events_v1_onboarding_web_public_profile_events_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/whatsapp/session":{"get":{"tags":["whatsapp"],"summary":"Get Session","description":"Get encrypted WhatsApp session for a user.","operationId":"get_session_api_whatsapp_session_get","parameters":[{"name":"user_id","in":"query","required":true,"schema":{"type":"integer","title":"User Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["whatsapp"],"summary":"Save Session","description":"Save encrypted WhatsApp session for a user.","operationId":"save_session_api_whatsapp_session_post","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SessionData"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["whatsapp"],"summary":"Delete Session","description":"Delete WhatsApp session for a user.","operationId":"delete_session_api_whatsapp_session_delete","parameters":[{"name":"user_id","in":"query","required":true,"schema":{"type":"integer","title":"User Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/whatsapp/connect":{"post":{"tags":["whatsapp"],"summary":"Connect","description":"Start QR flow by creating/starting the session on the jo-whatsapp server.","operationId":"connect_api_whatsapp_connect_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AuthedRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/whatsapp/qr":{"get":{"tags":["whatsapp"],"summary":"Qr","description":"SSE proxy of QR codes from jo-whatsapp /sessions/qr.","operationId":"qr_api_whatsapp_qr_get","parameters":[{"name":"ut","in":"query","required":true,"schema":{"type":"string","title":"Ut"}},{"name":"k","in":"query","required":true,"schema":{"type":"string","title":"K"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/whatsapp/status":{"get":{"tags":["whatsapp"],"summary":"Status","description":"Proxy status from jo-whatsapp /sessions/status.\nAlso persists whatsapp_user_id + whatsapp_jid once logged in.\n\nIf user has whatsapp_jid set, ensures session is created/restored on jo-whatsapp\nbefore checking status (handles server restart case).","operationId":"status_api_whatsapp_status_get","parameters":[{"name":"ut","in":"query","required":true,"schema":{"type":"string","title":"Ut"}},{"name":"k","in":"query","required":true,"schema":{"type":"string","title":"K"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/whatsapp/disconnect":{"post":{"tags":["whatsapp"],"summary":"Disconnect","description":"Disconnect jo-whatsapp session and clear persisted state.","operationId":"disconnect_api_whatsapp_disconnect_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AuthedRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/tg-wh":{"post":{"summary":"Telegram Webhook","description":"Receive Telegram updates via webhook.\n\nReturns 200 immediately and processes the update in a background task.\nThis prevents Telegram's ~60s webhook timeout from triggering retries\nduring long-running LLM calls.","operationId":"telegram_webhook_tg_wh_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/email-test":{"post":{"summary":"Email Test","description":"Send a test email from the user's Jo email to their personal email.","operationId":"email_test_email_test_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/email-webhook":{"post":{"summary":"Email Inbound Webhook","description":"Receive inbound emails from Resend webhook.\n\nResend POSTs webhook events for inbound emails. The payload contains\nthe parsed email with from, to, subject, text, html, and attachments.\n\nReturns 200 immediately and processes in background (same as Telegram pattern).","operationId":"email_inbound_webhook_email_webhook_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/gmail-watch-webhook":{"post":{"summary":"Gmail Watch Webhook","description":"Handle Gmail Pub/Sub push notification for SENT mail watch.\n\nSecurity:\n- Validates Google OIDC token (issuer, audience, signature, expiry)\n- Rejects invalid/missing auth\n\nIdempotency:\n- Uses DB-backed atomic claims to prevent duplicate processing\n- Handles race conditions from concurrent notifications\n\nRecovery:\n- Bounded backfill on expired history_id\n- Atomic cursor updates","operationId":"gmail_watch_webhook_gmail_watch_webhook_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/loops/webhook":{"post":{"tags":["Loops"],"summary":"Loops Webhook","operationId":"loops_webhook_loops_webhook_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/newsletter/read/{token}":{"get":{"summary":"Newsletter Read More","description":"Serve the SSE summary page for a newsletter item.","operationId":"newsletter_read_more_v1_newsletter_read__token__get","parameters":[{"name":"token","in":"path","required":true,"schema":{"type":"string","title":"Token"}},{"name":"ch","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Ch"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/newsletter/read/{token}/stream":{"get":{"summary":"Stream Newsletter Summary","description":"SSE endpoint that reads cached newsletter and streams an LLM summary.","operationId":"stream_newsletter_summary_v1_newsletter_read__token__stream_get","parameters":[{"name":"token","in":"path","required":true,"schema":{"type":"string","title":"Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/newsletter/read/{token}/cached":{"get":{"summary":"Check Cached Newsletter","description":"Newsletter summaries are always streamed fresh (no DB cache).","operationId":"check_cached_newsletter_v1_newsletter_read__token__cached_get","parameters":[{"name":"token","in":"path","required":true,"schema":{"type":"string","title":"Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/newsletter/read/{token}/save":{"post":{"summary":"Save Newsletter Summary","description":"Save a completed newsletter summary for sharing.","operationId":"save_newsletter_summary_v1_newsletter_read__token__save_post","parameters":[{"name":"token","in":"path","required":true,"schema":{"type":"string","title":"Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/_SaveRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/newsletter/read/{token}/publish":{"post":{"summary":"Publish Newsletter Summary","description":"Mark a saved newsletter summary as public and return share URL.","operationId":"publish_newsletter_summary_v1_newsletter_read__token__publish_post","parameters":[{"name":"token","in":"path","required":true,"schema":{"type":"string","title":"Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/subscriptions/checkout":{"post":{"summary":"Create Checkout Session","description":"Create a Stripe Checkout session for subscribing to a plan.","operationId":"create_checkout_session_v1_subscriptions_checkout_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CheckoutRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CheckoutResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/subscriptions/checkout-link":{"get":{"summary":"Checkout From Signed Link","description":"Redirect a signed billing email link to Stripe Checkout or Portal.","operationId":"checkout_from_signed_link_v1_subscriptions_checkout_link_get","parameters":[{"name":"token","in":"query","required":true,"schema":{"type":"string","title":"Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/subscriptions/status":{"post":{"summary":"Get Subscription Status","description":"Get the current subscription status for the authenticated user.","operationId":"get_subscription_status_v1_subscriptions_status_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StatusRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StatusResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/subscriptions/family-billing-request":{"post":{"summary":"Request Family Owner Billing","operationId":"request_family_owner_billing_v1_subscriptions_family_billing_request_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StatusRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FamilyBillingRequestResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/subscriptions/portal":{"post":{"summary":"Create Portal Session","description":"Create a Stripe Customer Portal session for managing the subscription.","operationId":"create_portal_session_v1_subscriptions_portal_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PortalRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PortalResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/subscriptions/plans":{"get":{"summary":"List Plans","description":"List all available plans. Marks the user's current plan if subscribed.","operationId":"list_plans_v1_subscriptions_plans_get","parameters":[{"name":"ut","in":"query","required":true,"schema":{"type":"string","title":"Ut"}},{"name":"k","in":"query","required":true,"schema":{"type":"string","title":"K"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PlansResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/subscriptions/change-plan":{"post":{"summary":"Change Plan","description":"Change the user's subscription to a different plan.\n\nHandles upgrade and downgrade with proration. The user is\ncredited for unused time on the old plan and charged the\nprorated amount for the new plan.","operationId":"change_plan_v1_subscriptions_change_plan_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChangePlanRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChangePlanResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/webhooks/stripe":{"post":{"summary":"Stripe Webhook","description":"Handle Stripe webhook events.\n\nEvents handled:\n- checkout.session.completed: initial subscription created via Checkout\n- customer.subscription.created: subscription object created\n- customer.subscription.updated: status change, renewal, plan change\n- customer.subscription.deleted: subscription canceled\n- invoice.paid: successful recurring payment\n- invoice.payment_failed: failed payment attempt","operationId":"stripe_webhook_webhooks_stripe_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/internal/sync/catchup-sources/{user_id}":{"post":{"tags":["internal_sync"],"summary":"Sync Catchup Sources","description":"Sync catchup sources (Slack, Notion) for a given user.\n\nPulls new messages from connected Slack workspaces, summarizes them,\nand writes catchup .md files to the user's Fly machine.","operationId":"sync_catchup_sources_internal_sync_catchup_sources__user_id__post","parameters":[{"name":"user_id","in":"path","required":true,"schema":{"type":"integer","title":"User Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/internal/projects/{user_id}/archive-sourced-items":{"post":{"tags":["internal_projects"],"summary":"Archive Sourced Project Items","description":"Archive active feed and list items belonging to a closed project.","operationId":"archive_sourced_project_items_internal_projects__user_id__archive_sourced_items_post","parameters":[{"name":"user_id","in":"path","required":true,"schema":{"type":"integer","title":"User Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ArchiveProjectSourcedItemsRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Archive Sourced Project Items Internal Projects  User Id  Archive Sourced Items Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/internal/machines/{user_id}/disk-usage":{"post":{"tags":["internal_machines"],"summary":"Report Disk Usage","description":"Process a bounded disk-pressure report from that user's machine.","operationId":"report_disk_usage_internal_machines__user_id__disk_usage_post","parameters":[{"name":"user_id","in":"path","required":true,"schema":{"type":"integer","title":"User Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DiskUsageReport"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Report Disk Usage Internal Machines  User Id  Disk Usage Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/internal/projects/{user_id}/project-cards":{"get":{"tags":["project_cards"],"summary":"Get Project Cards","description":"Return project cards for a canonical project id.\n\n``mode=ledger``: compact bounded summary entries, newest-first, including\nterminal lifecycle states. ``mode=history``: paginated full card content.\nThe requested id may be a historical alias; it is resolved to canonical.","operationId":"get_project_cards_internal_projects__user_id__project_cards_get","parameters":[{"name":"user_id","in":"path","required":true,"schema":{"type":"integer","title":"User Id"}},{"name":"project_id","in":"query","required":true,"schema":{"type":"string","title":"Project Id"}},{"name":"mode","in":"query","required":false,"schema":{"type":"string","default":"ledger","title":"Mode"}},{"name":"page","in":"query","required":false,"schema":{"type":"integer","default":1,"title":"Page"}},{"name":"page_size","in":"query","required":false,"schema":{"type":"integer","default":5,"title":"Page Size"}},{"name":"card_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Card Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/internal/projects/{user_id}/project-cards/{card_id}/actions":{"post":{"tags":["project_cards"],"summary":"Act On Project Card","description":"Act on exactly one card after binding it to the authenticated project.","operationId":"act_on_project_card_internal_projects__user_id__project_cards__card_id__actions_post","parameters":[{"name":"user_id","in":"path","required":true,"schema":{"type":"integer","title":"User Id"}},{"name":"card_id","in":"path","required":true,"schema":{"type":"string","title":"Card Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectCardActionRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/publish/register-handle":{"post":{"tags":["publish_proxy","publish"],"summary":"Register Handle","description":"Register a personal page handle for a user.\nRequires auth (user token). Validates handle uniqueness and format.","operationId":"register_handle_v1_publish_register_handle_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/publish/toggle":{"post":{"tags":["publish_proxy","publish"],"summary":"Toggle Personal Page","description":"Enable or disable a user's personal page.\nRequires auth (user token). Body: {\"enabled\": bool}","operationId":"toggle_personal_page_v1_publish_toggle_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/publish/domains/add":{"post":{"tags":["publish_proxy","publish"],"summary":"Add Custom Domain","description":"Add a custom domain to a user's personal page.\n\nRegisters the domain with Cloudflare for SaaS (Custom Hostnames)\nfor automatic TLS provisioning. User must point a CNAME from their\ndomain to their handle.askjo.page subdomain.\n\nBody: {\"domain\": \"example.com\"}\nReturns: domain info with CNAME target and verification status.","operationId":"add_custom_domain_v1_publish_domains_add_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/publish/domains":{"get":{"tags":["publish_proxy","publish"],"summary":"List Custom Domains","description":"List all custom domains for the authenticated user.\nReturns domain, status, cname_target for each.","operationId":"list_custom_domains_v1_publish_domains_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/publish/domains/verify":{"post":{"tags":["publish_proxy","publish"],"summary":"Verify Custom Domain","description":"Check Cloudflare status for a custom domain and update local state.\nMarks domain as verified when Cloudflare confirms TLS is active.\n\nBody: {\"domain\": \"example.com\"}","operationId":"verify_custom_domain_v1_publish_domains_verify_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/publish/domains/remove":{"post":{"tags":["publish_proxy","publish"],"summary":"Remove Custom Domain","description":"Remove a custom domain. Deletes from Cloudflare and local DB.\n\nBody: {\"domain\": \"example.com\"}","operationId":"remove_custom_domain_v1_publish_domains_remove_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/spaces/me/pending-ownership-transfers":{"get":{"tags":["spaces"],"summary":"List Pending Ownership Transfers","operationId":"list_pending_ownership_transfers_v1_spaces_me_pending_ownership_transfers_get","parameters":[{"name":"ut","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Ut"}},{"name":"k","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"K"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/PendingOwnershipTransferResponse"},"title":"Response List Pending Ownership Transfers V1 Spaces Me Pending Ownership Transfers Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/spaces":{"post":{"tags":["spaces"],"summary":"Create Space","description":"Create a new space and provision its machine.","operationId":"create_space_v1_spaces_post","parameters":[{"name":"ut","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Ut"}},{"name":"k","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"K"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateSpaceRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SpaceResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"tags":["spaces"],"summary":"List Spaces","description":"List all spaces the current user belongs to.","operationId":"list_spaces_v1_spaces_get","parameters":[{"name":"ut","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Ut"}},{"name":"k","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"K"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/SpaceResponse"},"title":"Response List Spaces V1 Spaces Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/spaces/{space_id}":{"get":{"tags":["spaces"],"summary":"Get Space","description":"Get details of a specific space.","operationId":"get_space_v1_spaces__space_id__get","parameters":[{"name":"space_id","in":"path","required":true,"schema":{"type":"integer","title":"Space Id"}},{"name":"ut","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Ut"}},{"name":"k","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"K"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SpaceResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"patch":{"tags":["spaces"],"summary":"Update Space","description":"Update space settings (owner only). Disabling invalidates pending invites.","operationId":"update_space_v1_spaces__space_id__patch","parameters":[{"name":"space_id","in":"path","required":true,"schema":{"type":"integer","title":"Space Id"}},{"name":"ut","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Ut"}},{"name":"k","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"K"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateSpaceRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SpaceResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["spaces"],"summary":"Delete Space","description":"Delete a space (owner only).","operationId":"delete_space_v1_spaces__space_id__delete","parameters":[{"name":"space_id","in":"path","required":true,"schema":{"type":"integer","title":"Space Id"}},{"name":"ut","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Ut"}},{"name":"k","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"K"}}],"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/spaces/{space_id}/members":{"get":{"tags":["spaces"],"summary":"List Members","description":"List all members of a space.","operationId":"list_members_v1_spaces__space_id__members_get","parameters":[{"name":"space_id","in":"path","required":true,"schema":{"type":"integer","title":"Space Id"}},{"name":"ut","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Ut"}},{"name":"k","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"K"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/SpaceMemberResponse"},"title":"Response List Members V1 Spaces  Space Id  Members Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/spaces/{space_id}/members/{target_user_id}":{"delete":{"tags":["spaces"],"summary":"Remove Member","description":"Remove a member from a space (owner only).","operationId":"remove_member_v1_spaces__space_id__members__target_user_id__delete","parameters":[{"name":"space_id","in":"path","required":true,"schema":{"type":"integer","title":"Space Id"}},{"name":"target_user_id","in":"path","required":true,"schema":{"type":"integer","title":"Target User Id"}},{"name":"ut","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Ut"}},{"name":"k","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"K"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/spaces/{space_id}/members/me/relationship":{"patch":{"tags":["spaces"],"summary":"Update My Relationship Label","description":"Update the calling user's relationship label in a space.","operationId":"update_my_relationship_label_v1_spaces__space_id__members_me_relationship_patch","parameters":[{"name":"space_id","in":"path","required":true,"schema":{"type":"integer","title":"Space Id"}},{"name":"ut","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Ut"}},{"name":"k","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"K"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateRelationshipRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/spaces/{space_id}/telegram-link":{"post":{"tags":["spaces"],"summary":"Generate Space Telegram Link Code","description":"Generate a code that can be sent in a Telegram group to bind it to this space.\n\nThe owner sends this code in the target Telegram group. The bot sees it,\nvalidates, and binds the group to the space.","operationId":"generate_space_telegram_link_code_v1_spaces__space_id__telegram_link_post","parameters":[{"name":"space_id","in":"path","required":true,"schema":{"type":"integer","title":"Space Id"}},{"name":"ut","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Ut"}},{"name":"k","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"K"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/spaces/{space_id}/transfer-ownership":{"post":{"tags":["spaces"],"summary":"Transfer Ownership","operationId":"transfer_ownership_v1_spaces__space_id__transfer_ownership_post","parameters":[{"name":"space_id","in":"path","required":true,"schema":{"type":"integer","title":"Space Id"}},{"name":"ut","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Ut"}},{"name":"k","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"K"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TransferOwnershipRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/spaces/{space_id}/transfer-ownership/accept":{"post":{"tags":["spaces"],"summary":"Accept Ownership Transfer","operationId":"accept_ownership_transfer_v1_spaces__space_id__transfer_ownership_accept_post","parameters":[{"name":"space_id","in":"path","required":true,"schema":{"type":"integer","title":"Space Id"}},{"name":"ut","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Ut"}},{"name":"k","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"K"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/spaces/{space_id}/transfer-ownership/reject":{"post":{"tags":["spaces"],"summary":"Reject Ownership Transfer","operationId":"reject_ownership_transfer_v1_spaces__space_id__transfer_ownership_reject_post","parameters":[{"name":"space_id","in":"path","required":true,"schema":{"type":"integer","title":"Space Id"}},{"name":"ut","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Ut"}},{"name":"k","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"K"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/spaces/{space_id}/leave":{"post":{"tags":["spaces"],"summary":"Leave Space","description":"Member leaves a space voluntarily.","operationId":"leave_space_v1_spaces__space_id__leave_post","parameters":[{"name":"space_id","in":"path","required":true,"schema":{"type":"integer","title":"Space Id"}},{"name":"ut","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Ut"}},{"name":"k","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"K"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/spaces/{space_id}/consent":{"get":{"tags":["spaces"],"summary":"Get My Consent","description":"Get my consent grants for a space.","operationId":"get_my_consent_v1_spaces__space_id__consent_get","parameters":[{"name":"space_id","in":"path","required":true,"schema":{"type":"integer","title":"Space Id"}},{"name":"ut","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Ut"}},{"name":"k","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"K"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/ConsentScopeResponse"},"title":"Response Get My Consent V1 Spaces  Space Id  Consent Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"patch":{"tags":["spaces"],"summary":"Update My Consent","description":"Grant or revoke a specific consent scope.","operationId":"update_my_consent_v1_spaces__space_id__consent_patch","parameters":[{"name":"space_id","in":"path","required":true,"schema":{"type":"integer","title":"Space Id"}},{"name":"ut","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Ut"}},{"name":"k","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"K"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateConsentRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/spaces/{space_id}/invites":{"post":{"tags":["invites"],"summary":"Create Invite","description":"Generate an invite link for a space (owner/admin only).","operationId":"create_invite_v1_spaces__space_id__invites_post","parameters":[{"name":"space_id","in":"path","required":true,"schema":{"type":"integer","title":"Space Id"}},{"name":"ut","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Ut"}},{"name":"k","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"K"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateInviteRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/InviteResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"tags":["invites"],"summary":"List Invites","description":"List all invites for a space (owner/admin only).","operationId":"list_invites_v1_spaces__space_id__invites_get","parameters":[{"name":"space_id","in":"path","required":true,"schema":{"type":"integer","title":"Space Id"}},{"name":"ut","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Ut"}},{"name":"k","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"K"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/InviteResponse"},"title":"Response List Invites V1 Spaces  Space Id  Invites Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/invites/{code}":{"get":{"tags":["invites"],"summary":"Preview Invite","description":"Get invite preview info (public, no auth required).","operationId":"preview_invite_v1_invites__code__get","parameters":[{"name":"code","in":"path","required":true,"schema":{"type":"string","title":"Code"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/InvitePreview"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/invites/{code}/accept":{"post":{"tags":["invites"],"summary":"Accept Invite","description":"Accept an invite and join the space.","operationId":"accept_invite_v1_invites__code__accept_post","parameters":[{"name":"code","in":"path","required":true,"schema":{"type":"string","title":"Code"}},{"name":"ut","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Ut"}},{"name":"k","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"K"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AcceptInviteResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/me/pending-invites":{"get":{"tags":["invites"],"summary":"Get Pending Invites","description":"Get invites addressed to the current user's email(s).","operationId":"get_pending_invites_v1_me_pending_invites_get","parameters":[{"name":"ut","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Ut"}},{"name":"k","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"K"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/PendingInviteResponse"},"title":"Response Get Pending Invites V1 Me Pending Invites Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/spaces/{space_id}/invites/{code}":{"delete":{"tags":["invites"],"summary":"Revoke Invite","description":"Revoke/delete an invite (owner/admin only).","operationId":"revoke_invite_v1_spaces__space_id__invites__code__delete","parameters":[{"name":"space_id","in":"path","required":true,"schema":{"type":"integer","title":"Space Id"}},{"name":"code","in":"path","required":true,"schema":{"type":"string","title":"Code"}},{"name":"ut","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Ut"}},{"name":"k","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"K"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/spaces/{space_id}/invites/{code}/resend":{"post":{"tags":["invites"],"summary":"Resend Invite","description":"Re-send an unaccepted invite email (owner/admin only).","operationId":"resend_invite_v1_spaces__space_id__invites__code__resend_post","parameters":[{"name":"space_id","in":"path","required":true,"schema":{"type":"integer","title":"Space Id"}},{"name":"code","in":"path","required":true,"schema":{"type":"string","title":"Code"}},{"name":"ut","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Ut"}},{"name":"k","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"K"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/invite/{code}":{"get":{"tags":["invites"],"summary":"Invite Landing Page","description":"Web landing page for invite links.","operationId":"invite_landing_page_invite__code__get","parameters":[{"name":"code","in":"path","required":true,"schema":{"type":"string","title":"Code"}}],"responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/family/ask":{"post":{"tags":["family"],"summary":"Family Ask","description":"Fan out a question to family members.\n\n- Validates requester is in the specified family\n- Hits POST /machine/{user_id}/request on each target member\n- Returns aggregated results: immediate answers + pending statuses","operationId":"family_ask_v1_family_ask_post","parameters":[{"name":"ut","in":"query","required":true,"schema":{"type":"string","title":"Ut"}},{"name":"k","in":"query","required":true,"schema":{"type":"string","title":"K"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FamilyAskRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FamilyAskResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/family/machine/{target_user_id}/request":{"post":{"tags":["family"],"summary":"Machine Request","description":"Receive an inbound request for a user's Jo to process.\n\nJo triages:\n- Can answer autonomously (calendar/schedule questions) → respond immediately\n- Can't → DM human via Telegram, return pending\n\nThis is an internal endpoint called by the fan-out logic.","operationId":"machine_request_v1_family_machine__target_user_id__request_post","parameters":[{"name":"target_user_id","in":"path","required":true,"schema":{"type":"integer","title":"Target User Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MachineInboundRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MachineInboundResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/test-support/marketing-fixture/login":{"get":{"tags":["test-support"],"summary":"Login Marketing Fixture","description":"Seed and sign in a PII-safe user for local product screenshots.","operationId":"login_marketing_fixture_v1_test_support_marketing_fixture_login_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/test-support/marketing-fixture/seed":{"post":{"tags":["test-support"],"summary":"Seed Marketing Fixture","description":"Replace local marketing fixture cards with a PII-safe cast snapshot.","operationId":"seed_marketing_fixture_v1_test_support_marketing_fixture_seed_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MarketingFixtureSeedRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/test-support/family/reset":{"post":{"tags":["test-support"],"summary":"Reset Family Scenario","operationId":"reset_family_scenario_v1_test_support_family_reset_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FamilyScenarioSeedRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FamilyScenarioSeedResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/test-support/family/scenario":{"post":{"tags":["test-support"],"summary":"Seed Family Scenario","operationId":"seed_family_scenario_v1_test_support_family_scenario_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FamilyScenarioSeedRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FamilyScenarioSeedResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/test-support/family/ownership-transfer":{"post":{"tags":["test-support"],"summary":"Seed Family Ownership Transfer","operationId":"seed_family_ownership_transfer_v1_test_support_family_ownership_transfer_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FamilyOwnershipTransferSeedRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FamilyOwnershipTransferSeedResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/brain/remember":{"post":{"tags":["Brain"],"summary":"Remember","operationId":"remember_v1_brain_remember_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RememberRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RememberResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/v1/brain/recall":{"post":{"tags":["Brain"],"summary":"Recall","operationId":"recall_v1_brain_recall_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RecallRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RecallResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/v1/brain/ask":{"post":{"tags":["Brain"],"summary":"Ask","operationId":"ask_v1_brain_ask_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AskRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AskResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/v1/brain/import":{"post":{"tags":["Brain"],"summary":"Import Files","operationId":"import_files_v1_brain_import_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ImportRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ImportResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/v1/brain/stats":{"get":{"tags":["Brain"],"summary":"Stats","operationId":"stats_v1_brain_stats_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"brain_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Brain Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StatsResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/brain/keys":{"get":{"tags":["Brain"],"summary":"List Keys Route","operationId":"list_keys_route_v1_brain_keys_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/KeyMetadata"},"type":"array","title":"Response List Keys Route V1 Brain Keys Get"}}}}},"security":[{"HTTPBearer":[]}]},"post":{"tags":["Brain"],"summary":"Create Key Route","operationId":"create_key_route_v1_brain_keys_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateKeyRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateKeyResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}]}},"/v1/brain/keys/{key_id}":{"delete":{"tags":["Brain"],"summary":"Revoke Key Route","operationId":"revoke_key_route_v1_brain_keys__key_id__delete","security":[{"HTTPBearer":[]}],"parameters":[{"name":"key_id","in":"path","required":true,"schema":{"type":"string","title":"Key Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RevokeKeyResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/cli/auth/start":{"post":{"tags":["CLI Auth"],"summary":"Start Cli Auth","operationId":"start_cli_auth_v1_cli_auth_start_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CliAuthStartRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CliAuthStartResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/cli/auth/approve":{"get":{"tags":["CLI Auth"],"summary":"Approve Cli Auth Page","operationId":"approve_cli_auth_page_v1_cli_auth_approve_get","parameters":[{"name":"user_code","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"User Code"}}],"responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["CLI Auth"],"summary":"Approve Cli Auth","operationId":"approve_cli_auth_v1_cli_auth_approve_post","requestBody":{"required":true,"content":{"application/x-www-form-urlencoded":{"schema":{"$ref":"#/components/schemas/Body_approve_cli_auth_v1_cli_auth_approve_post"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/cli/auth/token":{"post":{"tags":["CLI Auth"],"summary":"Poll Cli Auth Token","operationId":"poll_cli_auth_token_v1_cli_auth_token_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CliAuthTokenRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CliAuthTokenResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/me":{"get":{"tags":["Brain"],"summary":"Me","operationId":"me_v1_me_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MeResponse"}}}}},"security":[{"HTTPBearer":[]}]}},"/v1/web/workspace/status":{"get":{"tags":["Web App"],"summary":"Workspace Status","operationId":"workspace_status_v1_web_workspace_status_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/web/workspace/retry":{"post":{"tags":["Web App"],"summary":"Retry Workspace","operationId":"retry_workspace_v1_web_workspace_retry_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/web/guest/chat":{"post":{"tags":["Web App"],"summary":"Guest Chat","description":"Send one stateless guest-trial message through the restricted proxy route.","operationId":"guest_chat_v1_web_guest_chat_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/web/greeting":{"post":{"tags":["Web App"],"summary":"Web Wordmark Greeting","description":"Generate a short, personalized message for the signed-in web user.","operationId":"web_wordmark_greeting_v1_web_greeting_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/web/greeting/stream":{"post":{"tags":["Web App"],"summary":"Web Wordmark Greeting Stream","description":"Stream a wordmark message to the signed-in web user.","operationId":"web_wordmark_greeting_stream_v1_web_greeting_stream_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/web/maps-embed":{"get":{"tags":["Web App"],"summary":"Web Maps Embed","description":"Redirect a signed-in user's iframe to a Maps Embed API search.","operationId":"web_maps_embed_v1_web_maps_embed_get","parameters":[{"name":"url","in":"query","required":true,"schema":{"type":"string","title":"Url"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/web/image-search":{"get":{"tags":["Web App"],"summary":"Web Image Search","description":"Resolve a short inline-image query into safe, durable image records.","operationId":"web_image_search_v1_web_image_search_get","parameters":[{"name":"query","in":"query","required":true,"schema":{"type":"string","title":"Query"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/web/link-preview":{"get":{"tags":["Web App"],"summary":"Web Link Preview","description":"Return safe Open Graph metadata for an outbound link in the signed-in web app.","operationId":"web_link_preview_v1_web_link_preview_get","parameters":[{"name":"url","in":"query","required":true,"schema":{"type":"string","title":"Url"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/web/settings/privacy":{"get":{"tags":["Web App"],"summary":"Web Privacy Preferences","operationId":"web_privacy_preferences_v1_web_settings_privacy_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}},"patch":{"tags":["Web App"],"summary":"Web Update Privacy Preferences","operationId":"web_update_privacy_preferences_v1_web_settings_privacy_patch","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/web/settings/privacy/{action}":{"post":{"tags":["Web App"],"summary":"Web Privacy Action","operationId":"web_privacy_action_v1_web_settings_privacy__action__post","parameters":[{"name":"action","in":"path","required":true,"schema":{"type":"string","title":"Action"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/web/settings/plans":{"get":{"tags":["Web App"],"summary":"Web Settings Plans","operationId":"web_settings_plans_v1_web_settings_plans_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/web/settings/plans/portal":{"post":{"tags":["Web App"],"summary":"Web Settings Plan Portal","operationId":"web_settings_plan_portal_v1_web_settings_plans_portal_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/web/settings/plans/checkout":{"post":{"tags":["Web App"],"summary":"Web Settings Plan Checkout","operationId":"web_settings_plan_checkout_v1_web_settings_plans_checkout_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/web/settings/plans/change":{"post":{"tags":["Web App"],"summary":"Web Settings Plan Change","operationId":"web_settings_plan_change_v1_web_settings_plans_change_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/web/settings/plans/family-billing-request":{"post":{"tags":["Web App"],"summary":"Web Settings Family Billing Request","operationId":"web_settings_family_billing_request_v1_web_settings_plans_family_billing_request_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/web/settings/personal-page":{"get":{"tags":["Web App"],"summary":"Web Personal Page","operationId":"web_personal_page_v1_web_settings_personal_page_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/web/settings/account":{"get":{"tags":["Web App"],"summary":"Web Account Settings","operationId":"web_account_settings_v1_web_settings_account_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/web/settings/account/logout":{"post":{"tags":["Web App"],"summary":"Web Account Logout","operationId":"web_account_logout_v1_web_settings_account_logout_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/web/mobile/integrations/google":{"post":{"tags":["Web App"],"summary":"Begin Mobile Google Integration","description":"Create a one-use external-browser handoff for Google settings OAuth.","operationId":"begin_mobile_google_integration_v1_web_mobile_integrations_google_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/web/mobile/integrations/google/start":{"get":{"tags":["Web App"],"summary":"Start Mobile Google Integration","description":"Redeem a mobile handoff, authenticate Safari, then begin Google OAuth.","operationId":"start_mobile_google_integration_v1_web_mobile_integrations_google_start_get","parameters":[{"name":"code","in":"query","required":true,"schema":{"type":"string","title":"Code"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/web/desktop/badge-count":{"get":{"tags":["Web App"],"summary":"Desktop Badge Count","description":"Return the native desktop Dock badge count for the signed-in user.","operationId":"desktop_badge_count_v1_web_desktop_badge_count_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/web/desktop/track":{"post":{"tags":["Web App"],"summary":"Desktop Track","description":"Track an event emitted by the native desktop host, not its WebView.","operationId":"desktop_track_v1_web_desktop_track_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/web/track":{"post":{"tags":["Web App"],"summary":"Web Track","operationId":"web_track_v1_web_track_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/web/redeem-desktop-web-session":{"get":{"tags":["Web App"],"summary":"Redeem Desktop Web Session","description":"Consume a one-minute, socket-issued code and establish web auth cookies.","operationId":"redeem_desktop_web_session_v1_web_redeem_desktop_web_session_get","parameters":[{"name":"code","in":"query","required":true,"schema":{"type":"string","title":"Code"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/web/desktop/session":{"get":{"tags":["Web App"],"summary":"Begin Desktop Native Session","description":"Hand a signed-in desktop WebView a one-time code for its native host.","operationId":"begin_desktop_native_session_v1_web_desktop_session_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/web/desktop/session/exchange":{"post":{"tags":["Web App"],"summary":"Exchange Desktop Native Session","description":"Consume a one-time native handoff without exposing its credentials to the WebView.","operationId":"exchange_desktop_native_session_v1_web_desktop_session_exchange_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/web/desktop/session/refresh":{"post":{"tags":["Web App"],"summary":"Refresh Desktop Native Session","description":"Renew a desktop access credential using its Keychain-only refresh credential.","operationId":"refresh_desktop_native_session_v1_web_desktop_session_refresh_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/web/redeem-onboarding-handoff":{"get":{"tags":["Web App"],"summary":"Redeem Native Onboarding Handoff","description":"Consume a one-time native handoff code and establish web auth cookies.","operationId":"redeem_native_onboarding_handoff_v1_web_redeem_onboarding_handoff_get","parameters":[{"name":"code","in":"query","required":true,"schema":{"type":"string","title":"Code"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/web/mobile/session":{"post":{"tags":["Web App"],"summary":"Exchange Mobile Session","description":"Exchange a short-lived universal-link handoff code for mobile credentials.","operationId":"exchange_mobile_session_v1_web_mobile_session_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/web/mobile/refresh":{"post":{"tags":["Web App"],"summary":"Refresh Mobile Session","description":"Refresh a native credential without relying on cross-site cookies.","operationId":"refresh_mobile_session_v1_web_mobile_refresh_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/web/mobile/push-token":{"post":{"tags":["Web App"],"summary":"Register Mobile Push Token","description":"Associate the signed-in iOS install's APNs token with its Jo account.","operationId":"register_mobile_push_token_v1_web_mobile_push_token_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}},"delete":{"tags":["Web App"],"summary":"Unregister Mobile Push Token","description":"Stop delivering APNs notifications to this signed-in iOS install.","operationId":"unregister_mobile_push_token_v1_web_mobile_push_token_delete","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/web/mobile/push-test":{"post":{"tags":["Web App"],"summary":"Test Mobile Push Notification","description":"Send an APNs test notification only to this signed-in iOS device.","operationId":"test_mobile_push_notification_v1_web_mobile_push_test_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/web/guest/routine-signup":{"post":{"tags":["Web App"],"summary":"Guest Routine Signup","description":"Remember a guest's routine draft through Google sign-up.","operationId":"guest_routine_signup_v1_web_guest_routine_signup_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/web/guest/routine-draft":{"get":{"tags":["Web App"],"summary":"Guest Routine Draft","description":"Return the pending guest routine after authenticated sign-up.","operationId":"guest_routine_draft_v1_web_guest_routine_draft_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/web/guest/routine-draft/consume":{"post":{"tags":["Web App"],"summary":"Consume Guest Routine Draft","operationId":"consume_guest_routine_draft_v1_web_guest_routine_draft_consume_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/web/onboarding":{"get":{"tags":["Web App"],"summary":"Web Onboarding Page","description":"Serve the web onboarding flow only to an authenticated web session.","operationId":"web_onboarding_page_v1_web_onboarding_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/v1/web/complete-onboarding":{"get":{"tags":["Web App"],"summary":"Complete Web Onboarding","description":"Exchange a trusted landing session for web-app auth cookies.","operationId":"complete_web_onboarding_v1_web_complete_onboarding_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/web/refresh":{"post":{"tags":["Web App"],"summary":"Web Refresh","operationId":"web_refresh_v1_web_refresh_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/web/push/config":{"get":{"tags":["Web App"],"summary":"Web Push Config","operationId":"web_push_config_v1_web_push_config_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/web/push/subscription":{"post":{"tags":["Web App"],"summary":"Register Web Push Subscription","operationId":"register_web_push_subscription_v1_web_push_subscription_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}},"delete":{"tags":["Web App"],"summary":"Unregister Web Push Subscription","operationId":"unregister_web_push_subscription_v1_web_push_subscription_delete","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/web/me":{"get":{"tags":["Web App"],"summary":"Web Me","operationId":"web_me_v1_web_me_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/web/knowledge/count":{"get":{"tags":["Web App"],"summary":"Web Knowledge Count","description":"Load the dated Catchup source-file count without delaying WebSocket startup.","operationId":"web_knowledge_count_v1_web_knowledge_count_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/web/search/events":{"get":{"tags":["Web App"],"summary":"Web Search Events","description":"Stream independent search sections as their backing searches finish.","operationId":"web_search_events_v1_web_search_events_get","parameters":[{"name":"q","in":"query","required":false,"schema":{"type":"string","default":"","title":"Q"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","default":10,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/web/search":{"get":{"tags":["Web App"],"summary":"Web Search","description":"Search the signed-in user's cards, conversations, knowledge, and local sources.","operationId":"web_search_v1_web_search_get","parameters":[{"name":"q","in":"query","required":false,"schema":{"type":"string","default":"","title":"Q"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","default":10,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/web/computer":{"get":{"tags":["Web App"],"summary":"Web Computer","description":"List one folder in the signed-in user's private /data workspace.","operationId":"web_computer_v1_web_computer_get","parameters":[{"name":"path","in":"query","required":false,"schema":{"type":"string","default":"","title":"Path"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/web/computer/file":{"delete":{"tags":["Web App"],"summary":"Web Computer Delete","description":"Delete one file or folder strictly inside the user's /data/me workspace.","operationId":"web_computer_delete_v1_web_computer_file_delete","parameters":[{"name":"path","in":"query","required":true,"schema":{"type":"string","title":"Path"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"tags":["Web App"],"summary":"Web Computer File","description":"Return a visible previewable file from the signed-in user's /data directory.","operationId":"web_computer_file_v1_web_computer_file_get","parameters":[{"name":"path","in":"query","required":true,"schema":{"type":"string","title":"Path"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/web/computer/download":{"post":{"tags":["Web App"],"summary":"Web Computer Download","description":"Email a secure, expiring ZIP download link for one Computer file or folder.","operationId":"web_computer_download_v1_web_computer_download_post","parameters":[{"name":"path","in":"query","required":true,"schema":{"type":"string","title":"Path"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/web/knowledge":{"get":{"tags":["Web App"],"summary":"Web Knowledge","description":"Return searchable knowledge pages from the authenticated user's machine.","operationId":"web_knowledge_v1_web_knowledge_get","parameters":[{"name":"q","in":"query","required":false,"schema":{"type":"string","default":"","title":"Q"}},{"name":"type","in":"query","required":false,"schema":{"type":"string","default":"","title":"Type"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/web/knowledge/entities":{"get":{"tags":["Web App"],"summary":"Web Knowledge Entities","description":"Return concise entity rows with validated claims and source-page links.","operationId":"web_knowledge_entities_v1_web_knowledge_entities_get","parameters":[{"name":"q","in":"query","required":false,"schema":{"type":"string","default":"","title":"Q"}},{"name":"types","in":"query","required":false,"schema":{"type":"string","default":"","title":"Types"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","default":100,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/web/knowledge/graph":{"get":{"tags":["Web App"],"summary":"Web Knowledge Graph","description":"Return bounded entity-map nodes and recorded relationships.","operationId":"web_knowledge_graph_v1_web_knowledge_graph_get","parameters":[{"name":"types","in":"query","required":false,"schema":{"type":"string","default":"","title":"Types"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","default":200,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/web/knowledge/entity-detail":{"get":{"tags":["Web App"],"summary":"Web Knowledge Entity Detail","description":"Return one entity and all of its direct general-graph links.","operationId":"web_knowledge_entity_detail_v1_web_knowledge_entity_detail_get","parameters":[{"name":"slug","in":"query","required":false,"schema":{"type":"string","default":"","title":"Slug"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/web/knowledge/day-summary":{"get":{"tags":["Web App"],"summary":"Web Knowledge Day Summary","description":"Generate or return the cached private day summary for one local date.","operationId":"web_knowledge_day_summary_v1_web_knowledge_day_summary_get","parameters":[{"name":"date","in":"query","required":true,"schema":{"type":"string","title":"Date"}},{"name":"refresh","in":"query","required":false,"schema":{"type":"boolean","default":false,"title":"Refresh"}},{"name":"refresh_id","in":"query","required":false,"schema":{"type":"string","default":"","title":"Refresh Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/web/knowledge/timeline":{"get":{"tags":["Web App"],"summary":"Web Knowledge Timeline","description":"Return saved knowledge events, optionally for one calendar day.","operationId":"web_knowledge_timeline_v1_web_knowledge_timeline_get","parameters":[{"name":"offset","in":"query","required":false,"schema":{"type":"integer","default":0,"title":"Offset"}},{"name":"date","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Date"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/web/knowledge/inventory":{"get":{"tags":["Web App"],"summary":"Web Knowledge Inventory","description":"Return a read-only, five-record page of the user's complete brain inventory.","operationId":"web_knowledge_inventory_v1_web_knowledge_inventory_get","parameters":[{"name":"section","in":"query","required":false,"schema":{"type":"string","default":"overview","title":"Section"}},{"name":"type","in":"query","required":false,"schema":{"type":"string","default":"","title":"Type"}},{"name":"offset","in":"query","required":false,"schema":{"type":"integer","default":0,"title":"Offset"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/web/knowledge/relationship-map":{"get":{"tags":["Web App"],"summary":"Web Knowledge Relationship Map","description":"Return the authenticated user's rooted, evidence-backed relationship map.","operationId":"web_knowledge_relationship_map_v1_web_knowledge_relationship_map_get","parameters":[{"name":"depth","in":"query","required":false,"schema":{"type":"integer","default":2,"title":"Depth"}},{"name":"lens","in":"query","required":false,"schema":{"type":"string","default":"","title":"Lens"}},{"name":"include_history","in":"query","required":false,"schema":{"type":"boolean","default":false,"title":"Include History"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/web/knowledge/relationship-root":{"post":{"tags":["Web App"],"summary":"Web Knowledge Relationship Root","description":"Confirm the signed-in user's canonical person entity by exact full name.","operationId":"web_knowledge_relationship_root_v1_web_knowledge_relationship_root_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/web/models":{"get":{"tags":["Web App"],"summary":"Web Models","operationId":"web_models_v1_web_models_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}},"patch":{"tags":["Web App"],"summary":"Web Update Model","operationId":"web_update_model_v1_web_models_patch","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/web/cron-jobs":{"get":{"tags":["Web App"],"summary":"Web Cron Jobs","operationId":"web_cron_jobs_v1_web_cron_jobs_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}},"post":{"tags":["Web App"],"summary":"Web Create Cron Job","operationId":"web_create_cron_job_v1_web_cron_jobs_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/web/cron-jobs/{job_id}":{"put":{"tags":["Web App"],"summary":"Web Update Cron Job","operationId":"web_update_cron_job_v1_web_cron_jobs__job_id__put","parameters":[{"name":"job_id","in":"path","required":true,"schema":{"type":"integer","title":"Job Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["Web App"],"summary":"Web Delete Cron Job","operationId":"web_delete_cron_job_v1_web_cron_jobs__job_id__delete","parameters":[{"name":"job_id","in":"path","required":true,"schema":{"type":"integer","title":"Job Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/web/cron-jobs/{job_id}/preview":{"post":{"tags":["Web App"],"summary":"Web Preview Cron Job","operationId":"web_preview_cron_job_v1_web_cron_jobs__job_id__preview_post","parameters":[{"name":"job_id","in":"path","required":true,"schema":{"type":"integer","title":"Job Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/web/documents/upload":{"post":{"tags":["Web App"],"summary":"Web Upload Document","description":"Upload a conversation attachment using the authenticated web session.","operationId":"web_upload_document_v1_web_documents_upload_post","requestBody":{"content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/Body_web_upload_document_v1_web_documents_upload_post"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/web/context-windows/{context_window_id}/messages":{"get":{"tags":["Web App"],"summary":"Web Context Window Messages","operationId":"web_context_window_messages_v1_web_context_windows__context_window_id__messages_get","parameters":[{"name":"context_window_id","in":"path","required":true,"schema":{"type":"integer","title":"Context Window Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/web/context-windows/{context_window_id}/messages/{message_id}/artifacts/{artifact_id}/download":{"get":{"tags":["Web App"],"summary":"Web Download Generated Artifact","description":"Serve a generated file only to its signed-in owner and exact assistant turn.","operationId":"web_download_generated_artifact_v1_web_context_windows__context_window_id__messages__message_id__artifacts__artifact_id__download_get","parameters":[{"name":"context_window_id","in":"path","required":true,"schema":{"type":"integer","title":"Context Window Id"}},{"name":"message_id","in":"path","required":true,"schema":{"type":"string","title":"Message Id"}},{"name":"artifact_id","in":"path","required":true,"schema":{"type":"string","title":"Artifact Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/web/context-windows/{context_window_id}/messages/{message_id}/images/{image_id}":{"get":{"tags":["Web App"],"summary":"Web Generated Image","description":"Serve an exec_code image only to its owner and the assistant turn that named it.","operationId":"web_generated_image_v1_web_context_windows__context_window_id__messages__message_id__images__image_id__get","parameters":[{"name":"context_window_id","in":"path","required":true,"schema":{"type":"integer","title":"Context Window Id"}},{"name":"message_id","in":"path","required":true,"schema":{"type":"string","title":"Message Id"}},{"name":"image_id","in":"path","required":true,"schema":{"type":"string","title":"Image Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/web/context-windows/{context_window_id}/messages/{message_id}/feedback":{"post":{"tags":["Web App"],"summary":"Web Save Response Feedback","operationId":"web_save_response_feedback_v1_web_context_windows__context_window_id__messages__message_id__feedback_post","parameters":[{"name":"context_window_id","in":"path","required":true,"schema":{"type":"integer","title":"Context Window Id"}},{"name":"message_id","in":"path","required":true,"schema":{"type":"string","title":"Message Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["Web App"],"summary":"Web Delete Response Feedback","operationId":"web_delete_response_feedback_v1_web_context_windows__context_window_id__messages__message_id__feedback_delete","parameters":[{"name":"context_window_id","in":"path","required":true,"schema":{"type":"integer","title":"Context Window Id"}},{"name":"message_id","in":"path","required":true,"schema":{"type":"string","title":"Message Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/web/briefings/{briefing_date}":{"get":{"tags":["Web App"],"summary":"Web Briefing For Date","operationId":"web_briefing_for_date_v1_web_briefings__briefing_date__get","parameters":[{"name":"briefing_date","in":"path","required":true,"schema":{"type":"string","title":"Briefing Date"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/web/feed-cards/recent":{"get":{"tags":["Web App"],"summary":"Web Recent Feed Cards","description":"Return a bounded, optionally older page of project workspace card history.","operationId":"web_recent_feed_cards_v1_web_feed_cards_recent_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/web/feed-cards/project-chat":{"post":{"tags":["Web App"],"summary":"Web Create Project Chat Feed Card","description":"Create a new feed-card chat bound to the selected project.","operationId":"web_create_project_chat_feed_card_v1_web_feed_cards_project_chat_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/web/feed-cards/{card_id}/context-window":{"post":{"tags":["Web App"],"summary":"Web Feed Card Context Window","operationId":"web_feed_card_context_window_v1_web_feed_cards__card_id__context_window_post","parameters":[{"name":"card_id","in":"path","required":true,"schema":{"type":"string","title":"Card Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/web/feed-card-notification-actions":{"post":{"tags":["Web App"],"summary":"Feed Card Notification Action","operationId":"feed_card_notification_action_v1_web_feed_card_notification_actions_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/web/feed-cards/{card_id}/actions":{"post":{"tags":["Web App"],"summary":"Web Feed Card Action","operationId":"web_feed_card_action_v1_web_feed_cards__card_id__actions_post","parameters":[{"name":"card_id","in":"path","required":true,"schema":{"type":"string","title":"Card Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/web/feed-cards/{card_id}/title":{"patch":{"tags":["Web App"],"summary":"Web Update Feed Card Title","operationId":"web_update_feed_card_title_v1_web_feed_cards__card_id__title_patch","parameters":[{"name":"card_id","in":"path","required":true,"schema":{"type":"string","title":"Card Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/web/feed-cards/{card_id}/read":{"post":{"tags":["Web App"],"summary":"Web Mark Feed Card Read","operationId":"web_mark_feed_card_read_v1_web_feed_cards__card_id__read_post","parameters":[{"name":"card_id","in":"path","required":true,"schema":{"type":"string","title":"Card Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/web/feed-cards/{card_id}/dismiss":{"post":{"tags":["Web App"],"summary":"Web Dismiss Feed Card","operationId":"web_dismiss_feed_card_v1_web_feed_cards__card_id__dismiss_post","parameters":[{"name":"card_id","in":"path","required":true,"schema":{"type":"string","title":"Card Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/web/feed-cards/{card_id}/unarchive":{"post":{"tags":["Web App"],"summary":"Web Unarchive Feed Card","operationId":"web_unarchive_feed_card_v1_web_feed_cards__card_id__unarchive_post","parameters":[{"name":"card_id","in":"path","required":true,"schema":{"type":"string","title":"Card Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/web/feed-cards/{card_id}/run-state":{"post":{"tags":["Web App"],"summary":"Web Set Feed Card Run State","operationId":"web_set_feed_card_run_state_v1_web_feed_cards__card_id__run_state_post","parameters":[{"name":"card_id","in":"path","required":true,"schema":{"type":"string","title":"Card Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/web/feed-cards/{card_id}/accept":{"post":{"tags":["Web App"],"summary":"Web Accept Feed Card","operationId":"web_accept_feed_card_v1_web_feed_cards__card_id__accept_post","parameters":[{"name":"card_id","in":"path","required":true,"schema":{"type":"string","title":"Card Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/web/feed-cards/{card_id}/complete":{"post":{"tags":["Web App"],"summary":"Web Complete Feed Card","operationId":"web_complete_feed_card_v1_web_feed_cards__card_id__complete_post","parameters":[{"name":"card_id","in":"path","required":true,"schema":{"type":"string","title":"Card Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/web/feed-cards/{card_id}/snooze":{"post":{"tags":["Web App"],"summary":"Web Snooze Feed Card","operationId":"web_snooze_feed_card_v1_web_feed_cards__card_id__snooze_post","parameters":[{"name":"card_id","in":"path","required":true,"schema":{"type":"string","title":"Card Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/web/feed-cards/{card_id}/unsnooze":{"post":{"tags":["Web App"],"summary":"Web Unsnooze Feed Card","operationId":"web_unsnooze_feed_card_v1_web_feed_cards__card_id__unsnooze_post","parameters":[{"name":"card_id","in":"path","required":true,"schema":{"type":"string","title":"Card Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/web/feed-cards/{card_id}/mute":{"post":{"tags":["Web App"],"summary":"Web Mute Tracked Action For Feed Card","description":"Permanently hide one tracked action while lifecycle checks continue.","operationId":"web_mute_tracked_action_for_feed_card_v1_web_feed_cards__card_id__mute_post","parameters":[{"name":"card_id","in":"path","required":true,"schema":{"type":"string","title":"Card Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/web/tracked-actions/muted":{"get":{"tags":["Web App"],"summary":"Web List Muted Tracked Actions","operationId":"web_list_muted_tracked_actions_v1_web_tracked_actions_muted_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/web/tracked-actions/{action_id}/unmute":{"post":{"tags":["Web App"],"summary":"Web Unmute Tracked Action","operationId":"web_unmute_tracked_action_v1_web_tracked_actions__action_id__unmute_post","parameters":[{"name":"action_id","in":"path","required":true,"schema":{"type":"string","title":"Action Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/web/ws-config":{"get":{"tags":["Web App"],"summary":"Web Ws Config","operationId":"web_ws_config_v1_web_ws_config_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/notification-preferences/":{"get":{"tags":["notification-preferences"],"summary":"Get Notification Preferences","description":"Return the complete scheduled notification preference matrix.","operationId":"get_notification_preferences_v1_notification_preferences__get","parameters":[{"name":"ut","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Ut"}},{"name":"k","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"K"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"put":{"tags":["notification-preferences"],"summary":"Update Notification Preferences","description":"Update supplied scheduled preference cells and return the full matrix.","operationId":"update_notification_preferences_v1_notification_preferences__put","parameters":[{"name":"ut","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Ut"}},{"name":"k","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"K"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotificationPreferencesUpdate"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/phone-calls/":{"get":{"tags":["phone-calls"],"summary":"List Phone Calls","operationId":"list_phone_calls_v1_phone_calls__get","parameters":[{"name":"ut","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Ut"}},{"name":"k","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"K"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/phone-calls/{call_id}":{"get":{"tags":["phone-calls"],"summary":"Get Phone Call","operationId":"get_phone_call_v1_phone_calls__call_id__get","parameters":[{"name":"call_id","in":"path","required":true,"schema":{"type":"string","title":"Call Id"}},{"name":"ut","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Ut"}},{"name":"k","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"K"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/phone-calls/{call_id}/listen":{"post":{"tags":["phone-calls"],"summary":"Listen To Phone Call","operationId":"listen_to_phone_call_v1_phone_calls__call_id__listen_post","parameters":[{"name":"call_id","in":"path","required":true,"schema":{"type":"string","title":"Call Id"}},{"name":"ut","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Ut"}},{"name":"k","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"K"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/phone-calls/{call_id}/audio":{"get":{"tags":["phone-calls"],"summary":"Get Phone Call Audio","operationId":"get_phone_call_audio_v1_phone_calls__call_id__audio_get","parameters":[{"name":"call_id","in":"path","required":true,"schema":{"type":"string","title":"Call Id"}},{"name":"ut","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Ut"}},{"name":"k","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"K"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/subscription/success":{"get":{"summary":"Subscription Success","operationId":"subscription_success_subscription_success_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/subscription/cancel":{"get":{"summary":"Subscription Cancel","operationId":"subscription_cancel_subscription_cancel_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/logout":{"get":{"tags":["Core"],"summary":"Logout","operationId":"logout_logout_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/":{"get":{"tags":["Core"],"summary":"Root","description":"Serve Instagram's browser handoff or the measured guest onboarding landing.","operationId":"root__get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/a/cron-status":{"get":{"tags":["Admin","Monitoring"],"summary":"Cron Status","description":"Live cron job status JSON - powers the dashboard UI.","operationId":"cron_status_a_cron_status_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}},"security":[{"HTTPBasic":[]}]}},"/a/cron-action":{"post":{"tags":["Admin","Monitoring"],"summary":"Cron Action","description":"Batch cron job actions: retry, disable, enable, delete.","operationId":"cron_action_a_cron_action_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}},"security":[{"HTTPBasic":[]}]}},"/a/cron-dash":{"get":{"tags":["Admin","Monitoring"],"summary":"Cron Dashboard Page","description":"Cron dashboard UI.","operationId":"cron_dashboard_page_a_cron_dash_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}},"security":[{"HTTPBasic":[]}]}},"/a/m":{"get":{"tags":["Admin","Monitoring"],"summary":"Monitor Queries","operationId":"monitor_queries_a_m_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}},"security":[{"HTTPBasic":[]}]}},"/a/mdata":{"get":{"tags":["Admin","Monitoring"],"summary":"Monitor Queries Data","operationId":"monitor_queries_data_a_mdata_get","responses":{"200":{"description":"Successful Response"}},"security":[{"HTTPBasic":[]}]}},"/terms":{"get":{"tags":["Core"],"summary":"Terms","operationId":"terms_terms_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/test_navigation":{"get":{"tags":["Core"],"summary":"Test Navigation","operationId":"test_navigation_test_navigation_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/privacy":{"get":{"tags":["Core"],"summary":"Privacy","operationId":"privacy_privacy_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/faq":{"get":{"tags":["Core"],"summary":"Faq","operationId":"faq_faq_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/vs":{"get":{"tags":["Core"],"summary":"Comparison Hub","operationId":"comparison_hub_vs_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/vs/{comparison}":{"get":{"tags":["Core"],"summary":"Comparison Page","operationId":"comparison_page_vs__comparison__get","parameters":[{"name":"comparison","in":"path","required":true,"schema":{"type":"string","title":"Comparison"}}],"responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/use":{"get":{"tags":["Core"],"summary":"Use Hub","operationId":"use_hub_use_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/use/{page}":{"get":{"tags":["Core"],"summary":"Use Page","operationId":"use_page_use__page__get","parameters":[{"name":"page","in":"path","required":true,"schema":{"type":"string","title":"Page"}}],"responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/blog":{"get":{"tags":["Core"],"summary":"Blog Hub","operationId":"blog_hub_blog_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/blog/{post}":{"get":{"tags":["Core"],"summary":"Blog Post","operationId":"blog_post_blog__post__get","parameters":[{"name":"post","in":"path","required":true,"schema":{"type":"string","title":"Post"}}],"responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/acknowledgements":{"get":{"tags":["Core"],"summary":"Acknowledgements","operationId":"acknowledgements_acknowledgements_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/robots.txt":{"get":{"tags":["Core"],"summary":"Robots Txt","operationId":"robots_txt_robots_txt_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/sitemap.xml":{"get":{"tags":["Core"],"summary":"Sitemap Xml","operationId":"sitemap_xml_sitemap_xml_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/llms.txt":{"get":{"tags":["Core"],"summary":"Llms Txt","operationId":"llms_txt_llms_txt_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/download":{"get":{"tags":["Core"],"summary":"Download","operationId":"download_download_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/app":{"get":{"tags":["Core"],"summary":"Web App Root","operationId":"web_app_root_app_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/app/{path}":{"get":{"tags":["Core"],"summary":"Web App Fallback","operationId":"web_app_fallback_app__path__get","parameters":[{"name":"path","in":"path","required":true,"schema":{"type":"string","title":"Path"}}],"responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/metrics_x":{"get":{"tags":["Analytics"],"summary":"Prometheus Fastapi Handler","operationId":"prometheus_fastapi_handler_metrics_x_get","responses":{"200":{"description":"Successful Response","content":{"text/plain":{"schema":{"type":"string"}}}}}}}},"components":{"schemas":{"AcceptInviteResponse":{"properties":{"space_id":{"type":"integer","title":"Space Id"},"space_name":{"type":"string","title":"Space Name"},"role":{"type":"string","title":"Role"}},"type":"object","required":["space_id","space_name","role"],"title":"AcceptInviteResponse"},"AnalyticsEvent":{"properties":{"event_name":{"type":"string","title":"Event Name"},"properties":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Properties","default":{}},"timestamp":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Timestamp"}},"type":"object","required":["event_name"],"title":"AnalyticsEvent","description":"Analytics event from client app"},"ArchiveProjectSourcedItemsRequest":{"properties":{"project_slug":{"type":"string","maxLength":200,"minLength":1,"title":"Project Slug"},"aliases":{"items":{"type":"string"},"type":"array","maxItems":20,"title":"Aliases"},"archived_by":{"type":"string","maxLength":80,"title":"Archived By","default":"project_close"}},"type":"object","required":["project_slug"],"title":"ArchiveProjectSourcedItemsRequest"},"AskRequest":{"properties":{"question":{"type":"string","title":"Question"},"brain_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Brain Id"}},"type":"object","required":["question"],"title":"AskRequest"},"AskResponse":{"properties":{"brain_id":{"type":"string","title":"Brain Id"},"answer":{"type":"string","title":"Answer"},"citations":{"items":{},"type":"array","title":"Citations"}},"type":"object","required":["brain_id","answer","citations"],"title":"AskResponse"},"AuthCookie":{"properties":{"name":{"type":"string","title":"Name"},"value":{"type":"string","title":"Value"},"domain":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Domain"},"path":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Path"},"expires":{"anyOf":[{"type":"number"},{"type":"integer"},{"type":"null"}],"title":"Expires"},"httpOnly":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Httponly"},"secure":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Secure"},"sameSite":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Samesite"}},"type":"object","required":["name","value"],"title":"AuthCookie"},"AuthSessionDomainRequest":{"properties":{"ut":{"type":"string","title":"Ut"},"k":{"type":"string","title":"K"},"domain":{"type":"string","title":"Domain"}},"type":"object","required":["ut","k","domain"],"title":"AuthSessionDomainRequest"},"AuthSessionListRequest":{"properties":{"ut":{"type":"string","title":"Ut"},"k":{"type":"string","title":"K"}},"type":"object","required":["ut","k"],"title":"AuthSessionListRequest"},"AuthSessionLoadRequest":{"properties":{"ut":{"type":"string","title":"Ut"},"k":{"type":"string","title":"K"},"domain":{"type":"string","title":"Domain"},"verify_url":{"type":"string","title":"Verify Url"},"provider":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Provider"}},"type":"object","required":["ut","k","domain","verify_url"],"title":"AuthSessionLoadRequest"},"AuthSessionUploadRequest":{"properties":{"ut":{"type":"string","title":"Ut"},"k":{"type":"string","title":"K"},"domain":{"type":"string","title":"Domain"},"provider":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Provider"},"cookies":{"items":{"$ref":"#/components/schemas/AuthCookie"},"type":"array","title":"Cookies"},"origins":{"items":{"additionalProperties":true,"type":"object"},"type":"array","title":"Origins"},"capabilities":{"items":{"type":"string"},"type":"array","title":"Capabilities"},"expires_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Expires At"},"metadata":{"additionalProperties":true,"type":"object","title":"Metadata"}},"type":"object","required":["ut","k","domain"],"title":"AuthSessionUploadRequest"},"AuthTokenResponse":{"properties":{"access_token":{"type":"string","title":"Access Token"},"token_type":{"type":"string","title":"Token Type"},"expires_in":{"type":"integer","title":"Expires In"}},"type":"object","required":["access_token","token_type","expires_in"],"title":"AuthTokenResponse"},"AuthedRequest":{"properties":{"ut":{"type":"string","title":"Ut"},"k":{"type":"string","title":"K"}},"type":"object","required":["ut","k"],"title":"AuthedRequest"},"Body_approve_cli_auth_v1_cli_auth_approve_post":{"properties":{"user_code":{"type":"string","title":"User Code"},"csrf_token":{"type":"string","title":"Csrf Token"}},"type":"object","required":["user_code","csrf_token"],"title":"Body_approve_cli_auth_v1_cli_auth_approve_post"},"Body_create_memory_v1_users_memory_create_post":{"properties":{"ut":{"type":"string","title":"Ut"},"k":{"type":"string","title":"K"},"label":{"type":"string","title":"Label"},"instructions":{"type":"string","title":"Instructions"}},"type":"object","required":["ut","k","label","instructions"],"title":"Body_create_memory_v1_users_memory_create_post"},"Body_create_user_fact_v1_user_facts_post":{"properties":{"ut":{"type":"string","title":"Ut"},"k":{"type":"string","title":"K"},"instructions":{"type":"string","title":"Instructions"},"label":{"type":"string","title":"Label"}},"type":"object","required":["ut","k","instructions","label"],"title":"Body_create_user_fact_v1_user_facts_post"},"Body_delete_memory_v1_users_memory_delete_post":{"properties":{"ut":{"type":"string","title":"Ut"},"k":{"type":"string","title":"K"},"memory_id":{"type":"integer","title":"Memory Id"}},"type":"object","required":["ut","k","memory_id"],"title":"Body_delete_memory_v1_users_memory_delete_post"},"Body_delete_user_fact_v1_user_facts__fact_id__delete":{"properties":{"ut":{"type":"string","title":"Ut"},"k":{"type":"string","title":"K"}},"type":"object","required":["ut","k"],"title":"Body_delete_user_fact_v1_user_facts__fact_id__delete"},"Body_update_memory_combined_v1_users_memory_update_combined_post":{"properties":{"ut":{"type":"string","title":"Ut"},"k":{"type":"string","title":"K"},"memory_id":{"type":"integer","title":"Memory Id"},"instructions":{"type":"string","title":"Instructions"},"label":{"type":"string","title":"Label"}},"type":"object","required":["ut","k","memory_id","instructions","label"],"title":"Body_update_memory_combined_v1_users_memory_update_combined_post"},"Body_update_user_fact_v1_user_facts__fact_id__put":{"properties":{"ut":{"type":"string","title":"Ut"},"k":{"type":"string","title":"K"},"instructions":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Instructions"},"label":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Label"}},"type":"object","required":["ut","k"],"title":"Body_update_user_fact_v1_user_facts__fact_id__put"},"Body_upload_document_v1_documents_upload_post":{"properties":{"file":{"type":"string","contentMediaType":"application/octet-stream","title":"File"},"context_window_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Context Window Id"},"external_parent_message_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"External Parent Message Id"},"save_file":{"type":"boolean","title":"Save File","default":true},"display_title":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Display Title"}},"type":"object","required":["file"],"title":"Body_upload_document_v1_documents_upload_post"},"Body_web_upload_document_v1_web_documents_upload_post":{"properties":{"file":{"type":"string","contentMediaType":"application/octet-stream","title":"File"},"context_window_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Context Window Id"},"external_parent_message_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"External Parent Message Id"}},"type":"object","required":["file"],"title":"Body_web_upload_document_v1_web_documents_upload_post"},"CalendarEventSchema":{"properties":{"eventIdentifier":{"type":"string","title":"Eventidentifier"},"title":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Title"},"location":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Location"},"startDate":{"type":"string","format":"date-time","title":"Startdate"},"endDate":{"type":"string","format":"date-time","title":"Enddate"},"isAllDay":{"type":"boolean","title":"Isallday"},"URL":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Url"},"notes":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Notes"},"lastModifiedDate":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Lastmodifieddate"},"calendarTitle":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Calendartitle"},"calendarType":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Calendartype"},"accountEmail":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Accountemail"},"externalAccountID":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Externalaccountid"},"attendees":{"anyOf":[{"items":{"additionalProperties":{"anyOf":[{"type":"string"},{"type":"boolean"}]},"type":"object"},"type":"array"},{"type":"null"}],"title":"Attendees"},"isRecurring":{"type":"boolean","title":"Isrecurring","default":false},"eventType":{"anyOf":[{"type":"string","enum":["location","meeting_link","rsvp","other"]},{"type":"null"}],"title":"Eventtype","description":"Infer best label","default":"other"},"summary":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Summary","description":"A summary of the calendar event"},"addressOfEvent":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Addressofevent","description":"If the location of event is a real address, otherwise nil"},"joinMeetingLink":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Joinmeetinglink","description":"If the location of event is a meeting link URL (zoom, microsoft teams, hangouts), extract out full link with no fabrication"},"meetingURL":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Meetingurl","description":"Extract out full Google calendar link with no fabrication"}},"type":"object","required":["eventIdentifier","startDate","endDate","isAllDay"],"title":"CalendarEventSchema"},"ChangePlanRequest":{"properties":{"ut":{"type":"string","title":"Ut"},"k":{"type":"string","title":"K"},"plan":{"type":"string","title":"Plan"}},"type":"object","required":["ut","k","plan"],"title":"ChangePlanRequest"},"ChangePlanResponse":{"properties":{"success":{"type":"boolean","title":"Success"},"from_plan":{"type":"string","title":"From Plan"},"to_plan":{"type":"string","title":"To Plan"},"credit_amount_cents":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Credit Amount Cents"},"charge_amount_cents":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Charge Amount Cents"},"net_amount_cents":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Net Amount Cents"},"stripe_confirmation_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Stripe Confirmation Id"},"error":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Error"}},"type":"object","required":["success","from_plan","to_plan"],"title":"ChangePlanResponse"},"CheckoutRequest":{"properties":{"ut":{"type":"string","title":"Ut"},"k":{"type":"string","title":"K"},"plan":{"type":"string","title":"Plan","default":"tier1"},"coupon":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Coupon"},"allow_promo_code":{"type":"boolean","title":"Allow Promo Code","default":true}},"type":"object","required":["ut","k"],"title":"CheckoutRequest"},"CheckoutResponse":{"properties":{"checkout_url":{"type":"string","title":"Checkout Url"},"session_id":{"type":"string","title":"Session Id"}},"type":"object","required":["checkout_url","session_id"],"title":"CheckoutResponse"},"CliAuthStartRequest":{"properties":{"scopes":{"items":{"type":"string"},"type":"array","title":"Scopes"}},"type":"object","title":"CliAuthStartRequest"},"CliAuthStartResponse":{"properties":{"device_code":{"type":"string","title":"Device Code"},"user_code":{"type":"string","title":"User Code"},"verification_uri":{"type":"string","title":"Verification Uri"},"verification_uri_complete":{"type":"string","title":"Verification Uri Complete"},"expires_in":{"type":"integer","title":"Expires In"},"interval":{"type":"integer","title":"Interval"}},"type":"object","required":["device_code","user_code","verification_uri","verification_uri_complete","expires_in","interval"],"title":"CliAuthStartResponse"},"CliAuthTokenRequest":{"properties":{"device_code":{"type":"string","title":"Device Code"}},"type":"object","required":["device_code"],"title":"CliAuthTokenRequest"},"CliAuthTokenResponse":{"properties":{"status":{"type":"string","title":"Status"},"interval":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Interval"},"api_key":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api Key"},"api_key_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api Key Id"},"scopes":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Scopes"}},"type":"object","required":["status"],"title":"CliAuthTokenResponse"},"CloudModelOption":{"properties":{"id":{"type":"string","title":"Id"},"label":{"type":"string","title":"Label"},"detail":{"type":"string","title":"Detail"},"retention_notice":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Retention Notice"},"accessible":{"type":"boolean","title":"Accessible","default":true}},"type":"object","required":["id","label","detail"],"title":"CloudModelOption"},"CloudModelsResponse":{"properties":{"models":{"items":{"$ref":"#/components/schemas/CloudModelOption"},"type":"array","title":"Models"},"preferred_model":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Preferred Model"}},"type":"object","required":["models"],"title":"CloudModelsResponse"},"ConnectAnthropicRequest":{"properties":{"oauth_token":{"type":"string","title":"Oauth Token"}},"type":"object","required":["oauth_token"],"title":"ConnectAnthropicRequest"},"ConnectOpenAIRequest":{"properties":{"auth_json":{"additionalProperties":true,"type":"object","title":"Auth Json"}},"type":"object","required":["auth_json"],"title":"ConnectOpenAIRequest"},"ConsentScopeResponse":{"properties":{"scope":{"type":"string","title":"Scope"},"description":{"type":"string","title":"Description"},"active":{"type":"boolean","title":"Active"}},"type":"object","required":["scope","description","active"],"title":"ConsentScopeResponse"},"CreateEventRequest":{"properties":{"ut":{"type":"string","title":"Ut"},"k":{"type":"string","title":"K"},"start_time":{"type":"string","title":"Start Time"},"end_time":{"type":"string","title":"End Time"},"duration":{"type":"integer","title":"Duration"},"calendar_label":{"type":"string","title":"Calendar Label","default":"personal"}},"type":"object","required":["ut","k","start_time","end_time","duration"],"title":"CreateEventRequest"},"CreateInviteRequest":{"properties":{"expires_in_hours":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Expires In Hours"},"max_uses":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Max Uses"},"invitee_email":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Invitee Email"},"invitee_first_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Invitee First Name"},"invitee_last_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Invitee Last Name"},"billing_confirmed":{"type":"boolean","title":"Billing Confirmed","default":false}},"type":"object","title":"CreateInviteRequest"},"CreateKeyRequest":{"properties":{"name":{"type":"string","title":"Name"},"scopes":{"items":{"type":"string"},"type":"array","title":"Scopes"},"brain_ids":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Brain Ids"}},"type":"object","required":["name"],"title":"CreateKeyRequest"},"CreateKeyResponse":{"properties":{"id":{"type":"string","title":"Id"},"name":{"type":"string","title":"Name"},"api_key":{"type":"string","title":"Api Key"},"scopes":{"items":{"type":"string"},"type":"array","title":"Scopes"},"brain_ids":{"items":{"type":"string"},"type":"array","title":"Brain Ids"},"created_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Created At"}},"type":"object","required":["id","name","api_key","scopes","brain_ids"],"title":"CreateKeyResponse"},"CreateSpaceRequest":{"properties":{"name":{"type":"string","title":"Name"},"type":{"type":"string","title":"Type","default":"family"},"whatsapp_group_jid":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Whatsapp Group Jid"},"telegram_group_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Telegram Group Id"}},"type":"object","required":["name"],"title":"CreateSpaceRequest"},"DesktopLoginExchangeRequest":{"properties":{"code":{"type":"string","title":"Code"}},"type":"object","required":["code"],"title":"DesktopLoginExchangeRequest"},"DiskUsageReport":{"properties":{"total_bytes":{"type":"integer","exclusiveMinimum":0.0,"title":"Total Bytes"},"free_bytes":{"type":"integer","minimum":0.0,"title":"Free Bytes"}},"type":"object","required":["total_bytes","free_bytes"],"title":"DiskUsageReport"},"EnableSkillRequest":{"properties":{"enabled":{"type":"boolean","title":"Enabled"}},"type":"object","required":["enabled"],"title":"EnableSkillRequest"},"EndpointConfig":{"properties":{"api_root":{"type":"string","title":"Api Root"},"api_protocol":{"type":"string","title":"Api Protocol"},"websocket_url":{"type":"string","title":"Websocket Url"},"websocket_protocol":{"type":"string","title":"Websocket Protocol"},"websocket_audio_url":{"type":"string","title":"Websocket Audio Url"},"websocket_audio_protocol":{"type":"string","title":"Websocket Audio Protocol"},"priority":{"type":"integer","title":"Priority","default":100}},"type":"object","required":["api_root","api_protocol","websocket_url","websocket_protocol","websocket_audio_url","websocket_audio_protocol"],"title":"EndpointConfig","description":"Configuration for API and WebSocket endpoints"},"EndpointConfigResponse":{"properties":{"configs":{"items":{"$ref":"#/components/schemas/EndpointConfig"},"type":"array","title":"Configs"},"current_env":{"type":"string","title":"Current Env"},"remote_inference_enabled":{"type":"boolean","title":"Remote Inference Enabled","default":true},"remote_inference_disabled_message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Remote Inference Disabled Message"}},"type":"object","required":["configs","current_env"],"title":"EndpointConfigResponse","description":"Response containing available endpoint configurations"},"FamilyAskRequest":{"properties":{"space_id":{"type":"integer","title":"Space Id"},"question":{"type":"string","title":"Question"},"target_user_ids":{"anyOf":[{"items":{"type":"integer"},"type":"array"},{"type":"null"}],"title":"Target User Ids"},"context":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Context"}},"type":"object","required":["space_id","question"],"title":"FamilyAskRequest"},"FamilyAskResponse":{"properties":{"results":{"items":{"$ref":"#/components/schemas/MemberResult"},"type":"array","title":"Results"}},"type":"object","required":["results"],"title":"FamilyAskResponse"},"FamilyBillingRequestResponse":{"properties":{"success":{"type":"boolean","title":"Success"},"message":{"type":"string","title":"Message"}},"type":"object","required":["success","message"],"title":"FamilyBillingRequestResponse"},"FamilyOwnershipTransferSeedRequest":{"properties":{"owner_user_id":{"type":"integer","title":"Owner User Id"},"recipient_user_id":{"type":"integer","title":"Recipient User Id"},"owner_email":{"type":"string","title":"Owner Email","default":"family-owner-ui-test@example.com"},"recipient_email":{"type":"string","title":"Recipient Email","default":"family-recipient-ui-test@example.com"}},"type":"object","required":["owner_user_id","recipient_user_id"],"title":"FamilyOwnershipTransferSeedRequest"},"FamilyOwnershipTransferSeedResponse":{"properties":{"owner_user_id":{"type":"integer","title":"Owner User Id"},"recipient_user_id":{"type":"integer","title":"Recipient User Id"},"space_id":{"type":"integer","title":"Space Id"},"transfer_id":{"type":"integer","title":"Transfer Id"}},"type":"object","required":["owner_user_id","recipient_user_id","space_id","transfer_id"],"title":"FamilyOwnershipTransferSeedResponse"},"FamilyScenarioSeedRequest":{"properties":{"owner_user_id":{"type":"integer","title":"Owner User Id"},"member_user_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Member User Id"},"invited_user_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Invited User Id"},"owner_email":{"type":"string","title":"Owner Email","default":"family-owner-ui-test@example.com"},"member_email":{"type":"string","title":"Member Email","default":"family-member-ui-test@example.com"},"invited_email":{"type":"string","title":"Invited Email","default":"family-invited-ui-test@example.com"},"include_member":{"type":"boolean","title":"Include Member","default":true},"include_pending_invite":{"type":"boolean","title":"Include Pending Invite","default":false},"extra_member_count":{"type":"integer","title":"Extra Member Count","default":0},"owner_subscription_status":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Owner Subscription Status"},"included_family_user_count":{"type":"integer","title":"Included Family User Count","default":5}},"type":"object","required":["owner_user_id"],"title":"FamilyScenarioSeedRequest"},"FamilyScenarioSeedResponse":{"properties":{"owner_user_id":{"type":"integer","title":"Owner User Id"},"member_user_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Member User Id"},"invited_user_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Invited User Id"},"space_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Space Id"},"invite_code":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Invite Code"}},"type":"object","required":["owner_user_id"],"title":"FamilyScenarioSeedResponse"},"GCalJoAgendaNotesExtractor":{"properties":{"packedDays":{"items":{"type":"string"},"type":"array","title":"Packeddays","description":"Upcoming weekdays with >75% of work hours scheduled","examples":[["Mon","Tue"]]},"lightDays":{"items":{"type":"string"},"type":"array","title":"Lightdays","description":"Upcoming weekdays that are not packed","examples":[["Thu, Fri"]]},"weekend":{"type":"string","title":"Weekend","description":"<looks good with list of activities / needs some plans>"},"weekdayTimeMaxSuggestions":{"items":{"type":"string"},"type":"array","title":"Weekdaytimemaxsuggestions","description":"\n        Following 'USER INSTRUCTIONS' closely, suggest a sequence of calendar event moves to resolve conflicts (using 'CONFLICTED EVENTS'), group events together by location, maximize long blocks of the same kind of time, rebalance busy days. Each str in the array needs to be a single atomic action. Sorted by ASC. THIS NEEDS TO BE PERFECT.\n        "},"earlyLates":{"items":{"type":"string"},"type":"array","title":"Earlylates","description":"A new array of events that are either too early or too late, while taking instructions from user into account"}},"type":"object","required":["packedDays","lightDays","weekend","weekdayTimeMaxSuggestions","earlyLates"],"title":"GCalJoAgendaNotesExtractor","description":"Generates notes about viability of the agenda provided "},"GoogleAccountRelabelRequest":{"properties":{"account_email":{"type":"string","title":"Account Email"},"new_label":{"type":"string","title":"New Label"}},"type":"object","required":["account_email","new_label"],"title":"GoogleAccountRelabelRequest"},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"ImportFile":{"properties":{"path":{"type":"string","title":"Path"},"content":{"type":"string","title":"Content"},"content_type":{"type":"string","title":"Content Type","default":"text/plain"}},"type":"object","required":["path","content"],"title":"ImportFile"},"ImportRequest":{"properties":{"brain_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Brain Id"},"files":{"items":{"$ref":"#/components/schemas/ImportFile"},"type":"array","title":"Files"}},"type":"object","required":["files"],"title":"ImportRequest"},"ImportResponse":{"properties":{"operation_id":{"type":"string","title":"Operation Id"},"status":{"type":"string","title":"Status"},"imported":{"type":"integer","title":"Imported"},"memories_created":{"type":"integer","title":"Memories Created"}},"type":"object","required":["operation_id","status","imported","memories_created"],"title":"ImportResponse"},"InstallSkillRequest":{"properties":{"slug":{"type":"string","title":"Slug"},"confirmed":{"type":"boolean","title":"Confirmed","default":false},"confirmation_text":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Confirmation Text"}},"type":"object","required":["slug"],"title":"InstallSkillRequest"},"InstallSkillUrlRequest":{"properties":{"url":{"type":"string","title":"Url"},"confirmed":{"type":"boolean","title":"Confirmed","default":false},"confirmation_text":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Confirmation Text"}},"type":"object","required":["url"],"title":"InstallSkillUrlRequest"},"IntegrationDetailRequest":{"properties":{"integration_type":{"type":"string","enum":["gmail","calendar","drive","contacts"],"title":"Integration Type"},"item_id":{"type":"string","title":"Item Id"},"account_label":{"type":"string","title":"Account Label","default":"personal"}},"type":"object","required":["integration_type","item_id"],"title":"IntegrationDetailRequest"},"IntegrationDetailResponse":{"properties":{"success":{"type":"boolean","title":"Success"},"formatted_text":{"type":"string","title":"Formatted Text"},"raw_data":{"additionalProperties":true,"type":"object","title":"Raw Data","default":{}}},"type":"object","required":["success","formatted_text"],"title":"IntegrationDetailResponse"},"InvitePreview":{"properties":{"space_name":{"type":"string","title":"Space Name"},"space_type":{"type":"string","title":"Space Type"},"member_count":{"type":"integer","title":"Member Count"},"inviter_name":{"type":"string","title":"Inviter Name"}},"type":"object","required":["space_name","space_type","member_count","inviter_name"],"title":"InvitePreview"},"InviteResponse":{"properties":{"invite_code":{"type":"string","title":"Invite Code"},"url":{"type":"string","title":"Url"},"deep_link":{"type":"string","title":"Deep Link"},"invitee_email":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Invitee Email"},"invitee_first_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Invitee First Name"},"invitee_last_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Invitee Last Name"},"expires_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Expires At"},"max_uses":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Max Uses"},"use_count":{"type":"integer","title":"Use Count","default":0}},"type":"object","required":["invite_code","url","deep_link"],"title":"InviteResponse"},"KeyMetadata":{"properties":{"id":{"type":"string","title":"Id"},"name":{"type":"string","title":"Name"},"scopes":{"items":{"type":"string"},"type":"array","title":"Scopes"},"brain_ids":{"items":{"type":"string"},"type":"array","title":"Brain Ids"},"created_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Created At"},"last_used_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Last Used At"}},"type":"object","required":["id","name","scopes","brain_ids"],"title":"KeyMetadata"},"MachineInboundRequest":{"properties":{"question":{"type":"string","title":"Question"},"from_user_id":{"type":"integer","title":"From User Id"},"from_user_name":{"type":"string","title":"From User Name"},"space_id":{"type":"integer","title":"Space Id"},"context":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Context"}},"type":"object","required":["question","from_user_id","from_user_name","space_id"],"title":"MachineInboundRequest"},"MachineInboundResponse":{"properties":{"status":{"type":"string","title":"Status"},"response":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Response"},"notified":{"type":"boolean","title":"Notified","default":false}},"type":"object","required":["status"],"title":"MachineInboundResponse"},"MarketingFixtureAsk":{"properties":{"title":{"type":"string","title":"Title"},"subtitle":{"type":"string","title":"Subtitle"},"context_window":{"type":"boolean","title":"Context Window","default":false},"context_messages":{"items":{"$ref":"#/components/schemas/MarketingFixtureMessage"},"type":"array","title":"Context Messages"}},"type":"object","required":["title","subtitle"],"title":"MarketingFixtureAsk"},"MarketingFixtureItem":{"properties":{"section":{"type":"string","title":"Section"},"title":{"type":"string","title":"Title"},"subtitle":{"type":"string","title":"Subtitle"},"source":{"type":"string","title":"Source"},"importance":{"type":"integer","title":"Importance"},"task_instructions":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Task Instructions"},"actions":{"anyOf":[{"items":{"additionalProperties":true,"type":"object"},"type":"array"},{"type":"null"}],"title":"Actions"},"action_needed":{"type":"boolean","title":"Action Needed","default":true},"context_window":{"type":"boolean","title":"Context Window","default":false},"context_messages":{"items":{"$ref":"#/components/schemas/MarketingFixtureMessage"},"type":"array","title":"Context Messages"}},"type":"object","required":["section","title","subtitle","source","importance"],"title":"MarketingFixtureItem"},"MarketingFixtureMessage":{"properties":{"role":{"type":"string","enum":["user","assistant"],"title":"Role"},"content":{"type":"string","title":"Content"}},"type":"object","required":["role","content"],"title":"MarketingFixtureMessage"},"MarketingFixtureSeedRequest":{"properties":{"date":{"type":"string","title":"Date"},"header":{"type":"string","title":"Header"},"items":{"items":{"$ref":"#/components/schemas/MarketingFixtureItem"},"type":"array","maxItems":6,"minItems":1,"title":"Items"},"asks":{"items":{"$ref":"#/components/schemas/MarketingFixtureAsk"},"type":"array","maxItems":6,"title":"Asks"}},"type":"object","required":["date","header","items"],"title":"MarketingFixtureSeedRequest"},"MeResponse":{"properties":{"user_id":{"type":"integer","title":"User Id"},"auth_method":{"type":"string","title":"Auth Method"},"scopes":{"items":{"type":"string"},"type":"array","title":"Scopes"},"allowed_brain_ids":{"items":{"type":"string"},"type":"array","title":"Allowed Brain Ids"},"account_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Account Id"},"family_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Family Id"},"client_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Client Id"},"api_key_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api Key Id"}},"type":"object","required":["user_id","auth_method","scopes","allowed_brain_ids"],"title":"MeResponse"},"MemberResult":{"properties":{"user_id":{"type":"integer","title":"User Id"},"name":{"type":"string","title":"Name"},"status":{"type":"string","title":"Status"},"response":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Response"}},"type":"object","required":["user_id","name","status"],"title":"MemberResult"},"MessageResponse":{"properties":{"response":{"type":"string","title":"Response"},"tools_used":{"items":{"type":"string"},"type":"array","title":"Tools Used","default":[]}},"type":"object","required":["response"],"title":"MessageResponse","description":"Response model for processed message"},"NotificationPreferencesUpdate":{"properties":{"briefing":{"anyOf":[{"additionalProperties":{"type":"boolean"},"type":"object"},{"type":"null"}],"title":"Briefing"},"realtime":{"anyOf":[{"additionalProperties":{"type":"boolean"},"type":"object"},{"type":"null"}],"title":"Realtime"}},"type":"object","title":"NotificationPreferencesUpdate"},"OnboardingActionVote":{"properties":{"title":{"type":"string","maxLength":240,"minLength":1,"title":"Title"},"description":{"type":"string","maxLength":1200,"title":"Description","default":""},"source":{"type":"string","maxLength":80,"minLength":1,"title":"Source","default":"onboarding"},"vote":{"type":"string","pattern":"^(up|down|undo)$","title":"Vote"}},"type":"object","required":["title","vote"],"title":"OnboardingActionVote"},"OnboardingBrowserActionRequest":{"properties":{"ut":{"anyOf":[{"type":"string"},{"type":"integer"}],"title":"Ut"},"k":{"type":"string","title":"K"},"visits":{"items":{"$ref":"#/components/schemas/OnboardingBrowserActionVisit"},"type":"array","maxItems":220,"title":"Visits"}},"type":"object","required":["ut","k"],"title":"OnboardingBrowserActionRequest"},"OnboardingBrowserActionVisit":{"properties":{"browser":{"type":"string","title":"Browser","default":"browser"},"domain":{"type":"string","title":"Domain","default":""},"title":{"type":"string","title":"Title","default":""},"url":{"type":"string","title":"Url","default":""},"date":{"type":"string","title":"Date","default":""}},"type":"object","title":"OnboardingBrowserActionVisit"},"OnboardingDirectChatActionMessage":{"properties":{"platform":{"type":"string","title":"Platform","default":"chat"},"contact":{"type":"string","title":"Contact","default":""},"sender":{"type":"string","title":"Sender","default":""},"text":{"type":"string","title":"Text","default":""},"date":{"type":"string","title":"Date","default":""},"is_from_me":{"type":"boolean","title":"Is From Me","default":false},"is_group":{"type":"boolean","title":"Is Group","default":false}},"type":"object","title":"OnboardingDirectChatActionMessage"},"OnboardingDirectChatActionRequest":{"properties":{"ut":{"anyOf":[{"type":"string"},{"type":"integer"}],"title":"Ut"},"k":{"type":"string","title":"K"},"messages":{"items":{"$ref":"#/components/schemas/OnboardingDirectChatActionMessage"},"type":"array","maxItems":220,"title":"Messages"}},"type":"object","required":["ut","k"],"title":"OnboardingDirectChatActionRequest"},"OnboardingNotesActionNote":{"properties":{"source":{"type":"string","title":"Source","default":"note"},"title":{"type":"string","title":"Title","default":""},"snippet":{"type":"string","title":"Snippet","default":""},"container":{"type":"string","title":"Container","default":""},"modified_at":{"type":"string","title":"Modified At","default":""}},"type":"object","title":"OnboardingNotesActionNote"},"OnboardingNotesActionRequest":{"properties":{"ut":{"anyOf":[{"type":"string"},{"type":"integer"}],"title":"Ut"},"k":{"type":"string","title":"K"},"notes":{"items":{"$ref":"#/components/schemas/OnboardingNotesActionNote"},"type":"array","maxItems":80,"title":"Notes"}},"type":"object","required":["ut","k"],"title":"OnboardingNotesActionRequest"},"OnboardingProfileConfirmRequest":{"properties":{"ut":{"anyOf":[{"type":"string"},{"type":"integer"}],"title":"Ut"},"k":{"type":"string","title":"K"}},"type":"object","required":["ut","k"],"title":"OnboardingProfileConfirmRequest"},"OnboardingProfileFeedbackRequest":{"properties":{"ut":{"anyOf":[{"type":"string"},{"type":"integer"}],"title":"Ut"},"k":{"type":"string","title":"K"},"dismissed_bullet_ids":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Dismissed Bullet Ids"},"dismissed_bullet_texts":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Dismissed Bullet Texts"},"selected_tags":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Selected Tags"},"additional_context":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Additional Context"}},"type":"object","required":["ut","k"],"title":"OnboardingProfileFeedbackRequest"},"OnboardingProfileRejectRequest":{"properties":{"ut":{"anyOf":[{"type":"string"},{"type":"integer"}],"title":"Ut"},"k":{"type":"string","title":"K"},"reason":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Reason"},"identity_hint":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Identity Hint"},"search_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Search Name"}},"type":"object","required":["ut","k"],"title":"OnboardingProfileRejectRequest"},"OnboardingProfileRunStartRequest":{"properties":{"ut":{"anyOf":[{"type":"string"},{"type":"integer"}],"title":"Ut"},"k":{"type":"string","title":"K"}},"type":"object","required":["ut","k"],"title":"OnboardingProfileRunStartRequest"},"OnboardingProfileSourceConnectRequest":{"properties":{"ut":{"anyOf":[{"type":"string"},{"type":"integer"}],"title":"Ut"},"k":{"type":"string","title":"K"}},"type":"object","required":["ut","k"],"title":"OnboardingProfileSourceConnectRequest"},"OnboardingProfileSourceSummaryRequest":{"properties":{"ut":{"anyOf":[{"type":"string"},{"type":"integer"}],"title":"Ut"},"k":{"type":"string","title":"K"},"summary_payload":{"additionalProperties":true,"type":"object","title":"Summary Payload"}},"type":"object","required":["ut","k"],"title":"OnboardingProfileSourceSummaryRequest"},"OnboardingPublicWebDisambiguateCandidate":{"properties":{"description":{"type":"string","title":"Description"},"identity_hint":{"type":"string","title":"Identity Hint"}},"type":"object","required":["description","identity_hint"],"title":"OnboardingPublicWebDisambiguateCandidate"},"OnboardingPublicWebDisambiguateRequest":{"properties":{"ut":{"anyOf":[{"type":"string"},{"type":"integer"}],"title":"Ut"},"k":{"type":"string","title":"K"},"name":{"type":"string","minLength":1,"title":"Name"},"results":{"items":{"$ref":"#/components/schemas/OnboardingPublicWebSearchResultItem"},"type":"array","title":"Results"},"location":{"type":"string","title":"Location","default":""},"email":{"type":"string","title":"Email","default":""},"company":{"type":"string","title":"Company","default":""}},"type":"object","required":["ut","k","name","results"],"title":"OnboardingPublicWebDisambiguateRequest"},"OnboardingPublicWebDisambiguateResponse":{"properties":{"ambiguous":{"type":"boolean","title":"Ambiguous"},"candidates":{"items":{"$ref":"#/components/schemas/OnboardingPublicWebDisambiguateCandidate"},"type":"array","title":"Candidates"}},"type":"object","required":["ambiguous","candidates"],"title":"OnboardingPublicWebDisambiguateResponse"},"OnboardingPublicWebPage":{"properties":{"url":{"type":"string","minLength":1,"title":"Url"},"title":{"type":"string","title":"Title","default":""},"content":{"type":"string","minLength":1,"title":"Content"}},"type":"object","required":["url","content"],"title":"OnboardingPublicWebPage"},"OnboardingPublicWebProfileRequest":{"properties":{"ut":{"anyOf":[{"type":"string"},{"type":"integer"}],"title":"Ut"},"k":{"type":"string","title":"K"},"query":{"type":"string","minLength":1,"title":"Query"},"pages":{"items":{"$ref":"#/components/schemas/OnboardingPublicWebPage"},"type":"array","title":"Pages"},"discovered_facts":{"items":{"type":"string"},"type":"array","title":"Discovered Facts"},"known_queries":{"items":{"type":"string"},"type":"array","title":"Known Queries"}},"type":"object","required":["ut","k","query","pages"],"title":"OnboardingPublicWebProfileRequest"},"OnboardingPublicWebQuerySpecResponse":{"properties":{"query":{"type":"string","title":"Query"},"phase":{"type":"string","title":"Phase"}},"type":"object","required":["query","phase"],"title":"OnboardingPublicWebQuerySpecResponse"},"OnboardingPublicWebSearchPlanRequest":{"properties":{"ut":{"anyOf":[{"type":"string"},{"type":"integer"}],"title":"Ut"},"k":{"type":"string","title":"K"},"name":{"type":"string","minLength":1,"title":"Name"},"email":{"type":"string","title":"Email","default":""},"company":{"type":"string","title":"Company","default":""},"identity_hint":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Identity Hint"},"max_queries":{"type":"integer","title":"Max Queries","default":10}},"type":"object","required":["ut","k","name"],"title":"OnboardingPublicWebSearchPlanRequest"},"OnboardingPublicWebSearchPlanResponse":{"properties":{"queries":{"items":{"$ref":"#/components/schemas/OnboardingPublicWebQuerySpecResponse"},"type":"array","title":"Queries"}},"type":"object","required":["queries"],"title":"OnboardingPublicWebSearchPlanResponse"},"OnboardingPublicWebSearchResultItem":{"properties":{"url":{"type":"string","minLength":1,"title":"Url"},"title":{"type":"string","title":"Title","default":""},"snippet":{"type":"string","title":"Snippet","default":""},"query":{"type":"string","title":"Query","default":""},"phase":{"type":"string","title":"Phase","default":"generic"}},"type":"object","required":["url"],"title":"OnboardingPublicWebSearchResultItem"},"OnboardingPublicWebSelectResultsRequest":{"properties":{"ut":{"anyOf":[{"type":"string"},{"type":"integer"}],"title":"Ut"},"k":{"type":"string","title":"K"},"name":{"type":"string","minLength":1,"title":"Name"},"email":{"type":"string","title":"Email","default":""},"company":{"type":"string","title":"Company","default":""},"identity_hint":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Identity Hint"},"max_pages":{"type":"integer","title":"Max Pages","default":8},"results":{"items":{"$ref":"#/components/schemas/OnboardingPublicWebSearchResultItem"},"type":"array","title":"Results"}},"type":"object","required":["ut","k","name","results"],"title":"OnboardingPublicWebSelectResultsRequest"},"OnboardingPublicWebSelectResultsResponse":{"properties":{"results":{"items":{"$ref":"#/components/schemas/OnboardingPublicWebSelectedResult"},"type":"array","title":"Results"}},"type":"object","required":["results"],"title":"OnboardingPublicWebSelectResultsResponse"},"OnboardingPublicWebSelectedResult":{"properties":{"url":{"type":"string","title":"Url"},"title":{"type":"string","title":"Title"},"snippet":{"type":"string","title":"Snippet"},"query":{"type":"string","title":"Query"},"phase":{"type":"string","title":"Phase"},"source_kind":{"type":"string","title":"Source Kind"},"score":{"type":"integer","title":"Score"}},"type":"object","required":["url","title","snippet","query","phase","source_kind","score"],"title":"OnboardingPublicWebSelectedResult"},"OnboardingReceiptFactsResponse":{"properties":{"status_message":{"type":"string","title":"Status Message"},"receipts_found":{"type":"integer","title":"Receipts Found"},"sent_emails_found":{"type":"integer","title":"Sent Emails Found","default":0},"profile_facts":{"items":{"$ref":"#/components/schemas/ReceiptFactItem"},"type":"array","title":"Profile Facts"},"family_facts":{"items":{"$ref":"#/components/schemas/ReceiptFactItem"},"type":"array","title":"Family Facts"},"shopping_patterns":{"items":{"$ref":"#/components/schemas/ReceiptFactItem"},"type":"array","title":"Shopping Patterns"},"future_plans":{"items":{"$ref":"#/components/schemas/ReceiptFactItem"},"type":"array","title":"Future Plans"},"likely_next":{"items":{"$ref":"#/components/schemas/ReceiptFactItem"},"type":"array","title":"Likely Next"},"close_people":{"items":{"$ref":"#/components/schemas/ReceiptFactItem"},"type":"array","title":"Close People"},"suggested_memory":{"items":{"type":"string"},"type":"array","title":"Suggested Memory"},"summary":{"type":"string","title":"Summary","default":""}},"type":"object","required":["status_message","receipts_found"],"title":"OnboardingReceiptFactsResponse"},"PendingInviteResponse":{"properties":{"invite_code":{"type":"string","title":"Invite Code"},"space_name":{"type":"string","title":"Space Name"},"space_type":{"type":"string","title":"Space Type"},"inviter_name":{"type":"string","title":"Inviter Name"},"member_count":{"type":"integer","title":"Member Count"}},"type":"object","required":["invite_code","space_name","space_type","inviter_name","member_count"],"title":"PendingInviteResponse"},"PendingOwnershipTransferResponse":{"properties":{"transfer_id":{"type":"integer","title":"Transfer Id"},"space_id":{"type":"integer","title":"Space Id"},"space_name":{"type":"string","title":"Space Name"},"requested_by_user_id":{"type":"integer","title":"Requested By User Id"},"new_owner_user_id":{"type":"integer","title":"New Owner User Id"},"created_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Created At"}},"type":"object","required":["transfer_id","space_id","space_name","requested_by_user_id","new_owner_user_id"],"title":"PendingOwnershipTransferResponse"},"PlanInfo":{"properties":{"name":{"type":"string","title":"Name"},"display_name":{"type":"string","title":"Display Name"},"tier":{"type":"string","title":"Tier"},"base_amount_cents":{"type":"integer","title":"Base Amount Cents"},"currency":{"type":"string","title":"Currency"},"included_usage":{"type":"integer","title":"Included Usage"},"trial_period_days":{"type":"integer","title":"Trial Period Days"},"is_current":{"type":"boolean","title":"Is Current","default":false},"badge":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Badge"},"features":{"items":{"type":"string"},"type":"array","title":"Features","default":[]}},"type":"object","required":["name","display_name","tier","base_amount_cents","currency","included_usage","trial_period_days"],"title":"PlanInfo"},"PlansResponse":{"properties":{"plans":{"items":{"$ref":"#/components/schemas/PlanInfo"},"type":"array","title":"Plans"},"current_plan":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Current Plan"}},"type":"object","required":["plans"],"title":"PlansResponse"},"PortalRequest":{"properties":{"ut":{"type":"string","title":"Ut"},"k":{"type":"string","title":"K"}},"type":"object","required":["ut","k"],"title":"PortalRequest"},"PortalResponse":{"properties":{"portal_url":{"type":"string","title":"Portal Url"}},"type":"object","required":["portal_url"],"title":"PortalResponse"},"PrivacyActionRequest":{"properties":{"ut":{"type":"string","title":"Ut"},"k":{"type":"string","title":"K"}},"type":"object","required":["ut","k"],"title":"PrivacyActionRequest"},"PrivacyActionResponse":{"properties":{"status":{"type":"string","title":"Status"},"message":{"type":"string","title":"Message"}},"type":"object","required":["status","message"],"title":"PrivacyActionResponse"},"PrivacyPreferencesRequest":{"properties":{"ut":{"type":"string","title":"Ut"},"k":{"type":"string","title":"K"},"do_not_sell_share":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Do Not Sell Share"},"ai_training_opt_out":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Ai Training Opt Out"},"sensitive_pi_limit":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Sensitive Pi Limit"}},"type":"object","required":["ut","k"],"title":"PrivacyPreferencesRequest"},"PrivacyPreferencesResponse":{"properties":{"do_not_sell_share":{"type":"boolean","title":"Do Not Sell Share"},"ai_training_opt_out":{"type":"boolean","title":"Ai Training Opt Out"},"sensitive_pi_limit":{"type":"boolean","title":"Sensitive Pi Limit"},"gpc_opt_out":{"type":"boolean","title":"Gpc Opt Out"}},"type":"object","required":["do_not_sell_share","ai_training_opt_out","sensitive_pi_limit","gpc_opt_out"],"title":"PrivacyPreferencesResponse"},"ProjectCardActionRequest":{"properties":{"project_id":{"type":"string","maxLength":200,"minLength":1,"title":"Project Id"},"operation":{"type":"string","enum":["invoke","complete","dismiss","restore","snooze"],"title":"Operation"},"action_id":{"anyOf":[{"type":"string","maxLength":256},{"type":"null"}],"title":"Action Id"},"context":{"type":"string","maxLength":8000,"title":"Context","default":""},"snoozed_until":{"anyOf":[{"type":"string","maxLength":80},{"type":"null"}],"title":"Snoozed Until"}},"type":"object","required":["project_id","operation"],"title":"ProjectCardActionRequest","description":"A deliberate action on one card in the authenticated project's scope."},"PublicTokenExchange":{"properties":{"public_token":{"type":"string","maxLength":2048,"minLength":1,"title":"Public Token"},"institution":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Institution"}},"type":"object","required":["public_token"],"title":"PublicTokenExchange"},"RecallRequest":{"properties":{"query":{"type":"string","title":"Query"},"brain_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Brain Id"},"limit":{"type":"integer","maximum":100.0,"minimum":1.0,"title":"Limit","default":10},"types":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Types"},"date_start":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Date Start"},"date_end":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Date End"}},"type":"object","required":["query"],"title":"RecallRequest"},"RecallResponse":{"properties":{"brain_id":{"type":"string","title":"Brain Id"},"results":{"items":{"$ref":"#/components/schemas/RecallResult"},"type":"array","title":"Results"}},"type":"object","required":["brain_id","results"],"title":"RecallResponse"},"RecallResult":{"properties":{"memory_id":{"type":"string","title":"Memory Id"},"text":{"type":"string","title":"Text"},"score":{"type":"number","title":"Score"},"source":{"type":"string","title":"Source"}},"type":"object","required":["memory_id","text","score","source"],"title":"RecallResult"},"ReceiptFactItem":{"properties":{"label":{"type":"string","title":"Label","default":""},"text":{"type":"string","title":"Text","default":""},"confidence":{"type":"string","title":"Confidence","default":"medium"}},"type":"object","title":"ReceiptFactItem"},"RegisterPushTokenRequest":{"properties":{"ut":{"type":"string","title":"Ut"},"k":{"type":"string","title":"K"},"device_token":{"type":"string","title":"Device Token"},"platform":{"type":"string","title":"Platform","default":"macos"},"environment":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Environment"},"topic":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Topic"},"device_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Device Id"},"app_version":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"App Version"},"device_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Device Name"}},"type":"object","required":["ut","k","device_token"],"title":"RegisterPushTokenRequest"},"RememberRequest":{"properties":{"text":{"type":"string","title":"Text"},"brain_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Brain Id"},"tags":{"items":{"type":"string"},"type":"array","title":"Tags"}},"type":"object","required":["text"],"title":"RememberRequest"},"RememberResponse":{"properties":{"memory_id":{"type":"string","title":"Memory Id"},"brain_id":{"type":"string","title":"Brain Id"},"text":{"type":"string","title":"Text"},"created_at":{"type":"string","title":"Created At"}},"type":"object","required":["memory_id","brain_id","text","created_at"],"title":"RememberResponse"},"ReportIssueRequest":{"properties":{"ut":{"type":"string","title":"Ut"},"k":{"type":"string","title":"K"},"listItemId":{"type":"string","title":"Listitemid"},"pageUrl":{"type":"string","title":"Pageurl"},"userDescription":{"type":"string","title":"Userdescription"},"pageContent":{"type":"string","title":"Pagecontent"}},"type":"object","required":["ut","k","listItemId","pageUrl","userDescription","pageContent"],"title":"ReportIssueRequest"},"RevokeKeyResponse":{"properties":{"revoked":{"type":"boolean","title":"Revoked"}},"type":"object","required":["revoked"],"title":"RevokeKeyResponse"},"SaveRequest":{"properties":{"title":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Title"},"summary":{"type":"string","title":"Summary"}},"type":"object","required":["summary"],"title":"SaveRequest"},"SavedDocument":{"properties":{"document_id":{"type":"string","title":"Document Id"},"title":{"type":"string","title":"Title"},"filename":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Filename"},"content_preview":{"type":"string","title":"Content Preview"},"context_window_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Context Window Id"},"created_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Created At"},"file_type":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"File Type"}},"type":"object","required":["document_id","title","content_preview"],"title":"SavedDocument","description":"Model for a saved document in the response"},"SavedDocumentsResponse":{"properties":{"documents":{"items":{"$ref":"#/components/schemas/SavedDocument"},"type":"array","title":"Documents"},"total":{"type":"integer","title":"Total"}},"type":"object","required":["documents","total"],"title":"SavedDocumentsResponse","description":"Response model for list of saved documents"},"SessionData":{"properties":{"user_id":{"type":"integer","title":"User Id"},"data":{"type":"string","title":"Data"}},"type":"object","required":["user_id","data"],"title":"SessionData"},"SpaceMemberResponse":{"properties":{"user_id":{"type":"integer","title":"User Id"},"name":{"type":"string","title":"Name"},"role":{"type":"string","title":"Role"},"status":{"type":"string","title":"Status"},"relationship_label":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Relationship Label"},"joined_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Joined At"}},"type":"object","required":["user_id","name","role","status"],"title":"SpaceMemberResponse"},"SpaceResponse":{"properties":{"id":{"type":"integer","title":"Id"},"type":{"type":"string","title":"Type"},"name":{"type":"string","title":"Name"},"owner_user_id":{"type":"integer","title":"Owner User Id"},"whatsapp_group_jid":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Whatsapp Group Jid"},"telegram_group_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Telegram Group Id"},"enabled":{"type":"boolean","title":"Enabled","default":true},"telegram_invite_link":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Telegram Invite Link"},"member_count":{"type":"integer","title":"Member Count","default":0},"created_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Created At"}},"type":"object","required":["id","type","name","owner_user_id"],"title":"SpaceResponse"},"StatsResponse":{"properties":{"brain_id":{"type":"string","title":"Brain Id"},"memory_count":{"type":"integer","title":"Memory Count"},"document_count":{"type":"integer","title":"Document Count"}},"type":"object","required":["brain_id","memory_count","document_count"],"title":"StatsResponse"},"StatusRequest":{"properties":{"ut":{"type":"string","title":"Ut"},"k":{"type":"string","title":"K"}},"type":"object","required":["ut","k"],"title":"StatusRequest"},"StatusResponse":{"properties":{"plan":{"type":"string","title":"Plan"},"tier":{"type":"string","title":"Tier"},"status":{"type":"string","title":"Status"},"current_period_start":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Current Period Start"},"current_period_end":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Current Period End"},"cancel_at_period_end":{"type":"boolean","title":"Cancel At Period End","default":false},"trial_end":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Trial End"},"credits_used":{"type":"integer","title":"Credits Used","default":0},"credits_included":{"type":"integer","title":"Credits Included","default":0},"billing_enabled":{"type":"boolean","title":"Billing Enabled","default":false},"credit_balance_cents":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Credit Balance Cents"},"auto_refill_enabled":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Auto Refill Enabled"},"refill_failure_count":{"type":"integer","title":"Refill Failure Count","default":0},"last_refill_failed_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Last Refill Failed At"},"payment_locked":{"type":"boolean","title":"Payment Locked","default":false},"covered_by_family":{"type":"boolean","title":"Covered By Family","default":false},"family_owner_user_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Family Owner User Id"},"family_space_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Family Space Id"},"family_space_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Family Space Name"},"family_billing_issue":{"type":"boolean","title":"Family Billing Issue","default":false},"family_billing_issue_type":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Family Billing Issue Type"}},"type":"object","required":["plan","tier","status"],"title":"StatusResponse"},"TransferOwnershipRequest":{"properties":{"new_owner_user_id":{"type":"integer","title":"New Owner User Id"}},"type":"object","required":["new_owner_user_id"],"title":"TransferOwnershipRequest"},"UpdateAutoArchiveDaysRequest":{"properties":{"ut":{"type":"string","title":"Ut"},"k":{"type":"string","title":"K"},"auto_archive_days":{"type":"integer","title":"Auto Archive Days"}},"type":"object","required":["ut","k","auto_archive_days"],"title":"UpdateAutoArchiveDaysRequest"},"UpdateConsentRequest":{"properties":{"scope":{"type":"string","title":"Scope"},"active":{"type":"boolean","title":"Active"}},"type":"object","required":["scope","active"],"title":"UpdateConsentRequest"},"UpdateIntegrationRequest":{"properties":{"ut":{"type":"string","title":"Ut"},"k":{"type":"string","title":"K"},"integration":{"type":"string","title":"Integration"},"enabled":{"type":"boolean","title":"Enabled"}},"type":"object","required":["ut","k","integration","enabled"],"title":"UpdateIntegrationRequest"},"UpdateRelationshipRequest":{"properties":{"relationship_label":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Relationship Label"}},"type":"object","title":"UpdateRelationshipRequest"},"UpdateSpaceRequest":{"properties":{"name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Name"},"enabled":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Enabled"},"telegram_invite_link":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Telegram Invite Link"}},"type":"object","title":"UpdateSpaceRequest"},"User":{"properties":{"db_user":{"title":"Db User"},"id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Id"},"email":{"anyOf":[{"type":"string","format":"email"},{"type":"null"}],"title":"Email"},"mobile_number":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Mobile Number"},"first_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"First Name"},"last_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Last Name"},"telegram_user_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Telegram User Id"},"whatsapp_user_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Whatsapp User Id"},"whatsapp_jid":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Whatsapp Jid"},"current_zipcode":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Current Zipcode"},"num_ppl_in_household":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Num Ppl In Household"},"num_children_in_household":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Num Children In Household"},"google_profile_url":{"anyOf":[{"type":"string","maxLength":2083,"minLength":1,"format":"uri"},{"type":"null"}],"title":"Google Profile Url"},"created_at":{"type":"string","format":"date-time","title":"Created At"},"updated_at":{"type":"string","format":"date-time","title":"Updated At"},"google_access_token":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Google Access Token"},"google_refresh_token":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Google Refresh Token"},"google_refresh_token_expires_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Google Refresh Token Expires At"},"gender":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Gender"},"birthday":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Birthday"},"email_enabled":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Email Enabled","default":false},"likely_churned":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Likely Churned","default":false},"web_login":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Web Login","default":false},"web_onboarding_completed_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Web Onboarding Completed At"},"calendar_enabled":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Calendar Enabled","default":false},"auto_archive_days":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Auto Archive Days","default":14},"enabled_google_oauth_scopes":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Enabled Google Oauth Scopes"},"current_location":{"anyOf":[{"$ref":"#/components/schemas/UserLocation"},{"type":"null"}]},"enabled":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Enabled","default":true},"disabled_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Disabled At"},"ai_training_opt_out":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Ai Training Opt Out","default":true},"do_not_sell_share":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Do Not Sell Share","default":false},"sensitive_pi_limit":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Sensitive Pi Limit","default":false},"gpc_opt_out":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Gpc Opt Out","default":false},"granola_enabled":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Granola Enabled","default":false},"notion_enabled":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Notion Enabled","default":false},"slack_enabled":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Slack Enabled","default":false},"reflect_enabled":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Reflect Enabled","default":false},"discord_enabled":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Discord Enabled","default":false},"billing_enabled":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Billing Enabled","default":true},"unlock_all_billing_plans":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Unlock All Billing Plans","default":false},"bear_enabled":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Bear Enabled","default":false},"obsidian_enabled":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Obsidian Enabled","default":false},"imessage_enabled":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Imessage Enabled","default":false},"abm_enabled":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Abm Enabled","default":false},"linq_enabled":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Linq Enabled","default":false},"abm_verified_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Abm Verified At"},"linq_verified_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Linq Verified At"},"jo_email_slug":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Jo Email Slug"},"personal_page_handle":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Personal Page Handle"},"personal_page_enabled":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Personal Page Enabled","default":false},"telegram_language_code":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Telegram Language Code"}},"type":"object","title":"User","description":"Schema for a user "},"UserLocation":{"properties":{"id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Id"},"user_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"User Id"},"street1":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Street1"},"street2":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Street2"},"country":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Country"},"state":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"State"},"city":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"City"},"zipcode":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Zipcode"},"lat":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Lat"},"lng":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Lng"},"location_label":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Location Label"},"created_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Created At"},"updated_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Updated At"},"timezone":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Timezone"}},"type":"object","required":["street1","street2","country","state","city","zipcode","lat","lng","location_label","updated_at","timezone"],"title":"UserLocation","description":"Schema for a user location "},"UserMessageRequest":{"properties":{"message":{"type":"string","title":"Message"},"context_window_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Context Window Id"},"use_tool_calls":{"type":"boolean","title":"Use Tool Calls","default":true}},"type":"object","required":["message"],"title":"UserMessageRequest","description":"Request model for processing a user message"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"},"input":{"title":"Input"},"ctx":{"type":"object","title":"Context"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"},"WebDAVConfigRequest":{"properties":{"ut":{"type":"string","title":"Ut"},"k":{"type":"string","title":"K"}},"type":"object","required":["ut","k"],"title":"WebDAVConfigRequest"},"_SaveRequest":{"properties":{"title":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Title"},"summary":{"type":"string","title":"Summary"}},"type":"object","required":["summary"],"title":"_SaveRequest"}},"securitySchemes":{"HTTPBearer":{"type":"http","scheme":"bearer"},"HTTPBasic":{"type":"http","scheme":"basic"}}}}