Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
#I add manually a folder named "test"
$ReportPortalUri = 'ServerURL/reports'
Write-Host "Upload an item..."
$uploadItemPath = 'C:\test\test.rdl' # single File
$catalogItemsUri = $ReportPortalUri + "/api/v2.0/CatalogItems"
$bytes = [System.IO.File]::ReadAllBytes($uploadItemPath)
$payload = @{
"@odata.type" = "#Model.Report";
"Content" = [System.Convert]::ToBase64String($bytes);
"ContentType"="";
"Name" = 'newNameOfthefile';
"Path" = '/folterToSave';
} | ConvertTo-Json
Invoke-WebRequest -Uri $catalogItemsUri -Method Post -Body $payload -ContentType "application/json" -UseDefaultCredentials | Out-Null
#----------------------------
#Download example working
$ReportPortalUri = 'URLserver/reports'
Write-Host "Download an item..."
$downloadPath = 'C:\download\example.rdl'
$catalogItemsApi = $ReportPortalUri + "/api/v2.0/CatalogItems(Path='/test/example')/Content/$value" #You need to put exact route to avoid error Code = 0.
$url = [string]::Format($catalogItemsApi, $item)
$response = Invoke-WebRequest -Uri $url -Method Get -UseDefaultCredentials
[System.IO.File]::WriteAllBytes($downloadPath, $response.Content)
#----------------------
#delete.
$ReportPortalUri = 'ServerUrl/reports'
Write-Host "Delete an item..."
$url = $ReportPortalUri + "/api/v2.0/CatalogItems(Path='/test')" #this will delete the full folder
Invoke-WebRequest -Uri $url -Method Delete -UseDefaultCredentials | Out-Null