github.com/InjectiveLabs/sdk-go@v1.53.0/exchange/exchange_rpc/pb/injective_exchange_rpc.proto (about)

     1  // Code generated with goa v3.7.0, DO NOT EDIT.
     2  //
     3  // InjectiveExchangeRPC protocol buffer definition
     4  //
     5  // Command:
     6  // $ goa gen github.com/InjectiveLabs/injective-indexer/api/design -o ../
     7  
     8  syntax = "proto3";
     9  
    10  package injective_exchange_rpc;
    11  
    12  option go_package = "/injective_exchange_rpcpb";
    13  
    14  // InjectiveExchangeRPC defines gRPC API of an Injective Exchange service.
    15  service InjectiveExchangeRPC {
    16  	// GetTx gets transaction details by hash.
    17  	rpc GetTx (GetTxRequest) returns (GetTxResponse);
    18  	// PrepareTx generates a Web3-signable body for a Cosmos transaction
    19  	rpc PrepareTx (PrepareTxRequest) returns (PrepareTxResponse);
    20  	// BroadcastTx broadcasts a signed Web3 transaction
    21  	rpc BroadcastTx (BroadcastTxRequest) returns (BroadcastTxResponse);
    22  	// PrepareCosmosTx generates a Web3-signable body for a Cosmos transaction
    23  	rpc PrepareCosmosTx (PrepareCosmosTxRequest) returns (PrepareCosmosTxResponse);
    24  	// BroadcastCosmosTx broadcasts a signed Web3 transaction
    25  	rpc BroadcastCosmosTx (BroadcastCosmosTxRequest) returns (BroadcastCosmosTxResponse);
    26  	// Return fee payer information's
    27  	rpc GetFeePayer (GetFeePayerRequest) returns (GetFeePayerResponse);
    28  }
    29  
    30  message GetTxRequest {
    31  	// Transaction hash in hex without 0x prefix (Cosmos-like).
    32  	string hash = 1;
    33  }
    34  
    35  message GetTxResponse {
    36  	// Hex-encoded Tendermint transaction hash
    37  	string tx_hash = 1;
    38  	// The block height
    39  	sint64 height = 2;
    40  	// Tx index in the block
    41  	uint32 index = 3;
    42  	// Namespace for the resp code
    43  	string codespace = 4;
    44  	// Response code
    45  	uint32 code = 5;
    46  	// Result bytes, if any
    47  	bytes data = 6;
    48  	// The output of the application's logger (raw string). May be
    49  // non-deterministic.
    50  	string raw_log = 7;
    51  	// Time of the previous block.
    52  	string timestamp = 8;
    53  }
    54  
    55  message PrepareTxRequest {
    56  	// Specify chainID for the target tx
    57  	uint64 chain_id = 1;
    58  	// Specify Ethereum address of a signer
    59  	string signer_address = 2;
    60  	// Deprecated: this field is ignored
    61  	uint64 sequence = 3;
    62  	// Textual memo information to attach with tx
    63  	string memo = 4;
    64  	// Block height until which the transaction is valid.
    65  	uint64 timeout_height = 5;
    66  	// Transaction fee details.
    67  	CosmosTxFee fee = 6;
    68  	// List of Cosmos proto3-encoded Msgs to include in a single tx
    69  	repeated bytes msgs = 7;
    70  	// The wrapper of the EIP712 message, V1 or V2
    71  	string eip712_wrapper = 8;
    72  }
    73  
    74  message CosmosTxFee {
    75  	// Transaction gas price
    76  	repeated CosmosCoin price = 1;
    77  	// Transaction gas limit
    78  	uint64 gas = 2;
    79  	// Explicitly require fee delegation when set to true. Or don't care = false.
    80  // Will be replaced by other flag in the next version.
    81  	bool delegate_fee = 3;
    82  }
    83  
    84  message CosmosCoin {
    85  	// Coin denominator
    86  	string denom = 1;
    87  	// Coin amount (big int)
    88  	string amount = 2;
    89  }
    90  
    91  message PrepareTxResponse {
    92  	// EIP712-compatible message suitable for signing with eth_signTypedData_v4
    93  	string data = 1;
    94  	// Account tx sequence (nonce)
    95  	uint64 sequence = 2;
    96  	// Sign mode for the resulting tx
    97  	string sign_mode = 3;
    98  	// Specify proto-URL of a public key, which defines the signature format
    99  	string pub_key_type = 4;
   100  	// Fee payer address provided by service
   101  	string fee_payer = 5;
   102  	// Hex-encoded ethsecp256k1 signature bytes from fee payer
   103  	string fee_payer_sig = 6;
   104  }
   105  
   106  message BroadcastTxRequest {
   107  	// Specify Web3 chainID (from prepateTx) for the target Tx
   108  	uint64 chain_id = 1;
   109  	// Amino-encoded Tx JSON data (except Msgs)
   110  	bytes tx = 2;
   111  	// List of Cosmos proto3-encoded Msgs from tx
   112  	repeated bytes msgs = 3;
   113  	// Specify ethsecp256k1 pubkey of the signer
   114  	CosmosPubKey pub_key = 4;
   115  	// Hex-encoded ethsecp256k1 signature bytes
   116  	string signature = 5;
   117  	// Fee payer address provided by service
   118  	string fee_payer = 6;
   119  	// Hex-encoded ethsecp256k1 signature bytes from fee payer
   120  	string fee_payer_sig = 7;
   121  	// Broadcast mode
   122  	string mode = 8;
   123  }
   124  
   125  message CosmosPubKey {
   126  	// Pubkey type URL
   127  	string type = 1;
   128  	// Hex-encoded string of the public key
   129  	string key = 2;
   130  }
   131  
   132  message BroadcastTxResponse {
   133  	// Hex-encoded Tendermint transaction hash
   134  	string tx_hash = 1;
   135  	// The block height
   136  	sint64 height = 2;
   137  	// Tx index in the block
   138  	uint32 index = 3;
   139  	// Namespace for the resp code
   140  	string codespace = 4;
   141  	// Response code
   142  	uint32 code = 5;
   143  	// Result bytes, if any
   144  	bytes data = 6;
   145  	// The output of the application's logger (raw string). May be
   146  // non-deterministic.
   147  	string raw_log = 7;
   148  	// Time of the previous block.
   149  	string timestamp = 8;
   150  }
   151  
   152  message PrepareCosmosTxRequest {
   153  	// Specify chainID for the target tx
   154  	uint64 chain_id = 1;
   155  	// sender address provided
   156  	string sender_address = 2;
   157  	// Textual memo information to attach with tx
   158  	string memo = 3;
   159  	// Block height until which the transaction is valid.
   160  	uint64 timeout_height = 4;
   161  	// Transaction fee details.
   162  	CosmosTxFee fee = 5;
   163  	// List of Cosmos proto3-encoded Msgs to include in a single tx
   164  	repeated bytes msgs = 6;
   165  }
   166  
   167  message PrepareCosmosTxResponse {
   168  	// proto encoded tx
   169  	bytes tx = 1;
   170  	// Sign mode for the resulting tx
   171  	string sign_mode = 2;
   172  	// Specify proto-URL of a public key, which defines the signature format
   173  	string pub_key_type = 3;
   174  	// Fee payer address provided by service
   175  	string fee_payer = 4;
   176  	// Hex-encoded ethsecp256k1 signature bytes from fee payer
   177  	string fee_payer_sig = 5;
   178  	// ethsecp256k1 feePayer pubkey
   179  	CosmosPubKey fee_payer_pub_key = 6;
   180  }
   181  
   182  message BroadcastCosmosTxRequest {
   183  	// proto encoded tx
   184  	bytes tx = 1;
   185  	// Specify ethsecp256k1 sender pubkey
   186  	CosmosPubKey pub_key = 2;
   187  	// Hex-encoded ethsecp256k1 sender signature bytes
   188  	string signature = 3;
   189  	// sender address
   190  	string sender_address = 4;
   191  }
   192  
   193  message BroadcastCosmosTxResponse {
   194  	// Hex-encoded Tendermint transaction hash
   195  	string tx_hash = 1;
   196  	// The block height
   197  	sint64 height = 2;
   198  	// Tx index in the block
   199  	uint32 index = 3;
   200  	// Namespace for the resp code
   201  	string codespace = 4;
   202  	// Response code
   203  	uint32 code = 5;
   204  	// Result bytes, if any
   205  	bytes data = 6;
   206  	// The output of the application's logger (raw string). May be
   207  // non-deterministic.
   208  	string raw_log = 7;
   209  	// Time of the previous block.
   210  	string timestamp = 8;
   211  }
   212  
   213  message GetFeePayerRequest {
   214  }
   215  
   216  message GetFeePayerResponse {
   217  	// Fee payer address provided by service
   218  	string fee_payer = 1;
   219  	// ethsecp256k1 feePayer pubkey
   220  	CosmosPubKey fee_payer_pub_key = 2;
   221  }