Skip to content

Commit

Permalink
fix(1901): preamble + author github usernames
Browse files Browse the repository at this point in the history
  • Loading branch information
shanejonas committed Jun 29, 2019
1 parent 052c16d commit e924157
Showing 1 changed file with 12 additions and 12 deletions.
24 changes: 12 additions & 12 deletions EIPS/eip-1901.md
Original file line number Diff line number Diff line change
@@ -1,20 +1,18 @@
# Add OpenRPC Service Discovery To JSON-RPC Services

EIP: ??
Title: Add OpenRPC Service Discovery To JSON-RPC Services
Author: Shane Jonas, Zachary Belford
discussions-to: https://github.com/ethereum/EIPs/issues/1902
Status: Draft
Type: Interface
Created: 2019-02-25
---
eip: 1901
title: Add OpenRPC Service Discovery To JSON-RPC Services
author: Shane Jonas (@shanejonas), Zachary Belford (@belfordz)
discussions-to: https://github.com/ethereum/EIPs/issues/1902
status: Draft
type: Interface
created: 2019-02-25
---

# Abstract
### What is this?

This is a proposal to add [OpenRPC](https://github.com/open-rpc/spec) support to existing and future JSON-RPC services by adding the method [`rpc.discover`](https://github.com/open-rpc/spec#service-discovery-method) to the projects [JSON-RPC](https://www.jsonrpc.org/specification) APIs, enabling automation and tooling.

The OpenRPC Document that specifies all the methods an EVM-based blockchain should implement can be found [here](https://github.com/etclabscore/ethereum-json-rpc-specification).

# Motivation
This was first proposed [here as an ECIP](https://github.com/etclabscore/ECIPs/blob/master/ECIPs/ECIP-1053.md), but the benefits of this kind of tooling is apparent across Bitcoin, Ethereum Classic, Ethereum and other JSON-RPC accessible blockchains.

Expand Down Expand Up @@ -48,6 +46,8 @@ This is the structure of an OpenRPC Document:

![openrpc-spec-structure](https://github.com/open-rpc/design/raw/master/diagrams/structure/OpenRPC_structure.png)

The OpenRPC Document that implements all the methods from #1474 and #1436 and `getRawTransaction*` can be found in [assets/eip-1901/openrpc.json](assets/eip-1901/openrpc.json)

# Rationale
### Why would we do this?
Services need to figure out how to talk to each other. If we really want to build the next generation of automation, then having up to date libraries, documented APIs, and modern tools are going to provide easy discovery, on-boarding, and enable end user and developer interaction.
Expand All @@ -63,4 +63,4 @@ Use cases for machine-readable [JSON-RPC 2.0](https://www.jsonrpc.org/specificat


# Alternative
[OpenRPC](https://github.com/open-rpc/spec) documents just describe [JSON-RPC](https://www.jsonrpc.org/specification) APIs services, and are represented in JSON format. These documents may be produced and served statically OR generated dynamically from an application and returned via the [`rpc.discover`](https://github.com/open-rpc/spec#service-discovery-method) method. This gives projects and communities the flexibility to adopt tools before the [`rpc.discover`](https://github.com/open-rpc/spec#service-discovery-method) method is implemented.
[OpenRPC](https://github.com/open-rpc/spec) documents just describe [JSON-RPC](https://www.jsonrpc.org/specification) APIs services, and are represented in JSON format. These documents may be produced and served statically OR generated dynamically from an application and returned via the [`rpc.discover`](https://github.com/open-rpc/spec#service-discovery-method) method. This gives projects and communities the flexibility to adopt tools before the [`rpc.discover`](https://github.com/open-rpc/spec#service-discovery-method) method is implemented.

0 comments on commit e924157

Please sign in to comment.