Class: TurnkeyIframeClient

Defined in: sdk-browser/src/__clients__/browser-clients.ts:862 TurnkeyIframeClient is a client that uses an iframe to interact with the Turnkey API. It is used to create read-write sessions, and to inject credential bundles into the iframe. It is also used to extract encrypted credential bundles from the iframe.

Extends

Constructors

Constructor

new TurnkeyIframeClient(config): TurnkeyIframeClient
Defined in: sdk-browser/src/__clients__/browser-clients.ts:865

Parameters

config
TurnkeySDKClientConfig

Returns

TurnkeyIframeClient

Overrides

TurnkeyBrowserClient.constructor

Properties

authClient?

optional authClient: AuthClient
Defined in: sdk-browser/src/__clients__/base-client.ts:5

Inherited from

TurnkeyBrowserClient.authClient

iframePublicKey

iframePublicKey: null | string
Defined in: sdk-browser/src/__clients__/browser-clients.ts:863

Methods

addUserAuth()

addUserAuth(params): Promise<any[]>
Defined in: sdk-browser/src/__clients__/browser-clients.ts:541 Adds or updates authentication factors for an end user. This function allows selectively adding:
  • Phone number
  • Email
  • Authenticators
  • OAuth providers
  • API keys
All additions/updates are executed in parallel if multiple parameters are provided.

Parameters

params
AddUserAuthParams A structured object containing all the addition/update parameters

Returns

Promise<any[]> A promise that resolves to an array of results from each addition or update

Inherited from

TurnkeyBrowserClient.addUserAuth

clearEmbeddedKey()

clearEmbeddedKey(): Promise<null>
Defined in: sdk-browser/src/__clients__/browser-clients.ts:924

Returns

Promise<null>

deleteUserAuth()

deleteUserAuth(params): Promise<any[]>
Defined in: sdk-browser/src/__clients__/browser-clients.ts:477 Removes authentication factors from an end user. This function allows selectively removing:
  • Phone number
  • Email
  • Authenticators (by ID)
  • OAuth providers (by ID)
  • API keys (by ID)
All removal operations are executed in parallel if multiple parameters are provided.

Parameters

params
DeleteUserAuthParams A structured object containing all the removal parameters

Returns

Promise<any[]> A promise that resolves to an array of results from each removal operation

Inherited from

TurnkeyBrowserClient.deleteUserAuth

extractKeyEncryptedBundle()

extractKeyEncryptedBundle(): Promise<string>
Defined in: sdk-browser/src/__clients__/browser-clients.ts:916

Returns

Promise<string>

extractWalletEncryptedBundle()

extractWalletEncryptedBundle(): Promise<string>
Defined in: sdk-browser/src/__clients__/browser-clients.ts:912

Returns

Promise<string>

getEmbeddedPublicKey()

getEmbeddedPublicKey(): Promise<null | string>
Defined in: sdk-browser/src/__clients__/browser-clients.ts:920

Returns

Promise<null | string>

initEmbeddedKey()

initEmbeddedKey(): Promise<null | string>
Defined in: sdk-browser/src/__clients__/browser-clients.ts:928

Returns

Promise<null | string>

injectCredentialBundle()

injectCredentialBundle(credentialBundle): Promise<boolean>
Defined in: sdk-browser/src/__clients__/browser-clients.ts:870

Parameters

credentialBundle
string

Returns

Promise<boolean>

injectImportBundle()

injectImportBundle(bundle, organizationId, userId): Promise<boolean>
Defined in: sdk-browser/src/__clients__/browser-clients.ts:900

Parameters

bundle
string
organizationId
string
userId
string

Returns

Promise<boolean>

injectKeyExportBundle()

injectKeyExportBundle(credentialBundle, organizationId, keyFormat?): Promise<boolean>
Defined in: sdk-browser/src/__clients__/browser-clients.ts:888

Parameters

credentialBundle
string
organizationId
string
keyFormat?
KeyFormat

Returns

Promise<boolean>

injectWalletExportBundle()

injectWalletExportBundle(credentialBundle, organizationId): Promise<boolean>
Defined in: sdk-browser/src/__clients__/browser-clients.ts:878

