Extend order by API using api key
This is full example to extend order by API using api key
How to get the api key
Option 1: Generate the api key on the Tronsave website.
Option 2: Generate the api key on Telegram.
const API_KEY = `your_api_key`;
const TRONSAVE_API_URL = "https://api.tronsave.io/v0"
const RECEIVER = "the_address_that_receive_resource"
/**
* @param {*} extend_to time in milliseconds you want to extend to
* @param {*} max_price number maximum price you want to pay to extend
* @returns
*/
const GetEstimateExtendData = async (extend_to, max_price) => {
const url = TRONSAVE_API_URL + `/get-extendable-delegates`
const body = {
"extend_to": extend_to, //time in milliseconds you want to extend to
"receiver": RECEIVER, //the address that receives resource delegate
"max_price": max_price, //Optional. Number maximum price you want to pay to extend
}
const data = await fetch(url, {
method: "POST",
headers: {
'apikey': API_KEY,
"content-type": "application/json",
},
body: JSON.stringify(body)
})
const response = await data.json()
/**
* Example response
* @link //TODO
{
"extend_order_book": [
{
"price": 133,
"value": 64319
}
],
"total_delegate_amount": 64319,
"total_available_extend_amount": 64319,
"total_estimate_trx": 8554427,
"is_able_to_extend": true,
"your_balance": 20000000,
"extend_data": [
{
"delegator": "TMN2uTdy6rQYaTm4A5g732kHRf72tKsA4w",
"is_extend": true,
"extra_amount": 0,
"extend_to": 1728459019000
}
]
}
*/
return response
}
/**
* @param {*} extend_to time in milliseconds you want to extend to
* @param {*} max_price number maximum price you want to pay to extend
* @returns
*/
const SendInternalExtendRequest = async (extend_to, max_price) => {
const url = TRONSAVE_API_URL + `/internal-extend-request`
const estimate_response = await GetEstimateExtendData(extend_to, max_price)
if (estimate_response.extend_data && estimate_response.extend_data.length) {
const body = {
"extend_data": estimate_response.extend_data,
"receiver": RECEIVER,
}
const data = await fetch(url, {
method: "POST",
headers: {
'apikey': API_KEY,
"content-type": "application/json",
},
body: JSON.stringify(body)
})
const response = await data.json()
/**
* Example response
* @link //TODO
[<order_id>]
*/
return response
}
return []
}
//Example run code
const ClientCode = () => {
const extend_to = +new Date() + 86400 * 1000 //Extend to 1 next day
const max_price = 200
SendInternalExtendRequest(extend_to, max_price).then(console.log)
}
ClientCode()
Last updated