Widgets
What is a Widget?
Understand how a Garmin Widget shows glanceable information and opens into a richer detail page.
On this page
A Garmin Widget is a glanceable Connect IQ experience that appears in the watch's widget loop or glance list. It shows compact information first, then can open a richer detail page when the wearer wants more context or an action.
Widgets are different from watch faces and Data Fields. A widget is not the home screen, and it does not run inside a recorded activity. It is best for timely status, lightweight dashboards, summaries from a service, and quick actions such as refreshing data or connecting an account.
What you can create
DialStudio Widgets are built from two surfaces:
- Glance is the compact entry. Keep it focused on one status, value, or summary.
- Detail page is optional and gives the wearer more room for rows, metrics, charts, and actions.
Widget layers include text, icons, metrics, rows, charts, and actions. Glance surfaces are read-only, so action layers belong on the detail page. Each surface supports up to 12 layers.
Data sources
A widget can use static content, Garmin watch data, or a web service.
- Static content is authored directly in the design and never refreshes.
- Garmin watch data can show steps, heart rate, battery, or weather where the watch provides those values.
- Web service data comes from an HTTPS endpoint. Map response paths to shared widget values such as title, value, summary, and status.
Web-service widgets can use GET or POST, headers, parameters, and optional OAuth account connection. Example endpoints must be replaced before building. OAuth sign-in happens on the watch, so Studio blocks ordinary Test connection for OAuth endpoints and asks you to review the account settings instead.
Refresh behavior
Widgets should make their refresh path clear. You can refresh when the widget opens, allow manual refresh, add a refresh action on the detail page, or schedule a web-service refresh. Scheduled refresh runs from 5 to 1440 minutes and requires a watch that supports background refresh.
Saved data can be kept for offline fallback. Use a short lifetime for time-sensitive data and a longer lifetime for slowly changing summaries. Request timeouts can run from 5 to 60 seconds.
Preview states
Preview scenarios cover loading, fresh, stale, offline, unauthorized, empty, and error states. These scenarios use deterministic sample values; they do not contact your service or read private watch data.
Use these states as design requirements, not just edge cases. A good widget explains what is happening when data is missing, stale, or blocked by account sign-in.
Compatibility
Studio checks the selected watch for widget support, Connect IQ runtime support, network requests, OAuth account connection, and scheduled background refresh. HTTP widgets require the Communications permission. Scheduled HTTP refresh also requires the Background permission.
If a watch cannot support a selected feature, the build is blocked and the issue points back to the affected setting or layer. Continue with Create your first Widget.