with BitMEX and Twilio SendGrid?
Emit new event when a balance‑affecting execution (trade fill, settlement, realized PnL) occurs in your BitMEX account. See the documentation
Emit new event when a new order is placed on your BitMEX account. See the documentation
Emit new event when any of the specified SendGrid events is received
Submit a new trading order in your BitMEX account. See the documentation
Allows you to add one or more email addresses to the global suppressions group. See the docs here
Retrieve your current wallet information from BitMEX. See the documentation
Retrieve a list of executed trades from your BitMEX account. See the documentation
import crypto from "crypto";
import { axios } from "@pipedream/platform";
export default defineComponent({
props: {
bitmex: {
type: "app",
app: "bitmex",
}
},
async run({ steps, $ }) {
// Set verb, path, and data as needed
const verb = "GET";
const path = "/api/v1/user";
const expires = Math.floor(Date.now() / 1000) + 60; // UNIX timestamp in seconds
const data = ""; // No body for GET
// Function to generate signature
function generateSignature(apiSecret, verb, path, expires, data) {
const message = verb + path + expires + data;
return crypto
.createHmac("sha256", apiSecret)
.update(message)
.digest("hex");
}
// Build headers
const signature = generateSignature(
this.bitmex.$auth.api_secret,
verb,
path,
expires,
data
);
const headers = {
"api-key": this.bitmex.$auth.api_key,
"api-expires": expires,
"api-signature": signature,
};
// Perform request
return await axios($, {
method: verb,
url: `${this.bitmex.$auth.api_url}${path}`,
headers,
});
},
})The Twilio SendGrid API opens up a world of possibilities for email automation, enabling you to send emails efficiently and track their performance. With this API, you can programmatically create and send personalized email campaigns, manage contacts, and parse inbound emails for data extraction. When you harness the power of Pipedream, you can connect SendGrid to 3,000+ other apps to automate workflows, such as triggering email notifications based on specific actions, syncing email stats with your analytics, or handling incoming emails to create tasks or tickets.
import { axios } from "@pipedream/platform"
export default defineComponent({
props: {
sendgrid: {
type: "app",
app: "sendgrid",
}
},
async run({steps, $}) {
return await axios($, {
url: `https://api.sendgrid.com/v3/user/account`,
headers: {
Authorization: `Bearer ${this.sendgrid.$auth.api_key}`,
},
})
},
})
