Find orphan nginx/Apache configs left by Plesk

comm -23 <(for i in /etc/nginx/plesk.conf.d/webmails/*.conf; do basename "${i%_*}"; done | sort) <(plesk bin site -l | idn | sort)
comm -23 <(for i in /etc/nginx/plesk.conf.d/vhosts/*.conf; do basename "${i::-5}"; done | sort) <(plesk bin site -l | idn | sort)
comm -23 <(for i in /etc/nginx/plesk.conf.d/ip_default/*.conf; do basename "${i::-5}"; done | sort) <(plesk bin site -l | idn | sort)
comm -23 <(for i in /etc/nginx/plesk.conf.d/forwarding/*.conf; do basename "${i%_*}"; done | sort) <(plesk bin site -l | idn | sort)
comm -23 <(for i in /etc/apache2/plesk.conf.d/webmails/*.conf; do basename "${i%_*}"; done | sort) <(plesk bin site -l | idn | sort)
comm -23 <(for i in /etc/apache2/plesk.conf.d/vhosts/*.conf; do basename "${i::-5}"; done | sort) <(plesk bin site -l | idn | sort)
comm -23 <(for i in /etc/apache2/plesk.conf.d/ip_default/*.conf; do basename "${i::-5}"; done | sort) <(plesk bin site -l | idn | sort)
comm -23 <(for i in /etc/apache2/plesk.conf.d/forwarding/*.conf; do basename "${i%_*}"; done | sort) <(plesk bin site -l | idn | sort)

Run Plesk API request from CLI

curl -kLi -H "Content-Type: text/xml" -H "HTTP_AUTH_LOGIN: admin" -H "HTTP_AUTH_PASSWD:verysecurepwd" -H "HTTP_PRETTY_PRINT: TRUE" -d @payload.xml https://plesk.example.com:8443/enterprise/control/agent.php
[System.Net.ServicePointManager]::ServerCertificateValidationCallback = {$true}
$request = New-Object System.Net.WebClient
$request.Headers.add('HTTP_AUTH_LOGIN','admin')
$request.Headers.add('HTTP_AUTH_PASSWD','verysecurepwd')
$request.Headers.add('HTTP_PRETTY_PRINT','true')
$response = $request.UploadFile('https://plesk.example.com:8443/enterprise/control/agent.php','.\payload.xml')
[System.Text.Encoding]::ASCII.GetString($response)