<!--
{
  "availability" : [
    "iOS: 16.4.0 -",
    "iPadOS: 16.4.0 -",
    "macOS: 13.3.0 -",
    "tvOS: 16.4.0 -",
    "visionOS: 1.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "VideoSubscriberAccount",
  "identifier" : "/documentation/VideoSubscriberAccount/VSUserAccountManager",
  "metadataVersion" : "0.1.0",
  "role" : "Class",
  "symbol" : {
    "kind" : "Class",
    "modules" : [
      "Video Subscriber Account"
    ],
    "preciseIdentifier" : "c:objc(cs)VSUserAccountManager"
  },
  "title" : "VSUserAccountManager"
}
-->

# VSUserAccountManager

The object that coordinates your app’s user account actions.

```
class VSUserAccountManager
```

## Overview

Don’t create `VSUserAccountManager` directly; use [`shared`](/documentation/VideoSubscriberAccount/VSUserAccountManager/shared).

## Topics

### Getting the account manager

[`class var shared: VSUserAccountManager`](/documentation/VideoSubscriberAccount/VSUserAccountManager/shared)

A shared instance of the user account manager class.

### Getting user accounts

[`func userAccounts(options: VSUserAccountManager.QueryOptions) async throws -> [VSUserAccount]`](/documentation/VideoSubscriberAccount/VSUserAccountManager/userAccounts(options:))

Returns a list of registered user accounts for your app.

[`- (void) queryUserAccountsWithOptions:(VSUserAccountQueryOptions) options completion:(void (^)(NSArray<VSUserAccount *> *accounts, NSError *error)) completion;`](/documentation/VideoSubscriberAccount/VSUserAccountManager/queryUserAccountsWithOptions:completion:)

Returns a list of registered user accounts for your app.

[`struct QueryOptions`](/documentation/VideoSubscriberAccount/VSUserAccountManager/QueryOptions)

Constants that represent options you use to fetch a list of user accounts.

### Updating a user account

[`func update(VSUserAccount) async throws`](/documentation/VideoSubscriberAccount/VSUserAccountManager/update(_:))

Registers a new user account.

[`- (void) updateUserAccount:(VSUserAccount *) account completion:(void (^)(NSError *error)) completion;`](/documentation/VideoSubscriberAccount/VSUserAccountManager/updateUserAccount:completion:)

Registers a new user account.

### Signing people in automatically

[`@interface VSAutoSignInToken : NSObject`](/documentation/VideoSubscriberAccount/VSAutoSignInToken)

A value that represents a person’s account and their consent to Automatic Sign-In.

[`@interface VSAutoSignInTokenUpdateContext : NSObject`](/documentation/VideoSubscriberAccount/VSAutoSignInTokenUpdateContext)

An object that contains information about a person’s choice in the Automatic Sign-In prompt.

[`enum VSAutoSignInAuthorization : NSInteger;`](/documentation/VideoSubscriberAccount/VSAutoSignInAuthorization)

The possible states the framework sets for Automatic Sign-In.

[`struct AutoSignInToken`](/documentation/VideoSubscriberAccount/VSUserAccountManager/AutoSignInToken-swift.struct)

A value that represents a person’s account and their consent to Automatic Sign-In.

[`struct AutoSignInTokenUpdateContext`](/documentation/VideoSubscriberAccount/VSUserAccountManager/AutoSignInTokenUpdateContext)

An object that contains information about a person’s choice in the Automatic Sign-In prompt.

[`enum AutoSignInAuthorization`](/documentation/VideoSubscriberAccount/VSUserAccountManager/AutoSignInAuthorization)

The possible states the framework sets for Automatic Sign-In.

[`var autoSignInToken: VSUserAccountManager.AutoSignInToken`](/documentation/VideoSubscriberAccount/VSUserAccountManager/autoSignInToken-swift.property)

The current Automatic Sign-In token.

[`- (void) queryAutoSignInTokenWithCompletionHandler:(void (^)(VSAutoSignInToken *token, NSError *error)) completion;`](/documentation/VideoSubscriberAccount/VSUserAccountManager/queryAutoSignInTokenWithCompletionHandler:)

Retrieves the current Automatic Sign-In token.

[`func deleteAutoSignInToken() async throws`](/documentation/VideoSubscriberAccount/VSUserAccountManager/deleteAutoSignInToken())

Deletes the value of the current Automatic Sign-In token.

[`- (void) deleteAutoSignInTokenWithCompletionHandler:(void (^)(NSError *error)) completion;`](/documentation/VideoSubscriberAccount/VSUserAccountManager/deleteAutoSignInTokenWithCompletionHandler:)

Deletes the value of the current Automatic Sign-In token.

[`- (void) requestAutoSignInAuthorizationWithCompletionHandler:(void (^)(VSAutoSignInTokenUpdateContext *updateContext, NSError *error)) completion;`](/documentation/VideoSubscriberAccount/VSUserAccountManager/requestAutoSignInAuthorizationWithCompletionHandler:)

Presents a modal sheet that offers a person to opt in to Automatic Sign-In.

[`func requestAutoSignInAuthorization() async throws -> VSUserAccountManager.AutoSignInTokenUpdateContext`](/documentation/VideoSubscriberAccount/VSUserAccountManager/requestAutoSignInAuthorization())

Presents a modal sheet that offers a person to opt in to Automatic Sign-In.

[`func updateAutoSignInToken(String, updateContext: VSUserAccountManager.AutoSignInTokenUpdateContext) async throws`](/documentation/VideoSubscriberAccount/VSUserAccountManager/updateAutoSignInToken(_:updateContext:))

Sets the current Automatic Sign-In token.

[`- (void) updateAutoSignInToken:(NSString *) autoSignInToken updateContext:(VSAutoSignInTokenUpdateContext *) context completionHandler:(void (^)(NSError *error)) completion;`](/documentation/VideoSubscriberAccount/VSUserAccountManager/updateAutoSignInToken:updateContext:completionHandler:)

Sets the current Automatic Sign-In token.

## Relationships

### Conforms To

[`CustomStringConvertible`](/documentation/Swift/CustomStringConvertible)

[`CustomDebugStringConvertible`](/documentation/Swift/CustomDebugStringConvertible)

[`CVarArg`](/documentation/Swift/CVarArg)

[`NSObjectProtocol`](/documentation/ObjectiveC/NSObjectProtocol)

[`Hashable`](/documentation/Swift/Hashable)

[`Equatable`](/documentation/Swift/Equatable)

### Inherits From

[`NSObject-swift.class`](/documentation/ObjectiveC/NSObject-swift.class)

---

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)