BaseSignerClient

Defined in: account-kit/signer/src/client/base.ts:93

Base class for all Alchemy Signer clients

Extended by

Type Parameters

Type ParameterDefault type

TExportWalletParams

unknown

TExportWalletOutput

unknown

Constructors

Constructor

1new BaseSignerClient<TExportWalletParams, TExportWalletOutput>(params): BaseSignerClient<TExportWalletParams, TExportWalletOutput>;

Defined in: account-kit/signer/src/client/base.ts:108

Create a new instance of the Alchemy Signer client

Parameters

ParameterTypeDescription

params

BaseSignerClientParams

the parameters required to create the client

Returns

BaseSignerClient<TExportWalletParams, TExportWalletOutput>

Properties

PropertyType

eventEmitter

EventEmitter<AlchemySignerClientEvents>

oauthConfig

undefined | OauthConfig

rootOrg

string

turnkeyClient

TurnkeyClient

Accessors

user

Get Signature

1get protected user(): undefined | User;

Defined in: account-kit/signer/src/client/base.ts:129

Returns

undefined | User

Set Signature

1set protected user(user): void;

Defined in: account-kit/signer/src/client/base.ts:133

Parameters
ParameterType

user

undefined | User

Returns

void

Methods

addMfa()

1addMfa(params): Promise<AddMfaResult>;

Defined in: account-kit/signer/src/client/base.ts:1156

Initiates the setup of a new MFA factor for the current user. Mfa will need to be verified before it is active.

Parameters

ParameterTypeDescription

params

AddMfaParams

The parameters required to enable a new MFA factor

Returns

Promise<AddMfaResult>

A promise that resolves to the factor setup information

Throws

If no user is authenticated

Throws

If an unsupported factor type is provided


addOauthProvider()

1addOauthProvider(params): Promise<OauthProviderInfo>;

Defined in: account-kit/signer/src/client/base.ts:598

Adds an OAuth provider for the authenticated user using the provided parameters. Throws an error if the user is not authenticated.

Parameters

ParameterTypeDescription

params

AddOauthProviderParams

The parameters for adding an OAuth provider, including providerName and oidcToken.

Returns

Promise<OauthProviderInfo>

A Promise that resolves when the OAuth provider is added.

Throws

Throws if the user is not authenticated.


addPasskey()

1addPasskey(options): Promise<string[]>;

Defined in: account-kit/signer/src/client/base.ts:491

Handles the creation of authenticators using WebAuthn attestation and the provided options. Requires the user to be authenticated.

Parameters

ParameterTypeDescription

options

CredentialCreationOptions

The options used to create the WebAuthn attestation

Returns

Promise<string[]>

A promise that resolves to an array of authenticator IDs

Throws

If the user is not authenticated


completeAuthWithBundle()

1abstract completeAuthWithBundle(params): Promise<User>;

Defined in: account-kit/signer/src/client/base.ts:235

Parameters

ParameterType

params

{ accessToken?: string; authenticatingType: "email" | "otp" | "sms" | "passkey" | "oauth" | "otpVerify" | "custom-jwt"; bundle: string; connectedEventName: keyof AlchemySignerClientEvents; idToken?: string; orgId: string; }

params.accessToken?

string

params.authenticatingType

"email" | "otp" | "sms" | "passkey" | "oauth" | "otpVerify" | "custom-jwt"

params.bundle

string

params.connectedEventName

keyof AlchemySignerClientEvents

params.idToken?

string

params.orgId

string

Returns

Promise<User>


createAccount()

1createAccount(params): Promise<SignupResponse>;

Defined in: account-kit/signer/src/client/base.ts:158

Authenticates the user by either email or passkey account creation flow. Emits events during the process.

Parameters

ParameterTypeDescription

params

CreateAccountParams

The parameters for creating an account, including the type (email or passkey) and additional details.

Returns

Promise<SignupResponse>

A promise that resolves with the response object containing the account creation result.


disconnect()

1abstract disconnect(): Promise<void>;

Defined in: account-kit/signer/src/client/base.ts:260

Returns

Promise<void>


experimental_addToMultiOwner()

1experimental_addToMultiOwner(orgId, members): Promise<void>;

Defined in: account-kit/signer/src/client/base.ts:1001

This will add additional members to an existing multi-sig account

Parameters

ParameterTypeDescription

orgId

string

orgId of the multi-sig to add members to

members

`0x${string}`[]

the addresses of the members to add

Returns

Promise<void>


experimental_createApiKey()

1experimental_createApiKey(params): Promise<void>;

Defined in: account-kit/signer/src/client/base.ts:764

Creates an API key that can take any action on behalf of the current user. (Note that this method is currently experimental and is subject to change.)

Parameters

ParameterTypeDescription

params

experimental_CreateApiKeyParams

Parameters for creating the API key.

Returns

Promise<void>

Throws

If there is no authenticated user or the API key creation fails.


experimental_createMultiOwner()

1experimental_createMultiOwner(additionalMembers): Promise<{
2 evmSignerAddress: `0x${string}`;
3 members: object[];
4 orgId: string;
5}>;

Defined in: account-kit/signer/src/client/base.ts:979

This will create a multi-owner account with the current user and additional specified signers

Parameters

ParameterTypeDescription

additionalMembers

`0x${string}`[]

members to add, aside from the currently authenticated user

Returns

Promise<{ evmSignerAddress: `0x${string}`; members: object[]; orgId: string; }>

created multi-owner account


experimental_deleteFromMultiOwner()

1experimental_deleteFromMultiOwner(orgId, members): Promise<void>;

Defined in: account-kit/signer/src/client/base.ts:1039

This will remove members from an existing multi-sig account

Parameters

ParameterTypeDescription

orgId

string

orgId of the multi-sig to remove members from

members

`0x${string}`[]

the addresses of the members to remove

Returns

Promise<void>


experimental_multiOwnerSignRawMessage()

1experimental_multiOwnerSignRawMessage(
2 msg,
3 orgId,
4 orgAddress): Promise<`0x${string}`>;

Defined in: account-kit/signer/src/client/base.ts:942

This will sign on behalf of the multi-owner org, without doing any transformations on the message. For SignMessage or SignTypedData, the caller should hash the message before calling this method and pass that result here.

Parameters

ParameterTypeDescription

msg

`0x${string}`

the hex representation of the bytes to sign

orgId

string

orgId of the multi-owner org to sign on behalf of

orgAddress

string

address of the multi-owner org to sign on behalf of

Returns

Promise<`0x${string}`>

the signature over the raw hex


exportWallet()

1abstract exportWallet(params): Promise<TExportWalletOutput>;

Defined in: account-kit/signer/src/client/base.ts:262

Parameters

ParameterType

params

TExportWalletParams

Returns

Promise<TExportWalletOutput>


getMfaFactors()

1getMfaFactors(): Promise<{
2 multiFactors: MfaFactor[];
3}>;

Defined in: account-kit/signer/src/client/base.ts:1124

Retrieves the list of MFA factors configured for the current user.

Returns

Promise<{ multiFactors: MfaFactor[]; }>

A promise that resolves to an array of configured MFA factors

Throws

If no user is authenticated


getOauthConfig()

1abstract protected getOauthConfig(): Promise<OauthConfig>;

Defined in: account-kit/signer/src/client/base.ts:268

Returns

Promise<OauthConfig>


getOauthNonce()

1protected getOauthNonce(turnkeyPublicKey): string;

Defined in: account-kit/signer/src/client/base.ts:1491

Turnkey requires the nonce in the id token to be in this format.

Parameters

ParameterTypeDescription

turnkeyPublicKey

string

key from a Turnkey iframe

Returns

string

nonce to be used in OIDC


getOauthProviderUrl()

1protected getOauthProviderUrl(args): Promise<string>;

Defined in: account-kit/signer/src/client/base.ts:1316

Returns the authentication url for the selected OAuth Proivder

Example

1cosnt oauthParams = {
2 authProviderId: "google",
3 isCustomProvider: false,
4 auth0Connection: undefined,
5 scope: undefined,
6 claims: undefined,
7 mode: "redirect",
8 redirectUrl: "https://your-url-path/oauth-return",
9 expirationSeconds: 3000
10};
11
12const turnkeyPublicKey = await this.initIframeStamper();
13const oauthCallbackUrl = this.oauthCallbackUrl;
14const oauthConfig = this.getOauthConfig() // Optional value for OauthConfig()
15const usesRelativeUrl = true // Optional value to determine if we use a relative (or absolute) url for the `redirect_url`
16
17const oauthProviderUrl = getOauthProviderUrl({
18 oauthParams,
19 turnkeyPublicKey,
20 oauthCallbackUrl
21})

Parameters

ParameterTypeDescription

args

GetOauthProviderUrlArgs

Required. The Oauth provider’s auth parameters

Returns

Promise<string>

returns the Oauth provider’s url


getPasskeyStatus()

1getPasskeyStatus(): Promise<{
2 isPasskeyAdded: boolean;
3}>;

Defined in: account-kit/signer/src/client/base.ts:576

Retrieves the status of the passkey for the current user. Requires the user to be authenticated.

Returns

Promise<{ isPasskeyAdded: boolean; }>

A promise that resolves to an object containing the passkey status

Throws

If the user is not authenticated


getUser()

1getUser(): null | User;

Defined in: account-kit/signer/src/client/base.ts:1074

Returns the current user or null if no user is set.

Returns

null | User

the current user object or null if no user is available


getWebAuthnAttestation()

1abstract protected getWebAuthnAttestation(options?, userDetails?): Promise<GetWebAuthnAttestationResult>;

Defined in: account-kit/signer/src/client/base.ts:270

Parameters

ParameterType

options?

CredentialCreationOptionOverrides

userDetails?

{ username: string; }

userDetails.username?

string

Returns

Promise<GetWebAuthnAttestationResult>


initEmailAuth()

1abstract initEmailAuth(params): Promise<{
2 multiFactors?: MfaFactor[];
3 orgId: string;
4 otpId?: string;
5}>;

Defined in: account-kit/signer/src/client/base.ts:227

Parameters

ParameterType

params

Omit<EmailAuthParams, "targetPublicKey">

Returns

Promise<{ multiFactors?: MfaFactor[]; orgId: string; otpId?: string; }>


initOauth()

1initOauth(): Promise<OauthConfig>;

Defined in: account-kit/signer/src/client/base.ts:124

Asynchronously fetches and sets the OAuth configuration.

Returns

Promise<OauthConfig>

A promise that resolves to the OAuth configuration


initOtp()

1initOtp(type, contact): Promise<{
2 otpId: string;
3}>;

Defined in: account-kit/signer/src/client/base.ts:474

Initiates an OTP (One-Time Password) verification process for a user contact.

Parameters

ParameterTypeDescription

type

"email" | "sms"

The type of OTP to send, either “email” or “sms”

contact

string

The email address or phone number to send the OTP to

Returns

Promise<{ otpId: string; }>

A promise that resolves to an object containing the OTP ID

Throws

When no user is currently authenticated


initSessionStamper()

1abstract protected initSessionStamper(): Promise<string>;

Defined in: account-kit/signer/src/client/base.ts:278

Initializes the session stamper and returns its public key.

Returns

Promise<string>


initSmsAuth()

1abstract initSmsAuth(params): Promise<{
2 orgId: string;
3 otpId?: string;
4}>;

Defined in: account-kit/signer/src/client/base.ts:231

Parameters

ParameterType

params

Omit<SmsAuthParams, "targetPublicKey">

Returns

Promise<{ orgId: string; otpId?: string; }>


initWebauthnStamper()

1abstract protected initWebauthnStamper(user, options): Promise<void>;

Defined in: account-kit/signer/src/client/base.ts:280

Parameters

ParameterType

user

undefined | User

options

| undefined | CredentialCreationOptionOverrides

Returns

Promise<void>


listAuthMethods()

1listAuthMethods(): Promise<AuthMethods>;

Defined in: account-kit/signer/src/client/base.ts:648

Retrieves the list of authentication methods for the current user.

Returns

Promise<AuthMethods>

A promise that resolves to the list of authentication methods

Throws

If the user is not authenticated


lookupUserByAccessKey()

1lookupUserByAccessKey(params): Promise<{
2 orgId: null | string;
3}>;

Defined in: account-kit/signer/src/client/base.ts:817

Looks up information based on an access key.

Parameters

ParameterTypeDescription

params

LookupUserByAccessKeyParams

The access key parameters

Returns

Promise<{ orgId: null | string; }>

The result of the lookup request


lookupUserByEmail()

1lookupUserByEmail(email): Promise<{
2 orgId: null | string;
3}>;

Defined in: account-kit/signer/src/client/base.ts:797

Looks up information based on an email address.

Parameters

ParameterTypeDescription

email

string

the email address to look up

Returns

Promise<{ orgId: null | string; }>

the result of the lookup request


lookupUserByPhone()

1lookupUserByPhone(phone): Promise<{
2 orgId: null | string;
3}>;

Defined in: account-kit/signer/src/client/base.ts:807

Looks up information based on a phone number.

Parameters

ParameterTypeDescription

phone

string

the phone number to look up

Returns

Promise<{ orgId: null | string; }>

the result of the lookup request


lookupUserWithPasskey()

1lookupUserWithPasskey(user?): Promise<User>;

Defined in: account-kit/signer/src/client/base.ts:554

Asynchronously handles the authentication process using WebAuthn Stamper. If a user is provided, sets the user and returns it. Otherwise, retrieves the current user and initializes the WebAuthn stamper.

Parameters

ParameterTypeDefault valueDescription

user?

User

undefined

An optional user object to authenticate

Returns

Promise<User>

A promise that resolves to the authenticated user object


oauthWithPopup()

1abstract oauthWithPopup(args): Promise<
2 | User
3 | AuthLinkingPrompt
4 | IdTokenOnly>;

Defined in: account-kit/signer/src/client/base.ts:248

Parameters

ParameterType

args

any

Returns

Promise< | User | AuthLinkingPrompt | IdTokenOnly>


oauthWithRedirect()

1abstract oauthWithRedirect(args): Promise<
2 | User
3 | IdTokenOnly>;

Defined in: account-kit/signer/src/client/base.ts:244

Parameters

ParameterType

args

any

Returns

Promise< | User | IdTokenOnly>


on()

1on<E>(event, listener): () => any;

Defined in: account-kit/signer/src/client/base.ts:296

Listen to events emitted by the client

Type Parameters

Type Parameter

E extends keyof AlchemySignerClientEvents

Parameters

ParameterTypeDescription

event

E

the event you want to listen to

listener

AlchemySignerClientEvents[E]

the callback function to execute when an event is fired

Returns

a function that will remove the listener when called

1(): any;
Returns

any


pollActivityCompletion()

1protected pollActivityCompletion<T>(
2 activity,
3 organizationId,
4 resultKey): Promise<NonNullable<object[T]>>;

Defined in: account-kit/signer/src/client/base.ts:1436

Type Parameters

Type Parameter

T extends | "createOrganizationResult" | "createAuthenticatorsResult" | "createUsersResult" | "createPrivateKeysResult" | "createInvitationsResult" | "acceptInvitationResult" | "signRawPayloadResult" | "createPolicyResult" | "disablePrivateKeyResult" | "deleteUsersResult" | "deleteAuthenticatorsResult" | "deleteInvitationResult" | "deleteOrganizationResult" | "deletePolicyResult" | "createUserTagResult" | "deleteUserTagsResult" | "signTransactionResult" | "deleteApiKeysResult" | "createApiKeysResult" | "createPrivateKeyTagResult" | "deletePrivateKeyTagsResult" | "setPaymentMethodResult" | "activateBillingTierResult" | "deletePaymentMethodResult" | "createApiOnlyUsersResult" | "updateRootQuorumResult" | "updateUserTagResult" | "updatePrivateKeyTagResult" | "createSubOrganizationResult" | "updateAllowedOriginsResult" | "createPrivateKeysResultV2" | "updateUserResult" | "updatePolicyResult" | "createSubOrganizationResultV3" | "createWalletResult" | "createWalletAccountsResult" | "initUserEmailRecoveryResult" | "recoverUserResult" | "setOrganizationFeatureResult" | "removeOrganizationFeatureResult" | "exportPrivateKeyResult" | "exportWalletResult" | "createSubOrganizationResultV4" | "emailAuthResult" | "exportWalletAccountResult" | "initImportWalletResult" | "importWalletResult" | "initImportPrivateKeyResult" | "importPrivateKeyResult" | "createPoliciesResult" | "signRawPayloadsResult" | "createReadOnlySessionResult" | "createOauthProvidersResult" | "deleteOauthProvidersResult" | "createSubOrganizationResultV5" | "oauthResult" | "createReadWriteSessionResult" | "createSubOrganizationResultV6" | "deletePrivateKeysResult" | "deleteWalletsResult" | "createReadWriteSessionResultV2" | "deleteSubOrganizationResult" | "initOtpAuthResult" | "otpAuthResult" | "createSubOrganizationResultV7" | "updateWalletResult" | "updatePolicyResultV2" | "initOtpAuthResultV2" | "initOtpResult" | "verifyOtpResult" | "otpLoginResult" | "stampLoginResult" | "oauthLoginResult" | "updateUserNameResult" | "updateUserEmailResult" | "updateUserPhoneNumberResult" | "initFiatOnRampResult" | "createSmartContractInterfaceResult" | "deleteSmartContractInterfaceResult" | "enableAuthProxyResult" | "disableAuthProxyResult" | "updateAuthProxyConfigResult" | "createOauth2CredentialResult" | "updateOauth2CredentialResult" | "deleteOauth2CredentialResult" | "oauth2AuthenticateResult"

Parameters

ParameterTypeDescription

activity

{ canApprove: boolean; canReject: boolean; createdAt: { nanos: string; seconds: string; }; failure?: { code?: number; details?: object & object[]; message?: string; }; fingerprint: string; id: string; intent: { acceptInvitationIntent?: { authenticator: { attestation: { authenticatorAttachment?: null | "cross-platform" | "platform"; clientExtensionResults: { appid?: boolean; appidExclude?: boolean; credProps?: { rk: boolean; }; }; id: string; rawId: string; response: { attestationObject: string; authenticatorAttachment?: null | "cross-platform" | "platform"; clientDataJson: string; transports?: ( | "AUTHENTICATOR_TRANSPORT_BLE" | "AUTHENTICATOR_TRANSPORT_INTERNAL" | "AUTHENTICATOR_TRANSPORT_NFC" | "AUTHENTICATOR_TRANSPORT_USB" | "AUTHENTICATOR_TRANSPORT_HYBRID")[]; }; type: "public-key"; }; authenticatorName: string; challenge: string; userId: string; }; invitationId: string; userId: string; }; acceptInvitationIntentV2?: { authenticator: { attestation: { attestationObject: string; clientDataJson: string; credentialId: string; transports: ( | "AUTHENTICATOR_TRANSPORT_BLE" | "AUTHENTICATOR_TRANSPORT_INTERNAL" | "AUTHENTICATOR_TRANSPORT_NFC" | "AUTHENTICATOR_TRANSPORT_USB" | "AUTHENTICATOR_TRANSPORT_HYBRID")[]; }; authenticatorName: string; challenge: string; }; invitationId: string; userId: string; }; activateBillingTierIntent?: { productId: string; }; approveActivityIntent?: { fingerprint: string; }; createApiKeysIntent?: { apiKeys: object[]; userId: string; }; createApiKeysIntentV2?: { apiKeys: object[]; userId: string; }; createApiOnlyUsersIntent?: { apiOnlyUsers: object[]; }; createAuthenticatorsIntent?: { authenticators: object[]; userId: string; }; createAuthenticatorsIntentV2?: { authenticators: object[]; userId: string; }; createInvitationsIntent?: { invitations: object[]; }; createOauth2CredentialIntent?: { clientId: string; encryptedClientSecret: string; provider: "OAUTH2_PROVIDER_X" | "OAUTH2_PROVIDER_DISCORD"; }; createOauthProvidersIntent?: { oauthProviders: object[]; userId: string; }; createOrganizationIntent?: { organizationName: string; rootAuthenticator: { attestation: { authenticatorAttachment?: null | "cross-platform" | "platform"; clientExtensionResults: { appid?: boolean; appidExclude?: boolean; credProps?: { rk: boolean; }; }; id: string; rawId: string; response: { attestationObject: string; authenticatorAttachment?: null | "cross-platform" | "platform"; clientDataJson: string; transports?: ( | "AUTHENTICATOR_TRANSPORT_BLE" | "AUTHENTICATOR_TRANSPORT_INTERNAL" | "AUTHENTICATOR_TRANSPORT_NFC" | "AUTHENTICATOR_TRANSPORT_USB" | "AUTHENTICATOR_TRANSPORT_HYBRID")[]; }; type: "public-key"; }; authenticatorName: string; challenge: string; userId: string; }; rootEmail: string; rootUserId?: string; }; createOrganizationIntentV2?: { organizationName: string; rootAuthenticator: { attestation: { attestationObject: string; clientDataJson: string; credentialId: string; transports: ( | "AUTHENTICATOR_TRANSPORT_BLE" | "AUTHENTICATOR_TRANSPORT_INTERNAL" | "AUTHENTICATOR_TRANSPORT_NFC" | "AUTHENTICATOR_TRANSPORT_USB" | "AUTHENTICATOR_TRANSPORT_HYBRID")[]; }; authenticatorName: string; challenge: string; }; rootEmail: string; rootUserId?: string; }; createPoliciesIntent?: { policies: object[]; }; createPolicyIntent?: { effect: "EFFECT_ALLOW" | "EFFECT_DENY"; notes?: string; policyName: string; selectors: object[]; }; createPolicyIntentV2?: { effect: "EFFECT_ALLOW" | "EFFECT_DENY"; notes?: string; policyName: string; selectors: object[]; }; createPolicyIntentV3?: { condition?: string; consensus?: string; effect: "EFFECT_ALLOW" | "EFFECT_DENY"; notes?: string; policyName: string; }; createPrivateKeysIntent?: { privateKeys: object[]; }; createPrivateKeysIntentV2?: { privateKeys: object[]; }; createPrivateKeyTagIntent?: { privateKeyIds: string[]; privateKeyTagName: string; }; createReadOnlySessionIntent?: { [key: string]: unknown; }; createReadWriteSessionIntent?: { apiKeyName?: string; email: string; expirationSeconds?: string; targetPublicKey: string; }; createReadWriteSessionIntentV2?: { apiKeyName?: string; expirationSeconds?: string; invalidateExisting?: boolean; targetPublicKey: string; userId?: string; }; createSmartContractInterfaceIntent?: { label: string; notes?: string; smartContractAddress: string; smartContractInterface: string; type: | "SMART_CONTRACT_INTERFACE_TYPE_ETHEREUM" | "SMART_CONTRACT_INTERFACE_TYPE_SOLANA"; }; createSubOrganizationIntent?: { name: string; rootAuthenticator: { attestation: { attestationObject: string; clientDataJson: string; credentialId: string; transports: ( | "AUTHENTICATOR_TRANSPORT_BLE" | "AUTHENTICATOR_TRANSPORT_INTERNAL" | "AUTHENTICATOR_TRANSPORT_NFC" | "AUTHENTICATOR_TRANSPORT_USB" | "AUTHENTICATOR_TRANSPORT_HYBRID")[]; }; authenticatorName: string; challenge: string; }; }; createSubOrganizationIntentV2?: { rootQuorumThreshold: number; rootUsers: object[]; subOrganizationName: string; }; createSubOrganizationIntentV3?: { privateKeys: object[]; rootQuorumThreshold: number; rootUsers: object[]; subOrganizationName: string; }; createSubOrganizationIntentV4?: { disableEmailAuth?: boolean; disableEmailRecovery?: boolean; rootQuorumThreshold: number; rootUsers: object[]; subOrganizationName: string; wallet?: { accounts: object[]; mnemonicLength?: number; walletName: string; }; }; createSubOrganizationIntentV5?: { disableEmailAuth?: boolean; disableEmailRecovery?: boolean; rootQuorumThreshold: number; rootUsers: object[]; subOrganizationName: string; wallet?: { accounts: object[]; mnemonicLength?: number; walletName: string; }; }; createSubOrganizationIntentV6?: { disableEmailAuth?: boolean; disableEmailRecovery?: boolean; rootQuorumThreshold: number; rootUsers: object[]; subOrganizationName: string; wallet?: { accounts: object[]; mnemonicLength?: number; walletName: string; }; }; createSubOrganizationIntentV7?: { disableEmailAuth?: boolean; disableEmailRecovery?: boolean; disableOtpEmailAuth?: boolean; disableSmsAuth?: boolean; rootQuorumThreshold: number; rootUsers: object[]; subOrganizationName: string; verificationToken?: string; wallet?: { accounts: object[]; mnemonicLength?: number; walletName: string; }; }; createUsersIntent?: { users: object[]; }; createUsersIntentV2?: { users: object[]; }; createUsersIntentV3?: { users: object[]; }; createUserTagIntent?: { userIds: string[]; userTagName: string; }; createWalletAccountsIntent?: { accounts: object[]; walletId: string; }; createWalletIntent?: { accounts: object[]; mnemonicLength?: number; walletName: string; }; deleteApiKeysIntent?: { apiKeyIds: string[]; userId: string; }; deleteAuthenticatorsIntent?: { authenticatorIds: string[]; userId: string; }; deleteInvitationIntent?: { invitationId: string; }; deleteOauth2CredentialIntent?: { oauth2CredentialId: string; }; deleteOauthProvidersIntent?: { providerIds: string[]; userId: string; }; deleteOrganizationIntent?: { organizationId: string; }; deletePaymentMethodIntent?: { paymentMethodId: string; }; deletePolicyIntent?: { policyId: string; }; deletePrivateKeysIntent?: { deleteWithoutExport?: boolean; privateKeyIds: string[]; }; deletePrivateKeyTagsIntent?: { privateKeyTagIds: string[]; }; deleteSmartContractInterfaceIntent?: { smartContractInterfaceId: string; }; deleteSubOrganizationIntent?: { deleteWithoutExport?: boolean; }; deleteUsersIntent?: { userIds: string[]; }; deleteUserTagsIntent?: { userTagIds: string[]; }; deleteWalletsIntent?: { deleteWithoutExport?: boolean; walletIds: string[]; }; disableAuthProxyIntent?: { [key: string]: unknown; }; disablePrivateKeyIntent?: { privateKeyId: string; }; emailAuthIntent?: { apiKeyName?: string; email: string; emailCustomization?: { appName?: string; logoUrl?: string; magicLinkTemplate?: string; templateId?: string; templateVariables?: string; }; expirationSeconds?: string; invalidateExisting?: boolean; replyToEmailAddress?: string; sendFromEmailAddress?: string; sendFromEmailSenderName?: string; targetPublicKey: string; }; emailAuthIntentV2?: { apiKeyName?: string; email: string; emailCustomization?: { appName?: string; logoUrl?: string; magicLinkTemplate?: string; templateId?: string; templateVariables?: string; }; expirationSeconds?: string; invalidateExisting?: boolean; replyToEmailAddress?: string; sendFromEmailAddress?: string; sendFromEmailSenderName?: string; targetPublicKey: string; }; enableAuthProxyIntent?: { [key: string]: unknown; }; exportPrivateKeyIntent?: { privateKeyId: string; targetPublicKey: string; }; exportWalletAccountIntent?: { address: string; targetPublicKey: string; }; exportWalletIntent?: { language?: | "MNEMONIC_LANGUAGE_ENGLISH" | "MNEMONIC_LANGUAGE_SIMPLIFIED_CHINESE" | "MNEMONIC_LANGUAGE_TRADITIONAL_CHINESE" | "MNEMONIC_LANGUAGE_CZECH" | "MNEMONIC_LANGUAGE_FRENCH" | "MNEMONIC_LANGUAGE_ITALIAN" | "MNEMONIC_LANGUAGE_JAPANESE" | "MNEMONIC_LANGUAGE_KOREAN" | "MNEMONIC_LANGUAGE_SPANISH"; targetPublicKey: string; walletId: string; }; importPrivateKeyIntent?: { addressFormats: ( | "ADDRESS_FORMAT_UNCOMPRESSED" | "ADDRESS_FORMAT_COMPRESSED" | "ADDRESS_FORMAT_ETHEREUM" | "ADDRESS_FORMAT_SOLANA" | "ADDRESS_FORMAT_COSMOS" | "ADDRESS_FORMAT_TRON" | "ADDRESS_FORMAT_SUI" | "ADDRESS_FORMAT_APTOS" | "ADDRESS_FORMAT_BITCOIN_MAINNET_P2PKH" | "ADDRESS_FORMAT_BITCOIN_MAINNET_P2SH" | "ADDRESS_FORMAT_BITCOIN_MAINNET_P2WPKH" | "ADDRESS_FORMAT_BITCOIN_MAINNET_P2WSH" | "ADDRESS_FORMAT_BITCOIN_MAINNET_P2TR" | "ADDRESS_FORMAT_BITCOIN_TESTNET_P2PKH" | "ADDRESS_FORMAT_BITCOIN_TESTNET_P2SH" | "ADDRESS_FORMAT_BITCOIN_TESTNET_P2WPKH" | "ADDRESS_FORMAT_BITCOIN_TESTNET_P2WSH" | "ADDRESS_FORMAT_BITCOIN_TESTNET_P2TR" | "ADDRESS_FORMAT_BITCOIN_SIGNET_P2PKH" | "ADDRESS_FORMAT_BITCOIN_SIGNET_P2SH" | "ADDRESS_FORMAT_BITCOIN_SIGNET_P2WPKH" | "ADDRESS_FORMAT_BITCOIN_SIGNET_P2WSH" | "ADDRESS_FORMAT_BITCOIN_SIGNET_P2TR" | "ADDRESS_FORMAT_BITCOIN_REGTEST_P2PKH" | "ADDRESS_FORMAT_BITCOIN_REGTEST_P2SH" | "ADDRESS_FORMAT_BITCOIN_REGTEST_P2WPKH" | "ADDRESS_FORMAT_BITCOIN_REGTEST_P2WSH" | "ADDRESS_FORMAT_BITCOIN_REGTEST_P2TR" | "ADDRESS_FORMAT_SEI" | "ADDRESS_FORMAT_XLM" | "ADDRESS_FORMAT_DOGE_MAINNET" | "ADDRESS_FORMAT_DOGE_TESTNET" | "ADDRESS_FORMAT_TON_V3R2" | "ADDRESS_FORMAT_TON_V4R2" | "ADDRESS_FORMAT_TON_V5R1" | "ADDRESS_FORMAT_XRP")[]; curve: "CURVE_SECP256K1" | "CURVE_ED25519"; encryptedBundle: string; privateKeyName: string; userId: string; }; importWalletIntent?: { accounts: object[]; encryptedBundle: string; userId: string; walletName: string; }; initFiatOnRampIntent?: { countryCode?: string; countrySubdivisionCode?: string; cryptoCurrencyCode: | "FIAT_ON_RAMP_CRYPTO_CURRENCY_BTC" | "FIAT_ON_RAMP_CRYPTO_CURRENCY_ETH" | "FIAT_ON_RAMP_CRYPTO_CURRENCY_SOL" | "FIAT_ON_RAMP_CRYPTO_CURRENCY_USDC"; fiatCurrencyAmount?: string; fiatCurrencyCode?: | "FIAT_ON_RAMP_CURRENCY_AUD" | "FIAT_ON_RAMP_CURRENCY_BGN" | "FIAT_ON_RAMP_CURRENCY_BRL" | "FIAT_ON_RAMP_CURRENCY_CAD" | "FIAT_ON_RAMP_CURRENCY_CHF" | "FIAT_ON_RAMP_CURRENCY_COP" | "FIAT_ON_RAMP_CURRENCY_CZK" | "FIAT_ON_RAMP_CURRENCY_DKK" | "FIAT_ON_RAMP_CURRENCY_DOP" | "FIAT_ON_RAMP_CURRENCY_EGP" | "FIAT_ON_RAMP_CURRENCY_EUR" | "FIAT_ON_RAMP_CURRENCY_GBP" | "FIAT_ON_RAMP_CURRENCY_HKD" | "FIAT_ON_RAMP_CURRENCY_IDR" | "FIAT_ON_RAMP_CURRENCY_ILS" | "FIAT_ON_RAMP_CURRENCY_JOD" | "FIAT_ON_RAMP_CURRENCY_KES" | "FIAT_ON_RAMP_CURRENCY_KWD" | "FIAT_ON_RAMP_CURRENCY_LKR" | "FIAT_ON_RAMP_CURRENCY_MXN" | "FIAT_ON_RAMP_CURRENCY_NGN" | "FIAT_ON_RAMP_CURRENCY_NOK" | "FIAT_ON_RAMP_CURRENCY_NZD" | "FIAT_ON_RAMP_CURRENCY_OMR" | "FIAT_ON_RAMP_CURRENCY_PEN" | "FIAT_ON_RAMP_CURRENCY_PLN" | "FIAT_ON_RAMP_CURRENCY_RON" | "FIAT_ON_RAMP_CURRENCY_SEK" | "FIAT_ON_RAMP_CURRENCY_THB" | "FIAT_ON_RAMP_CURRENCY_TRY" | "FIAT_ON_RAMP_CURRENCY_TWD" | "FIAT_ON_RAMP_CURRENCY_USD" | "FIAT_ON_RAMP_CURRENCY_VND" | "FIAT_ON_RAMP_CURRENCY_ZAR"; network: | "FIAT_ON_RAMP_BLOCKCHAIN_NETWORK_BITCOIN" | "FIAT_ON_RAMP_BLOCKCHAIN_NETWORK_ETHEREUM" | "FIAT_ON_RAMP_BLOCKCHAIN_NETWORK_SOLANA" | "FIAT_ON_RAMP_BLOCKCHAIN_NETWORK_BASE"; onrampProvider: "FIAT_ON_RAMP_PROVIDER_COINBASE" | "FIAT_ON_RAMP_PROVIDER_MOONPAY"; paymentMethod?: | "FIAT_ON_RAMP_PAYMENT_METHOD_CREDIT_DEBIT_CARD" | "FIAT_ON_RAMP_PAYMENT_METHOD_APPLE_PAY" | "FIAT_ON_RAMP_PAYMENT_METHOD_GBP_BANK_TRANSFER" | "FIAT_ON_RAMP_PAYMENT_METHOD_GBP_OPEN_BANKING_PAYMENT" | "FIAT_ON_RAMP_PAYMENT_METHOD_GOOGLE_PAY" | "FIAT_ON_RAMP_PAYMENT_METHOD_SEPA_BANK_TRANSFER" | "FIAT_ON_RAMP_PAYMENT_METHOD_PIX_INSTANT_PAYMENT" | "FIAT_ON_RAMP_PAYMENT_METHOD_PAYPAL" | "FIAT_ON_RAMP_PAYMENT_METHOD_VENMO" | "FIAT_ON_RAMP_PAYMENT_METHOD_MOONPAY_BALANCE" | "FIAT_ON_RAMP_PAYMENT_METHOD_CRYPTO_ACCOUNT" | "FIAT_ON_RAMP_PAYMENT_METHOD_FIAT_WALLET" | "FIAT_ON_RAMP_PAYMENT_METHOD_ACH_BANK_ACCOUNT"; sandboxMode?: boolean; walletAddress: string; }; initImportPrivateKeyIntent?: { userId: string; }; initImportWalletIntent?: { userId: string; }; initOtpAuthIntent?: { contact: string; emailCustomization?: { appName?: string; logoUrl?: string; magicLinkTemplate?: string; templateId?: string; templateVariables?: string; }; otpType: string; replyToEmailAddress?: string; sendFromEmailAddress?: string; sendFromEmailSenderName?: string; smsCustomization?: { template?: string; }; userIdentifier?: string; }; initOtpAuthIntentV2?: { alphanumeric?: boolean; contact: string; emailCustomization?: { appName?: string; logoUrl?: string; magicLinkTemplate?: string; templateId?: string; templateVariables?: string; }; otpLength?: number; otpType: string; replyToEmailAddress?: string; sendFromEmailAddress?: string; sendFromEmailSenderName?: string; smsCustomization?: { template?: string; }; userIdentifier?: string; }; initOtpIntent?: { alphanumeric?: boolean; contact: string; emailCustomization?: { appName?: string; logoUrl?: string; magicLinkTemplate?: string; templateId?: string; templateVariables?: string; }; expirationSeconds?: string; otpLength?: number; otpType: string; replyToEmailAddress?: string; sendFromEmailAddress?: string; sendFromEmailSenderName?: string; smsCustomization?: { template?: string; }; userIdentifier?: string; }; initUserEmailRecoveryIntent?: { email: string; emailCustomization?: { appName?: string; logoUrl?: string; magicLinkTemplate?: string; templateId?: string; templateVariables?: string; }; expirationSeconds?: string; targetPublicKey: string; }; oauth2AuthenticateIntent?: { authCode: string; codeVerifier: string; nonce?: string; oauth2CredentialId: string; redirectUri: string; }; oauthIntent?: { apiKeyName?: string; expirationSeconds?: string; invalidateExisting?: boolean; oidcToken: string; targetPublicKey: string; }; oauthLoginIntent?: { expirationSeconds?: string; invalidateExisting?: boolean; oidcToken: string; publicKey: string; }; otpAuthIntent?: { apiKeyName?: string; expirationSeconds?: string; invalidateExisting?: boolean; otpCode: string; otpId: string; targetPublicKey: string; }; otpLoginIntent?: { expirationSeconds?: string; invalidateExisting?: boolean; publicKey: string; verificationToken: string; }; recoverUserIntent?: { authenticator: { attestation: { attestationObject: string; clientDataJson: string; credentialId: string; transports: ( | "AUTHENTICATOR_TRANSPORT_BLE" | "AUTHENTICATOR_TRANSPORT_INTERNAL" | "AUTHENTICATOR_TRANSPORT_NFC" | "AUTHENTICATOR_TRANSPORT_USB" | "AUTHENTICATOR_TRANSPORT_HYBRID")[]; }; authenticatorName: string; challenge: string; }; userId: string; }; rejectActivityIntent?: { fingerprint: string; }; removeOrganizationFeatureIntent?: { name: | "FEATURE_NAME_ROOT_USER_EMAIL_RECOVERY" | "FEATURE_NAME_WEBAUTHN_ORIGINS" | "FEATURE_NAME_EMAIL_AUTH" | "FEATURE_NAME_EMAIL_RECOVERY" | "FEATURE_NAME_WEBHOOK" | "FEATURE_NAME_SMS_AUTH" | "FEATURE_NAME_OTP_EMAIL_AUTH" | "FEATURE_NAME_AUTH_PROXY"; }; setOrganizationFeatureIntent?: { name: | "FEATURE_NAME_ROOT_USER_EMAIL_RECOVERY" | "FEATURE_NAME_WEBAUTHN_ORIGINS" | "FEATURE_NAME_EMAIL_AUTH" | "FEATURE_NAME_EMAIL_RECOVERY" | "FEATURE_NAME_WEBHOOK" | "FEATURE_NAME_SMS_AUTH" | "FEATURE_NAME_OTP_EMAIL_AUTH" | "FEATURE_NAME_AUTH_PROXY"; value: string; }; setPaymentMethodIntent?: { cardHolderEmail: string; cardHolderName: string; cvv: string; expiryMonth: string; expiryYear: string; number: string; }; setPaymentMethodIntentV2?: { cardHolderEmail: string; cardHolderName: string; paymentMethodId: string; }; signRawPayloadIntent?: { encoding: | "PAYLOAD_ENCODING_HEXADECIMAL" | "PAYLOAD_ENCODING_TEXT_UTF8" | "PAYLOAD_ENCODING_EIP712" | "PAYLOAD_ENCODING_EIP7702_AUTHORIZATION"; hashFunction: | "HASH_FUNCTION_NO_OP" | "HASH_FUNCTION_SHA256" | "HASH_FUNCTION_KECCAK256" | "HASH_FUNCTION_NOT_APPLICABLE"; payload: string; privateKeyId: string; }; signRawPayloadIntentV2?: { encoding: | "PAYLOAD_ENCODING_HEXADECIMAL" | "PAYLOAD_ENCODING_TEXT_UTF8" | "PAYLOAD_ENCODING_EIP712" | "PAYLOAD_ENCODING_EIP7702_AUTHORIZATION"; hashFunction: | "HASH_FUNCTION_NO_OP" | "HASH_FUNCTION_SHA256" | "HASH_FUNCTION_KECCAK256" | "HASH_FUNCTION_NOT_APPLICABLE"; payload: string; signWith: string; }; signRawPayloadsIntent?: { encoding: | "PAYLOAD_ENCODING_HEXADECIMAL" | "PAYLOAD_ENCODING_TEXT_UTF8" | "PAYLOAD_ENCODING_EIP712" | "PAYLOAD_ENCODING_EIP7702_AUTHORIZATION"; hashFunction: | "HASH_FUNCTION_NO_OP" | "HASH_FUNCTION_SHA256" | "HASH_FUNCTION_KECCAK256" | "HASH_FUNCTION_NOT_APPLICABLE"; payloads: string[]; signWith: string; }; signTransactionIntent?: { privateKeyId: string; type: | "TRANSACTION_TYPE_ETHEREUM" | "TRANSACTION_TYPE_SOLANA" | "TRANSACTION_TYPE_TRON"; unsignedTransaction: string; }; signTransactionIntentV2?: { signWith: string; type: | "TRANSACTION_TYPE_ETHEREUM" | "TRANSACTION_TYPE_SOLANA" | "TRANSACTION_TYPE_TRON"; unsignedTransaction: string; }; stampLoginIntent?: { expirationSeconds?: string; invalidateExisting?: boolean; publicKey: string; }; updateAllowedOriginsIntent?: { allowedOrigins: string[]; }; updateAuthProxyConfigIntent?: { allowedAuthMethods?: string[]; allowedOrigins?: string[]; emailAuthTemplateId?: string; emailCustomizationParams?: { appName?: string; logoUrl?: string; magicLinkTemplate?: string; templateId?: string; templateVariables?: string; }; oauth2ProviderCredentialIds?: { [key: string]: string; }; otpAlphanumeric?: boolean; otpExpirationSeconds?: number; otpLength?: number; otpTemplateId?: string; replyToEmailAddress?: string; sendFromEmailAddress?: string; sessionExpirationSeconds?: number; smsCustomizationParams?: { template?: string; }; verificationTokenExpirationSeconds?: number; walletKitSettings?: { enabledSocialProviders?: string[]; }; }; updateOauth2CredentialIntent?: { clientId: string; encryptedClientSecret: string; oauth2CredentialId: string; provider: "OAUTH2_PROVIDER_X" | "OAUTH2_PROVIDER_DISCORD"; }; updatePolicyIntent?: { policyCondition?: string; policyConsensus?: string; policyEffect?: "EFFECT_ALLOW" | "EFFECT_DENY"; policyId: string; policyName?: string; policyNotes?: string; }; updatePolicyIntentV2?: { policyCondition?: string; policyConsensus?: string; policyEffect?: "EFFECT_ALLOW" | "EFFECT_DENY"; policyId: string; policyName?: string; policyNotes?: string; }; updatePrivateKeyTagIntent?: { addPrivateKeyIds: string[]; newPrivateKeyTagName?: string; privateKeyTagId: string; removePrivateKeyIds: string[]; }; updateRootQuorumIntent?: { threshold: number; userIds: string[]; }; updateUserEmailIntent?: { userEmail: string; userId: string; verificationToken?: string; }; updateUserIntent?: { userEmail?: string; userId: string; userName?: string; userPhoneNumber?: string; userTagIds?: string[]; }; updateUserNameIntent?: { userId: string; userName: string; }; updateUserPhoneNumberIntent?: { userId: string; userPhoneNumber: string; verificationToken?: string; }; updateUserTagIntent?: { addUserIds: string[]; newUserTagName?: string; removeUserIds: string[]; userTagId: string; }; updateWalletIntent?: { walletId: string; walletName?: string; }; verifyOtpIntent?: { expirationSeconds?: string; otpCode: string; otpId: string; }; }; organizationId: string; result: { acceptInvitationResult?: { invitationId: string; userId: string; }; activateBillingTierResult?: { productId: string; }; createApiKeysResult?: { apiKeyIds: string[]; }; createApiOnlyUsersResult?: { userIds: string[]; }; createAuthenticatorsResult?: { authenticatorIds: string[]; }; createInvitationsResult?: { invitationIds: string[]; }; createOauth2CredentialResult?: { oauth2CredentialId: string; }; createOauthProvidersResult?: { providerIds: string[]; }; createOrganizationResult?: { organizationId: string; }; createPoliciesResult?: { policyIds: string[]; }; createPolicyResult?: { policyId: string; }; createPrivateKeysResult?: { privateKeyIds: string[]; }; createPrivateKeysResultV2?: { privateKeys: object[]; }; createPrivateKeyTagResult?: { privateKeyIds: string[]; privateKeyTagId: string; }; createReadOnlySessionResult?: { organizationId: string; organizationName: string; session: string; sessionExpiry: string; userId: string; username: string; }; createReadWriteSessionResult?: { apiKeyId: string; credentialBundle: string; organizationId: string; organizationName: string; userId: string; username: string; }; createReadWriteSessionResultV2?: { apiKeyId: string; credentialBundle: string; organizationId: string; organizationName: string; userId: string; username: string; }; createSmartContractInterfaceResult?: { smartContractInterfaceId: string; }; createSubOrganizationResult?: { rootUserIds?: string[]; subOrganizationId: string; }; createSubOrganizationResultV3?: { privateKeys: object[]; rootUserIds?: string[]; subOrganizationId: string; }; createSubOrganizationResultV4?: { rootUserIds?: string[]; subOrganizationId: string; wallet?: { addresses: string[]; walletId: string; }; }; createSubOrganizationResultV5?: { rootUserIds?: string[]; subOrganizationId: string; wallet?: { addresses: string[]; walletId: string; }; }; createSubOrganizationResultV6?: { rootUserIds?: string[]; subOrganizationId: string; wallet?: { addresses: string[]; walletId: string; }; }; createSubOrganizationResultV7?: { rootUserIds?: string[]; subOrganizationId: string; wallet?: { addresses: string[]; walletId: string; }; }; createUsersResult?: { userIds: string[]; }; createUserTagResult?: { userIds: string[]; userTagId: string; }; createWalletAccountsResult?: { addresses: string[]; }; createWalletResult?: { addresses: string[]; walletId: string; }; deleteApiKeysResult?: { apiKeyIds: string[]; }; deleteAuthenticatorsResult?: { authenticatorIds: string[]; }; deleteInvitationResult?: { invitationId: string; }; deleteOauth2CredentialResult?: { oauth2CredentialId: string; }; deleteOauthProvidersResult?: { providerIds: string[]; }; deleteOrganizationResult?: { organizationId: string; }; deletePaymentMethodResult?: { paymentMethodId: string; }; deletePolicyResult?: { policyId: string; }; deletePrivateKeysResult?: { privateKeyIds: string[]; }; deletePrivateKeyTagsResult?: { privateKeyIds: string[]; privateKeyTagIds: string[]; }; deleteSmartContractInterfaceResult?: { smartContractInterfaceId: string; }; deleteSubOrganizationResult?: { subOrganizationUuid: string; }; deleteUsersResult?: { userIds: string[]; }; deleteUserTagsResult?: { userIds: string[]; userTagIds: string[]; }; deleteWalletsResult?: { walletIds: string[]; }; disableAuthProxyResult?: { [key: string]: unknown; }; disablePrivateKeyResult?: { privateKeyId: string; }; emailAuthResult?: { apiKeyId: string; userId: string; }; enableAuthProxyResult?: { userId: string; }; exportPrivateKeyResult?: { exportBundle: string; privateKeyId: string; }; exportWalletAccountResult?: { address: string; exportBundle: string; }; exportWalletResult?: { exportBundle: string; walletId: string; }; importPrivateKeyResult?: { addresses: object[]; privateKeyId: string; }; importWalletResult?: { addresses: string[]; walletId: string; }; initFiatOnRampResult?: { onRampTransactionId: string; onRampUrl: string; }; initImportPrivateKeyResult?: { importBundle: string; }; initImportWalletResult?: { importBundle: string; }; initOtpAuthResult?: { otpId: string; }; initOtpAuthResultV2?: { otpId: string; }; initOtpResult?: { otpId: string; }; initUserEmailRecoveryResult?: { userId: string; }; oauth2AuthenticateResult?: { oidcToken: string; }; oauthLoginResult?: { session: string; }; oauthResult?: { apiKeyId: string; credentialBundle: string; userId: string; }; otpAuthResult?: { apiKeyId?: string; credentialBundle?: string; userId: string; }; otpLoginResult?: { session: string; }; recoverUserResult?: { authenticatorId: string[]; }; removeOrganizationFeatureResult?: { features: object[]; }; setOrganizationFeatureResult?: { features: object[]; }; setPaymentMethodResult?: { cardHolderEmail: string; cardHolderName: string; lastFour: string; }; signRawPayloadResult?: { r: string; s: string; v: string; }; signRawPayloadsResult?: { signatures?: object[]; }; signTransactionResult?: { signedTransaction: string; }; stampLoginResult?: { session: string; }; updateAllowedOriginsResult?: { [key: string]: unknown; }; updateAuthProxyConfigResult?: { configId?: string; }; updateOauth2CredentialResult?: { oauth2CredentialId: string; }; updatePolicyResult?: { policyId: string; }; updatePolicyResultV2?: { policyId: string; }; updatePrivateKeyTagResult?: { privateKeyTagId: string; }; updateRootQuorumResult?: { [key: string]: unknown; }; updateUserEmailResult?: { userId: string; }; updateUserNameResult?: { userId: string; }; updateUserPhoneNumberResult?: { userId: string; }; updateUserResult?: { userId: string; }; updateUserTagResult?: { userTagId: string; }; updateWalletResult?: { walletId: string; }; verifyOtpResult?: { verificationToken: string; }; }; status: | "ACTIVITY_STATUS_CREATED" | "ACTIVITY_STATUS_PENDING" | "ACTIVITY_STATUS_COMPLETED" | "ACTIVITY_STATUS_FAILED" | "ACTIVITY_STATUS_CONSENSUS_NEEDED" | "ACTIVITY_STATUS_REJECTED"; type: | "ACTIVITY_TYPE_CREATE_API_KEYS" | "ACTIVITY_TYPE_CREATE_USERS" | "ACTIVITY_TYPE_CREATE_PRIVATE_KEYS" | "ACTIVITY_TYPE_SIGN_RAW_PAYLOAD" | "ACTIVITY_TYPE_CREATE_INVITATIONS" | "ACTIVITY_TYPE_ACCEPT_INVITATION" | "ACTIVITY_TYPE_CREATE_POLICY" | "ACTIVITY_TYPE_DISABLE_PRIVATE_KEY" | "ACTIVITY_TYPE_DELETE_USERS" | "ACTIVITY_TYPE_DELETE_API_KEYS" | "ACTIVITY_TYPE_DELETE_INVITATION" | "ACTIVITY_TYPE_DELETE_ORGANIZATION" | "ACTIVITY_TYPE_DELETE_POLICY" | "ACTIVITY_TYPE_CREATE_USER_TAG" | "ACTIVITY_TYPE_DELETE_USER_TAGS" | "ACTIVITY_TYPE_CREATE_ORGANIZATION" | "ACTIVITY_TYPE_SIGN_TRANSACTION" | "ACTIVITY_TYPE_APPROVE_ACTIVITY" | "ACTIVITY_TYPE_REJECT_ACTIVITY" | "ACTIVITY_TYPE_DELETE_AUTHENTICATORS" | "ACTIVITY_TYPE_CREATE_AUTHENTICATORS" | "ACTIVITY_TYPE_CREATE_PRIVATE_KEY_TAG" | "ACTIVITY_TYPE_DELETE_PRIVATE_KEY_TAGS" | "ACTIVITY_TYPE_SET_PAYMENT_METHOD" | "ACTIVITY_TYPE_ACTIVATE_BILLING_TIER" | "ACTIVITY_TYPE_DELETE_PAYMENT_METHOD" | "ACTIVITY_TYPE_CREATE_POLICY_V2" | "ACTIVITY_TYPE_CREATE_POLICY_V3" | "ACTIVITY_TYPE_CREATE_API_ONLY_USERS" | "ACTIVITY_TYPE_UPDATE_ROOT_QUORUM" | "ACTIVITY_TYPE_UPDATE_USER_TAG" | "ACTIVITY_TYPE_UPDATE_PRIVATE_KEY_TAG" | "ACTIVITY_TYPE_CREATE_AUTHENTICATORS_V2" | "ACTIVITY_TYPE_CREATE_ORGANIZATION_V2" | "ACTIVITY_TYPE_CREATE_USERS_V2" | "ACTIVITY_TYPE_ACCEPT_INVITATION_V2" | "ACTIVITY_TYPE_CREATE_SUB_ORGANIZATION" | "ACTIVITY_TYPE_CREATE_SUB_ORGANIZATION_V2" | "ACTIVITY_TYPE_UPDATE_ALLOWED_ORIGINS" | "ACTIVITY_TYPE_CREATE_PRIVATE_KEYS_V2" | "ACTIVITY_TYPE_UPDATE_USER" | "ACTIVITY_TYPE_UPDATE_POLICY" | "ACTIVITY_TYPE_SET_PAYMENT_METHOD_V2" | "ACTIVITY_TYPE_CREATE_SUB_ORGANIZATION_V3" | "ACTIVITY_TYPE_CREATE_WALLET" | "ACTIVITY_TYPE_CREATE_WALLET_ACCOUNTS" | "ACTIVITY_TYPE_INIT_USER_EMAIL_RECOVERY" | "ACTIVITY_TYPE_RECOVER_USER" | "ACTIVITY_TYPE_SET_ORGANIZATION_FEATURE" | "ACTIVITY_TYPE_REMOVE_ORGANIZATION_FEATURE" | "ACTIVITY_TYPE_SIGN_RAW_PAYLOAD_V2" | "ACTIVITY_TYPE_SIGN_TRANSACTION_V2" | "ACTIVITY_TYPE_EXPORT_PRIVATE_KEY" | "ACTIVITY_TYPE_EXPORT_WALLET" | "ACTIVITY_TYPE_CREATE_SUB_ORGANIZATION_V4" | "ACTIVITY_TYPE_EMAIL_AUTH" | "ACTIVITY_TYPE_EXPORT_WALLET_ACCOUNT" | "ACTIVITY_TYPE_INIT_IMPORT_WALLET" | "ACTIVITY_TYPE_IMPORT_WALLET" | "ACTIVITY_TYPE_INIT_IMPORT_PRIVATE_KEY" | "ACTIVITY_TYPE_IMPORT_PRIVATE_KEY" | "ACTIVITY_TYPE_CREATE_POLICIES" | "ACTIVITY_TYPE_SIGN_RAW_PAYLOADS" | "ACTIVITY_TYPE_CREATE_READ_ONLY_SESSION" | "ACTIVITY_TYPE_CREATE_OAUTH_PROVIDERS" | "ACTIVITY_TYPE_DELETE_OAUTH_PROVIDERS" | "ACTIVITY_TYPE_CREATE_SUB_ORGANIZATION_V5" | "ACTIVITY_TYPE_OAUTH" | "ACTIVITY_TYPE_CREATE_API_KEYS_V2" | "ACTIVITY_TYPE_CREATE_READ_WRITE_SESSION" | "ACTIVITY_TYPE_EMAIL_AUTH_V2" | "ACTIVITY_TYPE_CREATE_SUB_ORGANIZATION_V6" | "ACTIVITY_TYPE_DELETE_PRIVATE_KEYS" | "ACTIVITY_TYPE_DELETE_WALLETS" | "ACTIVITY_TYPE_CREATE_READ_WRITE_SESSION_V2" | "ACTIVITY_TYPE_DELETE_SUB_ORGANIZATION" | "ACTIVITY_TYPE_INIT_OTP_AUTH" | "ACTIVITY_TYPE_OTP_AUTH" | "ACTIVITY_TYPE_CREATE_SUB_ORGANIZATION_V7" | "ACTIVITY_TYPE_UPDATE_WALLET" | "ACTIVITY_TYPE_UPDATE_POLICY_V2" | "ACTIVITY_TYPE_CREATE_USERS_V3" | "ACTIVITY_TYPE_INIT_OTP_AUTH_V2" | "ACTIVITY_TYPE_INIT_OTP" | "ACTIVITY_TYPE_VERIFY_OTP" | "ACTIVITY_TYPE_OTP_LOGIN" | "ACTIVITY_TYPE_STAMP_LOGIN" | "ACTIVITY_TYPE_OAUTH_LOGIN" | "ACTIVITY_TYPE_UPDATE_USER_NAME" | "ACTIVITY_TYPE_UPDATE_USER_EMAIL" | "ACTIVITY_TYPE_UPDATE_USER_PHONE_NUMBER" | "ACTIVITY_TYPE_INIT_FIAT_ON_RAMP" | "ACTIVITY_TYPE_CREATE_SMART_CONTRACT_INTERFACE" | "ACTIVITY_TYPE_DELETE_SMART_CONTRACT_INTERFACE" | "ACTIVITY_TYPE_ENABLE_AUTH_PROXY" | "ACTIVITY_TYPE_DISABLE_AUTH_PROXY" | "ACTIVITY_TYPE_UPDATE_AUTH_PROXY_CONFIG" | "ACTIVITY_TYPE_CREATE_OAUTH2_CREDENTIAL" | "ACTIVITY_TYPE_UPDATE_OAUTH2_CREDENTIAL" | "ACTIVITY_TYPE_DELETE_OAUTH2_CREDENTIAL" | "ACTIVITY_TYPE_OAUTH2_AUTHENTICATE"; updatedAt: { nanos: string; seconds: string; }; votes: object[]; }

activity.canApprove

boolean

activity.canReject

boolean

activity.createdAt

{ nanos: string; seconds: string; }

activity.createdAt.nanos

string

activity.createdAt.seconds

string

activity.failure?

{ code?: number; details?: object & object[]; message?: string; }

Description

Failure reason of the intended action.

activity.failure.code?

number

Format: int32

activity.failure.details?

object & object[]

activity.failure.message?

string

activity.fingerprint

string

Description

An artifact verifying a User’s action.

activity.id

string

Description

Unique identifier for a given Activity object.

activity.intent

