Installation and usage of the platform

gRPC tools

The Waves Enterprise blockchain platform provides the ability to interact with the blockchain using a gRPC interface.

gRPC is a high-performance Remote Procedure Call (RPC) framework developed by Google Corporation. The framework works via the HTTP/2. The protobuf serialization format is used to transfer data between the client and the server and describes the data types used.

Officially, gRPC supports 10 programming languages. A list of supported languages is available in the official gRPC documentation.

Preconfiguring the gRPC interface

Before using the gRPC interface:

  1. decide on the programming language you will use to interact with the node;

  2. install the gRPC framework for your programming language according to the official gRPC documentation;

  3. download and unpack the protobuf package we-proto-x.x.x.zip for the platform version you are using and the protoc plugin to compile the protobuf files;

  4. make sure that the gRPC interface is started and configured in the configuration file of the node, with which data will be exchanged.

To communicate with the node via the gRPC interface, the default port is 6865.

What the gRPC interface is for

You can use the gRPC interface of each node for the following tasks:

Each of these tasks has its own set of methods packed in the corresponding protobuf files. You can find a detailed description of each set of methods in the articles above.

gRPC methods of the node, as opposed to REST API methods, do not require authorization. Also all the methods packaged in protobuf files that are placed in the contract directory are available for both node and smart contracts. When used in smart contracts, these methods require authorization.