SFTP (password-based auth)

Interact with an SFTP (SSH File Transfer Protocol) Server using a username and password for auth

Integrate the SFTP (password-based auth) API with the GitHub API

Setup the SFTP (password-based auth) API trigger to run a workflow which integrates with the GitHub API. Pipedream's integration platform allows you to integrate SFTP (password-based auth) and GitHub remarkably fast. Free for developers.

Create Issue with GitHub API on New Remote Directory Watcher from SFTP (password-based auth) API
SFTP (password-based auth) + GitHub
 
Try it
Search Issues and Pull Requests with GitHub API on New Remote Directory Watcher from SFTP (password-based auth) API
SFTP (password-based auth) + GitHub
 
Try it
Create Branch with GitHub API on New Remote Directory Watcher from SFTP (password-based auth) API
SFTP (password-based auth) + GitHub
 
Try it
Create Issue Comment with GitHub API on New Remote Directory Watcher from SFTP (password-based auth) API
SFTP (password-based auth) + GitHub
 
Try it
Create or update file contents with GitHub API on New Remote Directory Watcher from SFTP (password-based auth) API
SFTP (password-based auth) + GitHub
 
Try it
New Remote Directory Watcher from the SFTP (password-based auth) API

Emit new events when files get created, changed or deleted from a remote directory. See the docs

 
Try it
New Branch (Instant) from the GitHub API

Emit new events when a new branch is created

 
Try it
New Card in Column (Classic Projects) from the GitHub API

Emit new event when a (classic) project card is created or moved to a specific column. For Projects V2 use New Issue with Status trigger. More information here

 
Try it
New Collaborator (Instant) from the GitHub API

Emit new events when collaborators are added to a repo

 
Try it
New Commit (Instant) from the GitHub API

Emit new events on new commits to a repo or branch

 
Try it
Create Issue with the GitHub API

Create a new issue in a Gihub repo. See docs here

 
Try it
Upload String as File with the SFTP (password-based auth) API

Uploads a UTF-8 string as a file on an SFTP server

 
Try it
Search Issues and Pull Requests with the GitHub API

Find issues and pull requests by state and keyword. See docs here

 
Try it
Create Branch with the GitHub API

Create a new branch in a Github repo. See docs here

 
Try it
Create Issue Comment with the GitHub API

Create a new comment in a issue. See docs here

 
Try it

Overview of SFTP (password-based auth)

SFTP (Secure File Transfer Protocol) is a network protocol that provides secure
file transfers over secure shell (SSH) connections. It is an extension of the
Secure Shell protocol, designed for secure file exchange between hosts. A user
can securely transfer files between systems without having to worry about
external threats, as the protocol is encrypted and authenticated.

With the SFTP API, you can build applications that securely transfer data, such
as files and documents, between two different systems. Some example
applications include:

  • Secure document sharing between two systems
  • Secure file synchronization between two systems
  • Secure backups of data over the network
  • Secure transfers of large files
  • Secure uploads and downloads of data
  • Media streaming between two systems

Connect SFTP (password-based auth)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
module.exports = defineComponent({
  props: {
    sftp_password_based_auth: {
      type: "app",
      app: "sftp_password_based_auth",
    }
  },
  async run({steps, $}) {
    const Client = require('ssh2-sftp-client');
    
    const { 
      host,
      username,
      password,
    } = this.sftp_password_based_auth.$auth
    
    const config = {
      host,
      username,
      password,
    }
    
    const sftp = new Client()
    
    await sftp.connect(config)
    this.cwd = await sftp.cwd();
    return await sftp.end();
  },
})

Connect GitHub

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
import { axios } from "@pipedream/platform"
export default defineComponent({
  props: {
    github: {
      type: "app",
      app: "github",
    }
  },
  async run({steps, $}) {
    return await axios($, {
      url: `https://api.github.com/user`,
      headers: {
        Authorization: `Bearer ${this.github.$auth.oauth_access_token}`,
        "X-GitHub-Api-Version": `2022-11-28`,
      },
    })
  },
})