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 }