Scripts/Tenant/get-cohesityorganization.ps1
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 |
<#
.Synopsis Gets a list of organizations on the Cohesity Cluster filtered by the specified parameters .Description Gets a list of organizations on the Cohesity Cluster filtered by the specified parameters. To get a specific organization provide the organization name .Parameter Name Organization Name .Example Get-CohesityOrganization -Name testorg .Example Get-CohesityOrganization #> function Get-CohesityOrganization { [CmdletBinding()] Param( # Organization Name. [Parameter(Mandatory=$false, Position=0)] [ValidateNotNullOrEmpty()] [String]$Name ) Begin { if(-not (Test-Path -Path "$HOME/.cohesity")) { throw "Failed to authenticate. Please connect to the Cohesity Cluster using 'Connect-CohesityCluster'" } $session = Get-Content -Path $HOME/.cohesity | ConvertFrom-Json } Process { $token = 'Bearer ' + $session.AccessToken.AccessToken $headers = @{"Authorization"=$token} $uri = $session.ClusterUri + '/irisservices/api/v1/public/tenants' $results = Invoke-RestApi -Method Get -Headers $headers -Uri $uri if([string]::IsNullOrEmpty($Name)) { $results } else { $results | Where-Object { $_.name -ieq $Name } } } # End of process } # End of function |