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

More info on the diff between node's API(RPC) and Gateway #810

Closed
Wondertan opened this issue Jun 9, 2023 · 2 comments · Fixed by #827
Closed

More info on the diff between node's API(RPC) and Gateway #810

Wondertan opened this issue Jun 9, 2023 · 2 comments · Fixed by #827
Assignees

Comments

@Wondertan
Copy link
Member

Wondertan commented Jun 9, 2023

People seem to be confused by these two, and the best solution here is to improve our docs.

Gateway

The gateway is meant to be deployed by infra providers to enable the public read-only gateway to the DA network for external users who don't want or can't run Light Nodes(like browsers currently) over HTTP. It has no wallet or signing functionality(not precisely true atm, but it will change before mainnet).

I think celestia should provide a few public gateways at some point. We may also implement super-light-clients over Gateway at some point.

API

It primarily focuses on developers and projects building on top of Celestia, who are willing to run DA nodes. The API provides a richer set of features and ergonomics. Unlike Gateway, the API allows access to the internal Wallet/Keyring of the DA node, as well as other sensitive and administrative capabilities.

Library

The node can be used as a Golang library and designed for programmatic API access. (WIP atm(celestiaorg/celestia-node#2349) and needs to be cleaned up for convenience as well as needs examples)

RPC

The API is also exposed to OpenRPC(JSON-RPC 2.0) for users wanting to run their DA node as a separate DA service. It provides the same set of features as the library with an additional auth system with different permissions levels to protect the wallet and signing + provide RPC-level DOS protection.

@jcstein
Copy link
Member

jcstein commented Jun 21, 2023

thank you for writing this out @Wondertan 🙌

@jcstein
Copy link
Member

jcstein commented Jun 21, 2023

but help me out here please 😅 aren't Gateway and RPC both technically just versions/flavors of a node API? so they're both technically APIs?

jcstein added a commit that referenced this issue Jun 21, 2023
@jcstein jcstein self-assigned this Jun 21, 2023
jcstein added a commit that referenced this issue Jul 5, 2023
jcstein added a commit that referenced this issue Jul 5, 2023
* fix: update mocha-2 from mocha in consensus-full-node.md

* deps: bump to mocha-3

* docs: add sov labs/dymension and alphabetize rollup menu (#789)

* docs: add Sovereign SDK to sidebar on docs

* alphabetize rollup category

* docs: add dymension

* rearrange order

* Update taro-testnet.md

* Update taro-testnet.md

* docs: resolve #803

* Update rpc-tutorial.mdx

* docs: update to RPC CLI only

* cleanup

* fix: broken links

* edit for '"gm"'

* docs: edit upgrade binary section

* add scaffold-eth and thirdweb

* hide scaffold for now

* Apply suggestions from code review

* fix: delete redundant subheadings (#815)

* style: collapse OP section

* docs: resolve #820

* docs: add network upgrade channel

resolves #812

* docs: add node api page for category

resolves #810

* fix: linting

* docs: improve node tut

* fix: nsid length to match #825

* docs: add demos page (#828)

* docs: add version tags for every network & add mocha chain id variable (#832)

* docs: add version tags for every network & add mocha chain id variable

resolves #813
resolves #831

* fix: linting from md to mdx

* add links from @rootulp's suggestion

* fix: start commands for *current* version of arabica (#834)

* Update taro-testnet.md (#836)

fixed some grammatical things that bugged me

* Update light-node.mdx (#837)

The current command to start the light node in the docs "https://docs.celestia.org/nodes/light-node/" is provided with an incomplete RPC endpoint. A minor correction to -> "consensus-full-arabica-8.celestia-arabica.com" solves this.

* docs: update node tutorial to resolve #807 and #811 (#825)

* docs: add back balanceForAddress to RPC tut (#829)

Resolves #806

* docs: match celestia-app repo (#844)

* docs: match celestia-app repo

* fix: build

* Update latest_tags.yml (#846)

* docs: update full consensus node graphic (#852)

* docs: fix link to github instead of dead demo

* [automated GH action] update latest release tags & commit sha (arabica)

* deps: add gateway deprecated flag

in alignment with celestiaorg/celestia-node#2360

* docs: upgrade to arabica-9

* docs: bump to arabica-9 in versions/constants.js

* [automated GH action] update latest release tags & commit sha (arabica) (#858)

Co-authored-by: YazzyYaz <[email protected]>

* sidebar-update (#856)

Made sidebar totally collapsible

* [automated GH action] update latest release tags & commit sha (mocha) (#859)

Co-authored-by: jcstein <[email protected]>

* mocha-3

---------

Co-authored-by: Yaz Khoury <[email protected]>
Co-authored-by: Christian Holman <[email protected]>
Co-authored-by: Hachiman <[email protected]>
Co-authored-by: Matthew Sevey <[email protected]>
Co-authored-by: jcstein <[email protected]>
Co-authored-by: Yaz Khoury <[email protected]>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: YazzyYaz <[email protected]>
Co-authored-by: Wholesomebruh <[email protected]>
jcstein added a commit that referenced this issue Sep 21, 2023
jcstein added a commit that referenced this issue Sep 21, 2023
* fix: update mocha-2 from mocha in consensus-full-node.md

* deps: bump to mocha-3

* docs: add sov labs/dymension and alphabetize rollup menu (#789)

* docs: add Sovereign SDK to sidebar on docs

* alphabetize rollup category

* docs: add dymension

* rearrange order

* Update taro-testnet.md

* Update taro-testnet.md

* docs: resolve #803

* Update rpc-tutorial.mdx

* docs: update to RPC CLI only

* cleanup

* fix: broken links

* edit for '"gm"'

* docs: edit upgrade binary section

* add scaffold-eth and thirdweb

* hide scaffold for now

* Apply suggestions from code review

* fix: delete redundant subheadings (#815)

* style: collapse OP section

* docs: resolve #820

* docs: add network upgrade channel

resolves #812

* docs: add node api page for category

resolves #810

* fix: linting

* docs: improve node tut

* fix: nsid length to match #825

* docs: add demos page (#828)

* docs: add version tags for every network & add mocha chain id variable (#832)

* docs: add version tags for every network & add mocha chain id variable

resolves #813
resolves #831

* fix: linting from md to mdx

* add links from @rootulp's suggestion

* fix: start commands for *current* version of arabica (#834)

* Update taro-testnet.md (#836)

fixed some grammatical things that bugged me

* Update light-node.mdx (#837)

The current command to start the light node in the docs "https://docs.celestia.org/nodes/light-node/" is provided with an incomplete RPC endpoint. A minor correction to -> "consensus-full-arabica-8.celestia-arabica.com" solves this.

* docs: update node tutorial to resolve #807 and #811 (#825)

* docs: add back balanceForAddress to RPC tut (#829)

Resolves #806

* docs: match celestia-app repo (#844)

* docs: match celestia-app repo

* fix: build

* Update latest_tags.yml (#846)

* docs: update full consensus node graphic (#852)

* docs: fix link to github instead of dead demo

* [automated GH action] update latest release tags & commit sha (arabica)

* deps: add gateway deprecated flag

in alignment with celestiaorg/celestia-node#2360

* docs: upgrade to arabica-9

* docs: bump to arabica-9 in versions/constants.js

* [automated GH action] update latest release tags & commit sha (arabica) (#858)

Co-authored-by: YazzyYaz <[email protected]>

* sidebar-update (#856)

Made sidebar totally collapsible

* [automated GH action] update latest release tags & commit sha (mocha) (#859)

Co-authored-by: jcstein <[email protected]>

* mocha-3

---------

Co-authored-by: Yaz Khoury <[email protected]>
Co-authored-by: Christian Holman <[email protected]>
Co-authored-by: Hachiman <[email protected]>
Co-authored-by: Matthew Sevey <[email protected]>
Co-authored-by: jcstein <[email protected]>
Co-authored-by: Yaz Khoury <[email protected]>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: YazzyYaz <[email protected]>
Co-authored-by: Wholesomebruh <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants