> ## Documentation Index
> Fetch the complete documentation index at: https://docs.crossmint.com/llms.txt
> Use this file to discover all available pages before exploring further.

# CrossmintAuthManager

> Swift Class

**Class**

```swift theme={null}
actor CrossmintAuthManager
```

## Initializers

### init(apiKey:)

```swift theme={null}
convenience init(apiKey apiKeyString: String) throws
```

### init(authService:secureStorage:)

```swift theme={null}
init(authService: any AuthService, secureStorage: any SecureStorage)
```

## Instance Properties

### authenticationStatus

```swift theme={null}
var authenticationStatus: AuthenticationStatus { get async throws(AuthError) }
```

### email

```swift theme={null}
var email: String? { get }
```

### jwt

Inherited from `AuthManager.jwt`.

```swift theme={null}
var jwt: String? { get }
```

## Instance Methods

### logout()

```swift theme={null}
func logout() async throws(AuthManagerError) -> OTPAuthenticationStatus
```

### oneTimeSecretAuthentication(oneTimeSecret:)

```swift theme={null}
func oneTimeSecretAuthentication(oneTimeSecret: String) async throws(AuthManagerError) -> OTPAuthenticationStatus
```

### otpAuthentication(email:code:forceRefresh:)

```swift theme={null}
func otpAuthentication(email: String, code: String? = nil, forceRefresh: Bool = false) async throws(AuthManagerError) -> OTPAuthenticationStatus
```

### reset()

```swift theme={null}
func reset() async -> OTPAuthenticationStatus
```

### setJWT(\_:)

Inherited from `AuthManager.setJWT(_:)`.

```swift theme={null}
func setJWT(_ jwt: String) async
```
