← pCloud

Upload File with pCloud API

Pipedream makes it easy to connect APIs for pCloud and 1000+ other apps remarkably fast.

Trigger workflow on
HTTP requests, schedules and app events
Next, do this
Upload File with the pCloud API
No credit card required
Into to Pipedream
Watch us build a workflow
Watch us build a workflow
7 min
Watch now ➜

Trusted by 400,000+ developers from startups to Fortune 500 companies

Adyen logo
Brex logo
Carta logo
Checkr logo
Chameleon logo
DevRev logo
LinkedIn logo
Netflix logo
New Relic logo
OnDeck logo
Replicated logo
Scale AI logo
Teamwork logo
Warner Bros. logo
Xendit logo

Developers Pipedream

Getting Started

Create a workflow to Upload File with the pCloud API. When you configure and deploy the workflow, it will run on Pipedream's servers 24x7 for free.

  1. Configure the Upload File action
    1. Connect your pCloud account
    2. Select a Folder ID
    3. Configure Name
    4. Configure Rename if Exists
    5. Optional- Configure Modified Time
    6. Optional- Configure Created Time
  2. Select a trigger to run your workflow on HTTP requests, schedules or app events
  3. Deploy the workflow
  4. Send a test event to validate your setup
  5. Turn on the trigger

Integrations

Upload File with pCloud API on New Requests (Payload Only) from HTTP / Webhook API
HTTP / Webhook + pCloud
 
Try it
Upload File with pCloud API on New Message from Discord API
Discord + pCloud
 
Try it
Upload File with pCloud API on New Message in Channel from Discord Bot API
Discord Bot + pCloud
 
Try it
Upload File with pCloud API on New Submission from Typeform API
Typeform + pCloud
 
Try it
Upload File with pCloud API on Custom Events from Zoom API
Zoom + pCloud
 
Try it

Details

This is a pre-built, source-available component from Pipedream's GitHub repo. The component is developed by Pipedream and the community, and verified and maintained by Pipedream.

To contribute an update to an existing component or create a new component, create a PR on GitHub. If you're new to Pipedream component development, you can start with quickstarts for trigger span and action development, and then review the component API reference.

Upload File on pCloud
Description:Upload a file to the specified folder. [See the docs here](https://docs.pcloud.com/methods/file/uploadfile.html)
Version:0.0.4
Key:pcloud-upload-file

Code

import pcloud from "../../pcloud.app.mjs";
import common from "../common/base.mjs";
import { promises as fsPromises } from "fs";

export default {
  ...common,
  key: "pcloud-upload-file",
  name: "Upload File",
  description:
    "Upload a file to the specified folder. [See the docs here](https://docs.pcloud.com/methods/file/uploadfile.html)",
  version: "0.0.4",
  type: "action",
  props: {
    ...common.props,
    folderId: {
      propDefinition: [
        pcloud,
        "folderId",
      ],
      description: `Select a **Folder** to receive the uploaded file.
        \\
        Alternatively, you can provide a custom *Folder ID*.`,
    },
    name: {
      propDefinition: [
        pcloud,
        "name",
      ],
      description: `Name of the file to upload. This must be a file in the workflow's \`/tmp\` directory.
        \\
        [See the docs on how to work with files in your workflow.](https://pipedream.com/docs/code/nodejs/working-with-files/)`,
    },
    renameIfExists: {
      type: "boolean",
      label: "Rename if Exists",
      description:
        "If true, the uploaded file will be renamed, if another file with the requested name already exists in the specified folder.",
      default: true,
    },
    modifiedTime: {
      propDefinition: [
        pcloud,
        "modifiedTime",
      ],
    },
    createdTime: {
      propDefinition: [
        pcloud,
        "createdTime",
      ],
    },
  },
  methods: {
    ...common.methods,
    async validateInputs() {
      const files = await fsPromises.readdir("/tmp");
      const fileName = this.name;

      if (!files.includes(fileName)) {
        return `File "${this.name}" not found in the /tmp directory`;
      }

      return true;
    },
    getSummary() {
      return `Uploaded file "${this.name}" successfully`;
    },
    async requestMethod() {
      return this.pcloud.uploadFile(
        this.folderId,
        this.name,
        this.noPartial,
        this.progressHash,
        this.renameIfExists,
        this.modifiedTime,
        this.createdTime,
      );
    },
  },
};

Configuration

This component may be configured based on the props defined in the component code. Pipedream automatically prompts for input values in the UI and CLI.
LabelPropTypeDescription
pCloudpcloudappThis component uses the pCloud app.
Folder IDfolderIdintegerSelect a value from the drop down menu.
Namenamestring

Name of the file to upload. This must be a file in the workflow's /tmp directory.

See the docs on how to work with files in your workflow.

Rename if ExistsrenameIfExistsboolean

If true, the uploaded file will be renamed, if another file with the requested name already exists in the specified folder.

Modified TimemodifiedTimeinteger

Must be Unix time (seconds).

Created TimecreatedTimeinteger

Must be Unix time (seconds).

Requires Modified Time to be set.

Authentication

pCloud uses OAuth authentication. When you connect your pCloud account, Pipedream will open a popup window where you can sign into pCloud and grant Pipedream permission to connect to your account. Pipedream securely stores and automatically refreshes the OAuth tokens so you can easily authenticate any pCloud API.

Pipedream requests the following authorization scopes when you connect your account:

About pCloud

Secure encrypted cloud storage

More Ways to Use pCloud

Triggers

Watch Folder from the pCloud API

Emit new event when a file is created or modified in the specified folder.

 
Try it

Actions

Copy File with the pCloud API

Copy a file to the specified destination. See the docs here

 
Try it
Copy Folder with the pCloud API

Copy a folder to the specified folder. See the docs here

 
Try it
Create Folder with the pCloud API

Create a folder in the specified folder. See the docs here

 
Try it
Download File(s) with the pCloud API

Download one or more files to a folder. See the docs here

 
Try it
List Contents with the pCloud API

Get the contents of the specified folder. See the docs here

 
Try it