v46

latestOpenAPI 3.1.0raw.githubusercontent.com2026-07-211591,0051.4 MB
Wallets

Authenticate wallet session

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.

post/v1/wallets/authenticate

Headers

privy-app-idstring required

ID of your Privy app.

Request body

encryption_type'HPKE' required

The encryption type for the authentication response. Currently only supports HPKE.

recipient_public_keystring required

The public key of your ECDH keypair, in base64-encoded, SPKI-format, whose private key will be able to decrypt the session key.

user_jwtstring required

The user's JWT, to be used to authenticate the user.

Response

Object with authorization key and wallet IDs.

OR

Example response

{
  "encrypted_authorization_key": {
    "ciphertext": "MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgsqM8IKMlpFxVypBUa/Q2QvB1AmS/g5WHPp3SKq9A75uhRANCAATeX6BDghwclKAH8+/7IjvS1tCpvIfZ570IR44acX93pUGz5iEvpkg+HGaalHAXubuoUMq9CUWRm4wo+3090Nus",
    "encapsulated_key": "BECqbgIAcs3TpP5GadS6F8mXkSktR2DR8WNtd3e0Qcy7PpoRHEygpzjFWttntS+SEM3VSr4Thewh18ZP9chseLE=",
    "encryption_type": "HPKE"
  },
  "expires_at": 1697059200000,
  "wallets": [
    {
      "additional_signers": [
        {
          "override_policy_ids": [],
          "signer_id": "p3cyj3n8mt9f9u2htfize511"
        }
      ],
      "address": "0x3DE69Fd93873d40459f27Ce5B74B42536f8d6149",
      "archived_at": null,
      "chain_type": "ethereum",
      "created_at": 1744300912643,
      "exported_at": null,
      "id": "ubul5xhljqorce73sf82u0p3",
      "imported_at": null,
      "owner_id": "lzjb3xnjk2ntod3w1hgwa358",
      "policy_ids": []
    },
    {
      "additional_signers": [
        {
          "override_policy_ids": [],
          "signer_id": "p3cyj3n8mt9f9u2htfize511"
        }
      ],
      "address": "9wtGmqMamnKfz49XBwnJASbjcVnnKnT78qKopCL54TAk",
      "archived_at": null,
      "chain_type": "solana",
      "created_at": 1744300912644,
      "exported_at": null,
      "id": "sb4y18l68xze8gfszafmyv3q",
      "imported_at": null,
      "owner_id": "lzjb3xnjk2ntod3w1hgwa358",
      "policy_ids": []
    }
  ]
}