Authenticate
Exchange a user JWT for a session key authorized to act on the user’s wallets. Returns the encrypted authorization key and the list of wallets it can access.
- KEM (Key Encapsulation Mechanism): DHKEM_P256_HKDF_SHA256
- KDF (Key Derivation Function): HKDF_SHA256
- AEAD (Authenticated Encryption with Associated Data): CHACHA20_POLY1305
- Mode: BASE
authorization_key is ciphertext and must be decrypted.Authorizations
Basic Auth header with your app ID as the username and your app secret as the password.
Headers
ID of your Privy app.
Body
Request body for wallet authentication with HPKE-encrypted response.
The user's JWT, to be used to authenticate the user.
The encryption type for the authentication response. Currently only supports HPKE.
HPKE The public key of your ECDH keypair, in base64-encoded, SPKI-format, whose private key will be able to decrypt the session key.
Response
Object with authorization key and wallet IDs.
- EncryptedWalletAuthenticateResponse
- RawWalletAuthenticateResponse
The response from authenticating a wallet with HPKE encryption, containing an encrypted authorization key and wallet data.