{ acceptInvitationIntent?: { authenticator: { attestation: { authenticatorAttachment?: null | "cross-platform" | "platform"; clientExtensionResults: { appid?: boolean; appidExclude?: boolean; credProps?: { rk: boolean; }; }; id: string; rawId: string; response: { attestationObject: string; authenticatorAttachment?: null | "cross-platform" | "platform"; clientDataJson: string; transports?: ( | "AUTHENTICATOR_TRANSPORT_BLE" | "AUTHENTICATOR_TRANSPORT_INTERNAL" | "AUTHENTICATOR_TRANSPORT_NFC" | "AUTHENTICATOR_TRANSPORT_USB" | "AUTHENTICATOR_TRANSPORT_HYBRID")[]; }; type: "public-key"; }; authenticatorName: string; challenge: string; userId: string; }; invitationId: string; userId: string; }; acceptInvitationIntentV2?: { authenticator: { attestation: { attestationObject: string; clientDataJson: string; credentialId: string; transports: ( | "AUTHENTICATOR_TRANSPORT_BLE" | "AUTHENTICATOR_TRANSPORT_INTERNAL" | "AUTHENTICATOR_TRANSPORT_NFC" | "AUTHENTICATOR_TRANSPORT_USB" | "AUTHENTICATOR_TRANSPORT_HYBRID")[]; }; authenticatorName: string; challenge: string; }; invitationId: string; userId: string; }; activateBillingTierIntent?: { productId: string; }; approveActivityIntent?: { fingerprint: string; }; createApiKeysIntent?: { apiKeys: object[]; userId: string; }; createApiKeysIntentV2?: { apiKeys: object[]; userId: string; }; createApiOnlyUsersIntent?: { apiOnlyUsers: object[]; }; createAuthenticatorsIntent?: { authenticators: object[]; userId: string; }; createAuthenticatorsIntentV2?: { authenticators: object[]; userId: string; }; createInvitationsIntent?: { invitations: object[]; }; createOauth2CredentialIntent?: { clientId: string; encryptedClientSecret: string; provider: "OAUTH2_PROVIDER_X" | "OAUTH2_PROVIDER_DISCORD"; }; createOauthProvidersIntent?: { oauthProviders: object[]; userId: string; }; createOrganizationIntent?: { organizationName: string; rootAuthenticator: { attestation: { authenticatorAttachment?: null | "cross-platform" | "platform"; clientExtensionResults: { appid?: boolean; appidExclude?: boolean; credProps?: { rk: boolean; }; }; id: string; rawId: string; response: { attestationObject: string; authenticatorAttachment?: null | "cross-platform" | "platform"; clientDataJson: string; transports?: ( | "AUTHENTICATOR_TRANSPORT_BLE" | "AUTHENTICATOR_TRANSPORT_INTERNAL" | "AUTHENTICATOR_TRANSPORT_NFC" | "AUTHENTICATOR_TRANSPORT_USB" | "AUTHENTICATOR_TRANSPORT_HYBRID")[]; }; type: "public-key"; }; authenticatorName: string; challenge: string; userId: string; }; rootEmail: string; rootUserId?: string; }; createOrganizationIntentV2?: { organizationName: string; rootAuthenticator: { attestation: { attestationObject: string; clientDataJson: string; credentialId: string; transports: ( | "AUTHENTICATOR_TRANSPORT_BLE" | "AUTHENTICATOR_TRANSPORT_INTERNAL" | "AUTHENTICATOR_TRANSPORT_NFC" | "AUTHENTICATOR_TRANSPORT_USB" | "AUTHENTICATOR_TRANSPORT_HYBRID")[]; }; authenticatorName: string; challenge: string; }; rootEmail: string; rootUserId?: string; }; createPoliciesIntent?: { policies: object[]; }; createPolicyIntent?: { effect: "EFFECT_ALLOW" | "EFFECT_DENY"; notes?: string; policyName: string; selectors: object[]; }; createPolicyIntentV2?: { effect: "EFFECT_ALLOW" | "EFFECT_DENY"; notes?: string; policyName: string; selectors: object[]; }; createPolicyIntentV3?: { condition?: string; consensus?: string; effect: "EFFECT_ALLOW" | "EFFECT_DENY"; notes?: string; policyName: string; }; createPrivateKeysIntent?: { privateKeys: object[]; }; createPrivateKeysIntentV2?: { privateKeys: object[]; }; createPrivateKeyTagIntent?: { privateKeyIds: string[]; privateKeyTagName: string; }; createReadOnlySessionIntent?: { [key: string]: unknown; }; createReadWriteSessionIntent?: { apiKeyName?: string; email: string; expirationSeconds?: string; targetPublicKey: string; }; createReadWriteSessionIntentV2?: { apiKeyName?: string; expirationSeconds?: string; invalidateExisting?: boolean; targetPublicKey: string; userId?: string; }; createSmartContractInterfaceIntent?: { label: string; notes?: string; smartContractAddress: string; smartContractInterface: string; type: | "SMART_CONTRACT_INTERFACE_TYPE_ETHEREUM" | "SMART_CONTRACT_INTERFACE_TYPE_SOLANA"; }; createSubOrganizationIntent?: { name: string; rootAuthenticator: { attestation: { attestationObject: string; clientDataJson: string; credentialId: string; transports: ( | "AUTHENTICATOR_TRANSPORT_BLE" | "AUTHENTICATOR_TRANSPORT_INTERNAL" | "AUTHENTICATOR_TRANSPORT_NFC" | "AUTHENTICATOR_TRANSPORT_USB" | "AUTHENTICATOR_TRANSPORT_HYBRID")[]; }; authenticatorName: string; challenge: string; }; }; createSubOrganizationIntentV2?: { rootQuorumThreshold: number; rootUsers: object[]; subOrganizationName: string; }; createSubOrganizationIntentV3?: { privateKeys: object[]; rootQuorumThreshold: number; rootUsers: object[]; subOrganizationName: string; }; createSubOrganizationIntentV4?: { disableEmailAuth?: boolean; disableEmailRecovery?: boolean; rootQuorumThreshold: number; rootUsers: object[]; subOrganizationName: string; wallet?: { accounts: object[]; mnemonicLength?: number; walletName: string; }; }; createSubOrganizationIntentV5?: { disableEmailAuth?: boolean; disableEmailRecovery?: boolean; rootQuorumThreshold: number; rootUsers: object[]; subOrganizationName: string; wallet?: { accounts: object[]; mnemonicLength?: number; walletName: string; }; }; createSubOrganizationIntentV6?: { disableEmailAuth?: boolean; disableEmailRecovery?: boolean; rootQuorumThreshold: number; rootUsers: object[]; subOrganizationName: string; wallet?: { accounts: object[]; mnemonicLength?: number; walletName: string; }; }; createSubOrganizationIntentV7?: { disableEmailAuth?: boolean; disableEmailRecovery?: boolean; disableOtpEmailAuth?: boolean; disableSmsAuth?: boolean; rootQuorumThreshold: number; rootUsers: object[]; subOrganizationName: string; verificationToken?: string; wallet?: { accounts: object[]; mnemonicLength?: number; walletName: string; }; }; createUsersIntent?: { users: object[]; }; createUsersIntentV2?: { users: object[]; }; createUsersIntentV3?: { users: object[]; }; createUserTagIntent?: { userIds: string[]; userTagName: string; }; createWalletAccountsIntent?: { accounts: object[]; walletId: string; }; createWalletIntent?: { accounts: object[]; mnemonicLength?: number; walletName: string; }; deleteApiKeysIntent?: { apiKeyIds: string[]; userId: string; }; deleteAuthenticatorsIntent?: { authenticatorIds: string[]; userId: string; }; deleteInvitationIntent?: { invitationId: string; }; deleteOauth2CredentialIntent?: { oauth2CredentialId: string; }; deleteOauthProvidersIntent?: { providerIds: string[]; userId: string; }; deleteOrganizationIntent?: { organizationId: string; }; deletePaymentMethodIntent?: { paymentMethodId: string; }; deletePolicyIntent?: { policyId: string; }; deletePrivateKeysIntent?: { deleteWithoutExport?: boolean; privateKeyIds: string[]; }; deletePrivateKeyTagsIntent?: { privateKeyTagIds: string[]; }; deleteSmartContractInterfaceIntent?: { smartContractInterfaceId: string; }; deleteSubOrganizationIntent?: { deleteWithoutExport?: boolean; }; deleteUsersIntent?: { userIds: string[]; }; deleteUserTagsIntent?: { userTagIds: string[]; }; deleteWalletsIntent?: { deleteWithoutExport?: boolean; walletIds: string[]; }; disableAuthProxyIntent?: { [key: string]: unknown; }; disablePrivateKeyIntent?: { privateKeyId: string; }; emailAuthIntent?: { apiKeyName?: string; email: string; emailCustomization?: { appName?: string; logoUrl?: string; magicLinkTemplate?: string; templateId?: string; templateVariables?: string; }; expirationSeconds?: string; invalidateExisting?: boolean; replyToEmailAddress?: string; sendFromEmailAddress?: string; sendFromEmailSenderName?: string; targetPublicKey: string; }; emailAuthIntentV2?: { apiKeyName?: string; email: string; emailCustomization?: { appName?: string; logoUrl?: string; magicLinkTemplate?: string; templateId?: string; templateVariables?: string; }; expirationSeconds?: string; invalidateExisting?: boolean; replyToEmailAddress?: string; sendFromEmailAddress?: string; sendFromEmailSenderName?: string; targetPublicKey: string; }; enableAuthProxyIntent?: { [key: string]: unknown; }; exportPrivateKeyIntent?: { privateKeyId: string; targetPublicKey: string; }; exportWalletAccountIntent?: { address: string; targetPublicKey: string; }; exportWalletIntent?: { language?: | "MNEMONIC_LANGUAGE_ENGLISH" | "MNEMONIC_LANGUAGE_SIMPLIFIED_CHINESE" | "MNEMONIC_LANGUAGE_TRADITIONAL_CHINESE" | "MNEMONIC_LANGUAGE_CZECH" | "MNEMONIC_LANGUAGE_FRENCH" | "MNEMONIC_LANGUAGE_ITALIAN" | "MNEMONIC_LANGUAGE_JAPANESE" | "MNEMONIC_LANGUAGE_KOREAN" | "MNEMONIC_LANGUAGE_SPANISH"; targetPublicKey: string; walletId: string; }; importPrivateKeyIntent?: { addressFormats: ( | "ADDRESS_FORMAT_UNCOMPRESSED" | "ADDRESS_FORMAT_COMPRESSED" | "ADDRESS_FORMAT_ETHEREUM" | "ADDRESS_FORMAT_SOLANA" | "ADDRESS_FORMAT_COSMOS" | "ADDRESS_FORMAT_TRON" | "ADDRESS_FORMAT_SUI" | "ADDRESS_FORMAT_APTOS" | "ADDRESS_FORMAT_BITCOIN_MAINNET_P2PKH" | "ADDRESS_FORMAT_BITCOIN_MAINNET_P2SH" | "ADDRESS_FORMAT_BITCOIN_MAINNET_P2WPKH" | "ADDRESS_FORMAT_BITCOIN_MAINNET_P2WSH" | "ADDRESS_FORMAT_BITCOIN_MAINNET_P2TR" | "ADDRESS_FORMAT_BITCOIN_TESTNET_P2PKH" | "ADDRESS_FORMAT_BITCOIN_TESTNET_P2SH" | "ADDRESS_FORMAT_BITCOIN_TESTNET_P2WPKH" | "ADDRESS_FORMAT_BITCOIN_TESTNET_P2WSH" | "ADDRESS_FORMAT_BITCOIN_TESTNET_P2TR" | "ADDRESS_FORMAT_BITCOIN_SIGNET_P2PKH" | "ADDRESS_FORMAT_BITCOIN_SIGNET_P2SH" | "ADDRESS_FORMAT_BITCOIN_SIGNET_P2WPKH" | "ADDRESS_FORMAT_BITCOIN_SIGNET_P2WSH" | "ADDRESS_FORMAT_BITCOIN_SIGNET_P2TR" | "ADDRESS_FORMAT_BITCOIN_REGTEST_P2PKH" | "ADDRESS_FORMAT_BITCOIN_REGTEST_P2SH" | "ADDRESS_FORMAT_BITCOIN_REGTEST_P2WPKH" | "ADDRESS_FORMAT_BITCOIN_REGTEST_P2WSH" | "ADDRESS_FORMAT_BITCOIN_REGTEST_P2TR" | "ADDRESS_FORMAT_SEI" | "ADDRESS_FORMAT_XLM" | "ADDRESS_FORMAT_DOGE_MAINNET" | "ADDRESS_FORMAT_DOGE_TESTNET" | "ADDRESS_FORMAT_TON_V3R2" | "ADDRESS_FORMAT_TON_V4R2" | "ADDRESS_FORMAT_TON_V5R1" | "ADDRESS_FORMAT_XRP")[]; curve: "CURVE_SECP256K1" | "CURVE_ED25519"; encryptedBundle: string; privateKeyName: string; userId: string; }; importWalletIntent?: { accounts: object[]; encryptedBundle: string; userId: string; walletName: string; }; initFiatOnRampIntent?: { countryCode?: string; countrySubdivisionCode?: string; cryptoCurrencyCode: | "FIAT_ON_RAMP_CRYPTO_CURRENCY_BTC" | "FIAT_ON_RAMP_CRYPTO_CURRENCY_ETH" | "FIAT_ON_RAMP_CRYPTO_CURRENCY_SOL" | "FIAT_ON_RAMP_CRYPTO_CURRENCY_USDC"; fiatCurrencyAmount?: string; fiatCurrencyCode?: | "FIAT_ON_RAMP_CURRENCY_AUD" | "FIAT_ON_RAMP_CURRENCY_BGN" | "FIAT_ON_RAMP_CURRENCY_BRL" | "FIAT_ON_RAMP_CURRENCY_CAD" | "FIAT_ON_RAMP_CURRENCY_CHF" | "FIAT_ON_RAMP_CURRENCY_COP" | "FIAT_ON_RAMP_CURRENCY_CZK" | "FIAT_ON_RAMP_CURRENCY_DKK" | "FIAT_ON_RAMP_CURRENCY_DOP" | "FIAT_ON_RAMP_CURRENCY_EGP" | "FIAT_ON_RAMP_CURRENCY_EUR" | "FIAT_ON_RAMP_CURRENCY_GBP" | "FIAT_ON_RAMP_CURRENCY_HKD" | "FIAT_ON_RAMP_CURRENCY_IDR" | "FIAT_ON_RAMP_CURRENCY_ILS" | "FIAT_ON_RAMP_CURRENCY_JOD" | "FIAT_ON_RAMP_CURRENCY_KES" | "FIAT_ON_RAMP_CURRENCY_KWD" | "FIAT_ON_RAMP_CURRENCY_LKR" | "FIAT_ON_RAMP_CURRENCY_MXN" | "FIAT_ON_RAMP_CURRENCY_NGN" | "FIAT_ON_RAMP_CURRENCY_NOK" | "FIAT_ON_RAMP_CURRENCY_NZD" | "FIAT_ON_RAMP_CURRENCY_OMR" | "FIAT_ON_RAMP_CURRENCY_PEN" | "FIAT_ON_RAMP_CURRENCY_PLN" | "FIAT_ON_RAMP_CURRENCY_RON" | "FIAT_ON_RAMP_CURRENCY_SEK" | "FIAT_ON_RAMP_CURRENCY_THB" | "FIAT_ON_RAMP_CURRENCY_TRY" | "FIAT_ON_RAMP_CURRENCY_TWD" | "FIAT_ON_RAMP_CURRENCY_USD" | "FIAT_ON_RAMP_CURRENCY_VND" | "FIAT_ON_RAMP_CURRENCY_ZAR"; network: | "FIAT_ON_RAMP_BLOCKCHAIN_NETWORK_BITCOIN" | "FIAT_ON_RAMP_BLOCKCHAIN_NETWORK_ETHEREUM" | "FIAT_ON_RAMP_BLOCKCHAIN_NETWORK_SOLANA" | "FIAT_ON_RAMP_BLOCKCHAIN_NETWORK_BASE"; onrampProvider: "FIAT_ON_RAMP_PROVIDER_COINBASE" | "FIAT_ON_RAMP_PROVIDER_MOONPAY"; paymentMethod?: | "FIAT_ON_RAMP_PAYMENT_METHOD_CREDIT_DEBIT_CARD" | "FIAT_ON_RAMP_PAYMENT_METHOD_APPLE_PAY" | "FIAT_ON_RAMP_PAYMENT_METHOD_GBP_BANK_TRANSFER" | "FIAT_ON_RAMP_PAYMENT_METHOD_GBP_OPEN_BANKING_PAYMENT" | "FIAT_ON_RAMP_PAYMENT_METHOD_GOOGLE_PAY" | "FIAT_ON_RAMP_PAYMENT_METHOD_SEPA_BANK_TRANSFER" | "FIAT_ON_RAMP_PAYMENT_METHOD_PIX_INSTANT_PAYMENT" | "FIAT_ON_RAMP_PAYMENT_METHOD_PAYPAL" | "FIAT_ON_RAMP_PAYMENT_METHOD_VENMO" | "FIAT_ON_RAMP_PAYMENT_METHOD_MOONPAY_BALANCE" | "FIAT_ON_RAMP_PAYMENT_METHOD_CRYPTO_ACCOUNT" | "FIAT_ON_RAMP_PAYMENT_METHOD_FIAT_WALLET" | "FIAT_ON_RAMP_PAYMENT_METHOD_ACH_BANK_ACCOUNT"; sandboxMode?: boolean; walletAddress: string; }; initImportPrivateKeyIntent?: { userId: string; }; initImportWalletIntent?: { userId: string; }; initOtpAuthIntent?: { contact: string; emailCustomization?: { appName?: string; logoUrl?: string; magicLinkTemplate?: string; templateId?: string; templateVariables?: string; }; otpType: string; replyToEmailAddress?: string; sendFromEmailAddress?: string; sendFromEmailSenderName?: string; smsCustomization?: { template?: string; }; userIdentifier?: string; }; initOtpAuthIntentV2?: { alphanumeric?: boolean; contact: string; emailCustomization?: { appName?: string; logoUrl?: string; magicLinkTemplate?: string; templateId?: string; templateVariables?: string; }; otpLength?: number; otpType: string; replyToEmailAddress?: string; sendFromEmailAddress?: string; sendFromEmailSenderName?: string; smsCustomization?: { template?: string; }; userIdentifier?: string; }; initOtpIntent?: { alphanumeric?: boolean; contact: string; emailCustomization?: { appName?: string; logoUrl?: string; magicLinkTemplate?: string; templateId?: string; templateVariables?: string; }; expirationSeconds?: string; otpLength?: number; otpType: string; replyToEmailAddress?: string; sendFromEmailAddress?: string; sendFromEmailSenderName?: string; smsCustomization?: { template?: string; }; userIdentifier?: string; }; initUserEmailRecoveryIntent?: { email: string; emailCustomization?: { appName?: string; logoUrl?: string; magicLinkTemplate?: string; templateId?: string; templateVariables?: string; }; expirationSeconds?: string; targetPublicKey: string; }; oauth2AuthenticateIntent?: { authCode: string; codeVerifier: string; nonce?: string; oauth2CredentialId: string; redirectUri: string; }; oauthIntent?: { apiKeyName?: string; expirationSeconds?: string; invalidateExisting?: boolean; oidcToken: string; targetPublicKey: string; }; oauthLoginIntent?: { expirationSeconds?: string; invalidateExisting?: boolean; oidcToken: string; publicKey: string; }; otpAuthIntent?: { apiKeyName?: string; expirationSeconds?: string; invalidateExisting?: boolean; otpCode: string; otpId: string; targetPublicKey: string; }; otpLoginIntent?: { expirationSeconds?: string; invalidateExisting?: boolean; publicKey: string; verificationToken: string; }; recoverUserIntent?: { authenticator: { attestation: { attestationObject: string; clientDataJson: string; credentialId: string; transports: ( | "AUTHENTICATOR_TRANSPORT_BLE" | "AUTHENTICATOR_TRANSPORT_INTERNAL" | "AUTHENTICATOR_TRANSPORT_NFC" | "AUTHENTICATOR_TRANSPORT_USB" | "AUTHENTICATOR_TRANSPORT_HYBRID")[]; }; authenticatorName: string; challenge: string; }; userId: string; }; rejectActivityIntent?: { fingerprint: string; }; removeOrganizationFeatureIntent?: { name: | "FEATURE_NAME_ROOT_USER_EMAIL_RECOVERY" | "FEATURE_NAME_WEBAUTHN_ORIGINS" | "FEATURE_NAME_EMAIL_AUTH" | "FEATURE_NAME_EMAIL_RECOVERY" | "FEATURE_NAME_WEBHOOK" | "FEATURE_NAME_SMS_AUTH" | "FEATURE_NAME_OTP_EMAIL_AUTH" | "FEATURE_NAME_AUTH_PROXY"; }; setOrganizationFeatureIntent?: { name: | "FEATURE_NAME_ROOT_USER_EMAIL_RECOVERY" | "FEATURE_NAME_WEBAUTHN_ORIGINS" | "FEATURE_NAME_EMAIL_AUTH" | "FEATURE_NAME_EMAIL_RECOVERY" | "FEATURE_NAME_WEBHOOK" | "FEATURE_NAME_SMS_AUTH" | "FEATURE_NAME_OTP_EMAIL_AUTH" | "FEATURE_NAME_AUTH_PROXY"; value: string; }; setPaymentMethodIntent?: { cardHolderEmail: string; cardHolderName: string; cvv: string; expiryMonth: string; expiryYear: string; number: string; }; setPaymentMethodIntentV2?: { cardHolderEmail: string; cardHolderName: string; paymentMethodId: string; }; signRawPayloadIntent?: { encoding: | "PAYLOAD_ENCODING_HEXADECIMAL" | "PAYLOAD_ENCODING_TEXT_UTF8" | "PAYLOAD_ENCODING_EIP712" | "PAYLOAD_ENCODING_EIP7702_AUTHORIZATION"; hashFunction: | "HASH_FUNCTION_NO_OP" | "HASH_FUNCTION_SHA256" | "HASH_FUNCTION_KECCAK256" | "HASH_FUNCTION_NOT_APPLICABLE"; payload: string; privateKeyId: string; }; signRawPayloadIntentV2?: { encoding: | "PAYLOAD_ENCODING_HEXADECIMAL" | "PAYLOAD_ENCODING_TEXT_UTF8" | "PAYLOAD_ENCODING_EIP712" | "PAYLOAD_ENCODING_EIP7702_AUTHORIZATION"; hashFunction: | "HASH_FUNCTION_NO_OP" | "HASH_FUNCTION_SHA256" | "HASH_FUNCTION_KECCAK256" | "HASH_FUNCTION_NOT_APPLICABLE"; payload: string; signWith: string; }; signRawPayloadsIntent?: { encoding: | "PAYLOAD_ENCODING_HEXADECIMAL" | "PAYLOAD_ENCODING_TEXT_UTF8" | "PAYLOAD_ENCODING_EIP712" | "PAYLOAD_ENCODING_EIP7702_AUTHORIZATION"; hashFunction: | "HASH_FUNCTION_NO_OP" | "HASH_FUNCTION_SHA256" | "HASH_FUNCTION_KECCAK256" | "HASH_FUNCTION_NOT_APPLICABLE"; payloads: string[]; signWith: string; }; signTransactionIntent?: { privateKeyId: string; type: | "TRANSACTION_TYPE_ETHEREUM" | "TRANSACTION_TYPE_SOLANA" | "TRANSACTION_TYPE_TRON"; unsignedTransaction: string; }; signTransactionIntentV2?: { signWith: string; type: | "TRANSACTION_TYPE_ETHEREUM" | "TRANSACTION_TYPE_SOLANA" | "TRANSACTION_TYPE_TRON"; unsignedTransaction: string; }; stampLoginIntent?: { expirationSeconds?: string; invalidateExisting?: boolean; publicKey: string; }; updateAllowedOriginsIntent?: { allowedOrigins: string[]; }; updateAuthProxyConfigIntent?: { allowedAuthMethods?: string[]; allowedOrigins?: string[]; emailAuthTemplateId?: string; emailCustomizationParams?: { appName?: string; logoUrl?: string; magicLinkTemplate?: string; templateId?: string; templateVariables?: string; }; oauth2ProviderCredentialIds?: { [key: string]: string; }; otpAlphanumeric?: boolean; otpExpirationSeconds?: number; otpLength?: number; otpTemplateId?: string; replyToEmailAddress?: string; sendFromEmailAddress?: string; sessionExpirationSeconds?: number; smsCustomizationParams?: { template?: string; }; verificationTokenExpirationSeconds?: number; walletKitSettings?: { enabledSocialProviders?: string[]; }; }; updateOauth2CredentialIntent?: { clientId: string; encryptedClientSecret: string; oauth2CredentialId: string; provider: "OAUTH2_PROVIDER_X" | "OAUTH2_PROVIDER_DISCORD"; }; updatePolicyIntent?: { policyCondition?: string; policyConsensus?: string; policyEffect?: "EFFECT_ALLOW" | "EFFECT_DENY"; policyId: string; policyName?: string; policyNotes?: string; }; updatePolicyIntentV2?: { policyCondition?: string; policyConsensus?: string; policyEffect?: "EFFECT_ALLOW" | "EFFECT_DENY"; policyId: string; policyName?: string; policyNotes?: string; }; updatePrivateKeyTagIntent?: { addPrivateKeyIds: string[]; newPrivateKeyTagName?: string; privateKeyTagId: string; removePrivateKeyIds: string[]; }; updateRootQuorumIntent?: { threshold: number; userIds: string[]; }; updateUserEmailIntent?: { userEmail: string; userId: string; verificationToken?: string; }; updateUserIntent?: { userEmail?: string; userId: string; userName?: string; userPhoneNumber?: string; userTagIds?: string[]; }; updateUserNameIntent?: { userId: string; userName: string; }; updateUserPhoneNumberIntent?: { userId: string; userPhoneNumber: string; verificationToken?: string; }; updateUserTagIntent?: { addUserIds: string[]; newUserTagName?: string; removeUserIds: string[]; userTagId: string; }; updateWalletIntent?: { walletId: string; walletName?: string; }; verifyOtpIntent?: { expirationSeconds?: string; otpCode: string; otpId: string; }; }

Description

Intent object crafted by Turnkey based on the user request, used to assess the permissibility of an action.

activity.intent.acceptInvitationIntent?

{ authenticator: { attestation: { authenticatorAttachment?: null | "cross-platform" | "platform"; clientExtensionResults: { appid?: boolean; appidExclude?: boolean; credProps?: { rk: boolean; }; }; id: string; rawId: string; response: { attestationObject: string; authenticatorAttachment?: null | "cross-platform" | "platform"; clientDataJson: string; transports?: ( | "AUTHENTICATOR_TRANSPORT_BLE" | "AUTHENTICATOR_TRANSPORT_INTERNAL" | "AUTHENTICATOR_TRANSPORT_NFC" | "AUTHENTICATOR_TRANSPORT_USB" | "AUTHENTICATOR_TRANSPORT_HYBRID")[]; }; type: "public-key"; }; authenticatorName: string; challenge: string; userId: string; }; invitationId: string; userId: string; }

activity.intent.acceptInvitationIntent.authenticator

{ attestation: { authenticatorAttachment?: null | "cross-platform" | "platform"; clientExtensionResults: { appid?: boolean; appidExclude?: boolean; credProps?: { rk: boolean; }; }; id: string; rawId: string; response: { attestationObject: string; authenticatorAttachment?: null | "cross-platform" | "platform"; clientDataJson: string; transports?: ( | "AUTHENTICATOR_TRANSPORT_BLE" | "AUTHENTICATOR_TRANSPORT_INTERNAL" | "AUTHENTICATOR_TRANSPORT_NFC" | "AUTHENTICATOR_TRANSPORT_USB" | "AUTHENTICATOR_TRANSPORT_HYBRID")[]; }; type: "public-key"; }; authenticatorName: string; challenge: string; userId: string; }

Description

WebAuthN hardware devices that can be used to log in to the Turnkey web app.

activity.intent.acceptInvitationIntent.authenticator.attestation

{ authenticatorAttachment?: null | "cross-platform" | "platform"; clientExtensionResults: { appid?: boolean; appidExclude?: boolean; credProps?: { rk: boolean; }; }; id: string; rawId: string; response: { attestationObject: string; authenticatorAttachment?: null | "cross-platform" | "platform"; clientDataJson: string; transports?: ( | "AUTHENTICATOR_TRANSPORT_BLE" | "AUTHENTICATOR_TRANSPORT_INTERNAL" | "AUTHENTICATOR_TRANSPORT_NFC" | "AUTHENTICATOR_TRANSPORT_USB" | "AUTHENTICATOR_TRANSPORT_HYBRID")[]; }; type: "public-key"; }

activity.intent.acceptInvitationIntent.authenticator.attestation.authenticatorAttachment?

null | "cross-platform" | "platform"

activity.intent.acceptInvitationIntent.authenticator.attestation.clientExtensionResults

{ appid?: boolean; appidExclude?: boolean; credProps?: { rk: boolean; }; }

activity.intent.acceptInvitationIntent.authenticator.attestation.clientExtensionResults.appid?

boolean

activity.intent.acceptInvitationIntent.authenticator.attestation.clientExtensionResults.appidExclude?

boolean

activity.intent.acceptInvitationIntent.authenticator.attestation.clientExtensionResults.credProps?

{ rk: boolean; }

activity.intent.acceptInvitationIntent.authenticator.attestation.clientExtensionResults.credProps.rk

boolean

activity.intent.acceptInvitationIntent.authenticator.attestation.id

string

activity.intent.acceptInvitationIntent.authenticator.attestation.rawId

string

activity.intent.acceptInvitationIntent.authenticator.attestation.response

