Introducing the FTP task in Deluge

Introducing the FTP task in Deluge

Hello everyone,

We're excited to announce the launch of the FTP task, a powerful addition to Deluge that enables you to effortlessly transfer files between various Zoho apps and your own servers. Unlike the invokeUrl task, which supports various HTTP requests, the all-new FTP task is purpose-built for file transfers.

What is the FTP task?  
The FTP task in Deluge allows you to upload and download files directly to and from your own servers. This can be a game-changer for organizations with strict data residency or compliance requirements. The FTP task can be used across any Zoho service that supports Deluge, making it a powerful addition to your Deluge workflows.

Why use it?
For a variety of reasons, a growing number of organizations prefer not to host their data in cloud storage and instead store it within the safety of their own infrastructure. This task is built precisely for such teams, empowering them to connect with their own FTP/SFTP servers, and store or retrieve files securely while maintaining full control over their data.

Syntax

Quote

response = ftp
[
     action :<action_value>
     host :"<host_name>"
     port :<port_number>
     path : "<path_value>"
     files:file_object
     connection:"<connection_name>"
];

where,

  • ftp: This is the type of task used for file transfers. You'll need to replace "ftp" with "sftp" if you're using SFTP.

  • <action_value>: This specifies the action to be performed.

    • Use upload to send a file from Zoho to your server.

    • Use download to fetch a file from your server into Zoho.
  • <host_name>: This is the domain or URL of your FTP/SFTP server. This is where the file will be uploaded or from where it will be downloaded.
    Note: Only text-based hostnames are supported, and IP addresses are not allowed.

  • <port_number>: This is the network port used to connect to the server.

    • 21 is the default port for FTPS.

    • 22 is the default port for SFTP.

  • <path_value>: This is the path to the file location on the server.

    • For uploads, if the path is empty, the file will be placed in the default directory.

    • For downloads, this must be specified to locate the exact file.

  • file_object: This refers to the file object to be uploaded or the placeholder for the downloaded file.

  • <connection_name>: This is the name of your connection to authenticate and interact with your server. Following the launch of this task, we've also introduced default connectors for FTP and SFTP. To use this task, you'll first need to create and authenticate the required connection.

Notes

Note:

  • For the upload action in the FTP task, the action and host parameters are mandatory. While for the download action, three parameters are required: action, host, and path.

  • Please note that these FTP/SFTP connections are dedicated solely for this task and cannot be used with any other actions or tasks.

Use cases
Here are some real-world use cases on how this task can be used within different Zoho applications:

  • Zoho CRM: An insurance agency uses Zoho CRM to manage leads and client interactions. Once a lead is converted, the agent generates a policy estimate as a PDF using Deluge. Then the agency uses the FTP task to upload the PDF file to its own server. The file is now stored safely and is available for future compliance or reference.

  • Zoho Books: A finance team needs monthly invoices for internal auditing. These invoices were earlier uploaded from Books to the server, and now the FTP task can be used to download invoice files.
     

  • Zoho Creator: A university uses a Zoho Creator app to collect applications from prospective students. As part of the process, students upload sensitive documents, like proof of identity, passports, and academic certificates. To ensure data privacy and compliance, the university uses the FTP task to upload these files to its own server.

Example
The script below demonstrates how to work with the FTP task in Deluge. First, we fetch a publicly available .txt file from the internet using the invokeUrl task. The file is then converted to a file object and uploaded to an FTP server (in this case, a server from a third-party FTP service provider). Later, when needed, the same file is downloaded from the server using the FTP download action.

Quote
ftpTxtFile = invokeurl
[
       url :"https://sample-files.com/downloads/documents/txt/simple.txt"
       type :GET
];
ftpTxtFile = ftpTxtFile.toFile("ftp.txt");
info ftpTxtFile;
 
uploadFtp = ftp
[
        action :upload
        host :"ap-southeast-1.sftpcloud.io"
        port :21
        path : ""
        files:ftpTxtFile
        connection:"ftp_conn"
];
info uploadFtp;
 
downloadFtp = ftp
[
         action :download
         host :"ap-southeast-1.sftpcloud.io"
         port :21
         path :"/ftp.txt"
         connection:"ftp_conn"
];
info downloadFtp;
info downloadFtp.getFileContent();

Help documentation
FTP task
SFTP task

That's all from us for now! We hope you enjoy working with the new FTP task and start putting it to good use right away. We're eager to hear how it's helping your workflows.

And don't worry—we'll be back soon with more exciting updates and powerful features to enhance your experience with Deluge.

Regards,

