PERS SDK - v2.3.26 / Exports / AuthApi
- loginTenantAdmin
- loginUser
- loginBusiness
- loginUnAuthenticated
- refreshAccessToken
- getCurrentUser
- getCurrentBusiness
- getCurrentAdmin
• new AuthApi(apiClient): AuthApi
| Name | Type |
|---|---|
apiClient | PersApiClient |
▸ loginTenantAdmin(jwt, options?): Promise<SessionAuthContextResponseDTO>
Login tenant admin with JWT
Authenticates an admin in a tenant context.
| Name | Type | Description |
|---|---|---|
jwt | string | Authentication token (Firebase JWT) |
options? | TenantAuthOptions | Tenant authentication options (tenantId for multi-tenant admins) |
Promise<SessionAuthContextResponseDTO>
Session response with tenant context
Throws
MultipleContextSelectionError when tenantId is required but not provided
Example
// Single tenant - auto-selects
const response = await authApi.loginTenantAdmin(jwt);
// Multiple tenants - explicit selection
const response = await authApi.loginTenantAdmin(jwt, { tenantId: 'tenant-123' });▸ loginUser(jwt): Promise<SessionAuthContextResponseDTO>
Login user with JWT
| Name | Type |
|---|---|
jwt | string |
Promise<SessionAuthContextResponseDTO>
▸ loginBusiness(jwt, options?): Promise<SessionAuthContextResponseDTO>
Login as business with JWT
Authenticates a user in a business context with role included in JWT.
| Name | Type | Description |
|---|---|---|
jwt | string | Authentication token (passkey or Firebase JWT) |
options? | BusinessAuthOptions | Business authentication options (businessId for multi-business users, auto-selected if single membership) |
Promise<SessionAuthContextResponseDTO>
Session response with business context and role in JWT
Throws
MultipleContextSelectionError when businessId is required but not provided
Example
// Single business membership - auto-selects
const response = await authApi.loginBusiness(jwt);
// Multiple memberships - explicit selection
const response = await authApi.loginBusiness(jwt, { businessId: 'biz-123' });▸ loginUnAuthenticated(rawLoginData): Promise<SessionAuthContextResponseDTO>
Login user with raw data (no external authentication)
| Name | Type |
|---|---|
rawLoginData | Record<string, any> |
Promise<SessionAuthContextResponseDTO>
▸ refreshAccessToken(refreshToken): Promise<SessionAuthResponseDTO>
Refresh access token
| Name | Type |
|---|---|
refreshToken | string |
Promise<SessionAuthResponseDTO>
▸ getCurrentUser(): Promise<UserDTO>
Get current authenticated user
Promise<UserDTO>
▸ getCurrentBusiness(): Promise<BusinessDTO>
Get current business context
Promise<BusinessDTO>
▸ getCurrentAdmin(): Promise<AdminDTO>
Get current admin context
Promise<AdminDTO>