{ attestationObject: string; authenticatorAttachment?: null | "cross-platform" | "platform"; clientDataJson: string; transports?: ( | "AUTHENTICATOR_TRANSPORT_BLE" | "AUTHENTICATOR_TRANSPORT_INTERNAL" | "AUTHENTICATOR_TRANSPORT_NFC" | "AUTHENTICATOR_TRANSPORT_USB" | "AUTHENTICATOR_TRANSPORT_HYBRID")[]; }

activity.intent.acceptInvitationIntent.authenticator.attestation.response.attestationObject

string

activity.intent.acceptInvitationIntent.authenticator.attestation.response.authenticatorAttachment?

null | "cross-platform" | "platform"

activity.intent.acceptInvitationIntent.authenticator.attestation.response.clientDataJson

string

activity.intent.acceptInvitationIntent.authenticator.attestation.response.transports?

( | "AUTHENTICATOR_TRANSPORT_BLE" | "AUTHENTICATOR_TRANSPORT_INTERNAL" | "AUTHENTICATOR_TRANSPORT_NFC" | "AUTHENTICATOR_TRANSPORT_USB" | "AUTHENTICATOR_TRANSPORT_HYBRID")[]

activity.intent.acceptInvitationIntent.authenticator.attestation.type

"public-key"

activity.intent.acceptInvitationIntent.authenticator.authenticatorName

string

Description

Human-readable name for an Authenticator.

activity.intent.acceptInvitationIntent.authenticator.challenge

string

Description

Challenge presented for authentication purposes.

activity.intent.acceptInvitationIntent.authenticator.userId

string

Description

Unique identifier for a given User.

activity.intent.acceptInvitationIntent.invitationId

string

Description

Unique identifier for a given Invitation object.

activity.intent.acceptInvitationIntent.userId

string

Description

Unique identifier for a given User.

activity.intent.acceptInvitationIntentV2?

{ authenticator: { attestation: { attestationObject: string; clientDataJson: string; credentialId: string; transports: ( | "AUTHENTICATOR_TRANSPORT_BLE" | "AUTHENTICATOR_TRANSPORT_INTERNAL" | "AUTHENTICATOR_TRANSPORT_NFC" | "AUTHENTICATOR_TRANSPORT_USB" | "AUTHENTICATOR_TRANSPORT_HYBRID")[]; }; authenticatorName: string; challenge: string; }; invitationId: string; userId: string; }

activity.intent.acceptInvitationIntentV2.authenticator

{ attestation: { attestationObject: string; clientDataJson: string; credentialId: string; transports: ( | "AUTHENTICATOR_TRANSPORT_BLE" | "AUTHENTICATOR_TRANSPORT_INTERNAL" | "AUTHENTICATOR_TRANSPORT_NFC" | "AUTHENTICATOR_TRANSPORT_USB" | "AUTHENTICATOR_TRANSPORT_HYBRID")[]; }; authenticatorName: string; challenge: string; }

Description

WebAuthN hardware devices that can be used to log in to the Turnkey web app.

activity.intent.acceptInvitationIntentV2.authenticator.attestation

{ attestationObject: string; clientDataJson: string; credentialId: string; transports: ( | "AUTHENTICATOR_TRANSPORT_BLE" | "AUTHENTICATOR_TRANSPORT_INTERNAL" | "AUTHENTICATOR_TRANSPORT_NFC" | "AUTHENTICATOR_TRANSPORT_USB" | "AUTHENTICATOR_TRANSPORT_HYBRID")[]; }

Description

The attestation that proves custody of the authenticator and provides metadata about it.

activity.intent.acceptInvitationIntentV2.authenticator.attestation.attestationObject

string

Description

A base64 url encoded payload containing authenticator data and any attestation the webauthn provider chooses.

activity.intent.acceptInvitationIntentV2.authenticator.attestation.clientDataJson

string

Description

A base64 url encoded payload containing metadata about the signing context and the challenge.

activity.intent.acceptInvitationIntentV2.authenticator.attestation.credentialId

string

Description

The cbor encoded then base64 url encoded id of the credential.

activity.intent.acceptInvitationIntentV2.authenticator.attestation.transports

( | "AUTHENTICATOR_TRANSPORT_BLE" | "AUTHENTICATOR_TRANSPORT_INTERNAL" | "AUTHENTICATOR_TRANSPORT_NFC" | "AUTHENTICATOR_TRANSPORT_USB" | "AUTHENTICATOR_TRANSPORT_HYBRID")[]

Description

The type of authenticator transports.

activity.intent.acceptInvitationIntentV2.authenticator.authenticatorName

string

Description

Human-readable name for an Authenticator.

activity.intent.acceptInvitationIntentV2.authenticator.challenge

string

Description

Challenge presented for authentication purposes.

activity.intent.acceptInvitationIntentV2.invitationId

string

Description

Unique identifier for a given Invitation object.

activity.intent.acceptInvitationIntentV2.userId

string

Description

Unique identifier for a given User.

activity.intent.activateBillingTierIntent?

{ productId: string; }

activity.intent.activateBillingTierIntent.productId

string

Description

The product that the customer wants to subscribe to.

activity.intent.approveActivityIntent?

{ fingerprint: string; }

activity.intent.approveActivityIntent.fingerprint

string

Description

An artifact verifying a User’s action.

activity.intent.createApiKeysIntent?

{ apiKeys: object[]; userId: string; }

activity.intent.createApiKeysIntent.apiKeys

object[]

Description

A list of API Keys.

activity.intent.createApiKeysIntent.userId

string

Description

Unique identifier for a given User.

activity.intent.createApiKeysIntentV2?

{ apiKeys: object[]; userId: string; }

activity.intent.createApiKeysIntentV2.apiKeys

object[]

Description

A list of API Keys.

activity.intent.createApiKeysIntentV2.userId

string

Description

Unique identifier for a given User.

activity.intent.createApiOnlyUsersIntent?

{ apiOnlyUsers: object[]; }

activity.intent.createApiOnlyUsersIntent.apiOnlyUsers

object[]

Description

A list of API-only Users to create.

activity.intent.createAuthenticatorsIntent?

{ authenticators: object[]; userId: string; }

activity.intent.createAuthenticatorsIntent.authenticators

object[]

Description

A list of Authenticators.

activity.intent.createAuthenticatorsIntent.userId

string

Description

Unique identifier for a given User.

activity.intent.createAuthenticatorsIntentV2?

{ authenticators: object[]; userId: string; }

activity.intent.createAuthenticatorsIntentV2.authenticators

object[]

Description

A list of Authenticators.

activity.intent.createAuthenticatorsIntentV2.userId

string

Description

Unique identifier for a given User.

activity.intent.createInvitationsIntent?

{ invitations: object[]; }

activity.intent.createInvitationsIntent.invitations

object[]

Description

A list of Invitations.

activity.intent.createOauth2CredentialIntent?

{ clientId: string; encryptedClientSecret: string; provider: "OAUTH2_PROVIDER_X" | "OAUTH2_PROVIDER_DISCORD"; }

activity.intent.createOauth2CredentialIntent.clientId

string

Description

The Client ID issued by the OAuth 2.0 provider

activity.intent.createOauth2CredentialIntent.encryptedClientSecret

string

Description

The client secret issued by the OAuth 2.0 provider encrypted to the TLS Fetcher quorum key

activity.intent.createOauth2CredentialIntent.provider

"OAUTH2_PROVIDER_X" | "OAUTH2_PROVIDER_DISCORD"

Description

The OAuth 2.0 provider

activity.intent.createOauthProvidersIntent?

{ oauthProviders: object[]; userId: string; }

activity.intent.createOauthProvidersIntent.oauthProviders

object[]

Description

A list of Oauth providers.

activity.intent.createOauthProvidersIntent.userId

string

Description

The ID of the User to add an Oauth provider to

activity.intent.createOrganizationIntent?

{ organizationName: string; rootAuthenticator: { attestation: { authenticatorAttachment?: null | "cross-platform" | "platform"; clientExtensionResults: { appid?: boolean; appidExclude?: boolean; credProps?: { rk: boolean; }; }; id: string; rawId: string; response: { attestationObject: string; authenticatorAttachment?: null | "cross-platform" | "platform"; clientDataJson: string; transports?: ( | "AUTHENTICATOR_TRANSPORT_BLE" | "AUTHENTICATOR_TRANSPORT_INTERNAL" | "AUTHENTICATOR_TRANSPORT_NFC" | "AUTHENTICATOR_TRANSPORT_USB" | "AUTHENTICATOR_TRANSPORT_HYBRID")[]; }; type: "public-key"; }; authenticatorName: string; challenge: string; userId: string; }; rootEmail: string; rootUserId?: string; }

activity.intent.createOrganizationIntent.organizationName

string

Description

Human-readable name for an Organization.

activity.intent.createOrganizationIntent.rootAuthenticator

{ attestation: { authenticatorAttachment?: null | "cross-platform" | "platform"; clientExtensionResults: { appid?: boolean; appidExclude?: boolean; credProps?: { rk: boolean; }; }; id: string; rawId: string; response: { attestationObject: string; authenticatorAttachment?: null | "cross-platform" | "platform"; clientDataJson: string; transports?: ( | "AUTHENTICATOR_TRANSPORT_BLE" | "AUTHENTICATOR_TRANSPORT_INTERNAL" | "AUTHENTICATOR_TRANSPORT_NFC" | "AUTHENTICATOR_TRANSPORT_USB" | "AUTHENTICATOR_TRANSPORT_HYBRID")[]; }; type: "public-key"; }; authenticatorName: string; challenge: string; userId: string; }

Description

The root user’s Authenticator.

activity.intent.createOrganizationIntent.rootAuthenticator.attestation

{ authenticatorAttachment?: null | "cross-platform" | "platform"; clientExtensionResults: { appid?: boolean; appidExclude?: boolean; credProps?: { rk: boolean; }; }; id: string; rawId: string; response: { attestationObject: string; authenticatorAttachment?: null | "cross-platform" | "platform"; clientDataJson: string; transports?: ( | "AUTHENTICATOR_TRANSPORT_BLE" | "AUTHENTICATOR_TRANSPORT_INTERNAL" | "AUTHENTICATOR_TRANSPORT_NFC" | "AUTHENTICATOR_TRANSPORT_USB" | "AUTHENTICATOR_TRANSPORT_HYBRID")[]; }; type: "public-key"; }

activity.intent.createOrganizationIntent.rootAuthenticator.attestation.authenticatorAttachment?

null | "cross-platform" | "platform"

activity.intent.createOrganizationIntent.rootAuthenticator.attestation.clientExtensionResults

{ appid?: boolean; appidExclude?: boolean; credProps?: { rk: boolean; }; }

activity.intent.createOrganizationIntent.rootAuthenticator.attestation.clientExtensionResults.appid?

boolean

activity.intent.createOrganizationIntent.rootAuthenticator.attestation.clientExtensionResults.appidExclude?

boolean

activity.intent.createOrganizationIntent.rootAuthenticator.attestation.clientExtensionResults.credProps?

{ rk: boolean; }

activity.intent.createOrganizationIntent.rootAuthenticator.attestation.clientExtensionResults.credProps.rk

boolean

activity.intent.createOrganizationIntent.rootAuthenticator.attestation.id

string

activity.intent.createOrganizationIntent.rootAuthenticator.attestation.rawId

string

activity.intent.createOrganizationIntent.rootAuthenticator.attestation.response

{ attestationObject: string; authenticatorAttachment?: null | "cross-platform" | "platform"; clientDataJson: string; transports?: ( | "AUTHENTICATOR_TRANSPORT_BLE" | "AUTHENTICATOR_TRANSPORT_INTERNAL" | "AUTHENTICATOR_TRANSPORT_NFC" | "AUTHENTICATOR_TRANSPORT_USB" | "AUTHENTICATOR_TRANSPORT_HYBRID")[]; }

activity.intent.createOrganizationIntent.rootAuthenticator.attestation.response.attestationObject

string

activity.intent.createOrganizationIntent.rootAuthenticator.attestation.response.authenticatorAttachment?

null | "cross-platform" | "platform"

activity.intent.createOrganizationIntent.rootAuthenticator.attestation.response.clientDataJson

string

activity.intent.createOrganizationIntent.rootAuthenticator.attestation.response.transports?

( | "AUTHENTICATOR_TRANSPORT_BLE" | "AUTHENTICATOR_TRANSPORT_INTERNAL" | "AUTHENTICATOR_TRANSPORT_NFC" | "AUTHENTICATOR_TRANSPORT_USB" | "AUTHENTICATOR_TRANSPORT_HYBRID")[]

activity.intent.createOrganizationIntent.rootAuthenticator.attestation.type

"public-key"

activity.intent.createOrganizationIntent.rootAuthenticator.authenticatorName

string

Description

Human-readable name for an Authenticator.

activity.intent.createOrganizationIntent.rootAuthenticator.challenge

string

Description

Challenge presented for authentication purposes.

activity.intent.createOrganizationIntent.rootAuthenticator.userId

string

Description

Unique identifier for a given User.

activity.intent.createOrganizationIntent.rootEmail

string

Description

The root user’s email address.

activity.intent.createOrganizationIntent.rootUserId?

string

Description

Unique identifier for the root user object.

activity.intent.createOrganizationIntentV2?

{ organizationName: string; rootAuthenticator: { attestation: { attestationObject: string; clientDataJson: string; credentialId: string; transports: ( | "AUTHENTICATOR_TRANSPORT_BLE" | "AUTHENTICATOR_TRANSPORT_INTERNAL" | "AUTHENTICATOR_TRANSPORT_NFC" | "AUTHENTICATOR_TRANSPORT_USB" | "AUTHENTICATOR_TRANSPORT_HYBRID")[]; }; authenticatorName: string; challenge: string; }; rootEmail: string; rootUserId?: string; }

activity.intent.createOrganizationIntentV2.organizationName

string

Description

Human-readable name for an Organization.

activity.intent.createOrganizationIntentV2.rootAuthenticator

{ attestation: { attestationObject: string; clientDataJson: string; credentialId: string; transports: ( | "AUTHENTICATOR_TRANSPORT_BLE" | "AUTHENTICATOR_TRANSPORT_INTERNAL" | "AUTHENTICATOR_TRANSPORT_NFC" | "AUTHENTICATOR_TRANSPORT_USB" | "AUTHENTICATOR_TRANSPORT_HYBRID")[]; }; authenticatorName: string; challenge: string; }

Description

The root user’s Authenticator.

activity.intent.createOrganizationIntentV2.rootAuthenticator.attestation

{ attestationObject: string; clientDataJson: string; credentialId: string; transports: ( | "AUTHENTICATOR_TRANSPORT_BLE" | "AUTHENTICATOR_TRANSPORT_INTERNAL" | "AUTHENTICATOR_TRANSPORT_NFC" | "AUTHENTICATOR_TRANSPORT_USB" | "AUTHENTICATOR_TRANSPORT_HYBRID")[]; }

Description

The attestation that proves custody of the authenticator and provides metadata about it.

activity.intent.createOrganizationIntentV2.rootAuthenticator.attestation.attestationObject

string

Description

A base64 url encoded payload containing authenticator data and any attestation the webauthn provider chooses.

activity.intent.createOrganizationIntentV2.rootAuthenticator.attestation.clientDataJson

string

Description

A base64 url encoded payload containing metadata about the signing context and the challenge.

activity.intent.createOrganizationIntentV2.rootAuthenticator.attestation.credentialId

string

Description

The cbor encoded then base64 url encoded id of the credential.

activity.intent.createOrganizationIntentV2.rootAuthenticator.attestation.transports

( | "AUTHENTICATOR_TRANSPORT_BLE" | "AUTHENTICATOR_TRANSPORT_INTERNAL" | "AUTHENTICATOR_TRANSPORT_NFC" | "AUTHENTICATOR_TRANSPORT_USB" | "AUTHENTICATOR_TRANSPORT_HYBRID")[]

Description

The type of authenticator transports.

activity.intent.createOrganizationIntentV2.rootAuthenticator.authenticatorName

string

Description

Human-readable name for an Authenticator.

activity.intent.createOrganizationIntentV2.rootAuthenticator.challenge

string

Description

Challenge presented for authentication purposes.

activity.intent.createOrganizationIntentV2.rootEmail

string

Description

The root user’s email address.

activity.intent.createOrganizationIntentV2.rootUserId?

string

Description

Unique identifier for the root user object.

activity.intent.createPoliciesIntent?

{ policies: object[]; }

activity.intent.createPoliciesIntent.policies

object[]

Description

An array of policy intents to be created.

activity.intent.createPolicyIntent?

{ effect: "EFFECT_ALLOW" | "EFFECT_DENY"; notes?: string; policyName: string; selectors: object[]; }

activity.intent.createPolicyIntent.effect

"EFFECT_ALLOW" | "EFFECT_DENY"

Description

The instruction to DENY or ALLOW a particular activity following policy selector(s).

activity.intent.createPolicyIntent.notes?

string

activity.intent.createPolicyIntent.policyName

string

Description

Human-readable name for a Policy.

activity.intent.createPolicyIntent.selectors

object[]

Description

A list of simple functions each including a subject, target and boolean. See Policy Engine Language section for additional details.

activity.intent.createPolicyIntentV2?

{ effect: "EFFECT_ALLOW" | "EFFECT_DENY"; notes?: string; policyName: string; selectors: object[]; }

activity.intent.createPolicyIntentV2.effect

"EFFECT_ALLOW" | "EFFECT_DENY"

Description

Whether to ALLOW or DENY requests that match the condition and consensus requirements.

activity.intent.createPolicyIntentV2.notes?

string

activity.intent.createPolicyIntentV2.policyName

string

Description

Human-readable name for a Policy.

activity.intent.createPolicyIntentV2.selectors

object[]

Description

A list of simple functions each including a subject, target and boolean. See Policy Engine Language section for additional details.

activity.intent.createPolicyIntentV3?

{ condition?: string; consensus?: string; effect: "EFFECT_ALLOW" | "EFFECT_DENY"; notes?: string; policyName: string; }

activity.intent.createPolicyIntentV3.condition?

string

Description

The condition expression that triggers the Effect

activity.intent.createPolicyIntentV3.consensus?

string

Description

The consensus expression that triggers the Effect

activity.intent.createPolicyIntentV3.effect

"EFFECT_ALLOW" | "EFFECT_DENY"

Description

The instruction to DENY or ALLOW an activity.

activity.intent.createPolicyIntentV3.notes?

string

activity.intent.createPolicyIntentV3.policyName

string

Description

Human-readable name for a Policy.

activity.intent.createPrivateKeysIntent?

{ privateKeys: object[]; }

activity.intent.createPrivateKeysIntent.privateKeys

object[]

Description

A list of Private Keys.

activity.intent.createPrivateKeysIntentV2?

{ privateKeys: object[]; }

activity.intent.createPrivateKeysIntentV2.privateKeys

object[]

Description

A list of Private Keys.

activity.intent.createPrivateKeyTagIntent?

{ privateKeyIds: string[]; privateKeyTagName: string; }

activity.intent.createPrivateKeyTagIntent.privateKeyIds

string[]

Description

A list of Private Key IDs.

activity.intent.createPrivateKeyTagIntent.privateKeyTagName

string

Description

Human-readable name for a Private Key Tag.

activity.intent.createReadOnlySessionIntent?

{ [key: string]: unknown; }

activity.intent.createReadWriteSessionIntent?

{ apiKeyName?: string; email: string; expirationSeconds?: string; targetPublicKey: string; }

activity.intent.createReadWriteSessionIntent.apiKeyName?

string

Description

Optional human-readable name for an API Key. If none provided, default to Read Write Session - <Timestamp>

activity.intent.createReadWriteSessionIntent.email

string

Description

Email of the user to create a read write session for

activity.intent.createReadWriteSessionIntent.expirationSeconds?

string

Description

Expiration window (in seconds) indicating how long the API key is valid for. If not provided, a default of 15 minutes will be used.

activity.intent.createReadWriteSessionIntent.targetPublicKey

string

Description

Client-side public key generated by the user, to which the read write session bundle (credentials) will be encrypted.

activity.intent.createReadWriteSessionIntentV2?

{ apiKeyName?: string; expirationSeconds?: string; invalidateExisting?: boolean; targetPublicKey: string; userId?: string; }

activity.intent.createReadWriteSessionIntentV2.apiKeyName?

string

Description

Optional human-readable name for an API Key. If none provided, default to Read Write Session - <Timestamp>

activity.intent.createReadWriteSessionIntentV2.expirationSeconds?

string

Description

Expiration window (in seconds) indicating how long the API key is valid for. If not provided, a default of 15 minutes will be used.

activity.intent.createReadWriteSessionIntentV2.invalidateExisting?

boolean

Description

Invalidate all other previously generated ReadWriteSession API keys

activity.intent.createReadWriteSessionIntentV2.targetPublicKey

string

Description

Client-side public key generated by the user, to which the read write session bundle (credentials) will be encrypted.

activity.intent.createReadWriteSessionIntentV2.userId?

string

Description

Unique identifier for a given User.

activity.intent.createSmartContractInterfaceIntent?

{ label: string; notes?: string; smartContractAddress: string; smartContractInterface: string; type: | "SMART_CONTRACT_INTERFACE_TYPE_ETHEREUM" | "SMART_CONTRACT_INTERFACE_TYPE_SOLANA"; }

activity.intent.createSmartContractInterfaceIntent.label

string

Description

Human-readable name for a Smart Contract Interface.

activity.intent.createSmartContractInterfaceIntent.notes?

string

Description

Notes for a Smart Contract Interface.

activity.intent.createSmartContractInterfaceIntent.smartContractAddress

string

Description

Corresponding contract address or program ID

activity.intent.createSmartContractInterfaceIntent.smartContractInterface

string

Description

ABI/IDL as a JSON string

activity.intent.createSmartContractInterfaceIntent.type

| "SMART_CONTRACT_INTERFACE_TYPE_ETHEREUM" | "SMART_CONTRACT_INTERFACE_TYPE_SOLANA"

activity.intent.createSubOrganizationIntent?

{ name: string; rootAuthenticator: { attestation: { attestationObject: string; clientDataJson: string; credentialId: string; transports: ( | "AUTHENTICATOR_TRANSPORT_BLE" | "AUTHENTICATOR_TRANSPORT_INTERNAL" | "AUTHENTICATOR_TRANSPORT_NFC" | "AUTHENTICATOR_TRANSPORT_USB" | "AUTHENTICATOR_TRANSPORT_HYBRID")[]; }; authenticatorName: string; challenge: string; }; }

activity.intent.createSubOrganizationIntent.name

string

Description

Name for this sub-organization

activity.intent.createSubOrganizationIntent.rootAuthenticator

{ attestation: { attestationObject: string; clientDataJson: string; credentialId: string; transports: ( | "AUTHENTICATOR_TRANSPORT_BLE" | "AUTHENTICATOR_TRANSPORT_INTERNAL" | "AUTHENTICATOR_TRANSPORT_NFC" | "AUTHENTICATOR_TRANSPORT_USB" | "AUTHENTICATOR_TRANSPORT_HYBRID")[]; }; authenticatorName: string; challenge: string; }

Description

Root User authenticator for this new sub-organization

activity.intent.createSubOrganizationIntent.rootAuthenticator.attestation

{ attestationObject: string; clientDataJson: string; credentialId: string; transports: ( | "AUTHENTICATOR_TRANSPORT_BLE" | "AUTHENTICATOR_TRANSPORT_INTERNAL" | "AUTHENTICATOR_TRANSPORT_NFC" | "AUTHENTICATOR_TRANSPORT_USB" | "AUTHENTICATOR_TRANSPORT_HYBRID")[]; }

Description

The attestation that proves custody of the authenticator and provides metadata about it.

activity.intent.createSubOrganizationIntent.rootAuthenticator.attestation.attestationObject

string

Description

A base64 url encoded payload containing authenticator data and any attestation the webauthn provider chooses.

activity.intent.createSubOrganizationIntent.rootAuthenticator.attestation.clientDataJson

string

Description

A base64 url encoded payload containing metadata about the signing context and the challenge.

activity.intent.createSubOrganizationIntent.rootAuthenticator.attestation.credentialId

string

Description

The cbor encoded then base64 url encoded id of the credential.

activity.intent.createSubOrganizationIntent.rootAuthenticator.attestation.transports

( | "AUTHENTICATOR_TRANSPORT_BLE" | "AUTHENTICATOR_TRANSPORT_INTERNAL" | "AUTHENTICATOR_TRANSPORT_NFC" | "AUTHENTICATOR_TRANSPORT_USB" | "AUTHENTICATOR_TRANSPORT_HYBRID")[]

Description

The type of authenticator transports.

activity.intent.createSubOrganizationIntent.rootAuthenticator.authenticatorName

string

Description

Human-readable name for an Authenticator.

activity.intent.createSubOrganizationIntent.rootAuthenticator.challenge

string

Description

Challenge presented for authentication purposes.

activity.intent.createSubOrganizationIntentV2?

{ rootQuorumThreshold: number; rootUsers: object[]; subOrganizationName: string; }

activity.intent.createSubOrganizationIntentV2.rootQuorumThreshold

number

Format: int32

Description

The threshold of unique approvals to reach root quorum. This value must be less than or equal to the number of root users

activity.intent.createSubOrganizationIntentV2.rootUsers

object[]

Description

Root users to create within this sub-organization

activity.intent.createSubOrganizationIntentV2.subOrganizationName

string

Description

Name for this sub-organization

activity.intent.createSubOrganizationIntentV3?

{ privateKeys: object[]; rootQuorumThreshold: number; rootUsers: object[]; subOrganizationName: string; }

activity.intent.createSubOrganizationIntentV3.privateKeys

object[]

Description

A list of Private Keys.

activity.intent.createSubOrganizationIntentV3.rootQuorumThreshold

number

Format: int32

Description

The threshold of unique approvals to reach root quorum. This value must be less than or equal to the number of root users

activity.intent.createSubOrganizationIntentV3.rootUsers

object[]

Description

Root users to create within this sub-organization

activity.intent.createSubOrganizationIntentV3.subOrganizationName

string

Description

Name for this sub-organization

activity.intent.createSubOrganizationIntentV4?

{ disableEmailAuth?: boolean; disableEmailRecovery?: boolean; rootQuorumThreshold: number; rootUsers: object[]; subOrganizationName: string; wallet?: { accounts: object[]; mnemonicLength?: number; walletName: string; }; }

activity.intent.createSubOrganizationIntentV4.disableEmailAuth?

boolean

Description

Disable email auth for the sub-organization

activity.intent.createSubOrganizationIntentV4.disableEmailRecovery?

boolean

Description

Disable email recovery for the sub-organization

activity.intent.createSubOrganizationIntentV4.rootQuorumThreshold

number

Format: int32

Description

The threshold of unique approvals to reach root quorum. This value must be less than or equal to the number of root users

activity.intent.createSubOrganizationIntentV4.rootUsers

object[]

Description

Root users to create within this sub-organization

activity.intent.createSubOrganizationIntentV4.subOrganizationName

string

Description

Name for this sub-organization

activity.intent.createSubOrganizationIntentV4.wallet?

{ accounts: object[]; mnemonicLength?: number; walletName: string; }

Description

The wallet to create for the sub-organization

activity.intent.createSubOrganizationIntentV4.wallet.accounts

object[]

Description

A list of wallet Accounts. This field, if not needed, should be an empty array in your request body.

activity.intent.createSubOrganizationIntentV4.wallet.mnemonicLength?

number

Format: int32

Description

Length of mnemonic to generate the Wallet seed. Defaults to 12. Accepted values: 12, 15, 18, 21, 24.

activity.intent.createSubOrganizationIntentV4.wallet.walletName

string

Description

Human-readable name for a Wallet.

activity.intent.createSubOrganizationIntentV5?

{ disableEmailAuth?: boolean; disableEmailRecovery?: boolean; rootQuorumThreshold: number; rootUsers: object[]; subOrganizationName: string; wallet?: { accounts: object[]; mnemonicLength?: number; walletName: string; }; }

activity.intent.createSubOrganizationIntentV5.disableEmailAuth?

boolean

Description

Disable email auth for the sub-organization

activity.intent.createSubOrganizationIntentV5.disableEmailRecovery?

boolean

Description

Disable email recovery for the sub-organization

activity.intent.createSubOrganizationIntentV5.rootQuorumThreshold

number

Format: int32

Description

The threshold of unique approvals to reach root quorum. This value must be less than or equal to the number of root users

activity.intent.createSubOrganizationIntentV5.rootUsers

object[]

Description

Root users to create within this sub-organization

activity.intent.createSubOrganizationIntentV5.subOrganizationName

string

Description

Name for this sub-organization

activity.intent.createSubOrganizationIntentV5.wallet?

{ accounts: object[]; mnemonicLength?: number; walletName: string; }

Description

The wallet to create for the sub-organization

activity.intent.createSubOrganizationIntentV5.wallet.accounts

object[]

Description

A list of wallet Accounts. This field, if not needed, should be an empty array in your request body.

activity.intent.createSubOrganizationIntentV5.wallet.mnemonicLength?

number

Format: int32

Description

Length of mnemonic to generate the Wallet seed. Defaults to 12. Accepted values: 12, 15, 18, 21, 24.

activity.intent.createSubOrganizationIntentV5.wallet.walletName

string

Description

Human-readable name for a Wallet.

activity.intent.createSubOrganizationIntentV6?

{ disableEmailAuth?: boolean; disableEmailRecovery?: boolean; rootQuorumThreshold: number; rootUsers: object[]; subOrganizationName: string; wallet?: { accounts: object[]; mnemonicLength?: number; walletName: string; }; }

activity.intent.createSubOrganizationIntentV6.disableEmailAuth?

