# Move File

Move an existing file from one folder to another within the same library. The request requires the file ID and the destination folder ID.

> Kind: REST endpoint · Updated: Mar 6, 2026 · POST /v1/files/:id/move

Move an existing file from one folder to another within the same library. The request requires the file ID and the destination folder ID.

### Path parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| id | any | required | File Id |

### Query parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| library | string | optional | One of sharepoint, msteams, google, onedrive, box, dropbox, cloudfiles, s3, azure, hubspot, azurefiles, sftp |
| driveId | string | optional | Drive Id. Required when library is sharepoint or msteams. |

### Header parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| Authorization | string | optional | Replace the API_Key placeholder with your actual API key. |

## Request body

```json
{
  "destination": "{{Destination_Folder_Id}}"
}
```

## Example request

**cURL**
```bash
curl --request POST \
     --url 'https://api.cloudfiles.io/v1/files/:id/move?library=string&driveId=string' \
     --header 'accept: application/json' \
     --header 'content-type: application/json' \
     --header 'authorization: Bearer API_Key' \
     --data '"{\n    \"destination\" : \"{{Destination_Folder_Id}}\"\n}"'
```

**JavaScript**
```js
var myHeaders = new Headers();
myHeaders.append("accept", "application/json");
myHeaders.append("content-type", "application/json");
myHeaders.append("authorization", "Bearer API_Key");

var raw = JSON.stringify("{\n    \"destination\" : \"{{Destination_Folder_Id}}\"\n}");

var requestOptions = {
   method: 'POST',
   headers: myHeaders,
   body: raw,
   redirect: 'follow'
};

fetch("https://api.cloudfiles.io/v1/files/:id/move?library=string&driveId=string", requestOptions)
   .then(response => response.text())
   .then(result => console.log(result))
   .catch(error => console.log('error', error));
```

**Ruby**
```ruby
require "uri"
require "json"
require "net/http"

url = URI("https://api.cloudfiles.io/v1/files/:id/move?library=string&driveId=string")

https = Net::HTTP.new(url.host, url.port)
https.use_ssl = true

request = Net::HTTP::Post.new(url)
request["accept"] = "application/json"
request["content-type"] = "application/json"
request["authorization"] = "Bearer API_Key"
request.body = JSON.dump("{\n    \"destination\" : \"{{Destination_Folder_Id}}\"\n}")

response = https.request(request)
puts response.read_body

```

**Python**
```py
import requests
import json

url = "https://api.cloudfiles.io/v1/files/:id/move?library=string&driveId=string"

payload = json.dumps("{\n    \"destination\" : \"{{Destination_Folder_Id}}\"\n}")
headers = {
   'accept': 'application/json',
   'content-type': 'application/json',
   'authorization': 'Bearer API_Key'
}

response = requests.request("POST", url, headers=headers, data=payload)

print(response.text)

```
