2022-12-06 13:34:52 -05:00
|
|
|
|
|
2020-03-23 12:18:01 -04:00
|
|
|
|
function Get-NetboxDCIMDevice {
|
|
|
|
|
|
[CmdletBinding()]
|
|
|
|
|
|
#region Parameters
|
|
|
|
|
|
param
|
|
|
|
|
|
(
|
|
|
|
|
|
[uint16]$Limit,
|
2021-07-23 22:06:42 +02:00
|
|
|
|
|
2020-03-23 12:18:01 -04:00
|
|
|
|
[uint16]$Offset,
|
2021-07-23 22:06:42 +02:00
|
|
|
|
|
2020-03-23 12:18:01 -04:00
|
|
|
|
[Parameter(ValueFromPipelineByPropertyName = $true)]
|
|
|
|
|
|
[uint16[]]$Id,
|
2021-07-23 22:06:42 +02:00
|
|
|
|
|
2020-03-23 12:18:01 -04:00
|
|
|
|
[string]$Query,
|
2021-07-23 22:06:42 +02:00
|
|
|
|
|
2020-03-23 12:18:01 -04:00
|
|
|
|
[string]$Name,
|
2021-07-23 22:06:42 +02:00
|
|
|
|
|
2023-07-28 15:38:16 -04:00
|
|
|
|
[uint64]$Manufacturer_Id,
|
2021-07-23 22:06:42 +02:00
|
|
|
|
|
2020-03-23 12:18:01 -04:00
|
|
|
|
[string]$Manufacturer,
|
2021-07-23 22:06:42 +02:00
|
|
|
|
|
2023-07-28 15:38:16 -04:00
|
|
|
|
[uint64]$Device_Type_Id,
|
2021-07-23 22:06:42 +02:00
|
|
|
|
|
2023-07-28 15:38:16 -04:00
|
|
|
|
[uint64]$Role_Id,
|
2021-07-23 22:06:42 +02:00
|
|
|
|
|
2020-03-23 12:18:01 -04:00
|
|
|
|
[string]$Role,
|
2021-07-23 22:06:42 +02:00
|
|
|
|
|
2023-07-28 15:38:16 -04:00
|
|
|
|
[uint64]$Tenant_Id,
|
2021-07-23 22:06:42 +02:00
|
|
|
|
|
2020-03-23 12:18:01 -04:00
|
|
|
|
[string]$Tenant,
|
2021-07-23 22:06:42 +02:00
|
|
|
|
|
2023-07-28 15:38:16 -04:00
|
|
|
|
[uint64]$Platform_Id,
|
2021-07-23 22:06:42 +02:00
|
|
|
|
|
2020-03-23 12:18:01 -04:00
|
|
|
|
[string]$Platform,
|
2021-07-23 22:06:42 +02:00
|
|
|
|
|
2020-03-23 12:18:01 -04:00
|
|
|
|
[string]$Asset_Tag,
|
2021-07-23 22:06:42 +02:00
|
|
|
|
|
2023-07-28 15:38:16 -04:00
|
|
|
|
[uint64]$Site_Id,
|
2021-07-23 22:06:42 +02:00
|
|
|
|
|
2020-03-23 12:18:01 -04:00
|
|
|
|
[string]$Site,
|
2021-07-23 22:06:42 +02:00
|
|
|
|
|
2023-07-28 15:38:16 -04:00
|
|
|
|
[uint64]$Rack_Group_Id,
|
2021-07-23 22:06:42 +02:00
|
|
|
|
|
2023-07-28 15:38:16 -04:00
|
|
|
|
[uint64]$Rack_Id,
|
2021-07-23 22:06:42 +02:00
|
|
|
|
|
2023-07-28 15:38:16 -04:00
|
|
|
|
[uint64]$Cluster_Id,
|
2021-07-23 22:06:42 +02:00
|
|
|
|
|
2023-07-28 15:38:16 -04:00
|
|
|
|
[uint64]$Model,
|
2021-07-23 22:06:42 +02:00
|
|
|
|
|
2020-03-23 12:18:01 -04:00
|
|
|
|
[object]$Status,
|
2021-07-23 22:06:42 +02:00
|
|
|
|
|
2020-03-23 12:18:01 -04:00
|
|
|
|
[bool]$Is_Full_Depth,
|
2021-07-23 22:06:42 +02:00
|
|
|
|
|
2020-03-23 12:18:01 -04:00
|
|
|
|
[bool]$Is_Console_Server,
|
2021-07-23 22:06:42 +02:00
|
|
|
|
|
2020-03-23 12:18:01 -04:00
|
|
|
|
[bool]$Is_PDU,
|
2021-07-23 22:06:42 +02:00
|
|
|
|
|
2020-03-23 12:18:01 -04:00
|
|
|
|
[bool]$Is_Network_Device,
|
2021-07-23 22:06:42 +02:00
|
|
|
|
|
2020-03-23 12:18:01 -04:00
|
|
|
|
[string]$MAC_Address,
|
2021-07-23 22:06:42 +02:00
|
|
|
|
|
2020-03-23 12:18:01 -04:00
|
|
|
|
[bool]$Has_Primary_IP,
|
2021-07-23 22:06:42 +02:00
|
|
|
|
|
2023-07-28 15:38:16 -04:00
|
|
|
|
[uint64]$Virtual_Chassis_Id,
|
2021-07-23 22:06:42 +02:00
|
|
|
|
|
2020-03-23 12:18:01 -04:00
|
|
|
|
[uint16]$Position,
|
2021-07-23 22:06:42 +02:00
|
|
|
|
|
2020-03-23 12:18:01 -04:00
|
|
|
|
[string]$Serial,
|
2021-07-23 22:06:42 +02:00
|
|
|
|
|
2020-03-23 12:18:01 -04:00
|
|
|
|
[switch]$Raw
|
|
|
|
|
|
)
|
2021-07-23 22:06:42 +02:00
|
|
|
|
|
2020-03-23 12:18:01 -04:00
|
|
|
|
#endregion Parameters
|
2021-07-23 22:06:42 +02:00
|
|
|
|
|
|
|
|
|
|
process {
|
|
|
|
|
|
$Segments = [System.Collections.ArrayList]::new(@('dcim', 'devices'))
|
|
|
|
|
|
|
|
|
|
|
|
$URIComponents = BuildURIComponents -URISegments $Segments.Clone() -ParametersDictionary $PSBoundParameters -SkipParameterByName 'Raw'
|
|
|
|
|
|
|
|
|
|
|
|
$URI = BuildNewURI -Segments $URIComponents.Segments -Parameters $URIComponents.Parameters
|
|
|
|
|
|
|
|
|
|
|
|
InvokeNetboxRequest -URI $URI -Raw:$Raw
|
2020-03-23 12:18:01 -04:00
|
|
|
|
}
|
|
|
|
|
|
}
|