boolean

Description

Disable email auth for the sub-organization

activity.intent.createSubOrganizationIntentV6.disableEmailRecovery?

boolean

Description

Disable email recovery for the sub-organization

activity.intent.createSubOrganizationIntentV6.rootQuorumThreshold

number

Format: int32

Description

The threshold of unique approvals to reach root quorum. This value must be less than or equal to the number of root users

activity.intent.createSubOrganizationIntentV6.rootUsers

object[]

Description

Root users to create within this sub-organization

activity.intent.createSubOrganizationIntentV6.subOrganizationName

string

Description

Name for this sub-organization

activity.intent.createSubOrganizationIntentV6.wallet?

{ accounts: object[]; mnemonicLength?: number; walletName: string; }

Description

The wallet to create for the sub-organization

activity.intent.createSubOrganizationIntentV6.wallet.accounts

object[]

Description

A list of wallet Accounts. This field, if not needed, should be an empty array in your request body.

activity.intent.createSubOrganizationIntentV6.wallet.mnemonicLength?

number

Format: int32

Description

Length of mnemonic to generate the Wallet seed. Defaults to 12. Accepted values: 12, 15, 18, 21, 24.

activity.intent.createSubOrganizationIntentV6.wallet.walletName

string

Description

Human-readable name for a Wallet.

activity.intent.createSubOrganizationIntentV7?

{ disableEmailAuth?: boolean; disableEmailRecovery?: boolean; disableOtpEmailAuth?: boolean; disableSmsAuth?: boolean; rootQuorumThreshold: number; rootUsers: object[]; subOrganizationName: string; verificationToken?: string; wallet?: { accounts: object[]; mnemonicLength?: number; walletName: string; }; }

activity.intent.createSubOrganizationIntentV7.disableEmailAuth?

boolean

Description

Disable email auth for the sub-organization

activity.intent.createSubOrganizationIntentV7.disableEmailRecovery?

boolean

Description

Disable email recovery for the sub-organization

activity.intent.createSubOrganizationIntentV7.disableOtpEmailAuth?

boolean

Description

Disable OTP email auth for the sub-organization

activity.intent.createSubOrganizationIntentV7.disableSmsAuth?

boolean

Description

Disable OTP SMS auth for the sub-organization

activity.intent.createSubOrganizationIntentV7.rootQuorumThreshold

number

Format: int32

Description

The threshold of unique approvals to reach root quorum. This value must be less than or equal to the number of root users

activity.intent.createSubOrganizationIntentV7.rootUsers

object[]

Description

Root users to create within this sub-organization

activity.intent.createSubOrganizationIntentV7.subOrganizationName

string

Description

Name for this sub-organization

activity.intent.createSubOrganizationIntentV7.verificationToken?

string

Description

Signed JWT containing a unique id, expiry, verification type, contact

activity.intent.createSubOrganizationIntentV7.wallet?

{ accounts: object[]; mnemonicLength?: number; walletName: string; }

Description

The wallet to create for the sub-organization

activity.intent.createSubOrganizationIntentV7.wallet.accounts

object[]

Description

A list of wallet Accounts. This field, if not needed, should be an empty array in your request body.

activity.intent.createSubOrganizationIntentV7.wallet.mnemonicLength?

number

Format: int32

Description

Length of mnemonic to generate the Wallet seed. Defaults to 12. Accepted values: 12, 15, 18, 21, 24.

activity.intent.createSubOrganizationIntentV7.wallet.walletName

string

Description

Human-readable name for a Wallet.

activity.intent.createUsersIntent?

{ users: object[]; }

activity.intent.createUsersIntent.users

object[]

Description

A list of Users.

activity.intent.createUsersIntentV2?

{ users: object[]; }

activity.intent.createUsersIntentV2.users

object[]

Description

A list of Users.

activity.intent.createUsersIntentV3?

{ users: object[]; }

activity.intent.createUsersIntentV3.users

object[]

Description

A list of Users.

activity.intent.createUserTagIntent?

{ userIds: string[]; userTagName: string; }

activity.intent.createUserTagIntent.userIds

string[]

Description

A list of User IDs.

activity.intent.createUserTagIntent.userTagName

string

Description

Human-readable name for a User Tag.

activity.intent.createWalletAccountsIntent?

{ accounts: object[]; walletId: string; }

activity.intent.createWalletAccountsIntent.accounts

object[]

Description

A list of wallet Accounts.

activity.intent.createWalletAccountsIntent.walletId

string

Description

Unique identifier for a given Wallet.

activity.intent.createWalletIntent?

{ accounts: object[]; mnemonicLength?: number; walletName: string; }

activity.intent.createWalletIntent.accounts

object[]

Description

A list of wallet Accounts. This field, if not needed, should be an empty array in your request body.

activity.intent.createWalletIntent.mnemonicLength?

number

Format: int32

Description

Length of mnemonic to generate the Wallet seed. Defaults to 12. Accepted values: 12, 15, 18, 21, 24.

activity.intent.createWalletIntent.walletName

string

Description

Human-readable name for a Wallet.

activity.intent.deleteApiKeysIntent?

{ apiKeyIds: string[]; userId: string; }

activity.intent.deleteApiKeysIntent.apiKeyIds

string[]

Description

A list of API Key IDs.

activity.intent.deleteApiKeysIntent.userId

string

Description

Unique identifier for a given User.

activity.intent.deleteAuthenticatorsIntent?

{ authenticatorIds: string[]; userId: string; }

activity.intent.deleteAuthenticatorsIntent.authenticatorIds

string[]

Description

A list of Authenticator IDs.

activity.intent.deleteAuthenticatorsIntent.userId

string

Description

Unique identifier for a given User.

activity.intent.deleteInvitationIntent?

{ invitationId: string; }

activity.intent.deleteInvitationIntent.invitationId

string

Description

Unique identifier for a given Invitation object.

activity.intent.deleteOauth2CredentialIntent?

{ oauth2CredentialId: string; }

activity.intent.deleteOauth2CredentialIntent.oauth2CredentialId

string

Description

The ID of the OAuth 2.0 credential to delete

activity.intent.deleteOauthProvidersIntent?

{ providerIds: string[]; userId: string; }

activity.intent.deleteOauthProvidersIntent.providerIds

string[]

Description

Unique identifier for a given Provider.

activity.intent.deleteOauthProvidersIntent.userId

string

Description

The ID of the User to remove an Oauth provider from

activity.intent.deleteOrganizationIntent?

{ organizationId: string; }

activity.intent.deleteOrganizationIntent.organizationId

string

Description

Unique identifier for a given Organization.

activity.intent.deletePaymentMethodIntent?

{ paymentMethodId: string; }

activity.intent.deletePaymentMethodIntent.paymentMethodId

string

Description

The payment method that the customer wants to remove.

activity.intent.deletePolicyIntent?

{ policyId: string; }

activity.intent.deletePolicyIntent.policyId

string

Description

Unique identifier for a given Policy.

activity.intent.deletePrivateKeysIntent?

{ deleteWithoutExport?: boolean; privateKeyIds: string[]; }

activity.intent.deletePrivateKeysIntent.deleteWithoutExport?

boolean

Description

Optional parameter for deleting the private keys, even if any have not been previously exported. If they have been exported, this field is ignored.

activity.intent.deletePrivateKeysIntent.privateKeyIds

string[]

Description

List of unique identifiers for private keys within an organization

activity.intent.deletePrivateKeyTagsIntent?

{ privateKeyTagIds: string[]; }

activity.intent.deletePrivateKeyTagsIntent.privateKeyTagIds

string[]

Description

A list of Private Key Tag IDs.

activity.intent.deleteSmartContractInterfaceIntent?

{ smartContractInterfaceId: string; }

activity.intent.deleteSmartContractInterfaceIntent.smartContractInterfaceId

string

Description

The ID of a Smart Contract Interface intended for deletion.

activity.intent.deleteSubOrganizationIntent?

{ deleteWithoutExport?: boolean; }

activity.intent.deleteSubOrganizationIntent.deleteWithoutExport?

boolean

Description

Sub-organization deletion, by default, requires associated wallets and private keys to be exported for security reasons. Set this boolean to true to force sub-organization deletion even if some wallets or private keys within it have not been exported yet. Default: false.

activity.intent.deleteUsersIntent?

{ userIds: string[]; }

activity.intent.deleteUsersIntent.userIds

string[]

Description

A list of User IDs.

activity.intent.deleteUserTagsIntent?

{ userTagIds: string[]; }

activity.intent.deleteUserTagsIntent.userTagIds

string[]

Description

A list of User Tag IDs.

activity.intent.deleteWalletsIntent?

{ deleteWithoutExport?: boolean; walletIds: string[]; }

activity.intent.deleteWalletsIntent.deleteWithoutExport?

boolean

Description

Optional parameter for deleting the wallets, even if any have not been previously exported. If they have been exported, this field is ignored.

activity.intent.deleteWalletsIntent.walletIds

string[]

Description

List of unique identifiers for wallets within an organization

activity.intent.disableAuthProxyIntent?

{ [key: string]: unknown; }

activity.intent.disablePrivateKeyIntent?

{ privateKeyId: string; }

activity.intent.disablePrivateKeyIntent.privateKeyId

string

Description

Unique identifier for a given Private Key.

activity.intent.emailAuthIntent?

{ apiKeyName?: string; email: string; emailCustomization?: { appName?: string; logoUrl?: string; magicLinkTemplate?: string; templateId?: string; templateVariables?: string; }; expirationSeconds?: string; invalidateExisting?: boolean; replyToEmailAddress?: string; sendFromEmailAddress?: string; sendFromEmailSenderName?: string; targetPublicKey: string; }

activity.intent.emailAuthIntent.apiKeyName?

string

Description

Optional human-readable name for an API Key. If none provided, default to Email Auth - <Timestamp>

activity.intent.emailAuthIntent.email

string

Description

Email of the authenticating user.

activity.intent.emailAuthIntent.emailCustomization?

{ appName?: string; logoUrl?: string; magicLinkTemplate?: string; templateId?: string; templateVariables?: string; }

Description

Optional parameters for customizing emails. If not provided, the default email will be used.

activity.intent.emailAuthIntent.emailCustomization.appName?

string

Description

The name of the application.

activity.intent.emailAuthIntent.emailCustomization.logoUrl?

string

Description

A URL pointing to a logo in PNG format. Note this logo will be resized to fit into 340px x 124px.

activity.intent.emailAuthIntent.emailCustomization.magicLinkTemplate?

string

Description

A template for the URL to be used in a magic link button, e.g. https://dapp.xyz/%s. The auth bundle will be interpolated into the %s.

activity.intent.emailAuthIntent.emailCustomization.templateId?

string

Description

Unique identifier for a given Email Template. If not specified, the default is the most recent Email Template.

activity.intent.emailAuthIntent.emailCustomization.templateVariables?

string

Description

JSON object containing key/value pairs to be used with custom templates.

activity.intent.emailAuthIntent.expirationSeconds?

string

Description

Expiration window (in seconds) indicating how long the API key is valid for. If not provided, a default of 15 minutes will be used.

activity.intent.emailAuthIntent.invalidateExisting?

boolean

Description

Invalidate all other previously generated Email Auth API keys

activity.intent.emailAuthIntent.replyToEmailAddress?

string

Description

Optional custom email address to use as reply-to

activity.intent.emailAuthIntent.sendFromEmailAddress?

string

Description

Optional custom email address from which to send the email

activity.intent.emailAuthIntent.sendFromEmailSenderName?

string

Description

Optional custom sender name for use with sendFromEmailAddress; if left empty, will default to ‘Notifications’

activity.intent.emailAuthIntent.targetPublicKey

string

Description

Client-side public key generated by the user, to which the email auth bundle (credentials) will be encrypted.

activity.intent.emailAuthIntentV2?

{ apiKeyName?: string; email: string; emailCustomization?: { appName?: string; logoUrl?: string; magicLinkTemplate?: string; templateId?: string; templateVariables?: string; }; expirationSeconds?: string; invalidateExisting?: boolean; replyToEmailAddress?: string; sendFromEmailAddress?: string; sendFromEmailSenderName?: string; targetPublicKey: string; }

activity.intent.emailAuthIntentV2.apiKeyName?

string

Description

Optional human-readable name for an API Key. If none provided, default to Email Auth - <Timestamp>

activity.intent.emailAuthIntentV2.email

string

Description

Email of the authenticating user.

activity.intent.emailAuthIntentV2.emailCustomization?

{ appName?: string; logoUrl?: string; magicLinkTemplate?: string; templateId?: string; templateVariables?: string; }

Description

Optional parameters for customizing emails. If not provided, the default email will be used.

activity.intent.emailAuthIntentV2.emailCustomization.appName?

string

Description

The name of the application.

activity.intent.emailAuthIntentV2.emailCustomization.logoUrl?

string

Description

A URL pointing to a logo in PNG format. Note this logo will be resized to fit into 340px x 124px.

activity.intent.emailAuthIntentV2.emailCustomization.magicLinkTemplate?

string

Description

A template for the URL to be used in a magic link button, e.g. https://dapp.xyz/%s. The auth bundle will be interpolated into the %s.

activity.intent.emailAuthIntentV2.emailCustomization.templateId?

string

Description

Unique identifier for a given Email Template. If not specified, the default is the most recent Email Template.

activity.intent.emailAuthIntentV2.emailCustomization.templateVariables?

string

Description

JSON object containing key/value pairs to be used with custom templates.

activity.intent.emailAuthIntentV2.expirationSeconds?

string

Description

Expiration window (in seconds) indicating how long the API key is valid for. If not provided, a default of 15 minutes will be used.

activity.intent.emailAuthIntentV2.invalidateExisting?

boolean

Description

Invalidate all other previously generated Email Auth API keys

activity.intent.emailAuthIntentV2.replyToEmailAddress?

string

Description

Optional custom email address to use as reply-to

activity.intent.emailAuthIntentV2.sendFromEmailAddress?

string

Description

Optional custom email address from which to send the email

activity.intent.emailAuthIntentV2.sendFromEmailSenderName?

string

Description

Optional custom sender name for use with sendFromEmailAddress; if left empty, will default to ‘Notifications’

activity.intent.emailAuthIntentV2.targetPublicKey

string

Description

Client-side public key generated by the user, to which the email auth bundle (credentials) will be encrypted.

activity.intent.enableAuthProxyIntent?

{ [key: string]: unknown; }

activity.intent.exportPrivateKeyIntent?

{ privateKeyId: string; targetPublicKey: string; }

activity.intent.exportPrivateKeyIntent.privateKeyId

string

Description

Unique identifier for a given Private Key.

activity.intent.exportPrivateKeyIntent.targetPublicKey

string

Description

Client-side public key generated by the user, to which the export bundle will be encrypted.

activity.intent.exportWalletAccountIntent?

{ address: string; targetPublicKey: string; }

activity.intent.exportWalletAccountIntent.address

string

Description

Address to identify Wallet Account.

activity.intent.exportWalletAccountIntent.targetPublicKey

string

Description

Client-side public key generated by the user, to which the export bundle will be encrypted.

activity.intent.exportWalletIntent?

{ language?: | "MNEMONIC_LANGUAGE_ENGLISH" | "MNEMONIC_LANGUAGE_SIMPLIFIED_CHINESE" | "MNEMONIC_LANGUAGE_TRADITIONAL_CHINESE" | "MNEMONIC_LANGUAGE_CZECH" | "MNEMONIC_LANGUAGE_FRENCH" | "MNEMONIC_LANGUAGE_ITALIAN" | "MNEMONIC_LANGUAGE_JAPANESE" | "MNEMONIC_LANGUAGE_KOREAN" | "MNEMONIC_LANGUAGE_SPANISH"; targetPublicKey: string; walletId: string; }

activity.intent.exportWalletIntent.language?

| "MNEMONIC_LANGUAGE_ENGLISH" | "MNEMONIC_LANGUAGE_SIMPLIFIED_CHINESE" | "MNEMONIC_LANGUAGE_TRADITIONAL_CHINESE" | "MNEMONIC_LANGUAGE_CZECH" | "MNEMONIC_LANGUAGE_FRENCH" | "MNEMONIC_LANGUAGE_ITALIAN" | "MNEMONIC_LANGUAGE_JAPANESE" | "MNEMONIC_LANGUAGE_KOREAN" | "MNEMONIC_LANGUAGE_SPANISH"

Description

The language of the mnemonic to export. Defaults to English.

activity.intent.exportWalletIntent.targetPublicKey

string

Description

Client-side public key generated by the user, to which the export bundle will be encrypted.

activity.intent.exportWalletIntent.walletId

string

Description

Unique identifier for a given Wallet.

activity.intent.importPrivateKeyIntent?

{ addressFormats: ( | "ADDRESS_FORMAT_UNCOMPRESSED" | "ADDRESS_FORMAT_COMPRESSED" | "ADDRESS_FORMAT_ETHEREUM" | "ADDRESS_FORMAT_SOLANA" | "ADDRESS_FORMAT_COSMOS" | "ADDRESS_FORMAT_TRON" | "ADDRESS_FORMAT_SUI" | "ADDRESS_FORMAT_APTOS" | "ADDRESS_FORMAT_BITCOIN_MAINNET_P2PKH" | "ADDRESS_FORMAT_BITCOIN_MAINNET_P2SH" | "ADDRESS_FORMAT_BITCOIN_MAINNET_P2WPKH" | "ADDRESS_FORMAT_BITCOIN_MAINNET_P2WSH" | "ADDRESS_FORMAT_BITCOIN_MAINNET_P2TR" | "ADDRESS_FORMAT_BITCOIN_TESTNET_P2PKH" | "ADDRESS_FORMAT_BITCOIN_TESTNET_P2SH" | "ADDRESS_FORMAT_BITCOIN_TESTNET_P2WPKH" | "ADDRESS_FORMAT_BITCOIN_TESTNET_P2WSH" | "ADDRESS_FORMAT_BITCOIN_TESTNET_P2TR" | "ADDRESS_FORMAT_BITCOIN_SIGNET_P2PKH" | "ADDRESS_FORMAT_BITCOIN_SIGNET_P2SH" | "ADDRESS_FORMAT_BITCOIN_SIGNET_P2WPKH" | "ADDRESS_FORMAT_BITCOIN_SIGNET_P2WSH" | "ADDRESS_FORMAT_BITCOIN_SIGNET_P2TR" | "ADDRESS_FORMAT_BITCOIN_REGTEST_P2PKH" | "ADDRESS_FORMAT_BITCOIN_REGTEST_P2SH" | "ADDRESS_FORMAT_BITCOIN_REGTEST_P2WPKH" | "ADDRESS_FORMAT_BITCOIN_REGTEST_P2WSH" | "ADDRESS_FORMAT_BITCOIN_REGTEST_P2TR" | "ADDRESS_FORMAT_SEI" | "ADDRESS_FORMAT_XLM" | "ADDRESS_FORMAT_DOGE_MAINNET" | "ADDRESS_FORMAT_DOGE_TESTNET" | "ADDRESS_FORMAT_TON_V3R2" | "ADDRESS_FORMAT_TON_V4R2" | "ADDRESS_FORMAT_TON_V5R1" | "ADDRESS_FORMAT_XRP")[]; curve: "CURVE_SECP256K1" | "CURVE_ED25519"; encryptedBundle: string; privateKeyName: string; userId: string; }

activity.intent.importPrivateKeyIntent.addressFormats

( | "ADDRESS_FORMAT_UNCOMPRESSED" | "ADDRESS_FORMAT_COMPRESSED" | "ADDRESS_FORMAT_ETHEREUM" | "ADDRESS_FORMAT_SOLANA" | "ADDRESS_FORMAT_COSMOS" | "ADDRESS_FORMAT_TRON" | "ADDRESS_FORMAT_SUI" | "ADDRESS_FORMAT_APTOS" | "ADDRESS_FORMAT_BITCOIN_MAINNET_P2PKH" | "ADDRESS_FORMAT_BITCOIN_MAINNET_P2SH" | "ADDRESS_FORMAT_BITCOIN_MAINNET_P2WPKH" | "ADDRESS_FORMAT_BITCOIN_MAINNET_P2WSH" | "ADDRESS_FORMAT_BITCOIN_MAINNET_P2TR" | "ADDRESS_FORMAT_BITCOIN_TESTNET_P2PKH" | "ADDRESS_FORMAT_BITCOIN_TESTNET_P2SH" | "ADDRESS_FORMAT_BITCOIN_TESTNET_P2WPKH" | "ADDRESS_FORMAT_BITCOIN_TESTNET_P2WSH" | "ADDRESS_FORMAT_BITCOIN_TESTNET_P2TR" | "ADDRESS_FORMAT_BITCOIN_SIGNET_P2PKH" | "ADDRESS_FORMAT_BITCOIN_SIGNET_P2SH" | "ADDRESS_FORMAT_BITCOIN_SIGNET_P2WPKH" | "ADDRESS_FORMAT_BITCOIN_SIGNET_P2WSH" | "ADDRESS_FORMAT_BITCOIN_SIGNET_P2TR" | "ADDRESS_FORMAT_BITCOIN_REGTEST_P2PKH" | "ADDRESS_FORMAT_BITCOIN_REGTEST_P2SH" | "ADDRESS_FORMAT_BITCOIN_REGTEST_P2WPKH" | "ADDRESS_FORMAT_BITCOIN_REGTEST_P2WSH" | "ADDRESS_FORMAT_BITCOIN_REGTEST_P2TR" | "ADDRESS_FORMAT_SEI" | "ADDRESS_FORMAT_XLM" | "ADDRESS_FORMAT_DOGE_MAINNET" | "ADDRESS_FORMAT_DOGE_TESTNET" | "ADDRESS_FORMAT_TON_V3R2" | "ADDRESS_FORMAT_TON_V4R2" | "ADDRESS_FORMAT_TON_V5R1" | "ADDRESS_FORMAT_XRP")[]

Description

Cryptocurrency-specific formats for a derived address (e.g., Ethereum).

activity.intent.importPrivateKeyIntent.curve

"CURVE_SECP256K1" | "CURVE_ED25519"

Description

Cryptographic Curve used to generate a given Private Key.

activity.intent.importPrivateKeyIntent.encryptedBundle

string

Description

Bundle containing a raw private key encrypted to the enclave’s target public key.

activity.intent.importPrivateKeyIntent.privateKeyName

string

Description

Human-readable name for a Private Key.

activity.intent.importPrivateKeyIntent.userId

string

Description

The ID of the User importing a Private Key.

activity.intent.importWalletIntent?

{ accounts: object[]; encryptedBundle: string; userId: string; walletName: string; }

activity.intent.importWalletIntent.accounts

object[]

Description

A list of wallet Accounts.

activity.intent.importWalletIntent.encryptedBundle

string

Description

Bundle containing a wallet mnemonic encrypted to the enclave’s target public key.

activity.intent.importWalletIntent.userId

string

Description

The ID of the User importing a Wallet.

activity.intent.importWalletIntent.walletName

string

Description

Human-readable name for a Wallet.

activity.intent.initFiatOnRampIntent?

{ countryCode?: string; countrySubdivisionCode?: string; cryptoCurrencyCode: | "FIAT_ON_RAMP_CRYPTO_CURRENCY_BTC" | "FIAT_ON_RAMP_CRYPTO_CURRENCY_ETH" | "FIAT_ON_RAMP_CRYPTO_CURRENCY_SOL" | "FIAT_ON_RAMP_CRYPTO_CURRENCY_USDC"; fiatCurrencyAmount?: string; fiatCurrencyCode?: | "FIAT_ON_RAMP_CURRENCY_AUD" | "FIAT_ON_RAMP_CURRENCY_BGN" | "FIAT_ON_RAMP_CURRENCY_BRL" | "FIAT_ON_RAMP_CURRENCY_CAD" | "FIAT_ON_RAMP_CURRENCY_CHF" | "FIAT_ON_RAMP_CURRENCY_COP" | "FIAT_ON_RAMP_CURRENCY_CZK" | "FIAT_ON_RAMP_CURRENCY_DKK" | "FIAT_ON_RAMP_CURRENCY_DOP" | "FIAT_ON_RAMP_CURRENCY_EGP" | "FIAT_ON_RAMP_CURRENCY_EUR" | "FIAT_ON_RAMP_CURRENCY_GBP" | "FIAT_ON_RAMP_CURRENCY_HKD" | "FIAT_ON_RAMP_CURRENCY_IDR" | "FIAT_ON_RAMP_CURRENCY_ILS" | "FIAT_ON_RAMP_CURRENCY_JOD" | "FIAT_ON_RAMP_CURRENCY_KES" | "FIAT_ON_RAMP_CURRENCY_KWD" | "FIAT_ON_RAMP_CURRENCY_LKR" | "FIAT_ON_RAMP_CURRENCY_MXN" | "FIAT_ON_RAMP_CURRENCY_NGN" | "FIAT_ON_RAMP_CURRENCY_NOK" | "FIAT_ON_RAMP_CURRENCY_NZD" | "FIAT_ON_RAMP_CURRENCY_OMR" | "FIAT_ON_RAMP_CURRENCY_PEN" | "FIAT_ON_RAMP_CURRENCY_PLN" | "FIAT_ON_RAMP_CURRENCY_RON" | "FIAT_ON_RAMP_CURRENCY_SEK" | "FIAT_ON_RAMP_CURRENCY_THB" | "FIAT_ON_RAMP_CURRENCY_TRY" | "FIAT_ON_RAMP_CURRENCY_TWD" | "FIAT_ON_RAMP_CURRENCY_USD" | "FIAT_ON_RAMP_CURRENCY_VND" | "FIAT_ON_RAMP_CURRENCY_ZAR"; network: | "FIAT_ON_RAMP_BLOCKCHAIN_NETWORK_BITCOIN" | "FIAT_ON_RAMP_BLOCKCHAIN_NETWORK_ETHEREUM" | "FIAT_ON_RAMP_BLOCKCHAIN_NETWORK_SOLANA" | "FIAT_ON_RAMP_BLOCKCHAIN_NETWORK_BASE"; onrampProvider: "FIAT_ON_RAMP_PROVIDER_COINBASE" | "FIAT_ON_RAMP_PROVIDER_MOONPAY"; paymentMethod?: | "FIAT_ON_RAMP_PAYMENT_METHOD_CREDIT_DEBIT_CARD" | "FIAT_ON_RAMP_PAYMENT_METHOD_APPLE_PAY" | "FIAT_ON_RAMP_PAYMENT_METHOD_GBP_BANK_TRANSFER" | "FIAT_ON_RAMP_PAYMENT_METHOD_GBP_OPEN_BANKING_PAYMENT" | "FIAT_ON_RAMP_PAYMENT_METHOD_GOOGLE_PAY" | "FIAT_ON_RAMP_PAYMENT_METHOD_SEPA_BANK_TRANSFER" | "FIAT_ON_RAMP_PAYMENT_METHOD_PIX_INSTANT_PAYMENT" | "FIAT_ON_RAMP_PAYMENT_METHOD_PAYPAL" | "FIAT_ON_RAMP_PAYMENT_METHOD_VENMO" | "FIAT_ON_RAMP_PAYMENT_METHOD_MOONPAY_BALANCE" | "FIAT_ON_RAMP_PAYMENT_METHOD_CRYPTO_ACCOUNT" | "FIAT_ON_RAMP_PAYMENT_METHOD_FIAT_WALLET" | "FIAT_ON_RAMP_PAYMENT_METHOD_ACH_BANK_ACCOUNT"; sandboxMode?: boolean; walletAddress: string; }

activity.intent.initFiatOnRampIntent.countryCode?

string

Description

ISO 3166-1 two-digit country code for Coinbase representing the purchasing user’s country of residence, e.g., US, GB.

activity.intent.initFiatOnRampIntent.countrySubdivisionCode?

string

Description

ISO 3166-2 two-digit country subdivision code for Coinbase representing the purchasing user’s subdivision of residence within their country, e.g. NY. Required if country_code=US.

activity.intent.initFiatOnRampIntent.cryptoCurrencyCode

| "FIAT_ON_RAMP_CRYPTO_CURRENCY_BTC" | "FIAT_ON_RAMP_CRYPTO_CURRENCY_ETH" | "FIAT_ON_RAMP_CRYPTO_CURRENCY_SOL" | "FIAT_ON_RAMP_CRYPTO_CURRENCY_USDC"

Description

Code for the cryptocurrency to be purchased, e.g., btc, eth. Maps to MoonPay’s currencyCode or Coinbase’s defaultAsset.

activity.intent.initFiatOnRampIntent.fiatCurrencyAmount?

string

Description

Specifies a preset fiat amount for the transaction, e.g., ‘100’. Must be greater than ‘20’. If not provided, the user will be prompted to enter an amount.

activity.intent.initFiatOnRampIntent.fiatCurrencyCode?

