API - Rename, move, delete, share

In this segment we are going to give you some examples of basic operations on files and folders

Create folder

To rename file we use POST /vault_rest/folder endpoint.

In request body we need to send to parameters.

name - name of the folder you would like to create

path - path to place where you would like to create folder

try { $body = @{ name = "new folder" path = "folder1\folder2" } | ConvertTo-Json $response = Invoke-RestMethod -Uri "$baseUrl/folder" -Headers $headers -Body $body -Method Post Write-Output $response | ConvertTo-Json } catch { Write-Host "Error Status Code: $($_.Exception.Response.StatusCode.Value__)" Write-Host "Error Message: $($_.Exception.Message)" return }
{ "message": null, "ui_message_key": null, "folder_guid": "149b1fb04c3c456bba805dbbd2008c94", "folder_name": "new folder" }

Rename file

To rename file we use PUT /vault_rest/rename_file endoint.

In request body we need to send to parameters.

file_id - ID of file we plan to rename

new_file_name - String with new file name

try { $body = @{ file_id = "ac7eac70bbd64a1ca646ac288e9978af" new_file_name = "image_new.jpg" } | ConvertTo-Json $response = Invoke-RestMethod -Uri "$baseUrl/rename_file" -Headers $headers -Body $body -Method Put Write-Output $response | ConvertTo-Json } catch { Write-Host "Error Status Code: $($_.Exception.Response.StatusCode.Value__)" Write-Host "Error Message: $($_.Exception.Message)" return }
{ "message": null, "ui_message_key": null }

Rename folder

To rename folder we'll use PUT /vault_rest/rename_folder endpoint.

folder_id - ID of file we plan to rename

new_folder_name - String with new file name

try { $body = @{ folder_id = "ac7eac70bbd64a1ca646ac288e9978af" new_folder_name = "folder_new" } | ConvertTo-Json $response = Invoke-RestMethod -Uri "$baseUrl/rename_folder" -Headers $headers -Body $body -Method Put Write-Output $response | ConvertTo-Json } catch { Write-Host "Error Status Code: $($_.Exception.Response.StatusCode.Value__)" Write-Host "Error Message: $($_.Exception.Message)" return }
{ "message": null, "ui_message_key": null }

Delete file

To delete file we'll use DELETE /vault_rest/file/{file_id} endpoint.

try { $response = Invoke-RestMethod -Uri "$baseUrl/file/ac7eac70bbd64a1ca646ac288e9978af" -Headers $headers -Method Delete Write-Output $response | ConvertTo-Json } catch { Write-Host "Error Status Code: $($_.Exception.Response.StatusCode.Value__)" Write-Host "Error Message: $($_.Exception.Message)" return }
{ "message": null, "ui_message_key": null }

Delete folder

To delete file we'll use DELETE /vault_rest/folder/{folder_id}endpoint.

try { $response = Invoke-RestMethod -Uri "$baseUrl/folder/ac7eac70bbd64a1ca646ac288e9978af" -Headers $headers -Method Delete Write-Output $response | ConvertTo-Json } catch { Write-Host "Error Status Code: $($_.Exception.Response.StatusCode.Value__)" Write-Host "Error Message: $($_.Exception.Message)" return }
{ "message": null, "ui_message_key": null }

Move a file

To move files use PUT /vault_rest/v2/move_filesendpoint.

files- List of files to move

file_id- ID of file we plan to move

name - String with new file name

new_path - Destination to move files to

try { $body = @{ files = @( @{ folder_id = "c5133a2deb5a4f4798b45731cc1bcda9" name = "image001.jpg" }, @{ folder_id = "433beb56d2c94effb24bccdce6823a7b" name = "image002.jpg" }, @{ folder_id = "4db39640b3ef4f068b66ead001f5bbd2" name = "image003.jpg" } ) new_path = "test\folder2" } | ConvertTo-Json $response = Invoke-RestMethod -Uri "$baseUrl/v2/move_file" -Headers $headers -Body $body -Method Put Write-Output $response | ConvertTo-Json } catch { Write-Host "Error Status Code: $($_.Exception.Response.StatusCode.Value__)" Write-Host "Error Message: $($_.Exception.Message)" return }
{ "successful_results": { "entities": [ {} ], "success_counter": 1 }, "failed_results": { "entities": [], "failed_counter": 0 }, "total_counter": 1 }

Move a folder

To move files use PUT /vault_rest/v2/move_foldersendpoint.

folders - List of folders to move

folder_id- IDs of folders we plan to move

name - String with new folder name

new_path - Destination to move files to

try { $body = @{ folders = @( @{ folder_id = "c5133a2deb5a4f4798b45731cc1bcda9" name = "folder3" path = "test\folder3" }, @{ folder_id = "433beb56d2c94effb24bccdce6823a7b" name = "folder2" path = "test\folder2" }, @{ folder_id = "4db39640b3ef4f068b66ead001f5bbd2" name = "folder1" path = "test\folder1" } ) new_path = "" } | ConvertTo-Json $response = Invoke-RestMethod -Uri "$baseUrl/v2/move_folder" -Headers $headers -Body $body -Method Put Write-Output $response | ConvertTo-Json } catch { Write-Host "Error Status Code: $($_.Exception.Response.StatusCode.Value__)" Write-Host "Error Message: $($_.Exception.Message)" return }
{ "successful_results": { "entities": [ {} ], "success_counter": 1 }, "failed_results": { "entities": [ { "message": "The destination folder already contains a folder with the same name", "ui_message_key": "API_FOLDER_MOVE_DESTINATION_HAS_FOLDER_WITH_SAME_NAME" } ], "failed_counter": 1 }, "total_count": 2 }

Share a file

To move files use PUT /vault_rest/upload_file_shareendpoint.

fileId - ID of file you would like to share

groupIds - List of user group IDs

userIds - List of user group IDs

try { $body = @{ fileId = "849137c80bd443cca3c49328f4a32fe9" groupIds = @(19, 23, 65) userIds = @(24, 66, 59) } | ConvertTo-Json $response = Invoke-RestMethod -Uri "$baseUrl/update_file_share" -Headers $headers -Body $body -Method Post Write-Output $response | ConvertTo-Json } catch { Write-Host "Error Status Code: $($_.Exception.Response.StatusCode.Value__)" Write-Host "Error Message: $($_.Exception.Message)" return }
{ "message": null, "ui_message_key": null }

Share a folder

To move files use PUT /vault_rest/upload_folder_shareendpoint.

folderId - ID of file you would like to share

groupIds - List of user group IDs

userIds - List of user group IDs

try { $body = @{ folderId = "849137c80bd443cca3c49328f4a32fe9" groupIds = @(19, 23, 65) userIds = @(24, 66, 59) } | ConvertTo-Json $response = Invoke-RestMethod -Uri "$baseUrl/update_folder_share" -Headers $headers -Body $body -Method Post Write-Output $response | ConvertTo-Json } catch { Write-Host "Error Status Code: $($_.Exception.Response.StatusCode.Value__)" Write-Host "Error Message: $($_.Exception.Message)" return }
{ "message": null, "ui_message_key": null }