<!--
{
  "availability" : [
    "iOS: 14.0.0 -",
    "iPadOS: 14.0.0 -",
    "macCatalyst: -",
    "macOS: 11.0.0 -",
    "visionOS: 26.0.0 -",
    "watchOS: 9.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "WidgetKit",
  "identifier" : "/documentation/WidgetKit/WidgetCenter",
  "metadataVersion" : "0.1.0",
  "role" : "Class",
  "symbol" : {
    "kind" : "Class",
    "modules" : [
      "WidgetKit"
    ],
    "preciseIdentifier" : "s:9WidgetKit0A6CenterC"
  },
  "title" : "WidgetCenter"
}
-->

# WidgetCenter

An object that contains a list of user-configured widgets and is used for
reloading widget timelines.

```
class WidgetCenter
```

## Overview

WidgetCenter provides information about user-configured widgets, such as
their family. For widgets that use [`IntentConfiguration`](/documentation/WidgetKit/IntentConfiguration), you can
retrieve the user-edited values.

### Getting Configured Widget Information

To get a list of user-configured widgets, use
[`getCurrentConfigurations(_:)`](/documentation/WidgetKit/WidgetCenter/getCurrentConfigurations(_:)). This property provides an
array of [`WidgetInfo`](/documentation/WidgetKit/WidgetInfo) objects containing the following information:

```
struct WidgetInfo {
    public let configuration: INIntent?
    public let family: WidgetFamily
    public let kind: String
}
```

The `kind` string matches the parameter you use when creating the widget’s
[`StaticConfiguration`](/documentation/WidgetKit/StaticConfiguration) or [`IntentConfiguration`](/documentation/WidgetKit/IntentConfiguration). The `family`
property matches one of the options specified in the
<doc://com.apple.documentation/documentation/SwiftUI/WidgetConfiguration/supportedFamilies(_:)>
property of the widget’s configuration. If your widget is based on
[`IntentConfiguration`](/documentation/WidgetKit/IntentConfiguration), the `configuration` property provides the
custom intent containing the user-customized values for each individual
widget.

### Requesting a Reload of Your Widget’s Timeline

Changes in your app’s state may affect a widget’s timeline. When this
happens, you can tell WidgetKit to reload the timeline for either a
specific kind of widget or all widgets. For example, your app might
register for push notifications based on the widgets the user has configured.
When your app receives a push notification that changes the state for one
or more of your widgets, requesting a reload of their timelines updates
their display.

If you only need to reload a certain kind of widget, you can
request a reload for only that kind. For example, in response to a push
notification about a change in a game’s status, you could request a reload
for only the game status widgets:

```
WidgetCenter.shared.reloadTimelines(ofKind: "com.mygame.gamestatus")
```

To request a reload for all of your widgets:

```
WidgetCenter.shared.reloadAllTimelines()
```

## Topics

### Getting Widget Information

[`shared`](/documentation/WidgetKit/WidgetCenter/shared)

The shared widget center.

[`getCurrentConfigurations(_:)`](/documentation/WidgetKit/WidgetCenter/getCurrentConfigurations(_:))

Retrieves information about user-configured widgets.

[`WidgetCenter.UserInfoKey`](/documentation/WidgetKit/WidgetCenter/UserInfoKey)

An object that defines keys for accessing information in a user info dictionary.

### Reloading Widget Timelines

[`reloadTimelines(ofKind:)`](/documentation/WidgetKit/WidgetCenter/reloadTimelines(ofKind:))

Reloads the timelines for all widgets of a particular kind.

[`reloadAllTimelines()`](/documentation/WidgetKit/WidgetCenter/reloadAllTimelines())

Reloads the timelines for all configured widgets belonging to the
containing app.

### Reloading Recommended Preconfigured Widgets

[`invalidateConfigurationRecommendations()`](/documentation/WidgetKit/WidgetCenter/invalidateConfigurationRecommendations())

Invalidates and refreshes the preconfigured intent configurations for
user-customizable widgets.



---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)