Move multiple files or folders

This call lets you perform a bulk move operation of files and folders. You can move files or folders:

  • to a root project folder
  • to a subfolder within the same project or a different project

Rules for moving files and folders

  • The file ID is preserved after the move.
  • The folder ID is changed after the move.
  • The destination has to be an existing folder.
  • If the target folder contains a folder with the same name, the contents of both folders will be merged.
  • If a file with the same name already exists, the source file will be automatically renamed (by adding a numeric prefix).
  • You need to have WRITE permissions for both the source and destination folders.

Request

https:/cgc-api.sbgenomics.com/v2/async/files/move

Example request

POST /v2/async/files/move
Host: cgc-api.sbgenomics.com
X-SBG-Auth-Token: 3210a98c1db9318fa9d9273156740f74
curl -X POST \
  https://cgc-api.sbgenomics.com/v2/async/files/copy \
  -H 'Content-Type: application/json' \
  -H 'X-SBG-Auth-Token: 3210a98c1db9318fa9d9273156740f74' \
  -d '{
  "items": [
    {
      "file": "568e69abe9b0307bc0412345",
      "parent": "5c6d3f30e4b123453235932f",
      "project": "",
      "name": "my-new-file"
    },
    {
      "file": "568e69abe9b0307bc0498765",
      "parent": "",
      "project": "rfranklin/destination-project",
      "name": ""
    },
    {
      "file": "568e69abe9b0307bc0414164",
      "parent": "",
      "project": "rfranklin/destination-project",
      "name": ""
    }
  ]
}'

Header Fields

NameDescription
X-SBG-Auth-Token
required
Your CGC authentication token.
Content-Type
required
application/json

Request body

KeyData typeDescription
file
required
objectThe ID of the file or folder you are moving.

Use the API call for listing all files or folders to obtain the ID.
parentstringThe ID of the folder you are moving files to.
namestringEnter the new name for the file or folder if you want to rename it in the destination folder.
{
  "items": [
    {
      "file": "568e69abe9b0307bc0412345",
      "parent": "5c6d3f30ea3e0123452359a2f",
      "project": "",
      "name": "my-new-file"
    },
    {
      "file": "568e69abe9b0307bc0498765",
      "parent": "5c6d3f30ea3e0123452359a2f",
      "name": ""
    },
    {
      "file": "568e69abe9b0307bc0414164",
      "parent": "5c6d3f30ea3e0123452359a2f",
      "name": ""
    }
  ]
}

Response

See a list of specific response codes that may be contained in the body of the response.

Response body

KeyData type of valueDescription of value
typestringThe type of job, which is MOVE in the case of copying files.
total_filesstringThe total number of files which will be processed. You can obtain this information using the call for getting the details of a move job.
statestringThe state is SUBMITTED at the time of making this call.
resultstringThis key will show the result if available at the time the call is made. Use the details of a move job to see more information.
idstringID of this move job.
failed_filesstringThe number of failed files if that information is available at the time of the call. You can get details of a move job with a dedicated call.
completed_filesstringThe number of completed files if that information is available at the time of the call. You can get details of a move job with a dedicated call.

Example response body

{
    "href": "https://cgc-api.sbgenomics.com/v2/async/files/move/7171407712345136",
    "id": "7171407712345136",
    "result": [],
    "type": "MOVE",
    "state": "SUBMITTED",
    "failed_files": 0,
    "completed_files": 0,
    "total_files": 0
}