Public/Update-ConfluencePage.ps1
|
function Update-ConfluencePage { <# .SYNOPSIS Aktualisiert eine bestehende Confluence-Seite (erstellt neue Version). .PARAMETER PageId ID der zu aktualisierenden Seite. .PARAMETER Title Neuer Titel (optional, sonst unverändert). .PARAMETER Body Neuer Inhalt im Storage-Format. .EXAMPLE Update-ConfluencePage -PageId 12345 -Body "<p>Aktualisierter Inhalt</p>" #> [CmdletBinding()] param ( [Parameter(Mandatory = $true)] [string] $PageId, [Parameter(Mandatory = $false)] [string] $Title, [Parameter(Mandatory = $true)] [string] $Body ) begin { $ErrorActionPreference = "Stop" $Current = Get-ConfluencePage -PageId $PageId $NextVersion = $Current.version.number + 1 $NewTitle = if ($Title) { $Title } else { $Current.title } $Payload = @{ id = $PageId status = "current" title = $NewTitle body = @{ representation = "storage" value = $Body } version = @{ number = $NextVersion } } } process { $response = Invoke-ConfluenceApi -Method Put -Path "/wiki/api/v2/pages/$PageId" -Body $Payload } end { return $response } } |