11# helios-verifiable-api
22
3- ## Usage
3+ A JSON REST API for Ethereum Execution Layer with verifiable responses as a first-class feature.
4+
5+ It wraps and replaces [ Ethereum's execution JSON-RPC] ( https://ethereum.org/en/developers/docs/apis/json-rpc/ ) .
6+
7+ ## Server Usage
48
59``` bash
610$ cargo run -- --help
@@ -28,22 +32,30 @@ Options:
2832 -h, --help Print help
2933```
3034
31- #### Ethereum
35+ ### Examples
36+
37+ **Ethereum**
3238
3339```bash
3440$ cargo run -- ethereum --execution-rpc https://ethereum-rpc.publicnode.com
3541```
3642
37- #### OP Stack (E.g. Base)
43+ ** OP Stack (E.g. Base)**
3844
3945```bash
4046$ cargo run -- opstack --execution-rpc https://base-rpc.publicnode.com
4147```
4248
49+ ## Client Usage
50+
51+ See [helios-verifiable-api-client](verifiable-api/client) crate.
52+
4353## JSON-RPC to REST API map
4454
4555### Verifiable endpoints
4656
57+ Below is a map of RPC methods to Verifiable-API endpoints that are augmented with relevant proofs for verifiability.
58+
4759| Ethereum JSON-RPC Method | Helios Verifiable API Endpoint |
4860|--------------------------------|-----------------------------------------------------------------------------------------|
4961| `eth_getProof` | `GET /eth/v1/proof/account/{address}?block={}` |
@@ -55,11 +67,14 @@ $ cargo run -- opstack --execution-rpc https://base-rpc.publicnode.com
5567| `eth_getLogs` | `GET /eth/v1/proof/logs?fromBlock={}&toBlock={}&blockHash={}&address={}&topic0={}` |
5668| `eth_getFilterLogs` | `GET /eth/v1/proof/filterLogs/{filter_id}` |
5769| `eth_getFilterChanges` | `GET /eth/v1/proof/filterChanges/{filter_id}` |
58- | `eth_createAccessList` | `POST /eth/v1/proof/createAccessList` |
70+ | `eth_createAccessList` | `POST /eth/v1/proof/createExtendedAccessList` |
5971
6072
6173### Proxy endpoints
6274
75+ Below is a map of RPC methods to Verifiable-API endpoints that cannot be augmented with proofs but still supported
76+ so a client only needs to consume a single data source.
77+
6378| Ethereum JSON-RPC Method | Helios Verifiable API Endpoint |
6479|----------------------------------|---------------------------------------------|
6580| `eth_chainId` | `GET /eth/v1/chainId` |
0 commit comments