Skip to content

New-NBIPAMPrefix

Since

v1.0.4

SYNOPSIS

Creates one or more prefixes in Netbox IPAM module.

SYNTAX

Single (Default)

New-NBIPAMPrefix -Prefix <String> [-Status <String>] [-Tenant <UInt64>] [-Role <UInt64>] [-IsPool <Boolean>] [-Description <String>] [-Scope_Type <String>] [-Scope_Id <UInt64>] [-VRF <UInt64>] [-VLAN <UInt64>] [-Custom_Fields <Hashtable>] [-Owner <UInt64>] [-Tags <Object[]>] [-Raw] [-ProgressAction <ActionPreference>] [-WhatIf] [-Confirm] [<CommonParameters>]

Bulk

New-NBIPAMPrefix -InputObject <PSObject> [-BatchSize <Int32>] [-Force] [-Tags <Object[]>] [-Raw] [-ProgressAction <ActionPreference>] [-WhatIf] [-Confirm] [<CommonParameters>]

DESCRIPTION

Creates new IP prefixes in Netbox IPAM module. Supports both single prefix creation with individual parameters and bulk creation via pipeline input.

For bulk operations, use the -BatchSize parameter to control how many prefixes are sent per API request. This significantly improves performance when creating many prefixes.

EXAMPLES

EXAMPLE 1

New-NBIPAMPrefix -Prefix "10.0.0.0/24" -Status "active" -Scope_Type "dcim.site" -Scope_Id 1

Creates a single prefix scoped to site ID 1.

EXAMPLE 2

New-NBIPAMPrefix -Prefix "10.0.0.0/24" -Scope_Type "dcim.location" -Scope_Id 5

Creates a prefix scoped to location ID 5.

EXAMPLE 3

$prefixes = 1..50 | ForEach-Object { [PSCustomObject]@{Prefix="10.$_.0.0/24"; Status="active"; Scope_Type="dcim.site"; Scope_Id=1} } $prefixes | New-NBIPAMPrefix -BatchSize 50 -Force

Creates 50 prefixes in bulk using a single API call.

EXAMPLE 4

Import-Csv subnets.csv | New-NBIPAMPrefix -BatchSize 100 -Force

Bulk import prefixes from CSV file.

PARAMETERS

-Prefix

The IP prefix in CIDR notation (e.g., '10.0.0.0/24').

```yaml Type: String Parameter Sets: Single Aliases:

Required: True Position: Named Default value: None Accept pipeline input: False Accept wildcard characters: False ```

-Status

Status of the prefix. Defaults to 'Active'.

```yaml Type: String Parameter Sets: Single Aliases:

Required: False Position: Named Default value: Active Accept pipeline input: False Accept wildcard characters: False ```

-Tenant

The tenant ID for the prefix.

```yaml Type: UInt64 Parameter Sets: Single Aliases:

Required: False Position: Named Default value: 0 Accept pipeline input: False Accept wildcard characters: False ```

-Role

The role ID for the prefix.

```yaml Type: UInt64 Parameter Sets: Single Aliases:

Required: False Position: Named Default value: 0 Accept pipeline input: False Accept wildcard characters: False ```

-IsPool

Whether this prefix is a pool from which child prefixes can be allocated.

```yaml Type: Boolean Parameter Sets: Single Aliases:

Required: False Position: Named Default value: False Accept pipeline input: False Accept wildcard characters: False ```

-Description

A description of the prefix.

```yaml Type: String Parameter Sets: Single Aliases:

Required: False Position: Named Default value: None Accept pipeline input: False Accept wildcard characters: False ```

-Scope_Type

The scope type for this prefix. Defines what kind of object the prefix is scoped to. Valid values: dcim.region, dcim.sitegroup, dcim.site, dcim.location. Must be used together with -Scope_Id.

```yaml Type: String Parameter Sets: Single Aliases:

Required: False Position: Named Default value: None Accept pipeline input: False Accept wildcard characters: False ```

-Scope_Id

The database ID of the scope object. Must be used together with -Scope_Type.

```yaml Type: UInt64 Parameter Sets: Single Aliases:

Required: False Position: Named Default value: 0 Accept pipeline input: False Accept wildcard characters: False ```

-VRF

The VRF ID for this prefix.

```yaml Type: UInt64 Parameter Sets: Single Aliases:

Required: False Position: Named Default value: 0 Accept pipeline input: False Accept wildcard characters: False ```

-VLAN

The VLAN ID associated with this prefix.

```yaml Type: UInt64 Parameter Sets: Single Aliases:

Required: False Position: Named Default value: 0 Accept pipeline input: False Accept wildcard characters: False ```

-Custom_Fields

Hashtable of custom field values.

```yaml Type: Hashtable Parameter Sets: Single Aliases:

Required: False Position: Named Default value: None Accept pipeline input: False Accept wildcard characters: False ```

-Owner

The owner ID for object ownership (Netbox 4.5+ only).

```yaml Type: UInt64 Parameter Sets: Single Aliases:

Required: False Position: Named Default value: 0 Accept pipeline input: False Accept wildcard characters: False ```

-InputObject

Pipeline input for bulk operations. Each object should contain the required property: Prefix.

```yaml Type: PSObject Parameter Sets: Bulk Aliases:

Required: True Position: Named Default value: None Accept pipeline input: True (ByValue) Accept wildcard characters: False ```

-BatchSize

Number of prefixes to create per API request in bulk mode. Default: 50, Range: 1-1000

```yaml Type: Int32 Parameter Sets: Bulk Aliases:

Required: False Position: Named Default value: 100 Accept pipeline input: False Accept wildcard characters: False ```

-Force

Skip confirmation prompts for bulk operations.

```yaml Type: SwitchParameter Parameter Sets: Bulk Aliases:

Required: False Position: Named Default value: False Accept pipeline input: False Accept wildcard characters: False ```

-Tags

Common parameters

```yaml Type: Object[] Parameter Sets: (All) Aliases:

Required: False Position: Named Default value: None Accept pipeline input: False Accept wildcard characters: False ```

-Raw

Return the raw API response instead of the results array.

```yaml Type: SwitchParameter Parameter Sets: (All) Aliases:

Required: False Position: Named Default value: False Accept pipeline input: False Accept wildcard characters: False ```

-WhatIf

Shows what would happen if the cmdlet runs. The cmdlet is not run.

```yaml Type: SwitchParameter Parameter Sets: (All) Aliases: wi

Required: False Position: Named Default value: None Accept pipeline input: False Accept wildcard characters: False ```

-Confirm

Prompts you for confirmation before running the cmdlet.

```yaml Type: SwitchParameter Parameter Sets: (All) Aliases: cf

Required: False Position: Named Default value: None Accept pipeline input: False Accept wildcard characters: False ```

-ProgressAction

{{ Fill ProgressAction Description }}

```yaml Type: ActionPreference Parameter Sets: (All) Aliases: proga

Required: False Position: Named Default value: None Accept pipeline input: False Accept wildcard characters: False ```

CommonParameters

This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see about_CommonParameters.

INPUTS

OUTPUTS

System.Management.Automation.PSObject

NOTES

AddedInVersion: v1.0.4

Common parameters

common request params
common bulk params

https://netbox.readthedocs.io/en/stable/models/ipam/prefix/