forked from Cephalowat/PSFalcon
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Get-CsSensorMemberInfo.psm1
64 lines (55 loc) · 1.6 KB
/
Get-CsSensorMemberInfo.psm1
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
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
function Get-CsSensorMemberInfo {
<#
.SYNOPSIS
Search for details about members of a Sensor Update policy in your environment
.PARAMETER ID
The ID of the Sensor Update policy to search for members of
.PARAMETER FILTER
The filter expression that should be used to limit the results
.PARAMETER LIMIT
The maximum records to return [default: 5000]
.PARAMETER OFFSET
The offset to start retrieving records from [default: 0]
.PARAMETER ALL
Repeat request until all results are returned
#>
[CmdletBinding()]
[OutputType([psobject])]
param(
[Parameter(Mandatory = $true)]
[ValidateLength(32,32)]
[string]
$Id,
[string]
$Filter,
[ValidateRange(1,5000)]
[int]
$Limit = 5000,
[int]
$Offset = 0,
[switch]
$All
)
process{
$Param = @{
Uri = '/policy/combined/sensor-update-members/v1?id=' + $Id + '&limit=' + [string] $Limit +
'&offset=' + [string] $Offset
Method = 'get'
Header = @{
accept = 'application/json'
'content-type' = 'application/json'
}
}
switch ($PSBoundParameters.Keys) {
'Filter' { $Param.Uri += '&filter=' + $Filter }
'Verbose' { $Param['Verbose'] = $true }
'Debug' { $Param['Debug'] = $true }
}
if ($All) {
Join-CsResult -Activity $MyInvocation.MyCommand.Name -Param $Param
}
else {
Invoke-CsAPI @Param
}
}
}