Livecode Wiki

Uploads a file to an Internet server asynchronously via FTP.


libURLftpUploadFile filePath,uploadURL[,callbackMessage]


libURLftpUploadFile "/Disk/",""
libURLftpUploadFile myFile,field "FTP URL","uploadDone"

Use the libURLftpUploadFile command to put a file on a server.


  • The filePath specifies the name and location of the file you want to upload. If you specify a name but not a location, LiveCode assumes the file is in the defaultFolder.
  • The uploadURL specifies the server and location to upload to, in the form of an FTP URL.
  • The callbackMessage is the name of a message to send after the file is uploaded.

The libURLftpUploadFile command transfers the data directly from the file to the server. Unlike libURLftpUpload (or the put command used with an FTP URL), the data does not all need to be in memory at once, so this command is a better choice for large files.

The libURLftpUploadFile command transfers the file in binary mode.

The callbackMessage is sent to the object whose script contains the libURLftpUpload command, after the upload is complete, so you can handle the callbackMessage to perform any tasks you want to delay until the file has been uploaded. Two parameters are sent with the message: the URL and the URLStatus of the file.

The libURLftpUploadFile command is part of the Internet library. To ensure that the command works in a standalone application, you must include this custom library when you create your standalone. In the Inclusions section of the Standalone Application Settings window, make sure "Internet Library" is selected in the list of script libraries.

When included in a standalone application, the Internet library is implemented as a hidden group and made available when the group receives its first openBackground message. During the first part of the application's startup process, before this message is sent, the libURLftpUploadFile command is not yet available. This may affect attempts to use this command in startup, preOpenStack, openStack, or preOpenCard handlers in the main stack. Once the application has finished starting up, the library is available and the libURLftpUploadFile command can be used in any handler.

See Also: libURLDownloadToFile Command, libURLftpUpload Command