with CoinCatch and Microsoft Teams?
Emit new event when a new channel is created within a team. See the documentation
Emit new event when a new message is posted in a channel. See the documentation
Emit new event when a new chat is created. See the documentation
Emit new event when a new message is received in a chat. See the documentation
Emit new event when a new team is joined by the authenticated user. See the documentation
Create a new channel in Microsoft Teams. See the docs here
Get the list of shift instances for a team. See the documentation
Send a message to a team's channel. See the docs here
import { axios } from "@pipedream/platform";
import crypto from 'crypto';
export default defineComponent({
props: {
coincatch: {
type: "app",
app: "coincatch",
}
},
async run({ steps, $ }) {
const accessKey = this.coincatch.$auth.access_key;
const secretKey = this.coincatch.$auth.secret_key;
const passphrase = this.coincatch.$auth.passphrase;
// Helper function to generate signed headers
const createSignedHeaders = ({
method,
requestPath,
queryString = "",
body = "",
}) => {
const timestamp = Date.now().toString();
const upperMethod = method.toUpperCase();
// Build content to sign
let contentToSign = timestamp + upperMethod + requestPath;
if (queryString) {
contentToSign += "?" + queryString;
}
if (body) {
contentToSign += body;
}
// Generate signature
const hmac = crypto.createHmac("sha256", secretKey);
hmac.update(contentToSign);
const signature = hmac.digest("base64");
return {
timestamp,
method: upperMethod,
requestPath,
queryString,
body,
contentToSign,
signature,
headers: {
"ACCESS-KEY": accessKey,
"ACCESS-SIGN": signature,
"ACCESS-TIMESTAMP": timestamp,
"ACCESS-PASSPHRASE": passphrase,
},
};
};
// Call helper to get signed headers + metadata
const resp = createSignedHeaders({
method: "GET",
requestPath: "/api/mix/v1/account/accounts",
queryString: "productType=umcbl"
});
const url = `https://api.coincatch.com${resp.requestPath}${resp.queryString ? "?" + resp.queryString : ""
}`;
// Make the API request
return await axios($, {
method: resp.method,
url,
headers: resp.headers,
data: resp.body || undefined,
});
},
})
The Microsoft Teams API on Pipedream allows you to automate tasks, streamline communication, and integrate with other services to enhance the functionality of Teams as a collaboration hub. With this API, you can send messages to channels, orchestrate complex workflows based on Teams events, and manage Teams' settings programmatically.
import { axios } from "@pipedream/platform"
export default defineComponent({
props: {
microsoft_teams: {
type: "app",
app: "microsoft_teams",
}
},
async run({steps, $}) {
return await axios($, {
url: `https://graph.microsoft.com/v1.0/me`,
headers: {
Authorization: `Bearer ${this.microsoft_teams.$auth.oauth_access_token}`,
},
})
},
})