with Schedule and Bitget?
Retrieve all contract symbols by product type. See the documentation
Retrieve candlestick data for a contract symbol. See the documentation
Retrieve open interest for contracts. See the documentation
Retrieve current funding rate for a contract symbol. See the documentation
Retrieve discount rate information for contract trading. See the documentation
The Schedule app in Pipedream is a powerful tool that allows you to trigger workflows at regular intervals, ranging from every minute to once a year. This enables the automation of repetitive tasks and the scheduling of actions to occur without manual intervention. By leveraging this API, you can execute code, run integrations, and process data on a reliable schedule, all within Pipedream's serverless environment.
import { axios } from "@pipedream/platform";
import crypto from "crypto";
export default defineComponent({
props: {
bitget: {
type: "app",
app: "bitget",
}
},
async run({ steps, $ }) {
function sign(message, secretKey) {
const mac = crypto.createHmac('sha256', secretKey);
mac.update(message, 'utf8');
const digest = mac.digest();
return Buffer.from(digest).toString('base64');
}
function preHash(timestamp, method, requestPath, body) {
return timestamp.toString() + method.toUpperCase() + requestPath + body;
}
const emptyBody = "";
const timestamp = Math.round(new Date());
const requestPath = "/api/v2/mix/account/account?symbol=btcusdt&productType=USDT-FUTURES&marginCoin=usdt";
const getSignResult = sign(preHash(timestamp, "GET", requestPath, emptyBody), this.bitget.$auth.secret_key);
return await axios($, {
url: `https://api.bitget.com${requestPath}`,
method: "GET",
headers: {
"ACCESS-KEY": this.bitget.$auth.api_key,
"ACCESS-SIGN": getSignResult,
"ACCESS-PASSPHRASE": this.bitget.$auth.secret_passphrase,
"ACCESS-TIMESTAMP": timestamp,
"locale": "en-US",
"Content-Type": "application/json"
}
})
},
})