IBM Aspera's Files API enables fast, easy, and secure exchange of files and folders of any size between end users, even across separate organizations, in both local and remote locations.

The Files API coordinates with the Node API to create a seamless experience between the Aspera on Cloud application and the underlying transfer node.

Additional documentation for the Files API is now available on the IBM Developer Center.

Key concepts:

  • A package is a bundle of files and folders similar to a ZIP file or TAR file, that can be sent to other users. Files and folders must first be put into a package before sending.
  • Both files and folders can be sent, which means that a copy of the source content is made and sent to the recipients. Sent content "belongs" to the recipient; the recipient can edit it without changing the source.
  • Folders can be shared. When a recipient changes or overwrites content in a shared folder, that content is changed at the source.


In the following diagram, there are 3 main architectural components:

  1. Application Servers,
  2. Node Servers, and
  3. a client


Application Servers consist of the Files front-end and back-end servers. The Files web application is retrieved from the Files front-end servers.

Node Servers (sometimes called "Nodes") handle files, folders, access to files, file listings, file transfers... everything about files. There may be multiple clusters of Node Servers

Clients are everything that uses the APIs in the other servers. Files's web application is a client, Aspera Drive is a client, etc.

Application Servers are in charge of Users, Groups, and Messaging. Nodes are in charge of Files, Permissions, and Metadata. So when a Client wants to log in a user then list the contents of the home folder: the first request is to the Application Server to get information about the user's home folder (requiring authentication if not logged in), then the second request is to the Node to retrieve the file.

  1. Application Server: GET /self to get information about the current user. This will return information about the user's home folder if logged in and will redirect to the login page if not.
  2. Node: GET /files/{home_folder_id}/files to list the contents of the home folder.
Video player