The Deluge Team


      • Sticky Posts

      • Function #41: Sync Associated Subforms!

        Welcome back everyone! The last custom function showed how to update a Contact with Product details from it's Related list in Deals. This week, let's look at a function that lets you update subform records in two modules simultaneously when one of them is updated. Business scenario Let's look at how subform helps in an education institution that has deployed Zoho CRM. National Public School, Austin (made up, of course!) has set up Zoho CRM and it follows the same relationship pattern of "Students",

        • Recent Topics

        • Exciting Updates to the Kiosk Studio Feature in Zoho CRM!

          Hello Everyone, We are here again with a series of new enhancements to Kiosk Studio, designed to elevate your experience and bring even greater efficiency to your business processes. These updates build upon our ongoing commitment to making Kiosk a powerful
        • Edit default "We are here to help you" text in chat SalesIQ widget

          Does anyone know how this text can be edited? I can't find it anywhere in settings. Thanks!
        • PO Based Advance payment to Vendor

          We recommend to introduce a provision at PO to make advance payment to vendors and auto apply that advance paid later at the time of Vendor Bill submission for that PO. This will help us track PO-wise Total Payments.
        • Converting Customer Invoice to Purchase Bill

          Hi, In my service-based business, I sometimes create the customer invoice first, and later I receive the purchase bill from the vendor for the same job. Is there any option in Zoho Books to: Convert a customer invoice into a purchase bill, or Link/associate
        • Getting Project Template List using the REST API

          I am trying to confirm that I can use the REST API to create a project using a project template. The API documentation indicates this is possible by providing the Template ID, but it is not clear at all how to get a list of available Project Templates
        • How to get Quickbooks Desktop Info into Zoho?

          Our team has used Quickbooks desktop for years and is looking at switching to Zoho books in 2026. I want to bring all old sales history over since we use Zoho CRM. I can export Item sales history and generic sales orders from Quickbooks desktop. How do
        • ZeptoMail API Request

          We tried to send mail using ZeptoMail using Django. Following is my payload {'from': {'address': 'abc@abc.com'}, 'to': [{'email_address': {'address': 'xyz@xyz.in', 'name': 'Bhavik'}}], 'subject': 'Report Name', 'htmlbody': '<p>Test</p>'} Following is
        • Zoho Inventory - Allow Update of Marketplace Generated Sales Orders via API

          Hi Inventory Team, I was recently asked by a client to create an automation which updated a Zoho Inventory Sales Order if a Shopify Order was updated. I have created the script but I found that the request is blocked as the Sales Order was generated by
        • Admin asked me for Backend Details when I wanted to verify my ZeptoMail Account

          Please provide the backend details where you will be adding the SMTP/API information of ZeptoMail Who knows what this means?
        • Mass import of documents into Zoho Writer

          I'm using Google's word processor at the moment but feel that Zoho does a better job (on the online apps market). Iwant to move my documents (about 50-70) to Zoho but it seems to me that I have to import them seperately. Is it already possible to upload several documents at a time or is this a forthcoming feature? Cheers Rolli :?:
        • Add home page or dashboard in CRM customer portal

          is it possible to add home page or dashboard in CRM customer portal?
        • User Tips: How to change the the label display name of a system defined field

          Most users know how to change field label names via Settings > Modules & Fields but if you want to change the name of a system defined field you can’t as there is no “edit properties” option.  However with a simple hack you can edit any system defined
        • Search not working!

          I have items in my notebook tagged but when I search for a tag nothing comes up! Any fix for this?
        • Zoho CRM Community Digest - October 2025 | Part 1

          Hello Everyone! Here's a quick recap of first two weeks of October! Product Updates: Zoho CRM Android App Update: Surveys, Blueprints, and Smarter Mobile Features! Zoho CRM’s Android app just got a useful upgrade. You can now share records, upload your
        • Automate onboarding emails with CRM Workflow and Accounts module

          We’re a B2B SaaS company selling to public-sector organisations. Each organisation is stored as an Account in Zoho CRM, and each organisation typically has multiple associated Contacts. Our backend syncs product-usage data (setup status, user activity,
        • Using a CRM Client Script Button to create a Books Invoice

          Hello, I need help handling error messages returned to my client script from a function. The scenario I have setup a client script button which is available from each Deal. This CS executes a crm function, which in turn creates an invoice based on the
        • Important update: Enhanced security measures for account operations in Zoho Cliq

          Greetings from the Zoho Cliq team! We’d like to share an important security update that has an influence on some admin actions such as password reset, MFA reset, and MFA backup code generation. What’s changing? With our latest security enhancements, these
        • Sales Receipts Duplicating when I run reports why and how do we rectify this and any other report if this happens

          find attached extract of my report
        • No Functional Autosave or Manual Save Button

          Application : Zoho Notebook So I wanted to try Zoho Notebook(On Ubuntu) as an application, I installed the application and went solving my LeetCode problems visually(Drawing mode), at one point the app just stopped saving anything... Every time I tried
        • Enterprise subscription support

          My organization sells subscription services to enterprise customers, which is a different model from the consumer subscription model that Zoho Billing has been designed to support and I beleve this capability should be added. An enterprise subscription
        • Issue with Creator's IF logic

          Hi, I found the following code produces unexpected results: if(-1.0 < 0.0000000) {       info "True"; } else {       info "False"; } if(-1.0 < 0.000000) {       info "True"; } else {       info "False"; } The output returned is: False True However, the
        • Need option to send Package PDF in shipment email (Shipment PDF is missing Lot info)

          Is there any way to automatically attach the Package PDF instead of (or alongside) the Shipment PDF in the notification emails? We really need this feature because the default Shipment PDF creates a blind spot for our customers. It does not display Batch/Lot
        • zoho creator view is not present in the workspace and blank reports

          Hi Support,  Users who have "write" permissions keep getting this error for all of our embedded reports all of a sudden. See screen shot below: Meanwhile, my developer permissions account sees a blank screen in view and edit mode as shown in the screenshots
        • Customize portal email template

          Can i fetch only first name of the user in portal email template instead of the below code Hi ${User.FULL_NAME}
        • Can't we let users decide which options they'd like to add at embed widget?

          It seems embed widget DOES NOT offer a feature, where users can choose options upon subscribing plans. What Zoho has instead, is that admins have to manually create plan with options. How come no one in Zoho dev team never raised issue about usability
        • Reupload and rename from one field to another field (file upload)

          Hi Everyone, Sorry, i have question to use invoke url for rename and reupload attachments file to another field. Tested on development mode. Zoho C6. Refer to https://www.zoho.com/creator/help/api/v2/upload-file.html look my error notification. Does anyone
        • Printing Multi-Page Reports (PDF Export)

          Hi, I am moving a report from Google's Looker Studio to Zoho Analytics and trying to reproduce the Looker page by page dashboard editing experience. With Google, what you see is what you get when you print to PDF. But I can't seem to create the same experience
        • Resume Harvester: New Enhancements for Faster Sourcing

          We’re excited to share a set of enhancements to Resume Harvester that make sourcing faster and more flexible. These updates help you cut down on repetitive steps, manage auto searches more efficiently, and review candidate profiles with ease. Why we built
        • I NEED TO NUMBER TO TEXT NO HERE

          =NUMBERTEXT NEEED
        • Error: View is not present in the workspace

          When saving a dashboard, user receives a popup with the following error. "View is not present in the workspace" What does this mean or refer to? There is no further insight given.
        • Dear Zoho CEO: Business Growth is about how you prioritise!

          All of us in business know that when you get your priorities right, your business grows. Zoho CRM and Zoho Books are excellent products, but sadly, Zoho Inventory continues to lag behind. Just this morning, I received yet another one-sided email about
        • Is there any way to send an Excel received by email to Dataprep?

          Every day I receive an email alert with an Excel file that I want to process through a Dataprep pipeline. To do this, I need to: -Save the file to disk -Open the pipeline -Run the pipeline -Update the source -Several clicks to select and open the saved
        • Bin Locations

          Dear all, I am wondering if someone has the ability to develop the bin locations option for zoho inventory (integrated with zoho books) Regards, Ryan
        • Create and populate a record in an instant: Introducing zero-shot field prompting to Zia's ICR

          A couple of months ago, we upgraded our in-house AI image detection and validation tool, Zia Vision, with intelligent character recognition (ICR). By training Zia with sample images, you could create and enrich CRM records with data extracted from standard
        • How to Prevent Users From Skipping LMS Videos in Zoho People

          How to Prevent Users From Skipping LMS Videos in Zoho People Hello Zoho Developers, In this blog, we will quickly look at how you can stop users from skipping or fast-forwarding videos in Zoho People LMS. Zoho People provides a feature called Disable
        • [Integration Edition] Deluge Learning Series – Custom API with Deluge | November 2025

          We’re excited to conclude this four-month Integration Edition of the Deluge Learning Series: Session 1 – Integrating Zoho Apps with Deluge Using Built-In Integration Tasks Session 2 – Integrating Zoho Apps with Deluge Using invokeURL and invokeAPI Session
        • Automate Backups

          This is a feature request. Consider adding an auto backup feature. Where when you turn it on, it will auto backup on the 15-day schedule. For additional consideration, allow for the export of module data via API calls. Thank you for your consideration.
        • Tips for Organizing Workflows and Improving Team Coordination in Zoho

          Hi everyone, I’m looking for some general advice on how different teams are organizing their daily work within Zoho’s apps. Our team recently expanded, and we’re trying to streamline how tasks, discussions, and documents are shared so everything stays
        • Pre-fill webforms in Recruit

          I don't want to use the career site portal (as I have my own already), but I would like to direct users to the application forms for each role, from my website job pages. Is there a way to pre-fill fields in Recruit application forms, so that I only have
        • Prevent user from viewing all records?

          I have a report that is meant to be used by vendors to view only the records that are assigned to them. All the vendor information is stored in a separate application, so I need to call a function to get the current user's ID (not the zoho user ID). The report settings criteria doesn't support using function calls, so instead I'm embedding the report in an html page like this: if (thisapp.Global.CurrentUserIs("Vendor")) {       personID = common.getLoggedInPersonID();       query = "Assigned_Vendor.ID="
        • Next Page