Upload gas free orders


- 1.Call the "Get Rate Interface" to obtain the return value isSupportNoGas, where Y indicates support for gas free exchange
- 2.Call the "Create Order Interface" and pass the isSupportNoGas field. If successful, the noGasTxInfo field will be returned as the call to be signed_ Data
- 3.For call_ Sign data to obtain signed data such as r, s, v, rawTransaction
- 4.Call the "Upload gas free orders", pass r, s, v, rawTransaction, and the orderId returned by the "Create Order Interface" to complete the process
Step 3 Example Code
const privateKey = ''; // private key
const transactionData = '{
gasLimit: 100000,
data: '0xaxxxxxxxxxxxxxxxxxxxxxxxxxxxx',
chainId: 56,
to: '0x0000000000000xxxxx',
nonce: 50,
gasPrice: '3150000000'
}'
const account = web3.eth.accounts.privateKeyToAccount(privateKey);
const signedTx = await account.signTransaction(transactionData);
const r = signedTx.r;
const s = signedTx.s;
const v = signedTx.v;
const rawTransaction = signedTx.rawTransaction;
1.Interface call:
https://{host}/gt/swap/v1/noGasSwap
2. Request parameter instance
parameter | whether | explain |
---|---|---|
orderId | Yes | eg:5d3b383f-5b58-4a35-87b6-2de8d23a492e |
r | Yes | eg:0xxxxxxx |
s | Yes | eg:0xxxxxxx |
v | Yes | eg: 0xxx |
rawTransaction | Yes | eg: 0xxxxxxx |
3. Example of request parameters
{
//orderId
"orderId": "5d3b383f-xxxx-xxxx-xxxx-2de8d23a492e",
"r": "0xxxx",
"s": "0xxxxx",
"v": "0xxx",
"rawTransaction": "0xxxxxxxxx"
}
4.Example of returned results
{
"orderId": "5d3b383f-xxxx-xxxx-xxxx-2de8d23a492e",
"transactionHash": "0xxxxxxxxxxxxxx"
}
5.Return Parameter Description
field name | field | type | remark |
---|---|---|---|
orderId | orderId | String | orderId |
tx hash | transactionHash | String | tx hash |
java
```java
OkHttpClient client = new OkHttpClient().newBuilder()
.build();
MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, "{\n \"orderId\": \"5d3b383f-xxx-xxx-87b6-xxx\",\n \"r\": \"0xxxx\",\n \"s\": \"0xxxx\",\n \"v\": \"0xxxx\",\n \"rawTransaction\": \"0xxxx\"\n}");
Request request = new Request.Builder()
.url("https://www.swftc.info/gt/swap/v1/noGasSwap")
.method("POST", body)
.addHeader("Content-Type", "application/json")
.build();
Response response = client.newCall(request).execute();
```
curl
```powershell
curl --location 'https://www.swftc.info/gt/swap/v1/noGasSwap' \
--header 'Content-Type: application/json' \
--data '{
"orderId": "5d3b383f-xxx-xxx-87b6-xxx",
"r": "0xxxx",
"s": "0xxxx",
"v": "0xxxx",
"rawTransaction": "0xxxx"
}'
```

Last modified 3mo ago