JSON-RPC is a lightweight remote procedure call protocol used by blockchain nodes and tools to expose methods like sending transactions and querying chain data.
JSON-RPC defines a simple request/response message format, typically over HTTP or WebSocket. Nodes expose methods (e.g., getblock, sendrawtransaction) that wallets and apps call to interact with the chain.
"A wallet calls a node's JSON-RPC to broadcast a signed transaction and to query confirmation status."
"WebSocket JSON-RPC subscriptions stream new blocks and mempool transactions in real time."
RPC endpoints must be access-controlled to prevent misuse. Best practices include authentication, network isolation, rate limiting, and separating public indexers from privileged nodes.
"Exposing an unauthenticated sendrawtransaction can allow spam or fee griefing."
"Production deployments isolate write-enabled RPC from the public internet and use read-only gateways for apps."
All terms and definitions may update as the Cryptionary improves.