Comparison of endpoint types

The following table compares the differences between the gRPC, REST and CometBFT RPC endpoints.

NameAdvantagesDisadvantages

gRPC

  • can use code-generated stubs in various languages

  • supports streaming and bidirectional communication (HTTP/2)

  • small wire binary sizes, faster transmission

  • based on HTTP/2, not available in some browsers

  • learning curve (mostly due to Protobuf)

REST

  • ubiquitous

  • client libraries in all languages, faster implementation

  • only supports unary request-response communication (HTTP/1.1)

  • bigger over-the-wire message sizes (JSON)

  • heavily rate-limited by public endpoints

CometBFT RPC

  • easy to use

  • has endpoints that allow querying txs by event type

  • has websocket support for streaming data

  • bigger over-the-wire message sizes (JSON)

  • due to scalability issues, many documented endpoints may be disabled or heavily rate-limited by public endpoints

Last updated