with IMAP and Freshdesk?
Emit new event when a contact is created. See the documentation
Emit new event when a ticket is created. See the documentation
Assign a Freshdesk ticket to a specific agent. See the documentation
Assign a Freshdesk ticket to a specific group See the documentation
Using Pipedream's IMAP API, developers can automate interactions with their email inbox, enabling serverless workflows that perform actions based on incoming emails. This could include parsing email contents, triggering events upon receiving emails from specific senders, attaching labels, and much more. By leveraging IMAP, Pipedream can act as a bridge between your email and other services, streamlining processes that would otherwise require manual intervention.
import { once } from "events";
import imaps from "imap-simple";
import cycle from "cycle";
export default defineComponent({
props: {
imap: {
type: "app",
app: "imap",
}
},
async run({steps, $}) {
const { host, port, email, password } = this.imap.$auth;
const connection = await imaps.connect({
imap: {
host,
port,
user: email,
password,
tls: true,
tlsOptions: { servername: host },
authTimeout: 3000
},
});
const boxes = await connection.getBoxes();
// Filter out circular references to parents
const filteredBoxes = cycle.decycle(boxes);
$.export("results", filteredBoxes);
connection.end();
await once(connection.imap, "end");
},
})
The Freshdesk API empowers you to interact programmatically with your customer support platform, creating possibilities for automating repetitive tasks, integrating with other services, and enhancing customer experiences. With Pipedream, you can effortlessly connect Freshdesk to a multitude of apps, tapping into triggers and actions that streamline workflows. For instance, you can automate ticket creation, sync customer issues with a CRM, or trigger notifications based on ticket updates, all within a serverless environment.
import { axios } from "@pipedream/platform"
export default defineComponent({
props: {
freshdesk: {
type: "app",
app: "freshdesk",
}
},
async run({steps, $}) {
return await axios($, {
url: `https://${this.freshdesk.$auth.domain}.freshdesk.com/api/v2/tickets`,
auth: {
username: `${this.freshdesk.$auth.api_key}:X`,
password: ``,
},
})
},
})