| "FIAT_ON_RAMP_CURRENCY_AUD" | "FIAT_ON_RAMP_CURRENCY_BGN" | "FIAT_ON_RAMP_CURRENCY_BRL" | "FIAT_ON_RAMP_CURRENCY_CAD" | "FIAT_ON_RAMP_CURRENCY_CHF" | "FIAT_ON_RAMP_CURRENCY_COP" | "FIAT_ON_RAMP_CURRENCY_CZK" | "FIAT_ON_RAMP_CURRENCY_DKK" | "FIAT_ON_RAMP_CURRENCY_DOP" | "FIAT_ON_RAMP_CURRENCY_EGP" | "FIAT_ON_RAMP_CURRENCY_EUR" | "FIAT_ON_RAMP_CURRENCY_GBP" | "FIAT_ON_RAMP_CURRENCY_HKD" | "FIAT_ON_RAMP_CURRENCY_IDR" | "FIAT_ON_RAMP_CURRENCY_ILS" | "FIAT_ON_RAMP_CURRENCY_JOD" | "FIAT_ON_RAMP_CURRENCY_KES" | "FIAT_ON_RAMP_CURRENCY_KWD" | "FIAT_ON_RAMP_CURRENCY_LKR" | "FIAT_ON_RAMP_CURRENCY_MXN" | "FIAT_ON_RAMP_CURRENCY_NGN" | "FIAT_ON_RAMP_CURRENCY_NOK" | "FIAT_ON_RAMP_CURRENCY_NZD" | "FIAT_ON_RAMP_CURRENCY_OMR" | "FIAT_ON_RAMP_CURRENCY_PEN" | "FIAT_ON_RAMP_CURRENCY_PLN" | "FIAT_ON_RAMP_CURRENCY_RON" | "FIAT_ON_RAMP_CURRENCY_SEK" | "FIAT_ON_RAMP_CURRENCY_THB" | "FIAT_ON_RAMP_CURRENCY_TRY" | "FIAT_ON_RAMP_CURRENCY_TWD" | "FIAT_ON_RAMP_CURRENCY_USD" | "FIAT_ON_RAMP_CURRENCY_VND" | "FIAT_ON_RAMP_CURRENCY_ZAR"

Description

Code for the fiat currency to be used in the transaction, e.g., USD, EUR.

activity.intent.initFiatOnRampIntent.network

| "FIAT_ON_RAMP_BLOCKCHAIN_NETWORK_BITCOIN" | "FIAT_ON_RAMP_BLOCKCHAIN_NETWORK_ETHEREUM" | "FIAT_ON_RAMP_BLOCKCHAIN_NETWORK_SOLANA" | "FIAT_ON_RAMP_BLOCKCHAIN_NETWORK_BASE"

Description

Blockchain network to be used for the transaction, e.g., bitcoin, ethereum. Maps to MoonPay’s network or Coinbase’s defaultNetwork.

activity.intent.initFiatOnRampIntent.onrampProvider

"FIAT_ON_RAMP_PROVIDER_COINBASE" | "FIAT_ON_RAMP_PROVIDER_MOONPAY"

Description

Enum to specifiy which on-ramp provider to use

activity.intent.initFiatOnRampIntent.paymentMethod?

| "FIAT_ON_RAMP_PAYMENT_METHOD_CREDIT_DEBIT_CARD" | "FIAT_ON_RAMP_PAYMENT_METHOD_APPLE_PAY" | "FIAT_ON_RAMP_PAYMENT_METHOD_GBP_BANK_TRANSFER" | "FIAT_ON_RAMP_PAYMENT_METHOD_GBP_OPEN_BANKING_PAYMENT" | "FIAT_ON_RAMP_PAYMENT_METHOD_GOOGLE_PAY" | "FIAT_ON_RAMP_PAYMENT_METHOD_SEPA_BANK_TRANSFER" | "FIAT_ON_RAMP_PAYMENT_METHOD_PIX_INSTANT_PAYMENT" | "FIAT_ON_RAMP_PAYMENT_METHOD_PAYPAL" | "FIAT_ON_RAMP_PAYMENT_METHOD_VENMO" | "FIAT_ON_RAMP_PAYMENT_METHOD_MOONPAY_BALANCE" | "FIAT_ON_RAMP_PAYMENT_METHOD_CRYPTO_ACCOUNT" | "FIAT_ON_RAMP_PAYMENT_METHOD_FIAT_WALLET" | "FIAT_ON_RAMP_PAYMENT_METHOD_ACH_BANK_ACCOUNT"

Description

Pre-selected payment method, e.g., CREDIT_DEBIT_CARD, APPLE_PAY. Validated against the chosen provider.

activity.intent.initFiatOnRampIntent.sandboxMode?

boolean

Description

Optional flag to indicate whether to use the sandbox mode to simulate transactions for the on-ramp provider. Default is false.

activity.intent.initFiatOnRampIntent.walletAddress

string

Description

Destination wallet address for the buy transaction.

activity.intent.initImportPrivateKeyIntent?

{ userId: string; }

activity.intent.initImportPrivateKeyIntent.userId

string

Description

The ID of the User importing a Private Key.

activity.intent.initImportWalletIntent?

{ userId: string; }

activity.intent.initImportWalletIntent.userId

string

Description

The ID of the User importing a Wallet.

activity.intent.initOtpAuthIntent?

{ contact: string; emailCustomization?: { appName?: string; logoUrl?: string; magicLinkTemplate?: string; templateId?: string; templateVariables?: string; }; otpType: string; replyToEmailAddress?: string; sendFromEmailAddress?: string; sendFromEmailSenderName?: string; smsCustomization?: { template?: string; }; userIdentifier?: string; }

activity.intent.initOtpAuthIntent.contact

string

Description

Email or phone number to send the OTP code to

activity.intent.initOtpAuthIntent.emailCustomization?

{ appName?: string; logoUrl?: string; magicLinkTemplate?: string; templateId?: string; templateVariables?: string; }

Description

Optional parameters for customizing emails. If not provided, the default email will be used.

activity.intent.initOtpAuthIntent.emailCustomization.appName?

string

Description

The name of the application.

activity.intent.initOtpAuthIntent.emailCustomization.logoUrl?

string

Description

A URL pointing to a logo in PNG format. Note this logo will be resized to fit into 340px x 124px.

activity.intent.initOtpAuthIntent.emailCustomization.magicLinkTemplate?

string

Description

A template for the URL to be used in a magic link button, e.g. https://dapp.xyz/%s. The auth bundle will be interpolated into the %s.

activity.intent.initOtpAuthIntent.emailCustomization.templateId?

string

Description

Unique identifier for a given Email Template. If not specified, the default is the most recent Email Template.

activity.intent.initOtpAuthIntent.emailCustomization.templateVariables?

string

Description

JSON object containing key/value pairs to be used with custom templates.

activity.intent.initOtpAuthIntent.otpType

string

Description

Enum to specifiy whether to send OTP via SMS or email

activity.intent.initOtpAuthIntent.replyToEmailAddress?

string

Description

Optional custom email address to use as reply-to

activity.intent.initOtpAuthIntent.sendFromEmailAddress?

string

Description

Optional custom email address from which to send the OTP email

activity.intent.initOtpAuthIntent.sendFromEmailSenderName?

string

Description

Optional custom sender name for use with sendFromEmailAddress; if left empty, will default to ‘Notifications’

activity.intent.initOtpAuthIntent.smsCustomization?

{ template?: string; }

Description

Optional parameters for customizing SMS message. If not provided, the default sms message will be used.

activity.intent.initOtpAuthIntent.smsCustomization.template?

string

Description

Template containing references to .OtpCode i.e Your OTP is {{.OtpCode}}

activity.intent.initOtpAuthIntent.userIdentifier?

string

Description

Optional client-generated user identifier to enable per-user rate limiting for SMS auth. We recommend using a hash of the client-side IP address.

activity.intent.initOtpAuthIntentV2?

{ alphanumeric?: boolean; contact: string; emailCustomization?: { appName?: string; logoUrl?: string; magicLinkTemplate?: string; templateId?: string; templateVariables?: string; }; otpLength?: number; otpType: string; replyToEmailAddress?: string; sendFromEmailAddress?: string; sendFromEmailSenderName?: string; smsCustomization?: { template?: string; }; userIdentifier?: string; }

activity.intent.initOtpAuthIntentV2.alphanumeric?

boolean

Description

Optional flag to specify if the OTP code should be alphanumeric (Crockford’s Base32). Default = true

activity.intent.initOtpAuthIntentV2.contact

string

Description

Email or phone number to send the OTP code to

activity.intent.initOtpAuthIntentV2.emailCustomization?

{ appName?: string; logoUrl?: string; magicLinkTemplate?: string; templateId?: string; templateVariables?: string; }

Description

Optional parameters for customizing emails. If not provided, the default email will be used.

activity.intent.initOtpAuthIntentV2.emailCustomization.appName?

string

Description

The name of the application.

activity.intent.initOtpAuthIntentV2.emailCustomization.logoUrl?

string

Description

A URL pointing to a logo in PNG format. Note this logo will be resized to fit into 340px x 124px.

activity.intent.initOtpAuthIntentV2.emailCustomization.magicLinkTemplate?

string

Description

A template for the URL to be used in a magic link button, e.g. https://dapp.xyz/%s. The auth bundle will be interpolated into the %s.

activity.intent.initOtpAuthIntentV2.emailCustomization.templateId?

string

Description

Unique identifier for a given Email Template. If not specified, the default is the most recent Email Template.

activity.intent.initOtpAuthIntentV2.emailCustomization.templateVariables?

string

Description

JSON object containing key/value pairs to be used with custom templates.

activity.intent.initOtpAuthIntentV2.otpLength?

number

Format: int32

Description

Optional length of the OTP code. Default = 9

activity.intent.initOtpAuthIntentV2.otpType

string

Description

Enum to specifiy whether to send OTP via SMS or email

activity.intent.initOtpAuthIntentV2.replyToEmailAddress?

string

Description

Optional custom email address to use as reply-to

activity.intent.initOtpAuthIntentV2.sendFromEmailAddress?

string

Description

Optional custom email address from which to send the OTP email

activity.intent.initOtpAuthIntentV2.sendFromEmailSenderName?

string

Description

Optional custom sender name for use with sendFromEmailAddress; if left empty, will default to ‘Notifications’

activity.intent.initOtpAuthIntentV2.smsCustomization?

{ template?: string; }

Description

Optional parameters for customizing SMS message. If not provided, the default sms message will be used.

activity.intent.initOtpAuthIntentV2.smsCustomization.template?

string

Description

Template containing references to .OtpCode i.e Your OTP is {{.OtpCode}}

activity.intent.initOtpAuthIntentV2.userIdentifier?

string

Description

Optional client-generated user identifier to enable per-user rate limiting for SMS auth. We recommend using a hash of the client-side IP address.

activity.intent.initOtpIntent?

{ alphanumeric?: boolean; contact: string; emailCustomization?: { appName?: string; logoUrl?: string; magicLinkTemplate?: string; templateId?: string; templateVariables?: string; }; expirationSeconds?: string; otpLength?: number; otpType: string; replyToEmailAddress?: string; sendFromEmailAddress?: string; sendFromEmailSenderName?: string; smsCustomization?: { template?: string; }; userIdentifier?: string; }

activity.intent.initOtpIntent.alphanumeric?

boolean

Description

Optional flag to specify if the OTP code should be alphanumeric (Crockford’s Base32). Default = true

activity.intent.initOtpIntent.contact

string

Description

Email or phone number to send the OTP code to

activity.intent.initOtpIntent.emailCustomization?

{ appName?: string; logoUrl?: string; magicLinkTemplate?: string; templateId?: string; templateVariables?: string; }

Description

Optional parameters for customizing emails. If not provided, the default email will be used.

activity.intent.initOtpIntent.emailCustomization.appName?

string

Description

The name of the application.

activity.intent.initOtpIntent.emailCustomization.logoUrl?

string

Description

A URL pointing to a logo in PNG format. Note this logo will be resized to fit into 340px x 124px.

activity.intent.initOtpIntent.emailCustomization.magicLinkTemplate?

string

Description

A template for the URL to be used in a magic link button, e.g. https://dapp.xyz/%s. The auth bundle will be interpolated into the %s.

activity.intent.initOtpIntent.emailCustomization.templateId?

string

Description

Unique identifier for a given Email Template. If not specified, the default is the most recent Email Template.

activity.intent.initOtpIntent.emailCustomization.templateVariables?

string

Description

JSON object containing key/value pairs to be used with custom templates.

activity.intent.initOtpIntent.expirationSeconds?

string

Description

Expiration window (in seconds) indicating how long the OTP is valid for. If not provided, a default of 5 minutes will be used. Maximum value is 600 seconds (10 minutes)

activity.intent.initOtpIntent.otpLength?

number

Format: int32

Description

Optional length of the OTP code. Default = 9

activity.intent.initOtpIntent.otpType

string

Description

Whether to send OTP via SMS or email. Possible values: OTP_TYPE_SMS, OTP_TYPE_EMAIL

activity.intent.initOtpIntent.replyToEmailAddress?

string

Description

Optional custom email address to use as reply-to

activity.intent.initOtpIntent.sendFromEmailAddress?

string

Description

Optional custom email address from which to send the OTP email

activity.intent.initOtpIntent.sendFromEmailSenderName?

string

Description

Optional custom sender name for use with sendFromEmailAddress; if left empty, will default to ‘Notifications’

activity.intent.initOtpIntent.smsCustomization?

{ template?: string; }

Description

Optional parameters for customizing SMS message. If not provided, the default sms message will be used.

activity.intent.initOtpIntent.smsCustomization.template?

string

Description

Template containing references to .OtpCode i.e Your OTP is {{.OtpCode}}

activity.intent.initOtpIntent.userIdentifier?

string

Description

Optional client-generated user identifier to enable per-user rate limiting for SMS auth. We recommend using a hash of the client-side IP address.

activity.intent.initUserEmailRecoveryIntent?

{ email: string; emailCustomization?: { appName?: string; logoUrl?: string; magicLinkTemplate?: string; templateId?: string; templateVariables?: string; }; expirationSeconds?: string; targetPublicKey: string; }

activity.intent.initUserEmailRecoveryIntent.email

string

Description

Email of the user starting recovery

activity.intent.initUserEmailRecoveryIntent.emailCustomization?

{ appName?: string; logoUrl?: string; magicLinkTemplate?: string; templateId?: string; templateVariables?: string; }

Description

Optional parameters for customizing emails. If not provided, the default email will be used.

activity.intent.initUserEmailRecoveryIntent.emailCustomization.appName?

string

Description

The name of the application.

activity.intent.initUserEmailRecoveryIntent.emailCustomization.logoUrl?

string

Description

A URL pointing to a logo in PNG format. Note this logo will be resized to fit into 340px x 124px.

activity.intent.initUserEmailRecoveryIntent.emailCustomization.magicLinkTemplate?

string

Description

A template for the URL to be used in a magic link button, e.g. https://dapp.xyz/%s. The auth bundle will be interpolated into the %s.

activity.intent.initUserEmailRecoveryIntent.emailCustomization.templateId?

string

Description

Unique identifier for a given Email Template. If not specified, the default is the most recent Email Template.

activity.intent.initUserEmailRecoveryIntent.emailCustomization.templateVariables?

string

Description

JSON object containing key/value pairs to be used with custom templates.

activity.intent.initUserEmailRecoveryIntent.expirationSeconds?

string

Description

Expiration window (in seconds) indicating how long the recovery credential is valid for. If not provided, a default of 15 minutes will be used.

activity.intent.initUserEmailRecoveryIntent.targetPublicKey

string

Description

Client-side public key generated by the user, to which the recovery bundle will be encrypted.

activity.intent.oauth2AuthenticateIntent?

{ authCode: string; codeVerifier: string; nonce?: string; oauth2CredentialId: string; redirectUri: string; }

activity.intent.oauth2AuthenticateIntent.authCode

string

Description

The auth_code provided by the OAuth 2.0 provider to the end user to be exchanged for a Bearer token in the OAuth 2.0 flow

activity.intent.oauth2AuthenticateIntent.codeVerifier

string

Description

The code verifier used by OAuth 2.0 PKCE providers

activity.intent.oauth2AuthenticateIntent.nonce?

string

Description

An optional nonce used by the client to prevent replay/substitution of an ID token

activity.intent.oauth2AuthenticateIntent.oauth2CredentialId

string

Description

The OAuth 2.0 credential id whose client_id and client_secret will be used in the OAuth 2.0 flow

activity.intent.oauth2AuthenticateIntent.redirectUri

string

Description

The URI the user is redirected to after they have authenticated with the OAuth 2.0 provider

activity.intent.oauthIntent?

{ apiKeyName?: string; expirationSeconds?: string; invalidateExisting?: boolean; oidcToken: string; targetPublicKey: string; }

activity.intent.oauthIntent.apiKeyName?

string

Description

Optional human-readable name for an API Key. If none provided, default to Oauth - <Timestamp>

activity.intent.oauthIntent.expirationSeconds?

string

Description

Expiration window (in seconds) indicating how long the API key is valid for. If not provided, a default of 15 minutes will be used.

activity.intent.oauthIntent.invalidateExisting?

boolean

Description

Invalidate all other previously generated Oauth API keys

activity.intent.oauthIntent.oidcToken

string

Description

Base64 encoded OIDC token

activity.intent.oauthIntent.targetPublicKey

string

Description

Client-side public key generated by the user, to which the oauth bundle (credentials) will be encrypted.

activity.intent.oauthLoginIntent?

{ expirationSeconds?: string; invalidateExisting?: boolean; oidcToken: string; publicKey: string; }

activity.intent.oauthLoginIntent.expirationSeconds?

string

Description

Expiration window (in seconds) indicating how long the Session is valid for. If not provided, a default of 15 minutes will be used.

activity.intent.oauthLoginIntent.invalidateExisting?

boolean

Description

Invalidate all other previously generated Login API keys

activity.intent.oauthLoginIntent.oidcToken

string

Description

Base64 encoded OIDC token

activity.intent.oauthLoginIntent.publicKey

string

Description

Client-side public key generated by the user, which will be conditionally added to org data based on the validity of the oidc token associated with this request

activity.intent.otpAuthIntent?

{ apiKeyName?: string; expirationSeconds?: string; invalidateExisting?: boolean; otpCode: string; otpId: string; targetPublicKey: string; }

activity.intent.otpAuthIntent.apiKeyName?

string

Description

Optional human-readable name for an API Key. If none provided, default to OTP Auth - <Timestamp>

activity.intent.otpAuthIntent.expirationSeconds?

string

Description

Expiration window (in seconds) indicating how long the API key is valid for. If not provided, a default of 15 minutes will be used.

activity.intent.otpAuthIntent.invalidateExisting?

boolean

Description

Invalidate all other previously generated OTP Auth API keys

activity.intent.otpAuthIntent.otpCode

string

Description

OTP sent out to a user’s contact (email or SMS)

activity.intent.otpAuthIntent.otpId

string

Description

ID representing the result of an init OTP activity.

activity.intent.otpAuthIntent.targetPublicKey

string

Description

Client-side public key generated by the user, to which the OTP bundle (credentials) will be encrypted.

activity.intent.otpLoginIntent?

{ expirationSeconds?: string; invalidateExisting?: boolean; publicKey: string; verificationToken: string; }

activity.intent.otpLoginIntent.expirationSeconds?

string

Description

Expiration window (in seconds) indicating how long the Session is valid for. If not provided, a default of 15 minutes will be used.

activity.intent.otpLoginIntent.invalidateExisting?

boolean

Description

Invalidate all other previously generated Login API keys

activity.intent.otpLoginIntent.publicKey

string

Description

Client-side public key generated by the user, which will be conditionally added to org data based on the validity of the verification token

activity.intent.otpLoginIntent.verificationToken

string

Description

Signed JWT containing a unique id, expiry, verification type, contact

activity.intent.recoverUserIntent?

{ authenticator: { attestation: { attestationObject: string; clientDataJson: string; credentialId: string; transports: ( | "AUTHENTICATOR_TRANSPORT_BLE" | "AUTHENTICATOR_TRANSPORT_INTERNAL" | "AUTHENTICATOR_TRANSPORT_NFC" | "AUTHENTICATOR_TRANSPORT_USB" | "AUTHENTICATOR_TRANSPORT_HYBRID")[]; }; authenticatorName: string; challenge: string; }; userId: string; }

activity.intent.recoverUserIntent.authenticator

{ attestation: { attestationObject: string; clientDataJson: string; credentialId: string; transports: ( | "AUTHENTICATOR_TRANSPORT_BLE" | "AUTHENTICATOR_TRANSPORT_INTERNAL" | "AUTHENTICATOR_TRANSPORT_NFC" | "AUTHENTICATOR_TRANSPORT_USB" | "AUTHENTICATOR_TRANSPORT_HYBRID")[]; }; authenticatorName: string; challenge: string; }

Description

The new authenticator to register.

activity.intent.recoverUserIntent.authenticator.attestation

{ attestationObject: string; clientDataJson: string; credentialId: string; transports: ( | "AUTHENTICATOR_TRANSPORT_BLE" | "AUTHENTICATOR_TRANSPORT_INTERNAL" | "AUTHENTICATOR_TRANSPORT_NFC" | "AUTHENTICATOR_TRANSPORT_USB" | "AUTHENTICATOR_TRANSPORT_HYBRID")[]; }

Description

The attestation that proves custody of the authenticator and provides metadata about it.

activity.intent.recoverUserIntent.authenticator.attestation.attestationObject

string

Description

A base64 url encoded payload containing authenticator data and any attestation the webauthn provider chooses.

activity.intent.recoverUserIntent.authenticator.attestation.clientDataJson

string

Description

A base64 url encoded payload containing metadata about the signing context and the challenge.

activity.intent.recoverUserIntent.authenticator.attestation.credentialId

string

Description

The cbor encoded then base64 url encoded id of the credential.

activity.intent.recoverUserIntent.authenticator.attestation.transports

( | "AUTHENTICATOR_TRANSPORT_BLE" | "AUTHENTICATOR_TRANSPORT_INTERNAL" | "AUTHENTICATOR_TRANSPORT_NFC" | "AUTHENTICATOR_TRANSPORT_USB" | "AUTHENTICATOR_TRANSPORT_HYBRID")[]

Description

The type of authenticator transports.

activity.intent.recoverUserIntent.authenticator.authenticatorName

string

Description

Human-readable name for an Authenticator.

activity.intent.recoverUserIntent.authenticator.challenge

string

Description

Challenge presented for authentication purposes.

activity.intent.recoverUserIntent.userId

string

Description

Unique identifier for the user performing recovery.

activity.intent.rejectActivityIntent?

{ fingerprint: string; }

activity.intent.rejectActivityIntent.fingerprint

string

Description

An artifact verifying a User’s action.

activity.intent.removeOrganizationFeatureIntent?

{ name: | "FEATURE_NAME_ROOT_USER_EMAIL_RECOVERY" | "FEATURE_NAME_WEBAUTHN_ORIGINS" | "FEATURE_NAME_EMAIL_AUTH" | "FEATURE_NAME_EMAIL_RECOVERY" | "FEATURE_NAME_WEBHOOK" | "FEATURE_NAME_SMS_AUTH" | "FEATURE_NAME_OTP_EMAIL_AUTH" | "FEATURE_NAME_AUTH_PROXY"; }

activity.intent.removeOrganizationFeatureIntent.name

| "FEATURE_NAME_ROOT_USER_EMAIL_RECOVERY" | "FEATURE_NAME_WEBAUTHN_ORIGINS" | "FEATURE_NAME_EMAIL_AUTH" | "FEATURE_NAME_EMAIL_RECOVERY" | "FEATURE_NAME_WEBHOOK" | "FEATURE_NAME_SMS_AUTH" | "FEATURE_NAME_OTP_EMAIL_AUTH" | "FEATURE_NAME_AUTH_PROXY"

Description

Name of the feature to remove

activity.intent.setOrganizationFeatureIntent?

{ name: | "FEATURE_NAME_ROOT_USER_EMAIL_RECOVERY" | "FEATURE_NAME_WEBAUTHN_ORIGINS" | "FEATURE_NAME_EMAIL_AUTH" | "FEATURE_NAME_EMAIL_RECOVERY" | "FEATURE_NAME_WEBHOOK" | "FEATURE_NAME_SMS_AUTH" | "FEATURE_NAME_OTP_EMAIL_AUTH" | "FEATURE_NAME_AUTH_PROXY"; value: string; }

activity.intent.setOrganizationFeatureIntent.name

| "FEATURE_NAME_ROOT_USER_EMAIL_RECOVERY" | "FEATURE_NAME_WEBAUTHN_ORIGINS" | "FEATURE_NAME_EMAIL_AUTH" | "FEATURE_NAME_EMAIL_RECOVERY" | "FEATURE_NAME_WEBHOOK" | "FEATURE_NAME_SMS_AUTH" | "FEATURE_NAME_OTP_EMAIL_AUTH" | "FEATURE_NAME_AUTH_PROXY"

Description

Name of the feature to set

activity.intent.setOrganizationFeatureIntent.value

string

Description

Optional value for the feature. Will override existing values if feature is already set.

activity.intent.setPaymentMethodIntent?

{ cardHolderEmail: string; cardHolderName: string; cvv: string; expiryMonth: string; expiryYear: string; number: string; }

activity.intent.setPaymentMethodIntent.cardHolderEmail

string

Description

The email that will receive invoices for the credit card.

activity.intent.setPaymentMethodIntent.cardHolderName

string

Description

The name associated with the credit card.

activity.intent.setPaymentMethodIntent.cvv

string

Description

The verification digits of the customer’s credit card.

activity.intent.setPaymentMethodIntent.expiryMonth

string

Description

The month that the credit card expires.

activity.intent.setPaymentMethodIntent.expiryYear

string

Description

The year that the credit card expires.

activity.intent.setPaymentMethodIntent.number

string

Description

The account number of the customer’s credit card.

activity.intent.setPaymentMethodIntentV2?

{ cardHolderEmail: string; cardHolderName: string; paymentMethodId: string; }

activity.intent.setPaymentMethodIntentV2.cardHolderEmail

string

Description

The email that will receive invoices for the credit card.

activity.intent.setPaymentMethodIntentV2.cardHolderName

string

Description

The name associated with the credit card.

activity.intent.setPaymentMethodIntentV2.paymentMethodId

string

Description

The id of the payment method that was created clientside.

activity.intent.signRawPayloadIntent?

{ encoding: | "PAYLOAD_ENCODING_HEXADECIMAL" | "PAYLOAD_ENCODING_TEXT_UTF8" | "PAYLOAD_ENCODING_EIP712" | "PAYLOAD_ENCODING_EIP7702_AUTHORIZATION"; hashFunction: | "HASH_FUNCTION_NO_OP" | "HASH_FUNCTION_SHA256" | "HASH_FUNCTION_KECCAK256" | "HASH_FUNCTION_NOT_APPLICABLE"; payload: string; privateKeyId: string; }

activity.intent.signRawPayloadIntent.encoding

| "PAYLOAD_ENCODING_HEXADECIMAL" | "PAYLOAD_ENCODING_TEXT_UTF8" | "PAYLOAD_ENCODING_EIP712" | "PAYLOAD_ENCODING_EIP7702_AUTHORIZATION"

Description

Encoding of the payload string. Turnkey uses this information to convert payload into bytes with the correct decoder (e.g. hex, utf8).

activity.intent.signRawPayloadIntent.hashFunction

| "HASH_FUNCTION_NO_OP" | "HASH_FUNCTION_SHA256" | "HASH_FUNCTION_KECCAK256" | "HASH_FUNCTION_NOT_APPLICABLE"

Description

Hash function to apply to payload bytes before signing. This field must be set to HASH_FUNCTION_NOT_APPLICABLE for EdDSA/ed25519 signature requests; configurable payload hashing is not supported by RFC 8032.

activity.intent.signRawPayloadIntent.payload

string

Description

Raw unsigned payload to be signed.

activity.intent.signRawPayloadIntent.privateKeyId

string

Description

Unique identifier for a given Private Key.

activity.intent.signRawPayloadIntentV2?

{ encoding: | "PAYLOAD_ENCODING_HEXADECIMAL" | "PAYLOAD_ENCODING_TEXT_UTF8" | "PAYLOAD_ENCODING_EIP712" | "PAYLOAD_ENCODING_EIP7702_AUTHORIZATION"; hashFunction: | "HASH_FUNCTION_NO_OP" | "HASH_FUNCTION_SHA256" | "HASH_FUNCTION_KECCAK256" | "HASH_FUNCTION_NOT_APPLICABLE"; payload: string; signWith: string; }

activity.intent.signRawPayloadIntentV2.encoding

| "PAYLOAD_ENCODING_HEXADECIMAL" | "PAYLOAD_ENCODING_TEXT_UTF8" | "PAYLOAD_ENCODING_EIP712" | "PAYLOAD_ENCODING_EIP7702_AUTHORIZATION"

Description

Encoding of the payload string. Turnkey uses this information to convert payload into bytes with the correct decoder (e.g. hex, utf8).

activity.intent.signRawPayloadIntentV2.hashFunction

| "HASH_FUNCTION_NO_OP" | "HASH_FUNCTION_SHA256" | "HASH_FUNCTION_KECCAK256" | "HASH_FUNCTION_NOT_APPLICABLE"

Description

Hash function to apply to payload bytes before signing. This field must be set to HASH_FUNCTION_NOT_APPLICABLE for EdDSA/ed25519 signature requests; configurable payload hashing is not supported by RFC 8032.

activity.intent.signRawPayloadIntentV2.payload

string

Description

Raw unsigned payload to be signed.

activity.intent.signRawPayloadIntentV2.signWith

string

Description

A Wallet account address, Private Key address, or Private Key identifier.

activity.intent.signRawPayloadsIntent?

{ encoding: | "PAYLOAD_ENCODING_HEXADECIMAL" | "PAYLOAD_ENCODING_TEXT_UTF8" | "PAYLOAD_ENCODING_EIP712" | "PAYLOAD_ENCODING_EIP7702_AUTHORIZATION"; hashFunction: | "HASH_FUNCTION_NO_OP" | "HASH_FUNCTION_SHA256" | "HASH_FUNCTION_KECCAK256" | "HASH_FUNCTION_NOT_APPLICABLE"; payloads: string[]; signWith: string; }

