WebContainer
@authgear/web / WebContainer
Class: WebContainer
WebContainer is the entrypoint of the SDK. An instance of a container allows the user to authenticate, reauthenticate, etc.
Every container has a name.
The default name of a container is default
.
If your app supports multi login sessions, you can use multiple containers with different names.
You are responsible for managing the list of names in this case.
Table of contents
Constructors
Properties
Accessors
Methods
- authenticateAnonymously
- canReauthenticate
- configure
- fetch
- fetchUserInfo
- finishAuthentication
- finishChangePassword
- finishPromoteAnonymousUser
- finishReauthentication
- getAuthTime
- getIDTokenHint
- logout
- makeAuthorizeURL
- open
- refreshAccessTokenIfNeeded
- refreshIDToken
- startAuthentication
- startChangePassword
- startPromoteAnonymousUser
- startReauthentication
Constructors
constructor
• new WebContainer(options?
)
Parameters
Name | Type |
---|---|
options? | ContainerOptions |
Defined in
packages/authgear-web/index.d.ts:582
Properties
delegate
• Optional
delegate: WebContainerDelegate
Defined in
packages/authgear-web/index.d.ts:546
sessionType
• sessionType: "cookie"
| "refresh_token"
Defined in
packages/authgear-web/index.d.ts:542
Accessors
accessToken
• get
accessToken(): undefined
| string
Returns
undefined
| string
Defined in
packages/authgear-web/index.d.ts:580
• set
accessToken(accessToken
): void
Parameters
Name | Type |
---|---|
accessToken | undefined | string |
Returns
void
Defined in
packages/authgear-web/index.d.ts:581
clientID
• get
clientID(): undefined
| string
OIDC client ID
Returns
undefined
| string
Defined in
packages/authgear-web/index.d.ts:561
• set
clientID(clientID
): void
Parameters
Name | Type |
---|---|
clientID | undefined | string |
Returns
void
Defined in
packages/authgear-web/index.d.ts:562
isSSOEnabled
• get
isSSOEnabled(): boolean
Is SSO enabled
Returns
boolean
Defined in
packages/authgear-web/index.d.ts:568
• set
isSSOEnabled(isSSOEnabled
): void
Parameters
Name | Type |
---|---|
isSSOEnabled | boolean |
Returns
void
Defined in
packages/authgear-web/index.d.ts:569
name
• get
name(): string
Unique ID for this container.
Default Value
"default"
Returns
string
Defined in
packages/authgear-web/index.d.ts:554
• set
name(name
): void
Parameters
Name | Type |
---|---|
name | string |
Returns
void
Defined in
packages/authgear-web/index.d.ts:555
sessionState
• get
sessionState(): SessionState
Returns
Defined in
packages/authgear-web/index.d.ts:574
• set
sessionState(sessionState
): void
Parameters
Name | Type |
---|---|
sessionState | SessionState |
Returns
void
Defined in
packages/authgear-web/index.d.ts:575
Methods
authenticateAnonymously
▸ authenticateAnonymously(): Promise
<AuthenticateResult
>
Authenticate as an anonymous user.
Returns
Promise
<AuthenticateResult
>
Defined in
packages/authgear-web/index.d.ts:688
canReauthenticate
▸ canReauthenticate(): boolean
canReauthenticate() reports whether the current user can reauthenticate. The information comes from the ID token and the ID token is NOT verified.
Returns
boolean
Defined in
packages/authgear-web/index.d.ts:595
configure
▸ configure(options
): Promise
<void
>
configure() configures the container with the client ID and the endpoint. It also does local IO to retrieve the refresh token. It only obtains the refresh token locally and no network call will be triggered. So the session state maybe outdated for some reason, e.g. user session is revoked. fetchUserInfo should be called to obtain the latest user session state.
configure() can be called more than once if it failed. Otherwise, it is NOT recommended to call it more than once.
Parameters
Name | Type |
---|---|
options | ConfigureOptions |
Returns
Promise
<void
>
Defined in
packages/authgear-web/index.d.ts:623
fetch
▸ fetch(input
, init?
): Promise
<Response
>
Fetch function for you to call your application server. The fetch function will include Authorization header in your application request, and handle refresh access token automatically.
Parameters
Name | Type |
---|---|
input | RequestInfo |
init? | RequestInit |
Returns
Promise
<Response
>
Defined in
packages/authgear-web/index.d.ts:714
fetchUserInfo
▸ fetchUserInfo(): Promise
<UserInfo
>
Fetch user info.
Returns
Promise
<UserInfo
>
Defined in
packages/authgear-web/index.d.ts:702
finishAuthentication
▸ finishAuthentication(): Promise
<AuthenticateResult
>
Finish authentication.
It may reject with OAuthError.
Returns
Promise
<AuthenticateResult
>
Defined in
packages/authgear-web/index.d.ts:647
finishChangePassword
▸ finishChangePassword(): Promise
<void
>
Finish settings action "change_password".
It may reject with OAuthError.
Returns
Promise
<void
>
Defined in
packages/authgear-web/index.d.ts:661
finishPromoteAnonymousUser
▸ finishPromoteAnonymousUser(): Promise
<ReauthenticateResult
>
Finish promote anonymous user.
It may reject with OAuthError.
Returns
Promise
<ReauthenticateResult
>
Defined in
packages/authgear-web/index.d.ts:667
finishReauthentication
▸ finishReauthentication(): Promise
<ReauthenticateResult
>
Finish reauthentication.
It may reject with OAuthError.
Returns
Promise
<ReauthenticateResult
>
Defined in
packages/authgear-web/index.d.ts:653
getAuthTime
▸ getAuthTime(): undefined
| Date
getAuthTime() reports the last time the user was authenticated. The information comes from the ID token and the ID token is NOT verified.
Returns
undefined
| Date
Defined in
packages/authgear-web/index.d.ts:602
getIDTokenHint
▸ getIDTokenHint(): undefined
| string
getIDTokenHint() returns the ID token for the OIDC id_token_hint parameter.
Returns
undefined
| string
Defined in
packages/authgear-web/index.d.ts:588
logout
▸ logout(options?
): Promise
<void
>
Logout.
Remarks
If force
parameter is set to true
, all potential errors (e.g. network
error) would be ignored.
redirectURI
is required. User will be redirected to the uri after they
have logged out.
Parameters
Name | Type | Description |
---|---|---|
options? | Object | Logout options |
options.force? | boolean | - |
options.redirectURI | string | - |
Returns
Promise
<void
>
Defined in
packages/authgear-web/index.d.ts:681
makeAuthorizeURL
▸ makeAuthorizeURL(options
): Promise
<string
>
Make authorize URL makes authorize URL based on options.
This function will be used if developer wants to redirection in their own code.
Parameters
Name | Type |
---|---|
options | AuthenticateOptions |
Returns
Promise
<string
>
Defined in
packages/authgear-web/index.d.ts:698
open
▸ open(page
, options?
): Promise
<void
>
Parameters
Name | Type |
---|---|
page | Page |
options? | SettingOptions |
Returns
Promise
<void
>
Defined in
packages/authgear-web/index.d.ts:668
refreshAccessTokenIfNeeded
▸ refreshAccessTokenIfNeeded(): Promise
<void
>
Returns
Promise
<void
>
Defined in
packages/authgear-web/index.d.ts:706
refreshIDToken
▸ refreshIDToken(): Promise
<void
>
refreshIDToken() asks the server to issue an ID token with latest claims. After refreshing, getIDTokenHint() and canReauthenticate() may return up-to-date value.
Returns
Promise
<void
>
Defined in
packages/authgear-web/index.d.ts:609
startAuthentication
▸ startAuthentication(options
): Promise
<void
>
Start authentication by redirecting to the authorization endpoint.
Parameters
Name | Type |
---|---|
options | AuthenticateOptions |
Returns
Promise
<void
>
Defined in
packages/authgear-web/index.d.ts:627
startChangePassword
▸ startChangePassword(options
): Promise
<void
>
Start settings action "change_password" by redirecting to the authorization endpoint.
Parameters
Name | Type |
---|---|
options | SettingsActionOptions |
Returns
Promise
<void
>
Defined in
packages/authgear-web/index.d.ts:633
startPromoteAnonymousUser
▸ startPromoteAnonymousUser(options
): Promise
<void
>
Start promote anonymous user by redirecting to the authorization endpoint.
Parameters
Name | Type |
---|---|
options | PromoteOptions |
Returns
Promise
<void
>
Defined in
packages/authgear-web/index.d.ts:641
startReauthentication
▸ startReauthentication(options
): Promise
<void
>
Start reauthentication by redirecting to the authorization endpoint.
Parameters
Name | Type |
---|---|
options | ReauthenticateOptions |
Returns
Promise
<void
>
Defined in
packages/authgear-web/index.d.ts:637