> ## Documentation Index
> Fetch the complete documentation index at: https://docs.privy.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Signing and RPCs

> Send JSON-RPC requests and sign messages or transaction payloads directly with Privy wallets

Privy enables you to interface directly with wallets by sending JSON-RPC requests or directly requesting signatures over messages and transaction payloads. This allows you to use Privy for **low-level key management** and achieve ***any* onchain use case** with Privy wallets.

<img src="https://mintcdn.com/privy-c2af3412/xvj7sxQ8SLxi5bGo/images/rpc-splash.png?fit=max&auto=format&n=xvj7sxQ8SLxi5bGo&q=85&s=7c732769c8e92f4ab80fa3d478e13f18" alt="RPC splash" width="3686" height="2633" data-path="images/rpc-splash.png" />

## Taking actions with wallets

To take an action (such as executing a signature, transfer, or other transaction), there are three approaches.

| Integration                                                       | Functionality                                                                                                                                                             | Recommended for                                   |
| ----------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------- |
| [Wallet action APIs](/wallets/actions/overview#available-actions) | Execute common onchain flows such as transfers, swaps, DeFi, and more via a simple, intuitive interface. Privy handles the onchain complexity.                            | Most use cases                                    |
| [Low-level RPC](/wallets/using-wallets/ethereum/sign-a-message)   | Compute raw signatures and execute EVM and SVM JSON-RPC requests. Requires developers to construct their own transaction payloads and facilitate multi-transaction flows. | Custom use cases and lower-level flows            |
| [Intents](/transaction-management/intents/overview)               | Supports asynchronous authorization of operations when authorization signatures cannot be collected synchronously. Supports both RPC and wallet action APIs.              | Organizations and asynchronous approval workflows |

While using **wallet actions** is generally recommended for most use cases, your application may need to interface with wallets directly for more custom functionality. This is fully supported in parallel with wallet actions via RPCs.

## Using RPCs

For Tier 3 chain types, Privy supports the standard set of JSON-RPC methods for that chain type (e.g. [EIP-1193](https://eips.ethereum.org/EIPS/eip-1193) for EVM chains including [Tempo](https://tempo.xyz)) – including message signing, transaction signing, and transaction broadcasting. View guides for using each of these JSON-RPC methods with Privy in the left navigation.

For Tier 2 and Tier 1 chain types, Privy supports using the wallet's private key to sign custom payloads – allowing you to construct transactions of your choosing and sign them with the wallet. Your application can then broadcast this signed transaction to the chain to execute it.

<Warning>
  The wallet RPC endpoint is a synchronous endpoint, and a successful response indicates that the
  transaction has been broadcasted to the network. Transactions may get broadcasted but still fail
  to be confirmed by the network. The endpoint does not wait for confirmation or retry if the
  transaction fails to be confirmed. To handle these scenarios, see our guide on [speeding up
  transactions](/recipes/speeding-up-transactions).
</Warning>