activity.intent.signRawPayloadsIntent.encoding

| "PAYLOAD_ENCODING_HEXADECIMAL" | "PAYLOAD_ENCODING_TEXT_UTF8" | "PAYLOAD_ENCODING_EIP712" | "PAYLOAD_ENCODING_EIP7702_AUTHORIZATION"

Description

Encoding of the payload string. Turnkey uses this information to convert payload into bytes with the correct decoder (e.g. hex, utf8).

activity.intent.signRawPayloadsIntent.hashFunction

| "HASH_FUNCTION_NO_OP" | "HASH_FUNCTION_SHA256" | "HASH_FUNCTION_KECCAK256" | "HASH_FUNCTION_NOT_APPLICABLE"

Description

Hash function to apply to payload bytes before signing. This field must be set to HASH_FUNCTION_NOT_APPLICABLE for EdDSA/ed25519 signature requests; configurable payload hashing is not supported by RFC 8032.

activity.intent.signRawPayloadsIntent.payloads

string[]

Description

An array of raw unsigned payloads to be signed.

activity.intent.signRawPayloadsIntent.signWith

string

Description

A Wallet account address, Private Key address, or Private Key identifier.

activity.intent.signTransactionIntent?

{ privateKeyId: string; type: | "TRANSACTION_TYPE_ETHEREUM" | "TRANSACTION_TYPE_SOLANA" | "TRANSACTION_TYPE_TRON"; unsignedTransaction: string; }

activity.intent.signTransactionIntent.privateKeyId

string

Description

Unique identifier for a given Private Key.

activity.intent.signTransactionIntent.type

| "TRANSACTION_TYPE_ETHEREUM" | "TRANSACTION_TYPE_SOLANA" | "TRANSACTION_TYPE_TRON"

activity.intent.signTransactionIntent.unsignedTransaction

string

Description

Raw unsigned transaction to be signed by a particular Private Key.

activity.intent.signTransactionIntentV2?

{ signWith: string; type: | "TRANSACTION_TYPE_ETHEREUM" | "TRANSACTION_TYPE_SOLANA" | "TRANSACTION_TYPE_TRON"; unsignedTransaction: string; }

activity.intent.signTransactionIntentV2.signWith

string

Description

A Wallet account address, Private Key address, or Private Key identifier.

activity.intent.signTransactionIntentV2.type

| "TRANSACTION_TYPE_ETHEREUM" | "TRANSACTION_TYPE_SOLANA" | "TRANSACTION_TYPE_TRON"

activity.intent.signTransactionIntentV2.unsignedTransaction

string

Description

Raw unsigned transaction to be signed

activity.intent.stampLoginIntent?

{ expirationSeconds?: string; invalidateExisting?: boolean; publicKey: string; }

activity.intent.stampLoginIntent.expirationSeconds?

string

Description

Expiration window (in seconds) indicating how long the Session is valid for. If not provided, a default of 15 minutes will be used.

activity.intent.stampLoginIntent.invalidateExisting?

boolean

Description

Invalidate all other previously generated Login API keys

activity.intent.stampLoginIntent.publicKey

string

Description

Client-side public key generated by the user, which will be conditionally added to org data based on the passkey stamp associated with this request

activity.intent.updateAllowedOriginsIntent?

{ allowedOrigins: string[]; }

activity.intent.updateAllowedOriginsIntent.allowedOrigins

string[]

Description

Additional origins requests are allowed from besides Turnkey origins

activity.intent.updateAuthProxyConfigIntent?

{ allowedAuthMethods?: string[]; allowedOrigins?: string[]; emailAuthTemplateId?: string; emailCustomizationParams?: { appName?: string; logoUrl?: string; magicLinkTemplate?: string; templateId?: string; templateVariables?: string; }; oauth2ProviderCredentialIds?: { [key: string]: string; }; otpAlphanumeric?: boolean; otpExpirationSeconds?: number; otpLength?: number; otpTemplateId?: string; replyToEmailAddress?: string; sendFromEmailAddress?: string; sessionExpirationSeconds?: number; smsCustomizationParams?: { template?: string; }; verificationTokenExpirationSeconds?: number; walletKitSettings?: { enabledSocialProviders?: string[]; }; }

activity.intent.updateAuthProxyConfigIntent.allowedAuthMethods?

string[]

Description

Updated list of allowed proxy authentication methods.

activity.intent.updateAuthProxyConfigIntent.allowedOrigins?

string[]

Description

Updated list of allowed origins for CORS.

activity.intent.updateAuthProxyConfigIntent.emailAuthTemplateId?

string

Description

Template ID for email-auth messages.

activity.intent.updateAuthProxyConfigIntent.emailCustomizationParams?

{ appName?: string; logoUrl?: string; magicLinkTemplate?: string; templateId?: string; templateVariables?: string; }

Description

Overrides for auth-related email content.

activity.intent.updateAuthProxyConfigIntent.emailCustomizationParams.appName?

string

Description

The name of the application.

activity.intent.updateAuthProxyConfigIntent.emailCustomizationParams.logoUrl?

string

Description

A URL pointing to a logo in PNG format. Note this logo will be resized to fit into 340px x 124px.

activity.intent.updateAuthProxyConfigIntent.emailCustomizationParams.magicLinkTemplate?

string

Description

A template for the URL to be used in a magic link button, e.g. https://dapp.xyz/%s. The auth bundle will be interpolated into the %s.

activity.intent.updateAuthProxyConfigIntent.emailCustomizationParams.templateId?

string

Description

Unique identifier for a given Email Template. If not specified, the default is the most recent Email Template.

activity.intent.updateAuthProxyConfigIntent.emailCustomizationParams.templateVariables?

string

Description

JSON object containing key/value pairs to be used with custom templates.

activity.intent.updateAuthProxyConfigIntent.oauth2ProviderCredentialIds?

{ [key: string]: string; }

Description

A map of OAuth 2.0 provider and their respective credential ID to use for the OAuth 2.0 authentication flow.

activity.intent.updateAuthProxyConfigIntent.otpAlphanumeric?

boolean

Description

Enable alphanumeric OTP codes.

activity.intent.updateAuthProxyConfigIntent.otpExpirationSeconds?

number

Format: int32

Description

OTP code lifetime in seconds.

activity.intent.updateAuthProxyConfigIntent.otpLength?

number

Format: int32

Description

Desired OTP code length (6–9).

activity.intent.updateAuthProxyConfigIntent.otpTemplateId?

string

Description

Template ID for OTP SMS messages.

activity.intent.updateAuthProxyConfigIntent.replyToEmailAddress?

string

Description

Custom reply-to address for auth-related emails.

activity.intent.updateAuthProxyConfigIntent.sendFromEmailAddress?

string

Description

Custom ‘from’ address for auth-related emails.

activity.intent.updateAuthProxyConfigIntent.sessionExpirationSeconds?

number

Format: int32

Description

Session lifetime in seconds.

activity.intent.updateAuthProxyConfigIntent.smsCustomizationParams?

{ template?: string; }

Description

Overrides for auth-related SMS content.

activity.intent.updateAuthProxyConfigIntent.smsCustomizationParams.template?

string

Description

Template containing references to .OtpCode i.e Your OTP is {{.OtpCode}}

activity.intent.updateAuthProxyConfigIntent.verificationTokenExpirationSeconds?

number

Format: int32

Description

Verification-token lifetime in seconds.

activity.intent.updateAuthProxyConfigIntent.walletKitSettings?

{ enabledSocialProviders?: string[]; }

Description

Overrides for react wallet kit related settings.

activity.intent.updateAuthProxyConfigIntent.walletKitSettings.enabledSocialProviders?

string[]

Enabled Social Providers

Description

List of enabled social login providers (e.g., ‘apple’, ‘google’, ‘facebook’)

activity.intent.updateOauth2CredentialIntent?

{ clientId: string; encryptedClientSecret: string; oauth2CredentialId: string; provider: "OAUTH2_PROVIDER_X" | "OAUTH2_PROVIDER_DISCORD"; }

activity.intent.updateOauth2CredentialIntent.clientId

string

Description

The Client ID issued by the OAuth 2.0 provider

activity.intent.updateOauth2CredentialIntent.encryptedClientSecret

string

Description

The client secret issued by the OAuth 2.0 provider encrypted to the TLS Fetcher quorum key

activity.intent.updateOauth2CredentialIntent.oauth2CredentialId

string

Description

The ID of the OAuth 2.0 credential to update

activity.intent.updateOauth2CredentialIntent.provider

"OAUTH2_PROVIDER_X" | "OAUTH2_PROVIDER_DISCORD"

Description

The OAuth 2.0 provider

activity.intent.updatePolicyIntent?

{ policyCondition?: string; policyConsensus?: string; policyEffect?: "EFFECT_ALLOW" | "EFFECT_DENY"; policyId: string; policyName?: string; policyNotes?: string; }

activity.intent.updatePolicyIntent.policyCondition?

string

Description

The condition expression that triggers the Effect (optional).

activity.intent.updatePolicyIntent.policyConsensus?

string

Description

The consensus expression that triggers the Effect (optional).

activity.intent.updatePolicyIntent.policyEffect?

"EFFECT_ALLOW" | "EFFECT_DENY"

Description

The instruction to DENY or ALLOW an activity (optional).

activity.intent.updatePolicyIntent.policyId

string

Description

Unique identifier for a given Policy.

activity.intent.updatePolicyIntent.policyName?

string

Description

Human-readable name for a Policy.

activity.intent.updatePolicyIntent.policyNotes?

string

Description

Accompanying notes for a Policy (optional).

activity.intent.updatePolicyIntentV2?

{ policyCondition?: string; policyConsensus?: string; policyEffect?: "EFFECT_ALLOW" | "EFFECT_DENY"; policyId: string; policyName?: string; policyNotes?: string; }

activity.intent.updatePolicyIntentV2.policyCondition?

string

Description

The condition expression that triggers the Effect (optional).

activity.intent.updatePolicyIntentV2.policyConsensus?

string

Description

The consensus expression that triggers the Effect (optional).

activity.intent.updatePolicyIntentV2.policyEffect?

"EFFECT_ALLOW" | "EFFECT_DENY"

Description

The instruction to DENY or ALLOW an activity (optional).

activity.intent.updatePolicyIntentV2.policyId

string

Description

Unique identifier for a given Policy.

activity.intent.updatePolicyIntentV2.policyName?

string

Description

Human-readable name for a Policy.

activity.intent.updatePolicyIntentV2.policyNotes?

string

Description

Accompanying notes for a Policy (optional).

activity.intent.updatePrivateKeyTagIntent?

{ addPrivateKeyIds: string[]; newPrivateKeyTagName?: string; privateKeyTagId: string; removePrivateKeyIds: string[]; }

activity.intent.updatePrivateKeyTagIntent.addPrivateKeyIds

string[]

Description

A list of Private Keys IDs to add this tag to.

activity.intent.updatePrivateKeyTagIntent.newPrivateKeyTagName?

string

Description

The new, human-readable name for the tag with the given ID.

activity.intent.updatePrivateKeyTagIntent.privateKeyTagId

string

Description

Unique identifier for a given Private Key Tag.

activity.intent.updatePrivateKeyTagIntent.removePrivateKeyIds

string[]

Description

A list of Private Key IDs to remove this tag from.

activity.intent.updateRootQuorumIntent?

{ threshold: number; userIds: string[]; }

activity.intent.updateRootQuorumIntent.threshold

number

Format: int32

Description

The threshold of unique approvals to reach quorum.

activity.intent.updateRootQuorumIntent.userIds

string[]

Description

The unique identifiers of users who comprise the quorum set.

activity.intent.updateUserEmailIntent?

{ userEmail: string; userId: string; verificationToken?: string; }

activity.intent.updateUserEmailIntent.userEmail

string

Description

The user’s email address. Setting this to an empty string will remove the user’s email.

activity.intent.updateUserEmailIntent.userId

string

Description

Unique identifier for a given User.

activity.intent.updateUserEmailIntent.verificationToken?

string

Description

Signed JWT containing a unique id, expiry, verification type, contact

activity.intent.updateUserIntent?

{ userEmail?: string; userId: string; userName?: string; userPhoneNumber?: string; userTagIds?: string[]; }

activity.intent.updateUserIntent.userEmail?

string

Description

The user’s email address.

activity.intent.updateUserIntent.userId

string

Description

Unique identifier for a given User.

activity.intent.updateUserIntent.userName?

string

Description

Human-readable name for a User.

activity.intent.updateUserIntent.userPhoneNumber?

string

Description

The user’s phone number in E.164 format e.g. +13214567890

activity.intent.updateUserIntent.userTagIds?

string[]

Description

An updated list of User Tags to apply to this User. This field, if not needed, should be an empty array in your request body.

activity.intent.updateUserNameIntent?

{ userId: string; userName: string; }

activity.intent.updateUserNameIntent.userId

string

Description

Unique identifier for a given User.

activity.intent.updateUserNameIntent.userName

string

Description

Human-readable name for a User.

activity.intent.updateUserPhoneNumberIntent?

{ userId: string; userPhoneNumber: string; verificationToken?: string; }

activity.intent.updateUserPhoneNumberIntent.userId

string

Description

Unique identifier for a given User.

activity.intent.updateUserPhoneNumberIntent.userPhoneNumber

string

Description

The user’s phone number in E.164 format e.g. +13214567890. Setting this to an empty string will remove the user’s phone number.

activity.intent.updateUserPhoneNumberIntent.verificationToken?

string

Description

Signed JWT containing a unique id, expiry, verification type, contact

activity.intent.updateUserTagIntent?

{ addUserIds: string[]; newUserTagName?: string; removeUserIds: string[]; userTagId: string; }

activity.intent.updateUserTagIntent.addUserIds

string[]

Description

A list of User IDs to add this tag to.

activity.intent.updateUserTagIntent.newUserTagName?

string

Description

The new, human-readable name for the tag with the given ID.

activity.intent.updateUserTagIntent.removeUserIds

string[]

Description

A list of User IDs to remove this tag from.

activity.intent.updateUserTagIntent.userTagId

string

Description

Unique identifier for a given User Tag.

activity.intent.updateWalletIntent?

{ walletId: string; walletName?: string; }

activity.intent.updateWalletIntent.walletId

string

Description

Unique identifier for a given Wallet.

activity.intent.updateWalletIntent.walletName?

string

Description

Human-readable name for a Wallet.

activity.intent.verifyOtpIntent?

{ expirationSeconds?: string; otpCode: string; otpId: string; }

activity.intent.verifyOtpIntent.expirationSeconds?

string

Description

Expiration window (in seconds) indicating how long the verification token is valid for. If not provided, a default of 1 hour will be used. Maximum value is 86400 seconds (24 hours)

activity.intent.verifyOtpIntent.otpCode

string

Description

OTP sent out to a user’s contact (email or SMS)

activity.intent.verifyOtpIntent.otpId

string

Description

ID representing the result of an init OTP activity.

activity.organizationId

string

Description

Unique identifier for a given Organization.

activity.result

{ acceptInvitationResult?: { invitationId: string; userId: string; }; activateBillingTierResult?: { productId: string; }; createApiKeysResult?: { apiKeyIds: string[]; }; createApiOnlyUsersResult?: { userIds: string[]; }; createAuthenticatorsResult?: { authenticatorIds: string[]; }; createInvitationsResult?: { invitationIds: string[]; }; createOauth2CredentialResult?: { oauth2CredentialId: string; }; createOauthProvidersResult?: { providerIds: string[]; }; createOrganizationResult?: { organizationId: string; }; createPoliciesResult?: { policyIds: string[]; }; createPolicyResult?: { policyId: string; }; createPrivateKeysResult?: { privateKeyIds: string[]; }; createPrivateKeysResultV2?: { privateKeys: object[]; }; createPrivateKeyTagResult?: { privateKeyIds: string[]; privateKeyTagId: string; }; createReadOnlySessionResult?: { organizationId: string; organizationName: string; session: string; sessionExpiry: string; userId: string; username: string; }; createReadWriteSessionResult?: { apiKeyId: string; credentialBundle: string; organizationId: string; organizationName: string; userId: string; username: string; }; createReadWriteSessionResultV2?: { apiKeyId: string; credentialBundle: string; organizationId: string; organizationName: string; userId: string; username: string; }; createSmartContractInterfaceResult?: { smartContractInterfaceId: string; }; createSubOrganizationResult?: { rootUserIds?: string[]; subOrganizationId: string; }; createSubOrganizationResultV3?: { privateKeys: object[]; rootUserIds?: string[]; subOrganizationId: string; }; createSubOrganizationResultV4?: { rootUserIds?: string[]; subOrganizationId: string; wallet?: { addresses: string[]; walletId: string; }; }; createSubOrganizationResultV5?: { rootUserIds?: string[]; subOrganizationId: string; wallet?: { addresses: string[]; walletId: string; }; }; createSubOrganizationResultV6?: { rootUserIds?: string[]; subOrganizationId: string; wallet?: { addresses: string[]; walletId: string; }; }; createSubOrganizationResultV7?: { rootUserIds?: string[]; subOrganizationId: string; wallet?: { addresses: string[]; walletId: string; }; }; createUsersResult?: { userIds: string[]; }; createUserTagResult?: { userIds: string[]; userTagId: string; }; createWalletAccountsResult?: { addresses: string[]; }; createWalletResult?: { addresses: string[]; walletId: string; }; deleteApiKeysResult?: { apiKeyIds: string[]; }; deleteAuthenticatorsResult?: { authenticatorIds: string[]; }; deleteInvitationResult?: { invitationId: string; }; deleteOauth2CredentialResult?: { oauth2CredentialId: string; }; deleteOauthProvidersResult?: { providerIds: string[]; }; deleteOrganizationResult?: { organizationId: string; }; deletePaymentMethodResult?: { paymentMethodId: string; }; deletePolicyResult?: { policyId: string; }; deletePrivateKeysResult?: { privateKeyIds: string[]; }; deletePrivateKeyTagsResult?: { privateKeyIds: string[]; privateKeyTagIds: string[]; }; deleteSmartContractInterfaceResult?: { smartContractInterfaceId: string; }; deleteSubOrganizationResult?: { subOrganizationUuid: string; }; deleteUsersResult?: { userIds: string[]; }; deleteUserTagsResult?: { userIds: string[]; userTagIds: string[]; }; deleteWalletsResult?: { walletIds: string[]; }; disableAuthProxyResult?: { [key: string]: unknown; }; disablePrivateKeyResult?: { privateKeyId: string; }; emailAuthResult?: { apiKeyId: string; userId: string; }; enableAuthProxyResult?: { userId: string; }; exportPrivateKeyResult?: { exportBundle: string; privateKeyId: string; }; exportWalletAccountResult?: { address: string; exportBundle: string; }; exportWalletResult?: { exportBundle: string; walletId: string; }; importPrivateKeyResult?: { addresses: object[]; privateKeyId: string; }; importWalletResult?: { addresses: string[]; walletId: string; }; initFiatOnRampResult?: { onRampTransactionId: string; onRampUrl: string; }; initImportPrivateKeyResult?: { importBundle: string; }; initImportWalletResult?: { importBundle: string; }; initOtpAuthResult?: { otpId: string; }; initOtpAuthResultV2?: { otpId: string; }; initOtpResult?: { otpId: string; }; initUserEmailRecoveryResult?: { userId: string; }; oauth2AuthenticateResult?: { oidcToken: string; }; oauthLoginResult?: { session: string; }; oauthResult?: { apiKeyId: string; credentialBundle: string; userId: string; }; otpAuthResult?: { apiKeyId?: string; credentialBundle?: string; userId: string; }; otpLoginResult?: { session: string; }; recoverUserResult?: { authenticatorId: string[]; }; removeOrganizationFeatureResult?: { features: object[]; }; setOrganizationFeatureResult?: { features: object[]; }; setPaymentMethodResult?: { cardHolderEmail: string; cardHolderName: string; lastFour: string; }; signRawPayloadResult?: { r: string; s: string; v: string; }; signRawPayloadsResult?: { signatures?: object[]; }; signTransactionResult?: { signedTransaction: string; }; stampLoginResult?: { session: string; }; updateAllowedOriginsResult?: { [key: string]: unknown; }; updateAuthProxyConfigResult?: { configId?: string; }; updateOauth2CredentialResult?: { oauth2CredentialId: string; }; updatePolicyResult?: { policyId: string; }; updatePolicyResultV2?: { policyId: string; }; updatePrivateKeyTagResult?: { privateKeyTagId: string; }; updateRootQuorumResult?: { [key: string]: unknown; }; updateUserEmailResult?: { userId: string; }; updateUserNameResult?: { userId: string; }; updateUserPhoneNumberResult?: { userId: string; }; updateUserResult?: { userId: string; }; updateUserTagResult?: { userTagId: string; }; updateWalletResult?: { walletId: string; }; verifyOtpResult?: { verificationToken: string; }; }

Description

Result of the intended action.

activity.result.acceptInvitationResult?

{ invitationId: string; userId: string; }

activity.result.acceptInvitationResult.invitationId

string

Description

Unique identifier for a given Invitation.

activity.result.acceptInvitationResult.userId

string

Description

Unique identifier for a given User.

activity.result.activateBillingTierResult?

{ productId: string; }

activity.result.activateBillingTierResult.productId

string

Description

The id of the product being subscribed to.

activity.result.createApiKeysResult?

{ apiKeyIds: string[]; }

activity.result.createApiKeysResult.apiKeyIds

string[]

Description

A list of API Key IDs.

activity.result.createApiOnlyUsersResult?

{ userIds: string[]; }

activity.result.createApiOnlyUsersResult.userIds

string[]

Description

A list of API-only User IDs.

activity.result.createAuthenticatorsResult?

{ authenticatorIds: string[]; }

activity.result.createAuthenticatorsResult.authenticatorIds

string[]

Description

A list of Authenticator IDs.

activity.result.createInvitationsResult?

{ invitationIds: string[]; }

activity.result.createInvitationsResult.invitationIds

string[]

Description

A list of Invitation IDs

activity.result.createOauth2CredentialResult?

{ oauth2CredentialId: string; }

activity.result.createOauth2CredentialResult.oauth2CredentialId

string

Description

Unique identifier of the OAuth 2.0 credential that was created

activity.result.createOauthProvidersResult?

{ providerIds: string[]; }

activity.result.createOauthProvidersResult.providerIds

string[]

Description

A list of unique identifiers for Oauth Providers

activity.result.createOrganizationResult?

{ organizationId: string; }

activity.result.createOrganizationResult.organizationId

string

Description

Unique identifier for a given Organization.

activity.result.createPoliciesResult?

{ policyIds: string[]; }

activity.result.createPoliciesResult.policyIds

string[]

Description

A list of unique identifiers for the created policies.

activity.result.createPolicyResult?

{ policyId: string; }

activity.result.createPolicyResult.policyId

string

Description

Unique identifier for a given Policy.

activity.result.createPrivateKeysResult?

{ privateKeyIds: string[]; }

activity.result.createPrivateKeysResult.privateKeyIds

string[]

Description

A list of Private Key IDs.

activity.result.createPrivateKeysResultV2?

{ privateKeys: object[]; }

activity.result.createPrivateKeysResultV2.privateKeys

object[]

Description

A list of Private Key IDs and addresses.

activity.result.createPrivateKeyTagResult?

{ privateKeyIds: string[]; privateKeyTagId: string; }

activity.result.createPrivateKeyTagResult.privateKeyIds

string[]

Description

A list of Private Key IDs.

activity.result.createPrivateKeyTagResult.privateKeyTagId

string

Description

Unique identifier for a given Private Key Tag.

activity.result.createReadOnlySessionResult?

{ organizationId: string; organizationName: string; session: string; sessionExpiry: string; userId: string; username: string; }

activity.result.createReadOnlySessionResult.organizationId

string

Description

Unique identifier for a given Organization. If the request is being made by a user and their Sub-Organization ID is unknown, this can be the Parent Organization ID. However, using the Sub-Organization ID is preferred due to performance reasons.

activity.result.createReadOnlySessionResult.organizationName

string

Description

Human-readable name for an Organization.

activity.result.createReadOnlySessionResult.session

string

Description

String representing a read only session

activity.result.createReadOnlySessionResult.sessionExpiry

string

Format: uint64

Description

UTC timestamp in seconds representing the expiry time for the read only session.

activity.result.createReadOnlySessionResult.userId

string

Description

Unique identifier for a given User.

activity.result.createReadOnlySessionResult.username

string

Description

Human-readable name for a User.

activity.result.createReadWriteSessionResult?

{ apiKeyId: string; credentialBundle: string; organizationId: string; organizationName: string; userId: string; username: string; }

activity.result.createReadWriteSessionResult.apiKeyId

string

Description

Unique identifier for the created API key.

activity.result.createReadWriteSessionResult.credentialBundle

string

Description

HPKE encrypted credential bundle

activity.result.createReadWriteSessionResult.organizationId

string

Description

Unique identifier for a given Organization. If the request is being made by a user and their Sub-Organization ID is unknown, this can be the Parent Organization ID. However, using the Sub-Organization ID is preferred due to performance reasons.

activity.result.createReadWriteSessionResult.organizationName

string

Description

Human-readable name for an Organization.

activity.result.createReadWriteSessionResult.userId

string

Description

Unique identifier for a given User.

activity.result.createReadWriteSessionResult.username

string

Description

Human-readable name for a User.

activity.result.createReadWriteSessionResultV2?

{ apiKeyId: string; credentialBundle: string; organizationId: string; organizationName: string; userId: string; username: string; }

activity.result.createReadWriteSessionResultV2.apiKeyId

string

Description

Unique identifier for the created API key.

activity.result.createReadWriteSessionResultV2.credentialBundle

string

Description

HPKE encrypted credential bundle

activity.result.createReadWriteSessionResultV2.organizationId

string

Description

Unique identifier for a given Organization. If the request is being made by a user and their Sub-Organization ID is unknown, this can be the Parent Organization ID. However, using the Sub-Organization ID is preferred due to performance reasons.

activity.result.createReadWriteSessionResultV2.organizationName

string

Description

Human-readable name for an Organization.

activity.result.createReadWriteSessionResultV2.userId

string

Description

Unique identifier for a given User.

activity.result.createReadWriteSessionResultV2.username

string

Description

Human-readable name for a User.

activity.result.createSmartContractInterfaceResult?

{ smartContractInterfaceId: string; }

activity.result.createSmartContractInterfaceResult.smartContractInterfaceId

string

Description

The ID of the created Smart Contract Interface.

activity.result.createSubOrganizationResult?

{ rootUserIds?: string[]; subOrganizationId: string; }

activity.result.createSubOrganizationResult.rootUserIds?

string[]

activity.result.createSubOrganizationResult.subOrganizationId

string

activity.result.createSubOrganizationResultV3?

{ privateKeys: object[]; rootUserIds?: string[]; subOrganizationId: string; }

activity.result.createSubOrganizationResultV3.privateKeys

object[]

Description

A list of Private Key IDs and addresses.

activity.result.createSubOrganizationResultV3.rootUserIds?

string[]

activity.result.createSubOrganizationResultV3.subOrganizationId

string

activity.result.createSubOrganizationResultV4?

{ rootUserIds?: string[]; subOrganizationId: string; wallet?: { addresses: string[]; walletId: string; }; }

activity.result.createSubOrganizationResultV4.rootUserIds?

string[]

activity.result.createSubOrganizationResultV4.subOrganizationId

string

activity.result.createSubOrganizationResultV4.wallet?

{ addresses: string[]; walletId: string; }

activity.result.createSubOrganizationResultV4.wallet.addresses

string[]

Description

A list of account addresses.

activity.result.createSubOrganizationResultV4.wallet.walletId

string

activity.result.createSubOrganizationResultV5?

{ rootUserIds?: string[]; subOrganizationId: string; wallet?: { addresses: string[]; walletId: string; }; }

activity.result.createSubOrganizationResultV5.rootUserIds?

string[]

activity.result.createSubOrganizationResultV5.subOrganizationId

string

activity.result.createSubOrganizationResultV5.wallet?

{ addresses: string[]; walletId: string; }

activity.result.createSubOrganizationResultV5.wallet.addresses

string[]

Description

A list of account addresses.

activity.result.createSubOrganizationResultV5.wallet.walletId

string

activity.result.createSubOrganizationResultV6?

{ rootUserIds?: string[]; subOrganizationId: string; wallet?: { addresses: string[]; walletId: string; }; }

activity.result.createSubOrganizationResultV6.rootUserIds?

string[]

activity.result.createSubOrganizationResultV6.subOrganizationId

string

activity.result.createSubOrganizationResultV6.wallet?

{ addresses: string[]; walletId: string; }

activity.result.createSubOrganizationResultV6.wallet.addresses

string[]

Description

A list of account addresses.

activity.result.createSubOrganizationResultV6.wallet.walletId

string

activity.result.createSubOrganizationResultV7?

{ rootUserIds?: string[]; subOrganizationId: string; wallet?: { addresses: string[]; walletId: string; }; }

activity.result.createSubOrganizationResultV7.rootUserIds?

string[]

activity.result.createSubOrganizationResultV7.subOrganizationId

string

activity.result.createSubOrganizationResultV7.wallet?

{ addresses: string[]; walletId: string; }

activity.result.createSubOrganizationResultV7.wallet.addresses

string[]

Description

A list of account addresses.

activity.result.createSubOrganizationResultV7.wallet.walletId

string

activity.result.createUsersResult?

{ userIds: string[]; }

activity.result.createUsersResult.userIds

