with Google Calendar and SFTP (key-based auth)?
Emit new event based on a time interval before an upcoming event in the calendar. This source uses Pipedream's Task Scheduler. See the documentation for more information and instructions for connecting your Pipedream account.
Emit new events when files get created, changed or deleted from a remote directory. See the docs
Emit new event when a Google Calendar events is created or updated (does not emit cancelled events)
Emit new event when a Google Calendar event is created that matches a search
Uploads a file or string in UTF-8 format to the SFTP server. See the documentation
Add attendees to an existing event. See the documentation
Create a quick event to the Google Calendar. See the documentation
Create an event in a Google Calendar. See the documentation
Delete an event from a Google Calendar. See the documentation
The Google Calendar API lets you dip into the powerhouse of scheduling, allowing for the reading, creation, and manipulation of events and calendars directly from your applications. Through Pipedream, you can seamlessly integrate Google Calendar into a myriad of workflows, automating event management, syncing with other services, setting up custom reminders, or even collating data for reporting. The key here is to streamline your calendar-related processes, ensuring that your time management is as efficient and automated as possible.
import { axios } from "@pipedream/platform"
export default defineComponent({
props: {
google_calendar: {
type: "app",
app: "google_calendar",
}
},
async run({steps, $}) {
return await axios($, {
url: `https://www.googleapis.com/oauth2/v1/userinfo`,
headers: {
Authorization: `Bearer ${this.google_calendar.$auth.oauth_access_token}`,
},
})
},
})
The SFTP (key-based auth) app on Pipedream allows you to securely transfer and manage files over a network. It uses SSH for data transfer and provides the same level of security as SSH, without requiring password authentication, making automation workflows more secure and less prone to human error. You can automate file uploads, downloads, synchronization tasks, and efficiently manage your remote files in a serverless environment. Integrating this with other Pipedream-supported apps enables you to craft powerful and secure data flow systems.
module.exports = defineComponent({
props: {
sftp: {
type: "app",
app: "sftp",
}
},
async run({steps, $}) {
const Client = require('ssh2-sftp-client');
const {
host,
username,
privateKey,
} = this.sftp.$auth
const config = {
host,
username,
privateKey,
}
const sftp = new Client()
await sftp.connect(config)
this.cwd = await sftp.cwd();
return await sftp.end();
},
})