Privy builds flexible wallet and key management infrastructure to power better products built on crypto rails. You can choose to integrate with Privy’s REST API directly, or leverage our platform-specific SDKs to securely provision wallets and manage assets.

REST API

The Privy API is a resource-oriented API designed with RESTful principles. You can use the API to create and use wallets on different blockchains, set granular policies and controls, and manage ownership over different resources.

You can make requests to Privy’s API from any environment that supports HTTPS requests and securely storing an API secret. Once you’ve provisioned wallets from Privy’s REST API, you can continue to use and manage those wallets from the REST API or additionally integrate Privy’s supported SDKs.

Privy’s API have extended support for many blockchain ecosystems. Learn more about the distinct tiers of support for each blockchain in our chain support guide.

SDKs

Privy also offers multiple SDKs for various languages and frameworks. These SDKs wrap interacting with the Privy REST API into interfaces and abstraction that are idiomatic to your framework, streamlining your integration.

Below is a list of Privy’s supported SDKs and what platforms they support. If your framework is not supported by the SDKs below, you can always integrate Privy’s REST API directly or build a slim client SDK for your framework.

SDKDescriptionSupported environments
NodeJSA server-side Node SDK that supports securely provisioning wallets, configuring policies and ownership, and managing user data.Server-side JS runtimes, including Node, Deno, Bun, Edge, etc.
ReactA client-side React SDK with hooks and components for authenticating users and securely provisioning wallets.Web apps built with React.
React NativeA client-side React Native SDK with hooks and components for authenticating users and securely provisioning wallets.Mobile apps (iOS, Android) built with Expo or React Native.
SwiftA client-side Swift SDK with methods for authenticating users and securely provisioning wallets.Mobile apps (iOS) built with Swift.
AndroidA client-side Kotlin SDK with methods for authenticating users and securely provisioning wallets.Mobile apps (Android) built with Kotlin.
FlutterA client-side Flutter SDK with methods for authenticating users and securely provisioning wallets.Mobile apps (iOS, Android) built with Flutter.
UnityA client-side Unity SDK with methods for authenticating users and securely provisioning wallets.Games built with Unity.

Feature Matrix

Check out the matrix below to determine which features are supported in each SDK. As a guide:

  • - indicates the feature is available on EVM chains.
  • - indicates the feature is available on Solana.
  • - indicates the feature is available on both EVM and Solana.
ReactExpoSwiftAndroidFlutterUnity
Authentication
Email
SMS
OAuth (Google, Apple, Twitter, Github, Discord, LinkedIn, TikTok, Spotify, and Instagram)Google, Apple, TwitterGoogle, Apple, TwitterGoogle, Apple, TwitterGoogle, Apple, Discord
SIWE (Sign In with Ethereum)
SIWS (Sign In with Solana)
Farcaster
Telegram
Custom Auth
Passkeys
Farcaster
SIWF
Farcaster signers
Embedded Wallets
Creating wallets manually
Creating wallet automatically
Pregenerating wallets
Signing messages and transactions
Broadcasting transactions
Native smart wallets
Automatic recovery
User controlled recovery
Transaction MFA
Key Export
HD wallets
Delegated actions
Custom EVM (Ethereum) network support
Custom SVM (Solana) network support
Connectors
External wallets
Wagmi
Viem
Ethers
@solana/web3.js
web3swift
Funding
Transfer or bridge from wallet
Transfer from exchange
Pay with card

Is there a particular feature that you’d like support for within a certain SDK? Please reach out!