string[]

Description

A list of User IDs.

activity.result.createUserTagResult?

{ userIds: string[]; userTagId: string; }

activity.result.createUserTagResult.userIds

string[]

Description

A list of User IDs.

activity.result.createUserTagResult.userTagId

string

Description

Unique identifier for a given User Tag.

activity.result.createWalletAccountsResult?

{ addresses: string[]; }

activity.result.createWalletAccountsResult.addresses

string[]

Description

A list of derived addresses.

activity.result.createWalletResult?

{ addresses: string[]; walletId: string; }

activity.result.createWalletResult.addresses

string[]

Description

A list of account addresses.

activity.result.createWalletResult.walletId

string

Description

Unique identifier for a Wallet.

activity.result.deleteApiKeysResult?

{ apiKeyIds: string[]; }

activity.result.deleteApiKeysResult.apiKeyIds

string[]

Description

A list of API Key IDs.

activity.result.deleteAuthenticatorsResult?

{ authenticatorIds: string[]; }

activity.result.deleteAuthenticatorsResult.authenticatorIds

string[]

Description

Unique identifier for a given Authenticator.

activity.result.deleteInvitationResult?

{ invitationId: string; }

activity.result.deleteInvitationResult.invitationId

string

Description

Unique identifier for a given Invitation.

activity.result.deleteOauth2CredentialResult?

{ oauth2CredentialId: string; }

activity.result.deleteOauth2CredentialResult.oauth2CredentialId

string

Description

Unique identifier of the OAuth 2.0 credential that was deleted

activity.result.deleteOauthProvidersResult?

{ providerIds: string[]; }

activity.result.deleteOauthProvidersResult.providerIds

string[]

Description

A list of unique identifiers for Oauth Providers

activity.result.deleteOrganizationResult?

{ organizationId: string; }

activity.result.deleteOrganizationResult.organizationId

string

Description

Unique identifier for a given Organization.

activity.result.deletePaymentMethodResult?

{ paymentMethodId: string; }

activity.result.deletePaymentMethodResult.paymentMethodId

string

Description

The payment method that was removed.

activity.result.deletePolicyResult?

{ policyId: string; }

activity.result.deletePolicyResult.policyId

string

Description

Unique identifier for a given Policy.

activity.result.deletePrivateKeysResult?

{ privateKeyIds: string[]; }

activity.result.deletePrivateKeysResult.privateKeyIds

string[]

Description

A list of private key unique identifiers that were removed

activity.result.deletePrivateKeyTagsResult?

{ privateKeyIds: string[]; privateKeyTagIds: string[]; }

activity.result.deletePrivateKeyTagsResult.privateKeyIds

string[]

Description

A list of Private Key IDs.

activity.result.deletePrivateKeyTagsResult.privateKeyTagIds

string[]

Description

A list of Private Key Tag IDs.

activity.result.deleteSmartContractInterfaceResult?

{ smartContractInterfaceId: string; }

activity.result.deleteSmartContractInterfaceResult.smartContractInterfaceId

string

Description

The ID of the deleted Smart Contract Interface.

activity.result.deleteSubOrganizationResult?

{ subOrganizationUuid: string; }

activity.result.deleteSubOrganizationResult.subOrganizationUuid

string

Description

Unique identifier of the sub organization that was removed

activity.result.deleteUsersResult?

{ userIds: string[]; }

activity.result.deleteUsersResult.userIds

string[]

Description

A list of User IDs.

activity.result.deleteUserTagsResult?

{ userIds: string[]; userTagIds: string[]; }

activity.result.deleteUserTagsResult.userIds

string[]

Description

A list of User IDs.

activity.result.deleteUserTagsResult.userTagIds

string[]

Description

A list of User Tag IDs.

activity.result.deleteWalletsResult?

{ walletIds: string[]; }

activity.result.deleteWalletsResult.walletIds

string[]

Description

A list of wallet unique identifiers that were removed

activity.result.disableAuthProxyResult?

{ [key: string]: unknown; }

activity.result.disablePrivateKeyResult?

{ privateKeyId: string; }

activity.result.disablePrivateKeyResult.privateKeyId

string

Description

Unique identifier for a given Private Key.

activity.result.emailAuthResult?

{ apiKeyId: string; userId: string; }

activity.result.emailAuthResult.apiKeyId

string

Description

Unique identifier for the created API key.

activity.result.emailAuthResult.userId

string

Description

Unique identifier for the authenticating User.

activity.result.enableAuthProxyResult?

{ userId: string; }

activity.result.enableAuthProxyResult.userId

string

Description

A User ID with permission to initiate authentication.

activity.result.exportPrivateKeyResult?

{ exportBundle: string; privateKeyId: string; }

activity.result.exportPrivateKeyResult.exportBundle

string

Description

Export bundle containing a private key encrypted to the client’s target public key.

activity.result.exportPrivateKeyResult.privateKeyId

string

Description

Unique identifier for a given Private Key.

activity.result.exportWalletAccountResult?

{ address: string; exportBundle: string; }

activity.result.exportWalletAccountResult.address

string

Description

Address to identify Wallet Account.

activity.result.exportWalletAccountResult.exportBundle

string

Description

Export bundle containing a private key encrypted by the client’s target public key.

activity.result.exportWalletResult?

{ exportBundle: string; walletId: string; }

activity.result.exportWalletResult.exportBundle

string

Description

Export bundle containing a wallet mnemonic + optional newline passphrase encrypted by the client’s target public key.

activity.result.exportWalletResult.walletId

string

Description

Unique identifier for a given Wallet.

activity.result.importPrivateKeyResult?

{ addresses: object[]; privateKeyId: string; }

activity.result.importPrivateKeyResult.addresses

object[]

Description

A list of addresses.

activity.result.importPrivateKeyResult.privateKeyId

string

Description

Unique identifier for a Private Key.

activity.result.importWalletResult?

{ addresses: string[]; walletId: string; }

activity.result.importWalletResult.addresses

string[]

Description

A list of account addresses.

activity.result.importWalletResult.walletId

string

Description

Unique identifier for a Wallet.

activity.result.initFiatOnRampResult?

{ onRampTransactionId: string; onRampUrl: string; }

activity.result.initFiatOnRampResult.onRampTransactionId

string

Description

Unique identifier used to retrieve transaction statuses for a given fiat on-ramp flow.

activity.result.initFiatOnRampResult.onRampUrl

string

Description

Unique URL for a given fiat on-ramp flow.

activity.result.initImportPrivateKeyResult?

{ importBundle: string; }

activity.result.initImportPrivateKeyResult.importBundle

string

Description

Import bundle containing a public key and signature to use for importing client data.

activity.result.initImportWalletResult?

{ importBundle: string; }

activity.result.initImportWalletResult.importBundle

string

Description

Import bundle containing a public key and signature to use for importing client data.

activity.result.initOtpAuthResult?

{ otpId: string; }

activity.result.initOtpAuthResult.otpId

string

Description

Unique identifier for an OTP authentication

activity.result.initOtpAuthResultV2?

{ otpId: string; }

activity.result.initOtpAuthResultV2.otpId

string

Description

Unique identifier for an OTP authentication

activity.result.initOtpResult?

{ otpId: string; }

activity.result.initOtpResult.otpId

string

Description

Unique identifier for an OTP authentication

activity.result.initUserEmailRecoveryResult?

{ userId: string; }

activity.result.initUserEmailRecoveryResult.userId

string

Description

Unique identifier for the user being recovered.

activity.result.oauth2AuthenticateResult?

{ oidcToken: string; }

activity.result.oauth2AuthenticateResult.oidcToken

string

Description

Base64 encoded OIDC token issued by Turnkey to be used with the LoginWithOAuth activity

activity.result.oauthLoginResult?

{ session: string; }

activity.result.oauthLoginResult.session

string

Description

Signed JWT containing an expiry, public key, session type, user id, and organization id

activity.result.oauthResult?

{ apiKeyId: string; credentialBundle: string; userId: string; }

activity.result.oauthResult.apiKeyId

string

Description

Unique identifier for the created API key.

activity.result.oauthResult.credentialBundle

string

Description

HPKE encrypted credential bundle

activity.result.oauthResult.userId

string

Description

Unique identifier for the authenticating User.

activity.result.otpAuthResult?

{ apiKeyId?: string; credentialBundle?: string; userId: string; }

activity.result.otpAuthResult.apiKeyId?

string

Description

Unique identifier for the created API key.

activity.result.otpAuthResult.credentialBundle?

string

Description

HPKE encrypted credential bundle

activity.result.otpAuthResult.userId

string

Description

Unique identifier for the authenticating User.

activity.result.otpLoginResult?

{ session: string; }

activity.result.otpLoginResult.session

string

Description

Signed JWT containing an expiry, public key, session type, user id, and organization id

activity.result.recoverUserResult?

{ authenticatorId: string[]; }

activity.result.recoverUserResult.authenticatorId

string[]

Description

ID of the authenticator created.

activity.result.removeOrganizationFeatureResult?

{ features: object[]; }

activity.result.removeOrganizationFeatureResult.features

object[]

Description

Resulting list of organization features.

activity.result.setOrganizationFeatureResult?

{ features: object[]; }

activity.result.setOrganizationFeatureResult.features

object[]

Description

Resulting list of organization features.

activity.result.setPaymentMethodResult?

{ cardHolderEmail: string; cardHolderName: string; lastFour: string; }

activity.result.setPaymentMethodResult.cardHolderEmail

string

Description

The email address associated with the payment method.

activity.result.setPaymentMethodResult.cardHolderName

string

Description

The name associated with the payment method.

activity.result.setPaymentMethodResult.lastFour

string

Description

The last four digits of the credit card added.

activity.result.signRawPayloadResult?

{ r: string; s: string; v: string; }

activity.result.signRawPayloadResult.r

string

Description

Component of an ECSDA signature.

activity.result.signRawPayloadResult.s

string

Description

Component of an ECSDA signature.

activity.result.signRawPayloadResult.v

string

Description

Component of an ECSDA signature.

activity.result.signRawPayloadsResult?

{ signatures?: object[]; }

activity.result.signRawPayloadsResult.signatures?

object[]

activity.result.signTransactionResult?

{ signedTransaction: string; }

activity.result.signTransactionResult.signedTransaction

string

activity.result.stampLoginResult?

{ session: string; }

activity.result.stampLoginResult.session

string

Description

Signed JWT containing an expiry, public key, session type, user id, and organization id

activity.result.updateAllowedOriginsResult?

{ [key: string]: unknown; }

activity.result.updateAuthProxyConfigResult?

{ configId?: string; }

activity.result.updateAuthProxyConfigResult.configId?

string

Description

Unique identifier for a given User. (representing the turnkey signer user id)

activity.result.updateOauth2CredentialResult?

{ oauth2CredentialId: string; }

activity.result.updateOauth2CredentialResult.oauth2CredentialId

string

Description

Unique identifier of the OAuth 2.0 credential that was updated

activity.result.updatePolicyResult?

{ policyId: string; }

activity.result.updatePolicyResult.policyId

string

Description

Unique identifier for a given Policy.

activity.result.updatePolicyResultV2?

{ policyId: string; }

activity.result.updatePolicyResultV2.policyId

string

Description

Unique identifier for a given Policy.

activity.result.updatePrivateKeyTagResult?

{ privateKeyTagId: string; }

activity.result.updatePrivateKeyTagResult.privateKeyTagId

string

Description

Unique identifier for a given Private Key Tag.

activity.result.updateRootQuorumResult?

{ [key: string]: unknown; }

activity.result.updateUserEmailResult?

{ userId: string; }

activity.result.updateUserEmailResult.userId

string

Description

Unique identifier of the User whose email was updated.

activity.result.updateUserNameResult?

{ userId: string; }

activity.result.updateUserNameResult.userId

string

Description

Unique identifier of the User whose name was updated.

activity.result.updateUserPhoneNumberResult?

{ userId: string; }

activity.result.updateUserPhoneNumberResult.userId

string

Description

Unique identifier of the User whose phone number was updated.

activity.result.updateUserResult?

{ userId: string; }

activity.result.updateUserResult.userId

string

Description

A User ID.

activity.result.updateUserTagResult?

{ userTagId: string; }

activity.result.updateUserTagResult.userTagId

string

Description

Unique identifier for a given User Tag.

activity.result.updateWalletResult?

{ walletId: string; }

activity.result.updateWalletResult.walletId

string

Description

A Wallet ID.

activity.result.verifyOtpResult?

{ verificationToken: string; }

activity.result.verifyOtpResult.verificationToken

string

Description

Signed JWT containing a unique id, expiry, verification type, contact. Verification status of a user is updated when the token is consumed (in OTP_LOGIN requests)

activity.status

| "ACTIVITY_STATUS_CREATED" | "ACTIVITY_STATUS_PENDING" | "ACTIVITY_STATUS_COMPLETED" | "ACTIVITY_STATUS_FAILED" | "ACTIVITY_STATUS_CONSENSUS_NEEDED" | "ACTIVITY_STATUS_REJECTED"

Description

The current processing status of a specified Activity.

activity.type

| "ACTIVITY_TYPE_CREATE_API_KEYS" | "ACTIVITY_TYPE_CREATE_USERS" | "ACTIVITY_TYPE_CREATE_PRIVATE_KEYS" | "ACTIVITY_TYPE_SIGN_RAW_PAYLOAD" | "ACTIVITY_TYPE_CREATE_INVITATIONS" | "ACTIVITY_TYPE_ACCEPT_INVITATION" | "ACTIVITY_TYPE_CREATE_POLICY" | "ACTIVITY_TYPE_DISABLE_PRIVATE_KEY" | "ACTIVITY_TYPE_DELETE_USERS" | "ACTIVITY_TYPE_DELETE_API_KEYS" | "ACTIVITY_TYPE_DELETE_INVITATION" | "ACTIVITY_TYPE_DELETE_ORGANIZATION" | "ACTIVITY_TYPE_DELETE_POLICY" | "ACTIVITY_TYPE_CREATE_USER_TAG" | "ACTIVITY_TYPE_DELETE_USER_TAGS" | "ACTIVITY_TYPE_CREATE_ORGANIZATION" | "ACTIVITY_TYPE_SIGN_TRANSACTION" | "ACTIVITY_TYPE_APPROVE_ACTIVITY" | "ACTIVITY_TYPE_REJECT_ACTIVITY" | "ACTIVITY_TYPE_DELETE_AUTHENTICATORS" | "ACTIVITY_TYPE_CREATE_AUTHENTICATORS" | "ACTIVITY_TYPE_CREATE_PRIVATE_KEY_TAG" | "ACTIVITY_TYPE_DELETE_PRIVATE_KEY_TAGS" | "ACTIVITY_TYPE_SET_PAYMENT_METHOD" | "ACTIVITY_TYPE_ACTIVATE_BILLING_TIER" | "ACTIVITY_TYPE_DELETE_PAYMENT_METHOD" | "ACTIVITY_TYPE_CREATE_POLICY_V2" | "ACTIVITY_TYPE_CREATE_POLICY_V3" | "ACTIVITY_TYPE_CREATE_API_ONLY_USERS" | "ACTIVITY_TYPE_UPDATE_ROOT_QUORUM" | "ACTIVITY_TYPE_UPDATE_USER_TAG" | "ACTIVITY_TYPE_UPDATE_PRIVATE_KEY_TAG" | "ACTIVITY_TYPE_CREATE_AUTHENTICATORS_V2" | "ACTIVITY_TYPE_CREATE_ORGANIZATION_V2" | "ACTIVITY_TYPE_CREATE_USERS_V2" | "ACTIVITY_TYPE_ACCEPT_INVITATION_V2" | "ACTIVITY_TYPE_CREATE_SUB_ORGANIZATION" | "ACTIVITY_TYPE_CREATE_SUB_ORGANIZATION_V2" | "ACTIVITY_TYPE_UPDATE_ALLOWED_ORIGINS" | "ACTIVITY_TYPE_CREATE_PRIVATE_KEYS_V2" | "ACTIVITY_TYPE_UPDATE_USER" | "ACTIVITY_TYPE_UPDATE_POLICY" | "ACTIVITY_TYPE_SET_PAYMENT_METHOD_V2" | "ACTIVITY_TYPE_CREATE_SUB_ORGANIZATION_V3" | "ACTIVITY_TYPE_CREATE_WALLET" | "ACTIVITY_TYPE_CREATE_WALLET_ACCOUNTS" | "ACTIVITY_TYPE_INIT_USER_EMAIL_RECOVERY" | "ACTIVITY_TYPE_RECOVER_USER" | "ACTIVITY_TYPE_SET_ORGANIZATION_FEATURE" | "ACTIVITY_TYPE_REMOVE_ORGANIZATION_FEATURE" | "ACTIVITY_TYPE_SIGN_RAW_PAYLOAD_V2" | "ACTIVITY_TYPE_SIGN_TRANSACTION_V2" | "ACTIVITY_TYPE_EXPORT_PRIVATE_KEY" | "ACTIVITY_TYPE_EXPORT_WALLET" | "ACTIVITY_TYPE_CREATE_SUB_ORGANIZATION_V4" | "ACTIVITY_TYPE_EMAIL_AUTH" | "ACTIVITY_TYPE_EXPORT_WALLET_ACCOUNT" | "ACTIVITY_TYPE_INIT_IMPORT_WALLET" | "ACTIVITY_TYPE_IMPORT_WALLET" | "ACTIVITY_TYPE_INIT_IMPORT_PRIVATE_KEY" | "ACTIVITY_TYPE_IMPORT_PRIVATE_KEY" | "ACTIVITY_TYPE_CREATE_POLICIES" | "ACTIVITY_TYPE_SIGN_RAW_PAYLOADS" | "ACTIVITY_TYPE_CREATE_READ_ONLY_SESSION" | "ACTIVITY_TYPE_CREATE_OAUTH_PROVIDERS" | "ACTIVITY_TYPE_DELETE_OAUTH_PROVIDERS" | "ACTIVITY_TYPE_CREATE_SUB_ORGANIZATION_V5" | "ACTIVITY_TYPE_OAUTH" | "ACTIVITY_TYPE_CREATE_API_KEYS_V2" | "ACTIVITY_TYPE_CREATE_READ_WRITE_SESSION" | "ACTIVITY_TYPE_EMAIL_AUTH_V2" | "ACTIVITY_TYPE_CREATE_SUB_ORGANIZATION_V6" | "ACTIVITY_TYPE_DELETE_PRIVATE_KEYS" | "ACTIVITY_TYPE_DELETE_WALLETS" | "ACTIVITY_TYPE_CREATE_READ_WRITE_SESSION_V2" | "ACTIVITY_TYPE_DELETE_SUB_ORGANIZATION" | "ACTIVITY_TYPE_INIT_OTP_AUTH" | "ACTIVITY_TYPE_OTP_AUTH" | "ACTIVITY_TYPE_CREATE_SUB_ORGANIZATION_V7" | "ACTIVITY_TYPE_UPDATE_WALLET" | "ACTIVITY_TYPE_UPDATE_POLICY_V2" | "ACTIVITY_TYPE_CREATE_USERS_V3" | "ACTIVITY_TYPE_INIT_OTP_AUTH_V2" | "ACTIVITY_TYPE_INIT_OTP" | "ACTIVITY_TYPE_VERIFY_OTP" | "ACTIVITY_TYPE_OTP_LOGIN" | "ACTIVITY_TYPE_STAMP_LOGIN" | "ACTIVITY_TYPE_OAUTH_LOGIN" | "ACTIVITY_TYPE_UPDATE_USER_NAME" | "ACTIVITY_TYPE_UPDATE_USER_EMAIL" | "ACTIVITY_TYPE_UPDATE_USER_PHONE_NUMBER" | "ACTIVITY_TYPE_INIT_FIAT_ON_RAMP" | "ACTIVITY_TYPE_CREATE_SMART_CONTRACT_INTERFACE" | "ACTIVITY_TYPE_DELETE_SMART_CONTRACT_INTERFACE" | "ACTIVITY_TYPE_ENABLE_AUTH_PROXY" | "ACTIVITY_TYPE_DISABLE_AUTH_PROXY" | "ACTIVITY_TYPE_UPDATE_AUTH_PROXY_CONFIG" | "ACTIVITY_TYPE_CREATE_OAUTH2_CREDENTIAL" | "ACTIVITY_TYPE_UPDATE_OAUTH2_CREDENTIAL" | "ACTIVITY_TYPE_DELETE_OAUTH2_CREDENTIAL" | "ACTIVITY_TYPE_OAUTH2_AUTHENTICATE"

Description

Type of Activity, such as Add User, or Sign Transaction.

activity.updatedAt

{ nanos: string; seconds: string; }

activity.updatedAt.nanos

string

activity.updatedAt.seconds

string

activity.votes

object[]

Description

A list of objects representing a particular User’s approval or rejection of a Consensus request, including all relevant metadata.

organizationId

string

resultKey

T

Returns

Promise<NonNullable<object[T]>>


removeEmail()

1removeEmail(): Promise<void>;

Defined in: account-kit/signer/src/client/base.ts:364

Removes the email for the authenticated user, disallowing them from login with that email.

Returns

Promise<void>

A promise that resolves when the email is removed

Throws

If the user is not authenticated


removeMfa()

1removeMfa(params): Promise<{
2 multiFactors: MfaFactor[];
3}>;

Defined in: account-kit/signer/src/client/base.ts:1226

Removes existing MFA factors by ID.

Parameters

ParameterTypeDescription

params

RemoveMfaParams

The parameters specifying which factors to disable

Returns

Promise<{ multiFactors: MfaFactor[]; }>

A promise that resolves to the updated list of MFA factors

Throws

If no user is authenticated


removeOauthProvider()

1removeOauthProvider(providerId): Promise<void>;

Defined in: account-kit/signer/src/client/base.ts:626

Deletes a specified OAuth provider for the authenticated user.

Parameters

ParameterTypeDescription

providerId

string

The ID of the provider to be deleted

Returns

Promise<void>

Throws

If the user is not authenticated


removePasskey()

1removePasskey(authenticatorId): Promise<void>;

Defined in: account-kit/signer/src/client/base.ts:533

Removes a passkey authenticator from the user’s account.

Parameters

ParameterTypeDescription

authenticatorId

string

The ID of the authenticator to remove.

Returns

Promise<void>

A promise that resolves when the authenticator is removed.

Throws

If the user is not authenticated.


removePhoneNumber()

1removePhoneNumber(): Promise<void>;

Defined in: account-kit/signer/src/client/base.ts:433

Removes the phone number for the authenticated user, disallowing them from login with that phone number.

Returns

Promise<void>

A promise that resolves when the phone number is removed

Throws

If the user is not authenticated


request()

1request<R>(route, body): Promise<SignerResponse<R>>;

Defined in: account-kit/signer/src/client/base.ts:1086

Sends a POST request to the given signer route with the specified body and returns the response. Not intended to be used directly, use the specific methods instead on the client instead.

Type Parameters

Type Parameter

R extends | "/v1/signup" | "/v1/whoami" | "/v1/auth" | "/v1/lookup" | "/v1/init-otp" | "/v1/verify-otp" | "/v1/sign-payload" | "/v1/update-email-auth" | "/v1/update-phone-auth" | "/v1/add-oauth-provider" | "/v1/remove-oauth-provider" | "/v1/list-auth-methods" | "/v1/prepare-oauth" | "/v1/otp" | "/v1/auth-list-multi-factors" | "/v1/auth-delete-multi-factors" | "/v1/auth-request-multi-factor" | "/v1/auth-verify-multi-factor" | "/v1/auth-jwt" | "/v1/signer-config" | "/v1/auth-validate-multi-factors" | "/v1/multi-owner-create" | "/v1/multi-owner-prepare-add" | "/v1/multi-owner-add" | "/v1/multi-owner-update-root-quorum" | "/v1/multi-owner-sign-raw-payload" | "/v1/multi-owner-prepare-delete" | "/v1/multi-owner-delete"

Parameters

ParameterTypeDescription

route

R

The route to which the request should be sent

body

SignerBody<R>

The request body containing the data to be sent

Returns

Promise<SignerResponse<R>>

A promise that resolves to the response from the signer


setEmail()

Implementation for setEmail method with optional OTP verification.

Param

An OTP object containing the OTP ID & OTP code (or an email address for legacy usage)

Call Signature

1setEmail(email): Promise<string>;

Defined in: account-kit/signer/src/client/base.ts:318

Sets the email for the authenticated user, allowing them to login with that email.

Deprecated

You must contact Alchemy to enable this feature for your team, as there are important security considerations. In particular, you must not call this without first validating that the user owns this email account. Recommended to use the email verification flow instead.

Parameters
ParameterTypeDescription

email

string

The email to set for the user

Returns

Promise<string>

A promise that resolves to the updated email

Throws

If the user is not authenticated

Call Signature

1setEmail(otp): Promise<string>;

Defined in: account-kit/signer/src/client/base.ts:328

Sets the email for the authenticated user, allowing them to login with that email. Must be called after calling initOtp with the email.

Parameters
ParameterTypeDescription

otp

VerificationOtp

The OTP verification object including the OTP ID and OTP code

Returns

Promise<string>

A promise that resolves to the updated email

Throws

If the user is not authenticated


setPhoneNumber()

1setPhoneNumber(otp): Promise<void>;

Defined in: account-kit/signer/src/client/base.ts:418

Updates the phone number for the authenticated user, allowing them to login with that phone number. Must be called after calling initOtp with the phone number.

Parameters

ParameterTypeDescription

otp

VerificationOtp

The OTP object including the OTP ID and OTP code

Returns

Promise<void>

A promise that resolves when the phone number is set

Throws

If the user is not authenticated


setStamper()

1protected setStamper(stamper): void;

Defined in: account-kit/signer/src/client/base.ts:148

Sets the stamper of the TurnkeyClient.

Parameters

ParameterTypeDescription

stamper

TStamper

the stamper function to set for the TurnkeyClient

Returns

void


signRawMessage()

1signRawMessage(msg, mode): Promise<`0x${string}`>;

Defined in: account-kit/signer/src/client/base.ts:834

This will sign a message with the user’s private key, without doing any transformations on the message. For SignMessage or SignTypedData, the caller should hash the message before calling this method and pass that result here.

Parameters

ParameterTypeDefault valueDescription

msg

`0x${string}`

undefined

the hex representation of the bytes to sign

mode

"SOLANA" | "ETHEREUM"

"ETHEREUM"

specify if signing should happen for solana or ethereum

Returns

Promise<`0x${string}`>

the signature over the raw hex


stampGetOrganization()

1stampGetOrganization(): Promise<TSignedRequest>;

Defined in: account-kit/signer/src/client/base.ts:742

Generates a stamped getOrganization request for the current user.

Returns

Promise<TSignedRequest>

a promise that resolves to the “getOrganization” information for the logged in user

Throws

if no user is authenticated


stampWhoami()

1stampWhoami(): Promise<TSignedRequest>;

Defined in: account-kit/signer/src/client/base.ts:726

Generates a stamped whoami request for the current user. This request can then be used to call /signer/v1/whoami to get the user information. This is useful if you want to get the user information in a different context like a server. You can pass the stamped request to the server and then call our API to get the user information. Using this stamp is the most trusted way to get the user information since a stamp can only belong to the user who created it.

Returns

Promise<TSignedRequest>

a promise that resolves to the “whoami” information for the logged in user

Throws

if no organization ID is provided


submitJwt()

1abstract submitJwt(args): Promise<JwtResponse>;

Defined in: account-kit/signer/src/client/base.ts:256

Parameters

ParameterType

args

Omit<JwtParams, "targetPublicKey">

Returns

Promise<JwtResponse>


submitOtpCode()

1abstract submitOtpCode(args): Promise<SubmitOtpCodeResponse>;

Defined in: account-kit/signer/src/client/base.ts:252

Parameters

ParameterType

args

Omit<OtpParams, "targetPublicKey">

Returns

Promise<SubmitOtpCodeResponse>


targetPublicKey()

1abstract targetPublicKey(): Promise<string>;

Defined in: account-kit/signer/src/client/base.ts:266

Returns

Promise<string>


validateMultiFactors()

1validateMultiFactors(params): Promise<{
2 bundle: string;
3}>;

Defined in: account-kit/signer/src/client/base.ts:1258

Validates multiple MFA factors using the provided encrypted payload and MFA codes.

Parameters

ParameterTypeDescription

params

ValidateMultiFactorsParams

The validation parameters

Returns

Promise<{ bundle: string; }>

A promise that resolves to an object containing the credential bundle

Throws

If no credential bundle is returned from the server


verifyMfa()

1verifyMfa(params): Promise<{
2 multiFactors: MfaFactor[];
3}>;

Defined in: account-kit/signer/src/client/base.ts:1193

Verifies a newly created MFA factor to complete the setup process.

Parameters

ParameterTypeDescription

params

VerifyMfaParams

The parameters required to verify the MFA factor

Returns

Promise<{ multiFactors: MfaFactor[]; }>

A promise that resolves to the updated list of MFA factors

Throws

If no user is authenticated


whoami()

1whoami(
2 orgId?,
3 idToken?,
4 accessToken?): Promise<User>;

Defined in: account-kit/signer/src/client/base.ts:666

Retrieves the current user or fetches the user information if not already available.

Parameters

ParameterTypeDescription

orgId?

string

optional organization ID, defaults to the user’s organization ID

idToken?

string

an OIDC ID token containing additional user information

accessToken?

string

an access token which if provided will be added to the user

Returns

Promise<User>

A promise that resolves to the user object

Throws

if no organization ID is provided when there is no current user