<!--
{
  "availability" : [
    "iOS: 14.0.0 -",
    "iPadOS: 14.0.0 -",
    "macCatalyst: 14.0.0 -",
    "macOS: 11.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "Screen Time",
  "identifier" : "/documentation/ScreenTime/STWebpageController",
  "metadataVersion" : "0.1.0",
  "role" : "Class",
  "symbol" : {
    "kind" : "Class",
    "modules" : [
      "Screen Time"
    ],
    "preciseIdentifier" : "c:objc(cs)STWebpageController"
  },
  "title" : "STWebpageController"
}
-->

# STWebpageController

The controller you use to report web usage and block restricted webpages.

```
class STWebpageController
```

## Overview

This class provides a convenient way for you to communicate changes in each webpage, such as when the user starts or stops playing media. When a parent or guardian of the user blocks the webpage’s current URL, the webpage controller:

- Automatically occludes the web page’s content
- Updates a KVO-compliant [`urlIsBlocked`](/documentation/ScreenTime/STWebpageController/urlIsBlocked) property

For example, you can observe `urlIsBlocked` and take action when it changes to <doc://com.apple.documentation/documentation/ObjectiveC/YES>, such as pausing media.

> Important: Create a webpage controller for each webpage or tab and add it on top of the webpage’s content.

## Topics

### Instance properties

[`suppressUsageRecording`](/documentation/ScreenTime/STWebpageController/suppressUsageRecording)

A Boolean that indicates whether the webpage controller is not recording web
usage.

[`url`](/documentation/ScreenTime/STWebpageController/url)

The URL for the webpage.

[`urlIsBlocked`](/documentation/ScreenTime/STWebpageController/urlIsBlocked)

A Boolean that indicates whether a parent or guardian has blocked the URL.

[`urlIsPictureInPicture`](/documentation/ScreenTime/STWebpageController/urlIsPictureInPicture)

A Boolean that indicates whether the webpage is currently displaying a
floating picture in picture window.

[`urlIsPlayingVideo`](/documentation/ScreenTime/STWebpageController/urlIsPlayingVideo)

A Boolean that indicates whether there are one or more videos currently
playing in the webpage.

### Instance methods

[`setBundleIdentifier(_:)`](/documentation/ScreenTime/STWebpageController/setBundleIdentifier(_:))

Changes the bundle identifier used to report web usage.



---

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)