Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Switch to gRPC API #20

Closed
cpacia opened this issue Sep 14, 2018 · 1 comment · Fixed by #217
Closed

Switch to gRPC API #20

cpacia opened this issue Sep 14, 2018 · 1 comment · Fixed by #217
Labels
enhancement New feature or request

Comments

@cpacia
Copy link
Contributor

cpacia commented Sep 14, 2018

gRPC provides a much nicer interface than the JSON RPC and websocket APIs. There is a WIP PR in btcd to add gRPC support btcsuite/btcd#1075.

We could build on that and get it to where it needs to be to merge in here. Once that's in I would prefer to remove all JSON RPC API altogether and get rid of the btcjson package.

gRPC has a nice feature in that there is a plugin that lets you spawn a REST reverse proxy to the API for people who absolutely need a REST JSON interface.

In the course of doing so we should make sure we add all the RPCs needed to use bchd as a backend SPV wallet server. This would imply a creating a getheaders endpoint which accepts a block locator just like the wire message does. Plus a streaming headers endpoint for wallets to subscribe to.

Finally we'll need to serve SPV proofs either from a separate API or with the transactions response.

@cpacia cpacia added the enhancement New feature or request label Sep 14, 2018
@swdee
Copy link
Contributor

swdee commented Nov 24, 2018

For reference SPV proof ability is available with RPC commands gettxoutproof and verifytxoutproof implemented in this PR #153

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants