Upload from URL

Pass a file URL — PushFTP fetches it and uploads to your server.

In Zapier, files from Gmail, Google Drive, OneDrive, etc. come as download URLs — not raw files. PushFTP can fetch these URLs directly and upload the content to your server in one step.

POST Endpoint

POST https://pushftp.com/api/upload/{connectionId}

Example

curl -X POST https://pushftp.com/api/upload/YOUR_CONNECTION_ID \
  -H "Authorization: Bearer pftp_your_key" \
  -H "Content-Type: application/json" \
  -d '{
    "url": "https://example.com/reports/march.csv",
    "path": "/uploads/",
    "overwrite": false,
    "filename_template": "{name}-{date}{ext}"
  }'
urlrequiredURL of the file to fetch and upload
filenameoptionalOverride filename (auto-detected from URL if omitted)
pathoptionalRemote directory
overwriteoptionalSet false to skip if file exists (default: true)
filename_templateoptionalRename with template tokens

How filename detection works

  1. If you provide filename, that's used
  2. Otherwise, checks the Content-Disposition header from the URL
  3. Falls back to the last segment of the URL path

💡 Zapier tip

When using "Webhooks by Zapier", set the payload type to JSON and map the file URL from your trigger to the url field. PushFTP handles the download automatically — no need for extra steps.