Skip to main content

Send Requests on SUAVE

If you followed the previous guide, you will have SUAVE running locally, either in Docker or via the binaries themselves.

In either case, you can cause a series of transactions to occur by running:

go run suave/devenv/cmd/main.go

[🔗source]

This guide will show you how to craft such transactions yourself.

RPC and SDK​

In order to keep some data in transactions confidential, SUAVE JSON-RPC extends the usual Ethereum JSOPN-RPC methods. Some methods in the eth_ namespace are overloaded to support confidential compute requests.

  1. eth_sendRawTransaction

Creates a new message call transaction or a contract creation for any signed ConfidentialComputeRequest.

  1. eth_call

Executes a new message call immediately without creating a transaction on the block chain. It follows the same format as the default eth_call with two extra parameters:

  • IsConfidential: Set to true to execute as a confidential request and access the MEVM methods.
  • ExecutionAddress: address - (optional) The execution address that performs the execution.
  1. eth_executionAddress

Returns the list of available addresses in the Kettle to execute the confidential compute request.

The SUAVE SDK makes it easy to interact with the extended RPC and we will be using it in this guide.