Выполнение вызовов API curl с PowerShell
У меня проблемы с получением определенных вызовов API для работы в powershell с помощью Invoke-restmethod. В частности, передавая переменную -d "\"\\RootFolder\New folder\"". Пример команды Curl API для перемещения групп устройств:
curl -X PUT --header "Content-Type: application/json" --header "Accept: application/json" --header "Authorization: Bearer Very long token" -d "\"\\\\RootFolder\\New folder\"" "https://SOTIServer.com:443/MobiControl/api/devicegroups/%255C%255CRootfolder%255COld%2520folder%255CSourceFolder/path"
У меня есть вызов Powershell, который не работает:
$folderX="SourceFolder"
function MoveDir ([string]$Name, [string]$Token)
{
$Path = "%255C%255CRootfolder%255COld%2520folder%255C" + $folderX
$body = "\\\\RootFolder\\New Folder"
$body = $body | ConvertTo-Json
$MCFQDN = "https://SOTIServer.com:443"
$Header2 = @{}
$Header2["Authorization"] = "Bearer " + $Token
try
{
$response2 = Invoke-restmethod -Uri https://$MCFQDN/mobicontrol/api/devicegroups/$Path/path -ContentType "application/json" -Method PUT -Body $body -Headers $Header2
}
catch
{
$($_.Exception.Message)
}
}