@shogun-sdk/accounts
Version:
Shogun with Turnkey: configs, encryption, authentication with Telegram/Turnkey OIDC, etc.
793 lines • 240 kB
TypeScript
import { Attestation, Email, EmailParam, OauthProviderParams, OidcTokenParam, PublicKeyParam, UserNameParam, Wallet } from '../types/turnkey.js';
import { ApiKeyStamper } from '@turnkey/sdk-server';
export declare const TURNKEY_SESSION_EXPIRE = "7200";
export interface ITurnkeyConfig {
apiBaseUrl: string;
defaultOrganizationId: string;
rpId: string;
iframeUrl: string;
}
export declare const getTurnkeyConfig: (baseUrl: string, organizationId: string, rpId: string) => ITurnkeyConfig;
export declare const TURNKEY_EMBEDDED_KEY = "@turnkey/embedded_key";
export declare const TURNKEY_EMBEDDED_KEY_TTL_IN_MILLIS: number;
export declare const TURNKEY_CREDENTIAL_BUNDLE = "@turnkey/credential_bundle";
export declare const TURNKEY_CREDENTIAL_BUNDLE_TTL_IN_MILLIS: number;
export declare const getApiKeyStamper: (apiPublicKey: string, apiPrivateKey: string) => ApiKeyStamper;
export declare const oauth: ({ credential, targetPublicKey, targetSubOrgId, config, stamper, }: {
credential: string;
targetPublicKey: string;
targetSubOrgId: string;
config: ITurnkeyConfig;
stamper: ApiKeyStamper;
}) => Promise<{
userId: string;
apiKeyId: string;
credentialBundle: string;
} & {
activity: {
id: string;
organizationId: 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";
intent: {
createOrganizationIntent?: {
organizationName: string;
rootEmail: string;
rootAuthenticator: {
authenticatorName: string;
userId: string;
attestation: {
id: string;
type: "public-key";
rawId: string;
authenticatorAttachment?: "cross-platform" | "platform" | null;
response: {
clientDataJson: string;
attestationObject: string;
transports?: ("AUTHENTICATOR_TRANSPORT_BLE" | "AUTHENTICATOR_TRANSPORT_INTERNAL" | "AUTHENTICATOR_TRANSPORT_NFC" | "AUTHENTICATOR_TRANSPORT_USB" | "AUTHENTICATOR_TRANSPORT_HYBRID")[];
authenticatorAttachment?: "cross-platform" | "platform" | null;
};
clientExtensionResults: {
appid?: boolean;
appidExclude?: boolean;
credProps?: {
rk: boolean;
};
};
};
challenge: string;
};
rootUserId?: string;
};
createAuthenticatorsIntent?: {
authenticators: {
authenticatorName: string;
userId: string;
attestation: {
id: string;
type: "public-key";
rawId: string;
authenticatorAttachment?: "cross-platform" | "platform" | null;
response: {
clientDataJson: string;
attestationObject: string;
transports?: ("AUTHENTICATOR_TRANSPORT_BLE" | "AUTHENTICATOR_TRANSPORT_INTERNAL" | "AUTHENTICATOR_TRANSPORT_NFC" | "AUTHENTICATOR_TRANSPORT_USB" | "AUTHENTICATOR_TRANSPORT_HYBRID")[];
authenticatorAttachment?: "cross-platform" | "platform" | null;
};
clientExtensionResults: {
appid?: boolean;
appidExclude?: boolean;
credProps?: {
rk: boolean;
};
};
};
challenge: string;
}[];
userId: string;
};
createUsersIntent?: {
users: {
userName: string;
userEmail?: string;
accessType: "ACCESS_TYPE_WEB" | "ACCESS_TYPE_API" | "ACCESS_TYPE_ALL";
apiKeys: {
apiKeyName: string;
publicKey: string;
expirationSeconds?: string;
}[];
authenticators: {
authenticatorName: string;
userId: string;
attestation: {
id: string;
type: "public-key";
rawId: string;
authenticatorAttachment?: "cross-platform" | "platform" | null;
response: {
clientDataJson: string;
attestationObject: string;
transports?: ("AUTHENTICATOR_TRANSPORT_BLE" | "AUTHENTICATOR_TRANSPORT_INTERNAL" | "AUTHENTICATOR_TRANSPORT_NFC" | "AUTHENTICATOR_TRANSPORT_USB" | "AUTHENTICATOR_TRANSPORT_HYBRID")[];
authenticatorAttachment?: "cross-platform" | "platform" | null;
};
clientExtensionResults: {
appid?: boolean;
appidExclude?: boolean;
credProps?: {
rk: boolean;
};
};
};
challenge: string;
}[];
userTags: string[];
}[];
};
createPrivateKeysIntent?: {
privateKeys: {
privateKeyName: string;
curve: "CURVE_SECP256K1" | "CURVE_ED25519";
privateKeyTags: string[];
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")[];
}[];
};
signRawPayloadIntent?: {
privateKeyId: string;
payload: string;
encoding: "PAYLOAD_ENCODING_HEXADECIMAL" | "PAYLOAD_ENCODING_TEXT_UTF8";
hashFunction: "HASH_FUNCTION_NO_OP" | "HASH_FUNCTION_SHA256" | "HASH_FUNCTION_KECCAK256" | "HASH_FUNCTION_NOT_APPLICABLE";
};
createInvitationsIntent?: {
invitations: {
receiverUserName: string;
receiverUserEmail: string;
receiverUserTags: string[];
accessType: "ACCESS_TYPE_WEB" | "ACCESS_TYPE_API" | "ACCESS_TYPE_ALL";
senderUserId: string;
}[];
};
acceptInvitationIntent?: {
invitationId: string;
userId: string;
authenticator: {
authenticatorName: string;
userId: string;
attestation: {
id: string;
type: "public-key";
rawId: string;
authenticatorAttachment?: "cross-platform" | "platform" | null;
response: {
clientDataJson: string;
attestationObject: string;
transports?: ("AUTHENTICATOR_TRANSPORT_BLE" | "AUTHENTICATOR_TRANSPORT_INTERNAL" | "AUTHENTICATOR_TRANSPORT_NFC" | "AUTHENTICATOR_TRANSPORT_USB" | "AUTHENTICATOR_TRANSPORT_HYBRID")[];
authenticatorAttachment?: "cross-platform" | "platform" | null;
};
clientExtensionResults: {
appid?: boolean;
appidExclude?: boolean;
credProps?: {
rk: boolean;
};
};
};
challenge: string;
};
};
createPolicyIntent?: {
policyName: string;
selectors: {
subject?: string;
operator?: "OPERATOR_EQUAL" | "OPERATOR_MORE_THAN" | "OPERATOR_MORE_THAN_OR_EQUAL" | "OPERATOR_LESS_THAN" | "OPERATOR_LESS_THAN_OR_EQUAL" | "OPERATOR_CONTAINS" | "OPERATOR_NOT_EQUAL" | "OPERATOR_IN" | "OPERATOR_NOT_IN" | "OPERATOR_CONTAINS_ONE" | "OPERATOR_CONTAINS_ALL";
target?: string;
}[];
effect: "EFFECT_ALLOW" | "EFFECT_DENY";
notes?: string;
};
disablePrivateKeyIntent?: {
privateKeyId: string;
};
deleteUsersIntent?: {
userIds: string[];
};
deleteAuthenticatorsIntent?: {
userId: string;
authenticatorIds: string[];
};
deleteInvitationIntent?: {
invitationId: string;
};
deleteOrganizationIntent?: {
organizationId: string;
};
deletePolicyIntent?: {
policyId: string;
};
createUserTagIntent?: {
userTagName: string;
userIds: string[];
};
deleteUserTagsIntent?: {
userTagIds: string[];
};
signTransactionIntent?: {
privateKeyId: string;
unsignedTransaction: string;
type: "TRANSACTION_TYPE_ETHEREUM" | "TRANSACTION_TYPE_SOLANA" | "TRANSACTION_TYPE_TRON";
};
createApiKeysIntent?: {
apiKeys: {
apiKeyName: string;
publicKey: string;
expirationSeconds?: string;
}[];
userId: string;
};
deleteApiKeysIntent?: {
userId: string;
apiKeyIds: string[];
};
approveActivityIntent?: {
fingerprint: string;
};
rejectActivityIntent?: {
fingerprint: string;
};
createPrivateKeyTagIntent?: {
privateKeyTagName: string;
privateKeyIds: string[];
};
deletePrivateKeyTagsIntent?: {
privateKeyTagIds: string[];
};
createPolicyIntentV2?: {
policyName: string;
selectors: {
subject?: string;
operator?: "OPERATOR_EQUAL" | "OPERATOR_MORE_THAN" | "OPERATOR_MORE_THAN_OR_EQUAL" | "OPERATOR_LESS_THAN" | "OPERATOR_LESS_THAN_OR_EQUAL" | "OPERATOR_CONTAINS" | "OPERATOR_NOT_EQUAL" | "OPERATOR_IN" | "OPERATOR_NOT_IN" | "OPERATOR_CONTAINS_ONE" | "OPERATOR_CONTAINS_ALL";
targets?: string[];
}[];
effect: "EFFECT_ALLOW" | "EFFECT_DENY";
notes?: string;
};
setPaymentMethodIntent?: {
number: string;
cvv: string;
expiryMonth: string;
expiryYear: string;
cardHolderEmail: string;
cardHolderName: string;
};
activateBillingTierIntent?: {
productId: string;
};
deletePaymentMethodIntent?: {
paymentMethodId: string;
};
createPolicyIntentV3?: {
policyName: string;
effect: "EFFECT_ALLOW" | "EFFECT_DENY";
condition?: string;
consensus?: string;
notes?: string;
};
createApiOnlyUsersIntent?: {
apiOnlyUsers: {
userName: string;
userEmail?: string;
userTags: string[];
apiKeys: {
apiKeyName: string;
publicKey: string;
expirationSeconds?: string;
}[];
}[];
};
updateRootQuorumIntent?: {
threshold: number;
userIds: string[];
};
updateUserTagIntent?: {
userTagId: string;
newUserTagName?: string;
addUserIds: string[];
removeUserIds: string[];
};
updatePrivateKeyTagIntent?: {
privateKeyTagId: string;
newPrivateKeyTagName?: string;
addPrivateKeyIds: string[];
removePrivateKeyIds: string[];
};
createAuthenticatorsIntentV2?: {
authenticators: {
authenticatorName: string;
challenge: string;
attestation: {
credentialId: string;
clientDataJson: string;
attestationObject: string;
transports: ("AUTHENTICATOR_TRANSPORT_BLE" | "AUTHENTICATOR_TRANSPORT_INTERNAL" | "AUTHENTICATOR_TRANSPORT_NFC" | "AUTHENTICATOR_TRANSPORT_USB" | "AUTHENTICATOR_TRANSPORT_HYBRID")[];
};
}[];
userId: string;
};
acceptInvitationIntentV2?: {
invitationId: string;
userId: string;
authenticator: {
authenticatorName: string;
challenge: string;
attestation: {
credentialId: string;
clientDataJson: string;
attestationObject: string;
transports: ("AUTHENTICATOR_TRANSPORT_BLE" | "AUTHENTICATOR_TRANSPORT_INTERNAL" | "AUTHENTICATOR_TRANSPORT_NFC" | "AUTHENTICATOR_TRANSPORT_USB" | "AUTHENTICATOR_TRANSPORT_HYBRID")[];
};
};
};
createOrganizationIntentV2?: {
organizationName: string;
rootEmail: string;
rootAuthenticator: {
authenticatorName: string;
challenge: string;
attestation: {
credentialId: string;
clientDataJson: string;
attestationObject: string;
transports: ("AUTHENTICATOR_TRANSPORT_BLE" | "AUTHENTICATOR_TRANSPORT_INTERNAL" | "AUTHENTICATOR_TRANSPORT_NFC" | "AUTHENTICATOR_TRANSPORT_USB" | "AUTHENTICATOR_TRANSPORT_HYBRID")[];
};
};
rootUserId?: string;
};
createUsersIntentV2?: {
users: {
userName: string;
userEmail?: string;
apiKeys: {
apiKeyName: string;
publicKey: string;
expirationSeconds?: string;
}[];
authenticators: {
authenticatorName: string;
challenge: string;
attestation: {
credentialId: string;
clientDataJson: string;
attestationObject: string;
transports: ("AUTHENTICATOR_TRANSPORT_BLE" | "AUTHENTICATOR_TRANSPORT_INTERNAL" | "AUTHENTICATOR_TRANSPORT_NFC" | "AUTHENTICATOR_TRANSPORT_USB" | "AUTHENTICATOR_TRANSPORT_HYBRID")[];
};
}[];
userTags: string[];
}[];
};
createSubOrganizationIntent?: {
name: string;
rootAuthenticator: {
authenticatorName: string;
challenge: string;
attestation: {
credentialId: string;
clientDataJson: string;
attestationObject: string;
transports: ("AUTHENTICATOR_TRANSPORT_BLE" | "AUTHENTICATOR_TRANSPORT_INTERNAL" | "AUTHENTICATOR_TRANSPORT_NFC" | "AUTHENTICATOR_TRANSPORT_USB" | "AUTHENTICATOR_TRANSPORT_HYBRID")[];
};
};
};
createSubOrganizationIntentV2?: {
subOrganizationName: string;
rootUsers: {
userName: string;
userEmail?: string;
apiKeys: {
apiKeyName: string;
publicKey: string;
expirationSeconds?: string;
}[];
authenticators: {
authenticatorName: string;
challenge: string;
attestation: {
credentialId: string;
clientDataJson: string;
attestationObject: string;
transports: ("AUTHENTICATOR_TRANSPORT_BLE" | "AUTHENTICATOR_TRANSPORT_INTERNAL" | "AUTHENTICATOR_TRANSPORT_NFC" | "AUTHENTICATOR_TRANSPORT_USB" | "AUTHENTICATOR_TRANSPORT_HYBRID")[];
};
}[];
}[];
rootQuorumThreshold: number;
};
updateAllowedOriginsIntent?: {
allowedOrigins: string[];
};
createPrivateKeysIntentV2?: {
privateKeys: {
privateKeyName: string;
curve: "CURVE_SECP256K1" | "CURVE_ED25519";
privateKeyTags: string[];
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")[];
}[];
};
updateUserIntent?: {
userId: string;
userName?: string;
userEmail?: string;
userTagIds?: string[];
userPhoneNumber?: string;
};
updatePolicyIntent?: {
policyId: string;
policyName?: string;
policyEffect?: "EFFECT_ALLOW" | "EFFECT_DENY";
policyCondition?: string;
policyConsensus?: string;
policyNotes?: string;
};
setPaymentMethodIntentV2?: {
paymentMethodId: string;
cardHolderEmail: string;
cardHolderName: string;
};
createSubOrganizationIntentV3?: {
subOrganizationName: string;
rootUsers: {
userName: string;
userEmail?: string;
apiKeys: {
apiKeyName: string;
publicKey: string;
expirationSeconds?: string;
}[];
authenticators: {
authenticatorName: string;
challenge: string;
attestation: {
credentialId: string;
clientDataJson: string;
attestationObject: string;
transports: ("AUTHENTICATOR_TRANSPORT_BLE" | "AUTHENTICATOR_TRANSPORT_INTERNAL" | "AUTHENTICATOR_TRANSPORT_NFC" | "AUTHENTICATOR_TRANSPORT_USB" | "AUTHENTICATOR_TRANSPORT_HYBRID")[];
};
}[];
}[];
rootQuorumThreshold: number;
privateKeys: {
privateKeyName: string;
curve: "CURVE_SECP256K1" | "CURVE_ED25519";
privateKeyTags: string[];
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")[];
}[];
};
createWalletIntent?: {
walletName: string;
accounts: {
curve: "CURVE_SECP256K1" | "CURVE_ED25519";
pathFormat: "PATH_FORMAT_BIP32";
path: string;
addressFormat: "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";
}[];
mnemonicLength?: number;
};
createWalletAccountsIntent?: {
walletId: string;
accounts: {
curve: "CURVE_SECP256K1" | "CURVE_ED25519";
pathFormat: "PATH_FORMAT_BIP32";
path: string;
addressFormat: "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";
}[];
};
initUserEmailRecoveryIntent?: {
email: string;
targetPublicKey: string;
expirationSeconds?: string;
emailCustomization?: {
appName?: string;
logoUrl?: string;
magicLinkTemplate?: string;
templateVariables?: string;
templateId?: string;
};
};
recoverUserIntent?: {
authenticator: {
authenticatorName: string;
challenge: string;
attestation: {
credentialId: string;
clientDataJson: string;
attestationObject: string;
transports: ("AUTHENTICATOR_TRANSPORT_BLE" | "AUTHENTICATOR_TRANSPORT_INTERNAL" | "AUTHENTICATOR_TRANSPORT_NFC" | "AUTHENTICATOR_TRANSPORT_USB" | "AUTHENTICATOR_TRANSPORT_HYBRID")[];
};
};
userId: string;
};
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";
value: 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";
};
signRawPayloadIntentV2?: {
signWith: string;
payload: string;
encoding: "PAYLOAD_ENCODING_HEXADECIMAL" | "PAYLOAD_ENCODING_TEXT_UTF8";
hashFunction: "HASH_FUNCTION_NO_OP" | "HASH_FUNCTION_SHA256" | "HASH_FUNCTION_KECCAK256" | "HASH_FUNCTION_NOT_APPLICABLE";
};
signTransactionIntentV2?: {
signWith: string;
unsignedTransaction: string;
type: "TRANSACTION_TYPE_ETHEREUM" | "TRANSACTION_TYPE_SOLANA" | "TRANSACTION_TYPE_TRON";
};
exportPrivateKeyIntent?: {
privateKeyId: string;
targetPublicKey: string;
};
exportWalletIntent?: {
walletId: string;
targetPublicKey: string;
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";
};
createSubOrganizationIntentV4?: {
subOrganizationName: string;
rootUsers: {
userName: string;
userEmail?: string;
apiKeys: {
apiKeyName: string;
publicKey: string;
expirationSeconds?: string;
}[];
authenticators: {
authenticatorName: string;
challenge: string;
attestation: {
credentialId: string;
clientDataJson: string;
attestationObject: string;
transports: ("AUTHENTICATOR_TRANSPORT_BLE" | "AUTHENTICATOR_TRANSPORT_INTERNAL" | "AUTHENTICATOR_TRANSPORT_NFC" | "AUTHENTICATOR_TRANSPORT_USB" | "AUTHENTICATOR_TRANSPORT_HYBRID")[];
};
}[];
}[];
rootQuorumThreshold: number;
wallet?: {
walletName: string;
accounts: {
curve: "CURVE_SECP256K1" | "CURVE_ED25519";
pathFormat: "PATH_FORMAT_BIP32";
path: string;
addressFormat: "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";
}[];
mnemonicLength?: number;
};
disableEmailRecovery?: boolean;
disableEmailAuth?: boolean;
};
emailAuthIntent?: {
email: string;
targetPublicKey: string;
apiKeyName?: string;
expirationSeconds?: string;
emailCustomization?: {
appName?: string;
logoUrl?: string;
magicLinkTemplate?: string;
templateVariables?: string;
templateId?: string;
};
invalidateExisting?: boolean;
sendFromEmailAddress?: string;
sendFromEmailSenderName?: string;
replyToEmailAddress?: string;
};
exportWalletAccountIntent?: {
address: string;
targetPublicKey: string;
};
initImportWalletIntent?: {
userId: string;
};
importWalletIntent?: {
userId: string;
walletName: string;
encryptedBundle: string;
accounts: {
curve: "CURVE_SECP256K1" | "CURVE_ED25519";
pathFormat: "PATH_FORMAT_BIP32";
path: string;
addressFormat: "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";
}[];
};
initImportPrivateKeyIntent?: {
userId: string;
};
importPrivateKeyIntent?: {
userId: string;
privateKeyName: string;
encryptedBundle: string;
curve: "CURVE_SECP256K1" | "CURVE_ED25519";
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")[];
};
createPoliciesIntent?: {
policies: {
policyName: string;
effect: "EFFECT_ALLOW" | "EFFECT_DENY";
condition?: string;
consensus?: string;
notes?: string;
}[];
};
signRawPayloadsIntent?: {
signWith: string;
payloads: string[];
encoding: "PAYLOAD_ENCODING_HEXADECIMAL" | "PAYLOAD_ENCODING_TEXT_UTF8";
hashFunction: "HASH_FUNCTION_NO_OP" | "HASH_FUNCTION_SHA256" | "HASH_FUNCTION_KECCAK256" | "HASH_FUNCTION_NOT_APPLICABLE";
};
createReadOnlySessionIntent?: {
[key: string]: unknown;
};
createOauthProvidersIntent?: {
userId: string;
oauthProviders: {
providerName: string;
oidcToken: string;
}[];
};
deleteOauthProvidersIntent?: {
userId: string;
providerIds: string[];
};
createSubOrganizationIntentV5?: {
subOrganizationName: string;
rootUsers: {
userName: string;
userEmail?: string;
apiKeys: {
apiKeyName: string;
publicKey: string;
expirationSeconds?: string;
}[];
authenticators: {
authenticatorName: string;
challenge: string;
attestation: {
credentialId: string;
clientDataJson: string;
attestationObject: string;
transports: ("AUTHENTICATOR_TRANSPORT_BLE" | "AUTHENTICATOR_TRANSPORT_INTERNAL" | "AUTHENTICATOR_TRANSPORT_NFC" | "AUTHENTICATOR_TRANSPORT_USB" | "AUTHENTICATOR_TRANSPORT_HYBRID")[];
};
}[];
oauthProviders: {
providerName: string;
oidcToken: string;
}[];
}[];
rootQuorumThreshold: number;
wallet?: {
walletName: string;
accounts: {
curve: "CURVE_SECP256K1" | "CURVE_ED25519";
pathFormat: "PATH_FORMAT_BIP32";
path: string;
addressFormat: "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";
}[];
mnemonicLength?: number;
};
disableEmailRecovery?: boolean;
disableEmailAuth?: boolean;
};
oauthIntent?: {
oidcToken: string;
targetPublicKey: string;
apiKeyName?: string;
expirationSeconds?: string;
invalidateExisting?: boolean;
};
createApiKeysIntentV2?: {
apiKeys: {
apiKeyName: string;
publicKey: string;
curveType: "API_KEY_CURVE_P256" | "API_KEY_CURVE_SECP256K1" | "API_KEY_CURVE_ED25519";
expirationSeconds?: string;
}[];
userId: string;
};
createReadWriteSessionIntent?: {
targetPublicKey: string;
email: string;
apiKeyName?: string;
expirationSeconds?: string;
};
emailAuthIntentV2?: {
email: string;
targetPublicKey: string;
apiKeyName?: string;
expirationSeconds?: string;
emailCustomization?: {
appName?: string;
logoUrl?: string;
magicLinkTemplate?: string;
templateVariables?: string;
templateId?: string;
};
invalidateExisting?: boolean;
sendFromEmailAddress?: string;
sendFromEmailSenderName?: string;
replyToEmailAddress?: string;
};
createSubOrganizationIntentV6?: {
subOrganizationName: string;
rootUsers: {
userName: string;
userEmail?: string;
apiKeys: {
apiKeyName: string;
publicKey: string;
curveType: "API_KEY_CURVE_P256" | "API_KEY_CURVE_SECP256K1" | "API_KEY_CURVE_ED25519";
expirationSeconds?: string;
}[];
authenticators: {
authenticatorName: string;
challenge: string;
attestation: {
credentialId: string;
clientDataJson: string;
attestationObject: string;
transports: ("AUTHENTICATOR_TRANSPORT_BLE" | "AUTHENTICATOR_TRANSPORT_INTERNAL" | "AUTHENTICATOR_TRANSPORT_NFC" | "AUTHENTICATOR_TRANSPORT_USB" | "AUTHENTICATOR_TRANSPORT_HYBRID")[];
};
}[];
oauthProviders: {
providerName: string;
oidcToken: string;
}[];
}[];
rootQuorumThreshold: number;
wallet?: {
walletName: string;
accounts: {
curve: "CURVE_SECP256K1" | "CURVE_ED25519";
pathFormat: "PATH_FORMAT_BIP32";
path: string;
addressFormat: "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";
}[];
mnemonicLength?: number;
};
disableEmailRecovery?: boolean;
disableEmailAuth?: boolean;
};
deletePrivateKeysIntent?: {
privateKeyIds: string[];
deleteWithoutExport?: boolean;
};
deleteWalletsIntent?: {
walletIds: string[];
deleteWithoutExport?: boolean;
};
createReadWriteSessionIntentV2?: {
targetPublicKey: string;
userId?: string;
apiKeyName?: string;
expirationSeconds?: string;
invalidateExisting?: boolean;
};
deleteSubOrganizationIntent?: {
deleteWithoutExport?: boolean;
};
initOtpAuthIntent?: {
otpType: string;
contact: string;
emailCustomization?: {
appName?: string;
logoUrl?: string;
magicLinkTemplate?: string;
templateVariables?: string;
templateId?: string;
};
smsCustomization?: {
template?: string;
};
userIdentifier?: string;
sendFromEmailAddress?: string;
sendFromEmailSenderName?: