Getting Started
Everything you need to send files from Zapier (or any automation tool) to your SFTP server through PushFTP.
Quick start
Create an account
Sign up at pushftp.com/signup. Free plan includes 1 connection and 50 transfers/month.
Add your SFTP connection
Go to Dashboard → Add connection. Enter your server's hostname, port, username, and password (or SSH key). Click "Test Connection" to verify it works.
PushFTP encrypts all credentials with AES-256-GCM before storing them.
Whitelist the PushFTP IP
Add 178.104.35.54 to your server's firewall allowlist. This is the only IP that will ever connect to your server — it never changes.
Generate an API key
Go to Dashboard → API Keys → Generate. Copy the key — it's only shown once. It starts with pftp_.
Connect Zapier
See the Zapier guide below.
API Reference
Upload a file
POST https://pushftp.com/api/upload/{connectionId}Authentication
Authorization: Bearer pftp_your_api_key
Option 1: Multipart form data
curl -X POST https://pushftp.com/api/upload/YOUR_CONNECTION_ID \ -H "Authorization: Bearer pftp_your_key" \ -F "[email protected]" \ -F "path=/uploads/reports/"
filerequiredThe file to uploadpathoptionalRemote directory (defaults to connection's default path)filenameoptionalOverride the filenameOption 2: JSON with base64
curl -X POST https://pushftp.com/api/upload/YOUR_CONNECTION_ID \
-H "Authorization: Bearer pftp_your_key" \
-H "Content-Type: application/json" \
-d '{
"filename": "report.csv",
"content": "aGVsbG8gd29ybGQ=",
"path": "/uploads/"
}'filenamerequiredName for the uploaded filecontentrequiredFile contents as base64 stringpathoptionalRemote directoryResponse
{
"success": true,
"transfer": {
"id": "abc123",
"filename": "report.csv",
"path": "/uploads/report.csv",
"size": 1234,
"durationMs": 350,
"connection": {
"id": "xyz789",
"name": "Production SFTP",
"type": "sftp"
}
}
}Connecting Zapier
Create a Zap
Choose your trigger (e.g., "New Row in Google Sheets", "New Email in Gmail", etc.).
Add a "Webhooks by Zapier" action
Search for Webhooks by Zapier and select POST as the action event.
Configure the webhook
Test and turn on
Click "Test step" in Zapier. If you see "success": true, your file was uploaded. Turn on the Zap and you're done.
Connecting Make (Integromat)
Add an HTTP module
In your scenario, add HTTP → Make a request.
Configure
Connecting n8n
Add an HTTP Request node
Set method to POST, URL to your upload endpoint.
Configure
FAQ
What file size limit is there?
Currently 50MB per upload. Need more? Contact us.
Can I upload to S3 or FTP (not just SFTP)?
Yes. PushFTP supports SFTP, FTP, and S3. Add any of these as a connection type.
What happens if the upload fails?
The API returns a detailed error response explaining what went wrong (unreachable server, auth failure, permission denied, etc.). Failed transfers are logged in your dashboard, and you'll get an email notification so nothing fails silently.
Is the fixed IP shared between customers?
Yes — all traffic goes through the same EU server. The IP never changes.
Do you store my files?
No. Files are forwarded immediately and never stored on our servers.