functions/azure/Sql/Get-BcAdminAzSqlDatabase.ps1

function Get-BcAdminAzSqlDatabase {
    [CmdletBinding()]
    param (
        [Parameter(Mandatory = $true)]
        [string]$ResourceGroupName,

        [Parameter(Mandatory = $true)]
        [string]$ServerName,

        [Parameter(Mandatory = $false)]
        [string]$DatabaseName,

        [Parameter(Mandatory = $false)]
        [string]$ApiVersion = $BcAdminSession.AzureRestApiVersion
    )

    if (-not (Connect-ToAzure)) {
        Write-Warning "Not connected to Microsoft Azure! Plase run Connect-ToAzure first!"
        return $false
    }

    $headers = @{
        Authorization = $BcAdminSession.AzureRequestHeaderAuthorization
    }

    try {
        if (([string]::IsNullOrWhiteSpace($DatabaseName))) {
            $uri = "https://management.azure.com/subscriptions/$($BcAdminSession.AzureSubscriptionId)/resourceGroups/$ResourceGroupName/providers/Microsoft.Sql/servers/$ServerName/databases?api-version=$ApiVersion"
            $returnValue = (Invoke-RestMethod -Uri $uri -Headers $headers -Method Get).value
        } else {
            $uri = "https://management.azure.com/subscriptions/$($BcAdminSession.AzureSubscriptionId)/resourceGroups/$ResourceGroupName/providers/Microsoft.Sql/servers/$ServerName/databases/$($DatabaseName)?api-version=$ApiVersion"
            $returnValue = Invoke-RestMethod -Uri $uri -Headers $headers -Method Get
        }
        return $returnValue
    }    
    catch {
        if ($null -ne $_.ErrorDetails.Message) {
            try {
                $response = $_.ErrorDetails.Message | ConvertFrom-Json
                Write-Warning "$($response.error.code)`n$($response.error.Message)"
            }
            catch {
                Write-Warning $_
            }
        }
        return $false
    }
}