# Session Keys App

> Demo app showcasing session keys on Wallet APIs, with examples for creating, authorizing, and executing transactions without repeated signatures.

> For the complete documentation index, see [llms.txt](/docs/llms.txt).

Below is a demo application that showcases session keys on Wallet APIs.

![Session Keys Demo](https://alchemyapi-res.cloudinary.com/image/upload/v1761582943/docs/Screenshot_2025-10-27_at_9.35.39_AM_nekcbs.png)

This demo walks you through the flow of creating and using session keys with smart wallets. You'll learn how to request a smart wallet, create session keys with different permissions, authorize sessions, and execute transactions without repeated signatures.

* [Launch the demo →](https://wallet-session-key-app.vercel.app/)

## Key features

The demo includes step-by-step guidance through:

* **Session key creation** -- Generate temporary keys with scoped permissions
* **Permission types** -- Choose from root permissions, native token transfers, or ERC-20 token transfers
* **Session duration** -- Set expiration (5 minutes, 1 hour, or 1 day)
* **Authorization flow** -- See how session keys are authorized by the wallet owner
* **Transaction execution** -- Execute multiple transactions using session keys without additional wallet approvals
* **Real-time feedback** -- Watch transaction status updates on Sepolia

This application uses our react hooks and built-in auth components to demonstrate the complete session key lifecycle.

* **Hosted Demo**: https://wallet-session-key-app.vercel.app/
* **Github**: https://github.com/alchemyplatform/wallet-session-key-app

## Resources

* [Launch the demo →](https://wallet-session-key-app.vercel.app/)
* [wallet\_requestAccount](https://www.alchemy.com/docs/wallets/api-reference/smart-wallets/wallet-api-endpoints/wallet-api-endpoints/wallet-request-account)
* [wallet\_createSession](https://www.alchemy.com/docs/wallets/api-reference/smart-wallets/wallet-api-endpoints/wallet-api-endpoints/wallet-create-session)
* [wallet\_prepareCalls](https://www.alchemy.com/docs/wallets/api-reference/smart-wallets/wallet-api-endpoints/wallet-api-endpoints/wallet-prepare-calls)
* [wallet\_sendPreparedCalls](https://www.alchemy.com/docs/wallets/api-reference/smart-wallets/wallet-api-endpoints/wallet-api-endpoints/wallet-send-prepared-calls)