PERS SDK - v2.3.26 / Exports / DefaultAuthProvider
Simple authentication provider with token storage
- getToken
- getAuthHeaders
- getProjectKey
- onAuthStatusChange
- setAccessToken
- setRefreshToken
- getRefreshToken
- clearTokens
- setTokens
- hasValidToken
- setAuthType
- getAuthType
- setProviderToken
- getProviderToken
• new DefaultAuthProvider(config?): DefaultAuthProvider
| Name | Type |
|---|---|
config | AuthConfig |
core/auth/default-auth-provider.ts:23
▸ getToken(): Promise<null | string>
Get current access token
Promise<null | string>
core/auth/default-auth-provider.ts:84
▸ getAuthHeaders(token, method?, url?): Promise<Record<string, string>>
Get derived authentication headers (e.g. DPoP)
| Name | Type | Description |
|---|---|---|
token | null | string | The current access token |
method? | string | HTTP Method |
url? | string | Request URL |
Promise<Record<string, string>>
TokenStorageProvider.getAuthHeaders
core/auth/default-auth-provider.ts:88
▸ getProjectKey(): Promise<null | string>
Get project key for API requests
Promise<null | string>
TokenStorageProvider.getProjectKey
core/auth/default-auth-provider.ts:111
▸ onAuthStatusChange(status): Promise<void>
Handle authentication status changes
| Name | Type |
|---|---|
status | AuthStatus |
Promise<void>
TokenStorageProvider.onAuthStatusChange
core/auth/default-auth-provider.ts:115
▸ setAccessToken(token): Promise<void>
| Name | Type |
|---|---|
token | string |
Promise<void>
TokenStorageProvider.setAccessToken
core/auth/default-auth-provider.ts:137
▸ setRefreshToken(token): Promise<void>
| Name | Type |
|---|---|
token | string |
Promise<void>
TokenStorageProvider.setRefreshToken
core/auth/default-auth-provider.ts:151
▸ getRefreshToken(): Promise<null | string>
Promise<null | string>
TokenStorageProvider.getRefreshToken
core/auth/default-auth-provider.ts:155
▸ clearTokens(): Promise<void>
Promise<void>
TokenStorageProvider.clearTokens
core/auth/default-auth-provider.ts:159
▸ setTokens(accessToken, refreshToken?, providerToken?): Promise<void>
| Name | Type |
|---|---|
accessToken | string |
refreshToken? | string |
providerToken? | string |
Promise<void>
core/auth/default-auth-provider.ts:168
▸ hasValidToken(): Promise<boolean>
Promise<boolean>
core/auth/default-auth-provider.ts:174
▸ setAuthType(_authType): Promise<void>
| Name | Type |
|---|---|
_authType | AccountOwnerType |
Promise<void>
core/auth/default-auth-provider.ts:178
▸ getAuthType(): Promise<null | AccountOwnerType>
Promise<null | AccountOwnerType>
core/auth/default-auth-provider.ts:183
▸ setProviderToken(token): Promise<void>
Store the provider token (Firebase JWT, Auth0 token, etc.) Used for session recovery when refresh tokens expire.
NOTE: This is called AUTOMATICALLY by loginWithToken(), so you typically don't need to call this manually. The only reason to call this is if:
- Your auth provider (Firebase, Auth0) refreshes tokens in the background
- You want to proactively update the stored token for better recovery chances
The stored provider token is used as a fallback when:
- PERS refresh token expires (e.g., after 30 days of inactivity)
- SDK attempts recovery using the stored provider token
- If provider token is still valid → session recovered automatically
- If provider token is also expired → user must re-authenticate
| Name | Type |
|---|---|
token | string |
Promise<void>
Example
// Optional: Update stored token when Firebase refreshes it
firebase.auth().onIdTokenChanged(async (user) => {
if (user) {
const freshToken = await user.getIdToken();
await sdk.auth.setProviderToken(freshToken);
}
});core/auth/default-auth-provider.ts:245
▸ getProviderToken(): Promise<null | string>
Get the stored provider token (Firebase JWT, Auth0 token, etc.) Used internally for session recovery when refresh tokens expire.
Promise<null | string>
core/auth/default-auth-provider.ts:253
• Readonly authType: AccountOwnerType
Authentication type