Parameters

credentialBundle
string
organizationId
string

Returns

Promise<boolean>

login()

login(config?): Promise<object & object>
Defined in: sdk-browser/src/__clients__/browser-clients.ts:110

Parameters

config?
organizationId?
string

Returns

Promise<object & object>

Inherited from

TurnkeyBrowserClient.login

loginWithAuthBundle()

loginWithAuthBundle(credentialBundle, expirationSeconds): Promise<boolean>
Defined in: sdk-browser/src/__clients__/browser-clients.ts:433 Logs in with an existing auth bundle. this bundle enables both read and write requests.

Parameters

credentialBundle
string
expirationSeconds
string = DEFAULT_SESSION_EXPIRATION_IN_SECONDS

Returns

Promise<boolean>

Inherited from

TurnkeyBrowserClient.loginWithAuthBundle

loginWithBundle()

loginWithBundle(params): Promise<void>
Defined in: sdk-browser/src/__clients__/browser-clients.ts:206 Log in with a bundle. This method uses a bundle sent to the end user email To be used in conjunction with an iframeStamper.

Parameters

params
LoginWithBundleParams

Returns

Promise<void>

Inherited from

TurnkeyBrowserClient.loginWithBundle

loginWithPasskey()

loginWithPasskey(params): Promise<void>
Defined in: sdk-browser/src/__clients__/browser-clients.ts:262 Log in with a passkey. To be used in conjunction with a passkeyStamper

Parameters

params
LoginWithPasskeyParams

Returns

Promise<void>

Inherited from

TurnkeyBrowserClient.loginWithPasskey

loginWithReadWriteSession()

loginWithReadWriteSession(targetEmbeddedKey, expirationSeconds, userId?): Promise<object & object>
Defined in: sdk-browser/src/__clients__/browser-clients.ts:396 Creates a read-write session. This method infers the current user’s organization ID and target userId. To be used in conjunction with an iframeStamper: the resulting session’s credential bundle can be injected into an iframeStamper to create a session that enables both read and write requests.

Parameters

targetEmbeddedKey
string
expirationSeconds
string = DEFAULT_SESSION_EXPIRATION_IN_SECONDS
userId?
string

Returns

Promise<object & object>

Inherited from

TurnkeyBrowserClient.loginWithReadWriteSession

loginWithSession()

loginWithSession(session): Promise<void>
Defined in: sdk-browser/src/__clients__/browser-clients.ts:239 Log in with a session object. This method uses a session object from server actions and stores it and the active client in local storage To be used in conjunction with an iframeStamper.

Parameters

session
Session

Returns

Promise<void>

Inherited from

TurnkeyBrowserClient.loginWithSession

loginWithWallet()

loginWithWallet(params): Promise<void>
Defined in: sdk-browser/src/__clients__/browser-clients.ts:329 Log in with a browser wallet.

Parameters

params
LoginWithWalletParams

Returns

Promise<void>

Inherited from

TurnkeyBrowserClient.loginWithWallet

refreshSession()

refreshSession(params): Promise<void>
Defined in: sdk-browser/src/__clients__/browser-clients.ts:138 Attempts to refresh an existing Session. This method infers the current user’s organization ID and target userId. This will use a passkeyStamper for READ_ONLY sessions or an iframeStamper for READ_WRITE sessions.

Parameters

params
RefreshSessionParams

Returns

Promise<void>

Inherited from

TurnkeyBrowserClient.refreshSession

updateUserAuth()

updateUserAuth(params): Promise<boolean>
Defined in: sdk-browser/src/__clients__/browser-clients.ts:605 Comprehensive authentication update for an end user. Combines add/update and delete operations into a single call. The behavior is driven by whether values are set to:
  • A string/array (to create or update)
  • null or an array of IDs (to remove)
All operations are executed in parallel where applicable.

Parameters

params
UpdateUserAuthParams A structured object containing all the update parameters

Returns

Promise<boolean> A promise that resolves to a boolean indicating overall success

Inherited from

TurnkeyBrowserClient.updateUserAuth