with Terminus App and RabbitMQ?
The Terminus App API enables you to automate your account-based marketing operations by connecting Terminus with various other tools and services. Through Pipedream, you can craft serverless workflows that interact with the Terminus platform, such as syncing contact lists, triggering campaigns based on external events, and analyzing marketing performance data. Pipedream's no-code platform allows you to quickly create integrations with the Terminus App API and hundreds of other services with minimal setup.
import { axios } from "@pipedream/platform"
export default defineComponent({
props: {
terminus_app: {
type: "app",
app: "terminus_app",
}
},
async run({steps, $}) {
return await axios($, {
url: `https://api.terminusapp.com/v1/projects`,
auth: {
username: `${this.terminus_app.$auth.api_key}`,
password: ``,
},
})
},
})
import amqp from "amqplib";
export default defineComponent({
props: {
rabbitmq: {
type: "app",
app: "rabbitmq",
}
},
async run({ steps, $ }) {
const url = `amqp://${this.rabbitmq.$auth.username}:${this.rabbitmq.$auth.password}@${this.rabbitmq.$auth.host}:${this.rabbitmq.$auth.port}`;
const connection = await amqp.connect(url);
const channel = await connection.createChannel();
const queue = 'Sample Queue';
await channel.assertQueue(queue, { durable: true });
const message = 'Welcome RabbitMQ + Pipedream users! ' + new Date().toISOString()
channel.sendToQueue(queue, Buffer.from(message), { persistent: true });
console.log(`Sent: ${message}`);
const queueInfo = await channel.checkQueue(queue);
return queueInfo;
},
})