with Dropbox and SSH (key-based auth)?
Emit new event when a new file is added to your account or a specific folder. Make sure the number of files/folders in the watched folder does not exceed 4000.
Emit new event when a new folder is created. Make sure the number of files/folders in the watched folder does not exceed 4000.
Emit new event when a file or folder is added or modified. Make sure the number of files/folders in the watched folder does not exceed 4000.
Executes a command on a remote device. See SSH lib docs here
Creates a brand new text file from plain text content you specify. See the documentation
Adds a new line to an existing text file, or creates a file if it doesn't exist. See the documentation
Creates or updates a public share link to the file or folder (It allows you to share the file or folder with anyone). See the documentation
The Dropbox API on Pipedream enables you to automate file and folder operations, streamlining workflows that involve storing, syncing, and sharing content. With this API, you can programmatically manage files, set up event-driven triggers based on changes within Dropbox, and leverage Pipedream's capabilities to connect with hundreds of other apps for extended automation scenarios. It's ideal for building custom file management solutions, archiving systems, or collaborative content workflows without writing extensive code.
import { axios } from "@pipedream/platform"
export default defineComponent({
props: {
dropbox: {
type: "app",
app: "dropbox",
}
},
async run({steps, $}) {
const data = {
"account_id": `${this.dropbox.$auth.oauth_uid}`,
}
return await axios($, {
method: "post",
url: `https://api.dropboxapi.com/2/users/get_account`,
headers: {
Authorization: `Bearer ${this.dropbox.$auth.oauth_access_token}`,
"Content-Type": `application/json`,
},
data,
})
},
})
The SSH (Secure Shell) key-based authentication API allows you to execute commands on a remote server securely. With Pipedream, leverage this capability to automate server management tasks, execute deployment scripts, or gather data from your server infrastructure. By integrating with other apps on Pipedream, you can create seamless workflows that trigger actions on your servers in response to various events.
module.exports = defineComponent({
props: {
ssh: {
type: "app",
app: "ssh",
}
},
async run({steps, $}) {
const SSH2Promise = require('ssh2-promise')
const {
host,
port,
username,
privateKey,
} = this.ssh.$auth
const ssh = new SSH2Promise({
host,
port,
username,
privateKey,
})
await ssh.connect()
console.log("Connection established")
// Replace this with the command you'd like to run
const resp = await ssh.exec("whoami")
console.log(resp)
await ssh.close()
},
})