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

# Crypto RPC

> Scopri le reti blockchain supportate e invia richieste JSON-RPC tramite Venice con autenticazione API key o wallet x402.

Venice Crypto RPC è un proxy HTTP per leggere lo stato della blockchain e inoltrare transazioni firmate. Utilizza la stessa autenticazione API key di Venice o wallet x402 degli altri endpoint Venice a pagamento, quindi la tua applicazione non necessita di un account separato con un provider RPC.

Venice non conserva mai le tue chiavi private. Firma le transazioni nella tua applicazione e invia il payload firmato con `eth_sendRawTransaction`.

## Scoprire le reti supportate

Recupera l'elenco attuale degli slug di rete:

```bash theme={"system"}
curl https://api.venice.ai/api/v1/crypto/rpc/networks
```

L'endpoint di discovery è pubblico e non richiede autenticazione. La sua risposta è autoritativa; usa uno degli slug restituiti come `{network}` nell'endpoint RPC.

## Inviare una richiesta RPC

Invia una richiesta JSON-RPC 2.0 alla rete selezionata:

```bash theme={"system"}
curl https://api.venice.ai/api/v1/crypto/rpc/ethereum-mainnet \
  -H "Authorization: Bearer $VENICE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "method": "eth_blockNumber",
    "params": [],
    "id": 1
  }'
```

Il proxy supporta richieste singole e batch fino a 100 richieste. I metodi supportati, i livelli di prezzo e la disponibilità variano; consulta il [riferimento API Crypto RPC](/api-reference/endpoint/crypto/rpc) prima di affidarti a un metodo.

## Flussi di lettura e scrittura

### Leggere lo stato della chain

Usa metodi come `eth_blockNumber`, `eth_getBalance`, `eth_call` e `eth_getLogs` per interrogare i dati pubblici della chain. Raggruppa in batch le chiamate correlate quando riguardano la stessa rete.

### Inoltrare una transazione

<Steps>
  <Step title="Costruisci la transazione">
    Leggi il nonce dell'account, i dati sulle fee e la stima del gas dalla rete di destinazione.
  </Step>

  <Step title="Firma localmente">
    Firma con la libreria wallet della tua applicazione. Non inviare mai una chiave privata o una seed phrase a Venice.
  </Step>

  <Step title="Invia il payload firmato">
    Chiama `eth_sendRawTransaction` e imposta un header `Idempotency-Key` in modo che i retry non creino un secondo relay fatturabile.
  </Step>

  <Step title="Verifica la ricevuta">
    Interroga `eth_getTransactionReceipt` fino a quando la transazione non viene inclusa, poi ispeziona il suo stato.
  </Step>
</Steps>

## Retry sicuri

Imposta una chiave di idempotenza sulle richieste che potrebbero essere ripetute, in particolare i relay di transazioni:

```bash theme={"system"}
-H "Idempotency-Key: transaction-123"
```

Venice memorizza la risposta nella cache per 24 ore. Riutilizzare la chiave con lo stesso corpo della richiesta restituisce la risposta memorizzata senza un ulteriore addebito; riutilizzarla con un corpo diverso restituisce un errore.

## Vincoli importanti

* Il proxy è solo HTTP e non supporta le sottoscrizioni WebSocket.
* I metodi di filtro stateful non sono supportati; usa metodi stateless come `eth_getLogs`.
* Venice non conserva chiavi né espone metodi di firma.
* I metodi al di fuori della allowlist restituiscono un errore.
* Ispeziona `X-Venice-RPC-Credits` e `X-Venice-RPC-Cost-USD` per monitorare il costo della richiesta.

## Risorse correlate

* [API delle reti supportate](/api-reference/endpoint/crypto/networks)
* [Riferimento API Crypto RPC](/api-reference/endpoint/crypto/rpc)
* [Crypto RPC per agenti](/guides/integrations/crypto-rpc-agents)
* [Autenticazione wallet x402](/guides/integrations/x402-venice-api)
