RPC-methoden aanroepen en events naar uw URL sturen met ERPC CLI

erpc rpc call stuurt één JSON-RPC-verzoek vanuit uw terminal met uw ingelogde ERPC-account, of betaalt per aanroep met x402. erpc webhook stuurt RPC-events met POST naar uw URL.
Deze pagina beschrijft ERPC CLI v0.1.0-rc.4, een pre-release.

Een RPC-methode aanroepen

Gebruik uw ingelogde ERPC-account om Solana- of Ethereum-mainnet aan te roepen. De CLI kiest het shared endpoint op basis van de methode, of u kunt zelf het netwerk kiezen.
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
  • Parameters zijn een JSON-array of -object, een bestand met --params-file, of - voor standaardinvoer. Zonder parameters stuurt een aanroep [].
  • Netwerken zijn solana-mainnet en ethereum-mainnet (ook eth-mainnet). erpc rpc list-networks toont de netwerken met shared RPC van ERPC en x402-RPC.
  • Uw eigen endpoint: --endpoint-url gebruikt alleen de toegangsgegevens in die URL. Die moet een beveiligde URL of loopback zijn, zonder gebruikersinformatie.

Welke van de sleutels van het account een aanroep gebruikt

Een account kan meerdere RPC-keys hebben. erpc rpc call en erpc webhook run proberen ze op volgorde, de primaire eerst, met één aanroep van getHealth per sleutel vóór hun eigen aanroep. De sleutel wordt beoordeeld bij de shared Solana RPC, welke chain er daarna ook wordt aangeroepen.
Als de RPC geen enkele sleutel aanneemt en over een van de sleutels niet kon worden bevraagd, gaat het commando verder met de eerste sleutel waarover de RPC niet kon worden bevraagd, en wijst de eigen aanroep van het commando het uit. Als elke sleutel wordt geweigerd, mislukt het commando met the shared RPC takes none of the account's API keys from this machine (<n> tried): zie Als het misgaat.

Per aanroep betalen met x402

Vraag voor toegang per aanroep zonder account een x402-offerte aan. --quote toont de offerte zonder een wallet te lezen of een betaling te doen.
Om te betalen voert u het commando zonder --quote aan een terminal uit. De CLI toont het bedrag, vraagt om bevestiging en ondertekent de geoffreerde betaling in EURC op Base met de wallet die erpc wallet create heeft ingesteld. Houd EURC op Base in die wallet (Betalen vanuit een wallet).
sh
erpc rpc call getSlot --network solana-mainnet --x402 --quote
erpc rpc call eth_blockNumber --x402

Events naar uw URL sturen

Een lokale webhook abonneert zich op de RPC-WebSocket en stuurt events met POST naar uw URL. Start een ontvanger, maak het abonnement aan en voer daarna het ID uit dat create teruggeeft, in een terminal of onder uw processupervisor.
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
Gebruik voor walletactiviteit op Solana --template solana-wallet --wallet ADDRESS in plaats van --method. Gebruik voor contractlogs op Ethereum --template evm-contract-events --address CONTRACT. De callback-URL is HTTPS of loopback-HTTP, en de netwerken zijn dezelfde als bij erpc rpc call.

Wat uw ontvanger krijgt

  • Elke POST bevat webhook_id, network en de oorspronkelijke JSON-RPC notification. Geef HTTP 2xx terug om de POST te accepteren.
  • De levering begint bij het huidige live-abonnement. Wanneer u de runner herstart, abonneert hij zich op nieuwe events.
  • Een verbroken verbinding of een mislukte callback beëindigt de runner met een status die niet nul is.
  • erpc webhook run accepteert --once om één levering te testen, en --endpoint-url om uw eigen WebSocket-RPC te gebruiken.

Webhooks beheren

CommandoWat het doet
erpc webhook listToont de opgeslagen abonnementen
erpc webhook show IDToont een abonnement. Toegangsgegevens van de callback worden weggelaten
erpc webhook enabled-countTelt de abonnementen die op deze machine zijn ingeschakeld
erpc webhook pause IDSchakelt de levering uit. Een runner die draait, wordt afgesloten
erpc webhook activate IDMaakt een latere run mogelijk
erpc webhook delete IDVerwijdert de definitie
Deze commando's bekijken en wijzigen alleen de lokale configuratie. Geef in scripts --yes mee aan pause, activate en delete.