PhpIPAM FirstFree

PhpIPAM FirstFree

Certified

Get the first free subnet within a master subnet

Returns the CIDR of the first available child-subnet slot within the given master subnet. Useful for automatically provisioning the next available prefix from a supernet. Raises an error if no free subnet slot exists.

yaml
type: io.kestra.plugin.phpipam.ipam.subnet.FirstFree

Get first free subnet

yaml
id: phpipam_subnet_first_free
namespace: company.team
tasks:
  - id: first_free_subnet
    type: io.kestra.plugin.phpipam.ipam.subnet.FirstFree
    baseUrl: "https://ipam.example.com"
    appId: myapp
    auth:
      appToken: "{{ secret('PHPIPAM_APP_TOKEN') }}"
    subnetId: "5"
    mask: "25"
Properties

Application ID

The API application identifier configured in phpIPAM under Administration → API. It appears in the path segment /api/{appId}/.

Authentication

Provide either appToken for static App-token authentication, or username + password to obtain a per-run session token. Supplying both, or neither, raises a validation error.

Definitions
appTokenstring

Static App token

A token generated in the phpIPAM administration panel under Administration → API. Sent to phpIPAM via the token request header. Mutually exclusive with username / password.

passwordstring

Password

Password for the phpIPAM user. Must be provided together with username.

usernamestring

Username

phpIPAM username used to obtain a per-session token via POST /api/{appId}/user/. Must be provided together with password. Mutually exclusive with appToken.

Base URL of the phpIPAM instance

Root URL of the phpIPAM instance, e.g. https://ipam.example.com. No trailing slash needed.

Child subnet mask

CIDR prefix length (e.g. 25) of the free child subnet to find within the master subnet. phpIPAM requires this to locate the first free slot of the requested size.

Master subnet ID

Numeric ID of the master subnet from which the first free child subnet is requested.

Assets this task consumes as inputs or produces as outputs, for lineage tracking and the asset graph (Enterprise Edition). A flow declaring this property on a task is rejected in the open-source edition.

Definitions
assetFailureBehaviorstring
Possible Values
IGNOREFAILWARN

Asset failure behavior

Behavior applied to the task state when a declared asset fails to render, emit, or be persisted (e.g. a lock conflict): FAIL escalates it to FAILED, WARN (default) warns it if it would otherwise succeed, IGNORE leaves the state untouched.

enableAutobooleanstring

Whether to auto-register assets referenced dynamically at runtime that are not statically declared in inputs or outputs.

inputsarray

The assets consumed as inputs.

id*string
Min length1
typestring
outputs

The assets produced as outputs.

id*string
Min length1
Max length150
type*object
descriptionstring
displayNamestring
metadataobject
Default{}
namespacestring
Min length1
Max length150
id*string
Min length1
Max length150
type*object
descriptionstring
displayNamestring
metadataobject
Default{}
namespacestring
Min length1
Max length150
id*string
Min length1
Max length150
type*object
descriptionstring
displayNamestring
metadataobject
Default{}
namespacestring
Min length1
Max length150
id*string
Min length1
Max length150
type*object
descriptionstring
displayNamestring
metadataobject
Default{}
namespacestring
Min length1
Max length150
id*string
Min length1
Max length150
type*object
descriptionstring
displayNamestring
metadataobject
Default{}
namespacestring
Min length1
Max length150
id*string
Min length1
Max length150
type*string
Min length1

Custom asset type

descriptionstring
displayNamestring
metadataobject
Default{}
namespacestring
Min length1
Max length150
Defaultfalse

Disable TLS certificate validation

Set to true to trust all TLS certificates, including self-signed ones. Intended for development or internal deployments only.

First free subnet CIDR

CIDR notation of the first available child subnet slot.