1"use strict";(self.webpackChunkembedded_workflow_builder_docs=self.webpackChunkembedded_workflow_builder_docs||[]).push([["5274"],{51377(e,n,t){t.r(n),t.d(n,{metadata:()=>r,default:()=>a,frontMatter:()=>d,contentTitle:()=>l,toc:()=>o,assets:()=>c});var r=JSON.parse('{"id":"connectors/ftp","title":"FTP Connector","description":"Manage files and directories on an FTP server","source":"@site/docs/connectors/ftp.md","sourceDirName":"connectors","slug":"/connectors/ftp","permalink":"/connectors/ftp","draft":false,"unlisted":false,"tags":[],"version":"current","frontMatter":{"title":"FTP Connector","sidebar_label":"FTP","description":"Manage files and directories on an FTP server"},"sidebar":"docs","previous":{"title":"Frontify","permalink":"/connectors/frontify"},"next":{"title":"GitHub","permalink":"/connectors/github"}}'),s=t(74848),i=t(28453);let d={title:"FTP Connector",sidebar_label:"FTP",description:"Manage files and directories on an FTP server"},l,c={},o=[{value:"Connections",id:"connections",level:2},{value:"Basic Authentication",id:"basic",level:3},{value:"Prerequisites",id:"prerequisites",level:4},{value:"Configure the Connection",id:"configure-the-connection",level:4},{value:"Triggers",id:"triggers",level:2},{value:"New or Modified Files",id:"newormodifiedfiles",level:3},{value:"Actions",id:"actions",level:2},{value:"Create Directory",id:"createdirectory",level:3},{value:"Delete File",id:"deletefile",level:3},{value:"List Directory",id:"listdirectory",level:3},{value:"Move File",id:"movefile",level:3},{value:"Read File",id:"readfile",level:3},{value:"Write File",id:"writefile",level:3}];function h(e){let n={a:"a",code:"code",em:"em",h2:"h2",h3:"h3",h4:"h4",img:"img",li:"li",p:"p",strong:"strong",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",ul:"ul",...(0,i.R)(),...e.components};return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.img,{alt:"FTP",src:t(62051).A+"#connector-icon",width:"32",height:"32"}),"\n",(0,s.jsx)(n.a,{href:"https://en.wikipedia.org/wiki/File_Transfer_Protocol",children:"FTP"})," (File Transfer Protocol) is a standard network protocol for transferring files between a client and server.\nThis component allows uploading, downloading, moving, and deleting files on an FTP or FTPS server."]}),"\n",(0,s.jsx)(n.h2,{id:"connections",children:"Connections"}),"\n",(0,s.jsx)(n.h3,{id:"basic",children:"Basic Authentication"}),"\n",(0,s.jsx)(n.p,{children:"Authenticate using username and password."}),"\n",(0,s.jsxs)(n.p,{children:["This component supports basic authentication, meaning that a ",(0,s.jsx)(n.strong,{children:"username"})," and ",(0,s.jsx)(n.strong,{children:"password"})," can be entered for authentication, or if the FTP server allows anonymous access, those values can be left blank."]}),"\n",(0,s.jsx)(n.h4,{id:"prerequisites",children:"Prerequisites"}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsx)(n.li,{children:"An FTP or FTPS server with accessible credentials"}),"\n",(0,s.jsx)(n.li,{children:"Server hostname or IP address"}),"\n",(0,s.jsx)(n.li,{children:"Port number (typically 21 for FTP or 990 for FTPS)"}),"\n",(0,s.jsx)(n.li,{children:"SSL/TLS configuration details (if using FTPS)"}),"\n"]}),"\n",(0,s.jsx)(n.h4,{id:"configure-the-connection",children:"Configure the Connection"}),"\n",(0,s.jsxs)(n.p,{children:["Create a connection of type ",(0,s.jsx)(n.strong,{children:"Basic Authentication"})," and configure the following:"]}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.strong,{children:"Username"}),": Enter the FTP username (leave blank for anonymous access)"]}),"\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.strong,{children:"Password"}),": Enter the FTP password (leave blank for anonymous access)"]}),"\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.strong,{children:"Host"}),": Enter either an IP address (e.g. ",(0,s.jsx)(n.code,{children:"1.2.3.4"}),") or FQDN (e.g. ",(0,s.jsx)(n.code,{children:"ftp.example.com"}),") for the FTP server's ",(0,s.jsx)(n.strong,{children:"host"})," name"]}),"\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.strong,{children:"Port"}),": Most FTP servers run on ",(0,s.jsx)(n.strong,{children:"port"})," 21 and most FTPS (secure) servers run on port 990, though ports are configurable and server administrators can choose to operate on different ports"]}),"\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.strong,{children:"Secure"}),": Some FTP servers use FTPS rather than plain FTP. For plain, unsecured FTP, select ",(0,s.jsx)(n.strong,{children:"false"})," (though encrypting the connection is recommended if possible). If the FTP server uses SSL/TLS, select ",(0,s.jsx)(n.strong,{children:"true"})," for explicit FTPS or ",(0,s.jsx)(n.strong,{children:"implicit"})," for implicit FTPS. For information on implicit and explicit FTPS, see ",(0,s.jsx)(n.a,{href:"https://www.ssh.com/academy/ssh/ftp/ftps",children:"this documentation"})]}),"\n"]}),"\n",(0,s.jsx)(n.p,{children:"If the connection fails, verify the hostname, port and security information with the server administrator."}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,s.jsxs)(n.table,{children:[(0,s.jsx)(n.thead,{children:(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.th,{children:"Input"}),(0,s.jsx)(n.th,{children:"Comments"}),(0,s.jsx)(n.th,{children:"Default"})]})}),(0,s.jsxs)(n.tbody,{children:[(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"Username"}),(0,s.jsx)(n.td,{children:"The username for FTP authentication."}),(0,s.jsx)(n.td,{})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"Password"}),(0,s.jsx)(n.td,{children:"The password for FTP authentication."}),(0,s.jsx)(n.td,{})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"Host"}),(0,s.jsx)(n.td,{children:"The address of the FTP server. This should be an IP address or hostname."}),(0,s.jsx)(n.td,{})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"Port"}),(0,s.jsx)(n.td,{children:"The port of the FTP server. Default is 21 for FTP or 990 for implicit FTPS."}),(0,s.jsx)(n.td,{children:"21"})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"Secure"}),(0,s.jsx)(n.td,{children:"Whether to use FTPS over TLS. Set to 'true' for explicit FTPS, 'false' for plain FTP, or 'implicit' for legacy implicit FTPS."}),(0,s.jsx)(n.td,{children:"false"})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"Ignore SSL Errors"}),(0,s.jsx)(n.td,{children:"When true, ignores SSL certificate validation errors such as self-signed certificates."}),(0,s.jsx)(n.td,{children:"false"})]})]})]}),"\n",(0,s.jsx)(n.h2,{id:"triggers",children:"Triggers"}),"\n",(0,s.jsx)(n.h3,{id:"newormodifiedfiles",children:"New or Modified Files"}),"\n",(0,s.jsx)(n.p,{children:"Checks for new and modified files in a directory on an FTP server on a configured schedule."}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,s.jsxs)(n.table,{children:[(0,s.jsx)(n.thead,{children:(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.th,{children:"Input"}),(0,s.jsx)(n.th,{children:"Comments"}),(0,s.jsx)(n.th,{children:"Default"})]})}),(0,s.jsxs)(n.tbody,{children:[(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"Connection"}),(0,s.jsx)(n.td,{children:"The FTP connection to use."}),(0,s.jsx)(n.td,{})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"Path"}),(0,s.jsx)(n.td,{children:"The directory path on the FTP server to monitor for new or modified files."}),(0,s.jsx)(n.td,{})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"Pattern"}),(0,s.jsxs)(n.td,{children:["A glob-style pattern to filter files by name. Use wildcards like ",(0,s.jsx)(n.em,{children:".csv or report"}),"_.txt to match specific file types or naming conventions."]}),(0,s.jsx)(n.td,{children:"*"})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"Include Subdirectories"}),(0,s.jsx)(n.td,{children:"When true, recursively monitors files in all subdirectories. When false, only monitors files in the specified directory."}),(0,s.jsx)(n.td,{children:"false"})]})]})]}),"\n",(0,s.jsx)(n.h2,{id:"actions",children:"Actions"}),"\n",(0,s.jsx)(n.h3,{id:"createdirectory",children:"Create Directory"}),"\n",(0,s.jsx)(n.p,{children:"Creates a new directory. When Include Subfolders is enabled, recursively creates any missing directories in the path."}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,s.jsxs)(n.table,{children:[(0,s.jsx)(n.thead,{children:(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.th,{children:"Input"}),(0,s.jsx)(n.th,{children:"Comments"}),(0,s.jsx)(n.th,{children:"Default"})]})}),(0,s.jsxs)(n.tbody,{children:[(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"Connection"}),(0,s.jsx)(n.td,{children:"The FTP connection to use."}),(0,s.jsx)(n.td,{})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"Path"}),(0,s.jsx)(n.td,{children:"The directory path on the FTP server to monitor for new or modified files."}),(0,s.jsx)(n.td,{})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"Include Subfolders"}),(0,s.jsx)(n.td,{children:"When true, recursively creates any missing directories in the path."}),(0,s.jsx)(n.td,{children:"true"})]})]})]}),"\n",(0,s.jsx)(n.h3,{id:"deletefile",children:"Delete File"}),"\n",(0,s.jsx)(n.p,{children:"Deletes a file from an FTP server."}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,s.jsxs)(n.table,{children:[(0,s.jsx)(n.thead,{children:(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.th,{children:"Input"}),(0,s.jsx)(n.th,{children:"Comments"}),(0,s.jsx)(n.th,{children:"Default"})]})}),(0,s.jsxs)(n.tbody,{children:[(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"Connection"}),(0,s.jsx)(n.td,{children:"The FTP connection to use."}),(0,s.jsx)(n.td,{})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"Path"}),(0,s.jsx)(n.td,{children:"The full path of the file on the FTP server to delete."}),(0,s.jsx)(n.td,{})]})]})]}),"\n",(0,s.jsx)(n.h3,{id:"listdirectory",children:"List Directory"}),"\n",(0,s.jsx)(n.p,{children:"Lists the contents of a directory."}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,s.jsxs)(n.table,{children:[(0,s.jsx)(n.thead,{children:(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.th,{children:"Input"}),(0,s.jsx)(n.th,{children:"Comments"}),(0,s.jsx)(n.th,{children:"Default"})]})}),(0,s.jsxs)(n.tbody,{children:[(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"Connection"}),(0,s.jsx)(n.td,{children:"The FTP connection to use."}),(0,s.jsx)(n.td,{})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"Path"}),(0,s.jsx)(n.td,{children:"The full path of the directory on the FTP server to list."}),(0,s.jsx)(n.td,{})]})]})]}),"\n",(0,s.jsx)(n.h3,{id:"movefile",children:"Move File"}),"\n",(0,s.jsx)(n.p,{children:"Moves a file on an FTP server."}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,s.jsxs)(n.table,{children:[(0,s.jsx)(n.thead,{children:(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.th,{children:"Input"}),(0,s.jsx)(n.th,{children:"Comments"}),(0,s.jsx)(n.th,{children:"Default"})]})}),(0,s.jsxs)(n.tbody,{children:[(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"Connection"}),(0,s.jsx)(n.td,{children:"The FTP connection to use."}),(0,s.jsx)(n.td,{})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"Source Path"}),(0,s.jsx)(n.td,{children:"The current path of the file on the FTP server to move."}),(0,s.jsx)(n.td,{})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"Destination Path"}),(0,s.jsx)(n.td,{children:"The new path where the file will be moved on the FTP server."}),(0,s.jsx)(n.td,{})]})]})]}),"\n",(0,s.jsx)(n.h3,{id:"readfile",children:"Read File"}),"\n",(0,s.jsx)(n.p,{children:"Reads a file from an FTP server."}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,s.jsxs)(n.table,{children:[(0,s.jsx)(n.thead,{children:(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.th,{children:"Input"}),(0,s.jsx)(n.th,{children:"Comments"}),(0,s.jsx)(n.th,{children:"Default"})]})}),(0,s.jsxs)(n.tbody,{children:[(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"Connection"}),(0,s.jsx)(n.td,{children:"The FTP connection to use."}),(0,s.jsx)(n.td,{})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"Path"}),(0,s.jsx)(n.td,{children:"The full path of the file on the FTP server to read."}),(0,s.jsx)(n.td,{})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"Return Buffer"}),(0,s.jsx)(n.td,{children:"When true, treats the file as a binary file with content type 'application/octet-stream', even if it is a text file. This is helpful if you are processing non-UTF-8 text files, as the runner assumes text files are UTF-8."}),(0,s.jsx)(n.td,{children:"false"})]})]})]}),"\n",(0,s.jsx)(n.h3,{id:"writefile",children:"Write File"}),"\n",(0,s.jsx)(n.p,{children:"Writes a file to an FTP server."}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,s.jsxs)(n.table,{children:[(0,s.jsx)(n.thead,{children:(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.th,{children:"Input"}),(0,s.jsx)(n.th,{children:"Comments"}),(0,s.jsx)(n.th,{children:"Default"})]})}),(0,s.jsxs)(n.tbody,{children:[(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"Connection"}),(0,s.jsx)(n.td,{children:"The FTP connection to use."}),(0,s.jsx)(n.td,{})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"Path"}),(0,s.jsx)(n.td,{children:"The full path on the FTP server where the file will be written."}),(0,s.jsx)(n.td,{})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"Data"}),(0,s.jsx)(n.td,{children:"The text or binary data to write to the file on the FTP server."}),(0,s.jsx)(n.td,{})]})]})]})]})}function a(e={}){let{wrapper:n}={...(0,i.R)(),...e.components};return n?(0,s.jsx)(n,{...e,children:(0,s.jsx)(h,{...e})}):h(e)}},62051(e,n,t){t.d(n,{A:()=>r});let r="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAACXBIWXMAAAsSAAALEgHS3X78AAADv0lEQVRYhc1X3U8TWRQfkH0xqFlfffBJ/wESXnlc48O+YUyMsnSY0k6FaetH0UTnQc0++WBiRJ6UGLObxt24HxE00gqdghR2F+q3gg8SP8CCGGNRy5zf5vTOyIhtKbTd7El+uXfuOfec3/zu6c1Ukv6vBkhV+VDhwqiCrleXGlMaiaheMx+WN8//6f12OZ6F5c3RqF4jiOjVhZRalWq69UZPr7i2LkTbhk3D/840tDnT8L9ZQvb5XTqyPzF15YdtWRJFKiHIoqrgW0uSJM3d9P2IiWPAUCCD20F8haGAiXtHkI5p45Pde7c//929/sFV14a7YbU2H6Jn1VpdlwoTBcLreEz1eLswdhimoX0yDY1yIqYtYuQgzNvBhcxA+8tPhfHiY3/7zPubvr5nf+zbImrlUAI2gV5PJ5IhmHEtQ3E/8sE0NNMcDBASB7AyghlMHsdsn3rSqXZuAtc854shIEj4yYxrZhH4yKqmrnu7nLVWSSDgQL5nHoNfE41rGc451+vpXDuBWBtowAOKqSCjHRTbL54HvCBDAxltoJgP1N8q/DkIcO41EAiIxGOnQTOjoFdDoL9Ogp7+CkqNg6ZHQIljoMlfgLeToKkboMGDglRZCAwGQf1u0OPLoLcToIcXQYnjoOGjoPkJ0ONLwv/6H9DDC6C5+6BH3UIJ3lseAq2icHoa9CIGGj0BirpAr8eEMpEmoc78I9BsEvT3KXFEVl+UTuCWAnryM+h5BBTZJ9b4WFJjoOQZULQZND0MevKT6BXuh89NWXIP+EVTseQjunW2ATHy2Q8dWvLbsY7i5SEQ91tdzrIu+2XYzcZ+R+OVn0B8JXz51msn0FvcVbwaZAmMh8C58xOIivs5FfGdQ7KD7/oF3lgImZhGjJXiOBfudIBzO2t9SSDcmGX18qqym9niboeJZAfxxrwYDQoUiuEcnGs8hJnfWnY5a+W1mWutO9MRX+h9nxpIR3zBXPgQ8Wk959VXDJ7ni7NyhGZ7PN8VLGpbwa+WJcvG7N4j32E418qQW8pKxOdkY7TL/Y3dOHaStj07Nra6lSnGIdf3G5w+js3uceRYUfYirKa+vn5jQ0NDbV1d3SZZlm+pqgoGz3mNfRzDsVKZrMoaq10uV8LtdnOxD4qiLHq9XlIUxWRY80X2cQzH8p5lOUqz5ubmA4qidCuK0inLcrfH40nbCvCc19jHMRwrVcp06zO8qampvaWl5Q2D505fRayxsXGdrus1Nqy1TQyr+Gcfx1aMiG3OIv9JQSm3cYNV9s9qpe1f50ot7TLHNtcAAAAASUVORK5CYII="},28453(e,n,t){t.d(n,{R:()=>d,x:()=>l});var r=t(96540);let s={},i=r.createContext(s);function d(e){let n=r.useContext(i);return r.useMemo(function(){return"function"==typeof e?e(n):{...n,...e}},[n,e])}function l(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(s):e.components||s:d(e.components),r.createElement(i.Provider,{value:n},e.children)}}}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.