hedera 0.4.0

Hedera SDK for Rust
syntax = "proto3";

package proto;

option java_package = "com.hederahashgraph.service.proto.java";

import "TransactionResponse.proto";
import "Query.proto";
import "Response.proto";
import "Transaction.proto";

/* The request and responses for different smart contract services. */
service SmartContractService {
    rpc createContract (Transaction) returns (TransactionResponse); // Creates a contract by submitting the transaction. The grpc server returns the TransactionResponse

    rpc updateContract (Transaction) returns (TransactionResponse); // Updates a contract with the content by submitting the transaction. The grpc server returns the TransactionResponse

    rpc contractCallMethod (Transaction) returns (TransactionResponse); // Calls a contract by submitting the transaction. The grpc server returns the TransactionResponse

    rpc getContractInfo (Query) returns (Response); // Retrieves the contract information by submitting the query. The grpc server returns the Response

    rpc contractCallLocalMethod (Query) returns (Response); // Calls a smart contract by submitting the query. The grpc server returns the Response

    rpc ContractGetBytecode (Query) returns (Response); // Retrieves the byte code of a contract by submitting the query. The grpc server returns the Response

    rpc getBySolidityID (Query) returns (Response); // Retrieves a contract(using Solidity ID) by submitting the query. The grpc server returns the Response

    rpc getTxRecordByContractID (Query) returns (Response); // Retrieves a contract(using contract ID) by submitting the query. The grpc server returns the Response

    }