Skip to content

Commit 46ea202

Browse files
committed
doc-strings, openapi.yaml and handler for same
1 parent 5206b89 commit 46ea202

File tree

4 files changed

+1008
-4
lines changed

4 files changed

+1008
-4
lines changed

verifiable-api/README.md

Lines changed: 23 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,14 @@
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+
## API Spec
8+
9+
[openapi.yaml](https://github.com/a16z/helios/blob/master/verifiable-api/server/openapi.yaml)
10+
11+
## Server Usage
412

513
```bash
614
$ cargo run -- --help
@@ -28,22 +36,30 @@ Options:
2836
-h, --help Print help
2937
```
3038
31-
#### Ethereum
39+
### Examples
40+
41+
**Ethereum**
3242
3343
```bash
3444
$ cargo run -- ethereum --execution-rpc https://ethereum-rpc.publicnode.com
3545
```
3646
37-
#### OP Stack (E.g. Base)
47+
**OP Stack (E.g. Base)**
3848
3949
```bash
4050
$ cargo run -- opstack --execution-rpc https://base-rpc.publicnode.com
4151
```
4252
53+
## Client Usage
54+
55+
See [helios-verifiable-api-client](verifiable-api/client) crate.
56+
4357
## JSON-RPC to REST API map
4458
4559
### Verifiable endpoints
4660
61+
Below is a map of RPC methods to Verifiable-API endpoints that are augmented with relevant proofs for verifiability.
62+
4763
| Ethereum JSON-RPC Method | Helios Verifiable API Endpoint |
4864
|--------------------------------|-----------------------------------------------------------------------------------------|
4965
| `eth_getProof` | `GET /eth/v1/proof/account/{address}?block={}` |
@@ -55,11 +71,14 @@ $ cargo run -- opstack --execution-rpc https://base-rpc.publicnode.com
5571
| `eth_getLogs` | `GET /eth/v1/proof/logs?fromBlock={}&toBlock={}&blockHash={}&address={}&topic0={}` |
5672
| `eth_getFilterLogs` | `GET /eth/v1/proof/filterLogs/{filter_id}` |
5773
| `eth_getFilterChanges` | `GET /eth/v1/proof/filterChanges/{filter_id}` |
58-
| `eth_createAccessList` | `POST /eth/v1/proof/createAccessList` |
74+
| `eth_createAccessList` | `POST /eth/v1/proof/createExtendedAccessList` |
5975
6076
6177
### Proxy endpoints
6278
79+
Below is a map of RPC methods to Verifiable-API endpoints that cannot be augmented with proofs but still supported
80+
so a client only needs to consume a single data source.
81+
6382
| Ethereum JSON-RPC Method | Helios Verifiable API Endpoint |
6483
|----------------------------------|---------------------------------------------|
6584
| `eth_chainId` | `GET /eth/v1/chainId` |

0 commit comments

Comments
 (0)