# debug_traceCall : paramètres, retours et CU

> Source: https://docs.blockvectra.com/fr/api/json-rpc/methods/debug_traceCall/

## Aperçu

Exécute un eth_call sur l'état d'un bloc donné et génère une trace d'exécution. ([Documentation officielle](https://geth.ethereum.org/docs/interacting-with-geth/rpc/ns-debug#debugtracecall))

## Unités de calcul (CU) et tarification

- CU par appel: 100 CU
- Prix par million d'appels (USD): $10.00

## Paramètres

| Paramètre | Type | Description |
| --- | --- | --- |
| `call` | `object` | Objet d'appel de transaction contenant from, to, data, gas, gasPrice, value. |
| `block` | `QUANTITY\|TAG\|HASH` | Numéro de bloc (quantité hexadécimale préfixée par 0x), hachage de bloc ou balise 'latest' / 'pending' à tracer ; safe, finalized et earliest renvoient -32011. |
| `options` | `object` | Objet d'options de traçage (facultatif) : tracer peut être callTracer, flatCallTracer, prestateTracer, 4byteTracer ou noopTracer ; en cas d'omission, le struct logger par défaut est utilisé, et toute autre valeur renvoie -32602 tracer not allowed ; tracerConfig transmet les options spécifiques au tracer (comme onlyTopCall et withLog pour callTracer, diffMode pour prestateTracer) ; timeout d'au plus 30s ; reexec spécifie le numéro de bloc pour réexécuter la transaction ; stateOverrides, blockOverrides et txIndex sont également pris en charge. |

## Valeur de retour

- **Type**: `OBJECT`
- **Description**: Objet de résultat de trace d'exécution correspondant au tracer demandé (arborescence CallFrame pour callTracer).

## Remarques

Le bloc ciblé doit se situer dans la fenêtre d'état de la chaîne (state_window_blocks) ; les requêtes hors fenêtre renvoient -32011 (non facturé).

## Exemple de requête

```bash
export BLOCKVECTRA_API_KEY=rgw_your_api_key

curl -X POST "https://api.blockvectra.com/v1/robinhood_mainnet" \
  -H 'Content-Type: application/json' \
  -H "x-api-key: $BLOCKVECTRA_API_KEY" \
  -d '{
    "jsonrpc": "2.0",
    "method": "debug_traceCall",
    "params": [
      {
        "to": "<toAddress>",
        "data": "<callData>"
      },
      "latest",
      {
        "tracer": "callTracer"
      }
    ],
    "id": 1
  }'
```

## Chaînes prises en charge

Disponible sur toutes les chaînes prises en charge sauf : Base (base_mainnet), BNB Smart Chain (bsc_mainnet), Ethereum Sepolia (eth_sepolia), HyperEVM (hyperevm_mainnet).
