---
title: "Appeler des méthodes RPC et envoyer des événements à votre URL avec ERPC CLI"
description: "erpc rpc call envoie une requête JSON-RPC au mainnet Solana ou Ethereum, x402 paie à l'appel sans compte et erpc webhook poste des événements RPC sur votre URL."
canonical: "https://erpc.global/fr/doc/erpc-cli/rpc-call-and-webhooks/"
locale: "fr"
---

# Appeler des méthodes RPC et envoyer des événements à votre URL avec ERPC CLI

`erpc rpc call` envoie une requête JSON-RPC depuis votre terminal avec le compte ERPC auquel vous êtes connecté, ou paie à l'appel avec x402. `erpc webhook` envoie des événements RPC à votre URL par POST.

Cette page décrit ERPC CLI `v0.1.0-rc.4`, une préversion.

## Appeler une méthode RPC

Utilisez le compte ERPC auquel vous êtes connecté pour appeler le mainnet Solana ou Ethereum. Le CLI choisit l'endpoint partagé d'après la méthode, ou vous pouvez choisir le réseau.

```sh
erpc login
erpc rpc call getSlot
erpc --json rpc call eth_getBlockByNumber '["latest", false]' --network ethereum-mainnet
erpc rpc call eth_call --params-file params.json
printf '%s' '["finalized", false]' | erpc rpc call eth_getBlockByNumber -
erpc rpc call getHealth --endpoint-url http://127.0.0.1:8899
```

- **Les paramètres** sont un tableau ou un objet JSON, un fichier avec `--params-file`, ou `-` pour l'entrée standard. Sans paramètres, un appel envoie `[]`.
- **Les réseaux** sont `solana-mainnet` et `ethereum-mainnet` (aussi `eth-mainnet`). `erpc rpc list-networks` liste les réseaux qui disposent du RPC partagé d'ERPC et du RPC x402.
- **Votre propre endpoint :** `--endpoint-url` n'utilise que les identifiants contenus dans cette URL. Celle-ci doit être une URL sécurisée ou une adresse de loopback, sans informations d'utilisateur.

### Quelle clé du compte un appel utilise

Un compte peut avoir plusieurs clés RPC. `erpc rpc call` et `erpc webhook run` les essaient dans l'ordre, la clé principale en premier, avec un appel `getHealth` par clé avant leur propre appel. La clé est évaluée sur le RPC Solana partagé, quelle que soit la chaîne appelée ensuite.

Lorsque le RPC n'accepte aucune clé et que l'une d'elles n'a pas pu lui être soumise, la commande continue avec la première clé qui n'a pas pu être soumise, et c'est son propre appel qui le dira. Lorsque toutes les clés sont refusées, la commande échoue avec `the shared RPC takes none of the account's API keys from this machine (<n> tried)` : voir [En cas d'échec](https://erpc.global/fr/doc/erpc-cli/worker-troubleshooting/).

## Payer à l'appel avec x402

Pour un accès payé à l'appel sans compte, demandez un devis x402. `--quote` affiche le devis sans lire de wallet ni effectuer de paiement.

Pour payer, exécutez la commande sans `--quote` dans un terminal. Le CLI affiche le montant, demande une confirmation et signe, avec le wallet configuré par `erpc wallet create`, le paiement en EURC sur Base prévu par le devis. Gardez des EURC sur Base dans ce wallet ([Payer depuis un wallet](https://erpc.global/fr/doc/erpc-cli/ai/#payer-depuis-un-wallet)).

```sh
erpc rpc call getSlot --network solana-mainnet --x402 --quote
erpc rpc call eth_blockNumber --x402
```

## Envoyer des événements à votre URL

Un webhook local s'abonne au WebSocket du RPC et envoie les événements à votre URL par POST. Démarrez un récepteur, créez l'abonnement, puis exécutez l'ID que renvoie `create`, dans un terminal ou sous votre superviseur de processus.

```sh
erpc webhook create --name slots --network solana-mainnet \
  --url http://127.0.0.1:8080/events --method slotSubscribe
erpc webhook create --name heads --network ethereum-mainnet \
  --url http://127.0.0.1:8080/events --method eth_subscribe --params '["newHeads"]'
erpc webhook list
erpc webhook run 1
```

Pour l'activité d'un wallet sur Solana, utilisez `--template solana-wallet --wallet ADDRESS` à la place de `--method`. Pour les logs de contrats Ethereum, utilisez `--template evm-contract-events --address CONTRACT`. L'URL de callback est en HTTPS ou en HTTP en loopback, et les réseaux sont les mêmes que pour `erpc rpc call`.

### Ce que reçoit votre récepteur

- Chaque POST contient `webhook_id`, `network` et la `notification` JSON-RPC d'origine. Renvoyez un HTTP 2xx pour l'accepter.
- La livraison commence à partir de l'abonnement en direct actuel. Redémarrer le runner l'abonne aux nouveaux événements.
- Une déconnexion ou un callback en échec met fin au runner avec un statut non nul.
- `erpc webhook run` accepte `--once` pour tester une seule livraison, et `--endpoint-url` pour utiliser votre propre RPC WebSocket.

## Gérer les webhooks

| Commande | Ce qu'elle fait |
| --- | --- |
| `erpc webhook list` | Liste les abonnements enregistrés |
| `erpc webhook show ID` | Affiche un abonnement. Les identifiants du callback sont omis |
| `erpc webhook enabled-count` | Compte les abonnements activés sur cette machine |
| `erpc webhook pause ID` | Désactive la livraison. Un runner en cours d'exécution s'arrête |
| `erpc webhook activate ID` | Autorise un `run` ultérieur |
| `erpc webhook delete ID` | Supprime la définition |

Ces commandes ne lisent et ne modifient que la configuration locale. Dans les scripts, passez `--yes` à `pause`, `activate` et `delete`.
