Skip to content

Instantly share code, notes, and snippets.

@jeffhollan
Created March 3, 2017 18:20
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save jeffhollan/6a05a38904e05fa3eec797d10acc8044 to your computer and use it in GitHub Desktop.
Save jeffhollan/6a05a38904e05fa3eec797d10acc8044 to your computer and use it in GitHub Desktop.
PowerShell to grab swagger for Logic app
Param(
[string]$subscriptionId = "80d4fe69-xxxx-xxxx-xxxx-9250f1c8ab03",
[string]$resourceGroup = "name-of-resource-group",
[string]$logicAppName = "name-of-logic-app",
[string]$triggerName = "manual"
)
Function Get-Folder()
{
[System.Reflection.Assembly]::LoadWithPartialName("System.windows.forms")
$foldername = New-Object System.Windows.Forms.FolderBrowserDialog
$foldername.rootfolder = "MyComputer"
if($foldername.ShowDialog() -eq "OK")
{
$folder += $foldername.SelectedPath
}
return $folder
}
Login-AzureRmAccount -SubscriptionId $subscriptionId
$folder = Get-Folder
$filePath = $folder.GetValue(1) + "\" + $logicAppName + ".swagger.json"
Invoke-AzureRmResourceAction -ResourceType "Microsoft.Logic/workflows" -ResourceGroupName $resourceGroup -ResourceName $logicAppName -Action listSwagger -ApiVersion "2016-06-01" -Force | ConvertTo-Json -Depth 99 | Out-File $filePath
$triggerResourceName = $logicAppName + "/$triggerName"
$callbackUrl = Invoke-AzureRmResourceAction -ResourceType "Microsoft.Logic/workflows/triggers" -ResourceGroupName $resourceGroup -ResourceName $triggerResourceName -Action listCallbackURL -ApiVersion "2016-06-01" -Force
Write-Output "`n`n`nWrote file to $filePath`n`n"
Write-Output $callbackUrl.method $callbackUrl.value
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment