Skip to main content
Jump to: navigation, search

Orion/Server API/Transfer API

< Orion‎ | Server API
Revision as of 13:56, 17 January 2011 by John (Talk | contribs) (Starting a file upload)

Under Construction: This API is not yet implemented

The transfer API is used for batch import and export of directory trees to/from an Orion workspace.


Starting a file upload

An upload is initiated via a POST request. The request URL indicates where the file should be located once the upload is complete.
HTTP Method
Example Request
POST /xfer/MyProj/SomeFolder

Example Response
HTTP/1.1 200 OK
Location: /xfer/import/23A43

Detailed Explanation
The Location header in the response indicates the URL where chunks of the file should be uploaded. Once the server has received all chunks, the import into the workspace is completed. An upload that is not completed in a timely fashion from the initial POST is discarded by the server.

  • POST request, returns a URI for resumable upload (uploading in chunks will allow for progress reporting). Request indicates whether we are uploading a file that should be stored directly in the workspace, or whether it is an archive that will need to be extracted into the workspace on the server.
  • POST Response Location indicates upload URL
  • Series of PUT requests to upload URL, using Content-Range header
  • Responses indicate what total range server already knows
  • Once server has all the bytes the file is stored or extracted into the workspace


  • GET request /xfer/export/<>
  • Request body contains:
    • Array of files/directories to export - depth infinity is assumed, children should be listed independently if depth infinity is not desired
    • Content type of response (zip, tar, etc)

Back to the top