For Agents
Manage IP address allocations, subnets, VLANs, VRFs, and network devices through phpIPAM's REST API. Assign addresses, check subnet utilization, and track network infrastructure inventory.
Install Jentic One Beta
Jentic One is a self-hosted execution layer for AI agents. It lets your agent call the phpIPAM, or any other public or private API you need. You set the rules, the agent never sees your credentials, and every call is logged.
Two steps, two machines. Install the instance in a safe environment, then register your agent from wherever it runs.
Step 1: Jentic One Host machine
# On the machine that will host your Jentic One instance:
curl -fsSL https://raw.githubusercontent.com/jentic/jentic-one/main/tools/install.sh | shStep 2: Agent machine
# On the machine where your agent runs (keep this separate from the instance):
curl -fsSL https://raw.githubusercontent.com/jentic/jentic-one/main/tools/install.sh | sh
jentic register # connects your agent to your Jentic One instanceJentic One is in public beta. The setup above keeps your agent separate from the instance, which is what you want before using real credentials: an agent running as the same OS user as Jentic One can read its stored keys directly. Just evaluating? A single local install is fine to start. See the secure deployment guide for the tiers.
What an agent can do with phpIPAM API.
Allocate and release IP addresses within managed subnets with automatic first-free detection
Create and organize subnets into hierarchical sections for network segmentation
Track VLAN assignments and map them to subnets across L2 domains
GET STARTED
Use for: I need to find the next available IP address in a subnet, I want to create a new subnet under an existing section, List all IP addresses assigned in a specific subnet, Search for a device by hostname across the network inventory
Not supported: Does not handle DNS management, firewall rules, traffic monitoring, or network configuration deployment — use for IP address and subnet inventory management only.
Jentic publishes the only available OpenAPI specification for phpIPAM, keeping it validated and agent-ready. phpIPAM is an open-source IP address management (IPAM) system that provides a REST API for managing network sections, subnets, IP addresses, VLANs, VRFs, L2 domains, and network devices. The API exposes 49 endpoints covering subnet allocation, address assignment, VLAN tracking, device inventory, and utilization reporting for enterprise and data center network management.
Manage VRF instances and their associated subnet ranges for routing isolation
Maintain a device inventory with subnet and address associations per device
Query subnet utilization metrics including used, free, and reserved address counts
Search IP addresses by hostname, MAC address, or IP across all managed subnets
Patterns agents use phpIPAM API for, with concrete tasks.
★ IP Address Allocation
Assign IP addresses to hosts within managed subnets using automatic first-free detection. phpIPAM tracks which addresses are in use, reserved, or available, preventing allocation conflicts. The API returns the next available address in a given subnet and creates the assignment record with hostname and MAC metadata in a single call.
Query GET /addresses/first_free/{subnetId} for subnet ID 5 to get the next available IP, then POST /addresses/ to assign it with hostname 'web-server-04'
Subnet and VLAN Management
Create, organize, and monitor subnets with VLAN tagging and section grouping. phpIPAM supports hierarchical subnet structures, CIDR-based lookups, and VLAN-to-subnet mapping across multiple L2 domains. Network engineers use this to plan address space allocation and track which VLANs serve which network segments.
Create a new /24 subnet under section ID 2 with VLAN tag 100, then query its utilization to confirm zero addresses are in use
Network Device Inventory
Maintain a centralized inventory of network devices (routers, switches, firewalls) with their associated subnets and IP addresses. phpIPAM links each device to the subnets it manages and the addresses assigned to its interfaces, providing a single source of truth for network topology documentation.
List all devices with GET /devices/, then retrieve all subnets managed by device ID 3 using GET /devices/3/subnets/
AI Agent Network Provisioning via Jentic
AI agents managing infrastructure provisioning can allocate IP addresses and create subnets through Jentic without managing phpIPAM tokens directly. The agent searches for IP allocation operations, loads the endpoint schema, and executes with Jentic handling token-based authentication. This enables automated network provisioning as part of server deployment workflows.
Search Jentic for 'allocate next free IP address', load the phpIPAM first_free operation, and assign the returned address to a new server with hostname 'db-replica-02'
49 endpoints — jentic publishes the only available openapi specification for phpipam, keeping it validated and agent-ready.
METHOD
PATH
DESCRIPTION
/user/
Authenticate and obtain an API token
/subnets/{id}/
Retrieve subnet details by ID
/subnets/{id}/usage/
Get subnet utilization statistics
/subnets/{id}/addresses/
List all addresses in a subnet
/addresses/first_free/{subnetId}/
Find the next available IP in a subnet
/addresses/
Create a new IP address assignment
/addresses/search/{ip}/
Search for an IP address across all subnets
/vlan/
List all VLANs
/user/
Authenticate and obtain an API token
/subnets/{id}/
Retrieve subnet details by ID
/subnets/{id}/usage/
Get subnet utilization statistics
/subnets/{id}/addresses/
List all addresses in a subnet
/addresses/first_free/{subnetId}/
Find the next available IP in a subnet
Three things that make agents converge on Jentic-routed access.
Credential isolation
phpIPAM credentials are stored encrypted in the Jentic MAXsystem vault. Jentic handles the POST /user/ token acquisition and passes the phpipam-token header on subsequent calls — agents never manage token lifecycle directly.
Intent-based discovery
Agents search by intent (e.g., 'find next available IP in subnet') and Jentic returns matching phpIPAM operations with their input schemas including subnet IDs, address fields, and VLAN parameters.
Time to first call
Direct phpIPAM integration: 2-3 days for token management, subnet hierarchy understanding, and address lifecycle handling. Through Jentic: under 1 hour — search, load schema, execute with automatic token management.
Alternatives and complements available in the Jentic catalogue.
NetBox API
Data center infrastructure management including IPAM, DCIM, and circuit tracking
Choose NetBox when you need combined IPAM with data center inventory (racks, cables, power). Choose phpIPAM for a focused IP address management solution without the DCIM overhead.
Specific to using phpIPAM API through Jentic.
Why is there no official OpenAPI spec for phpIPAM?
phpIPAM does not publish an OpenAPI specification. Jentic generates and maintains this spec so that AI agents and developers can call phpIPAM via structured tooling. It is validated against the live API and kept up to date. Get started at https://app.jentic.com/sign-up.
What authentication does the phpIPAM API use?
phpIPAM supports two authentication methods: token-based auth via the phpipam-token header (obtained from POST /user/) and HTTP Basic authentication. Token auth is preferred for API integrations. Through Jentic, credentials are stored in the MAXsystem vault and the phpipam-token header is injected automatically after token acquisition.
Can I find the next available IP address in a subnet?
Yes. Use GET /addresses/first_free/{subnetId}/ to retrieve the next unassigned IP address in a given subnet. The endpoint scans the subnet's address range and returns the first address that is not currently assigned, reserved, or excluded.
How do I search for an IP address across all managed subnets?
Use GET /addresses/search/{ip}/ with the full IP address to find its assignment record regardless of which subnet it belongs to. You can also search by hostname with GET /addresses/search_hostname/{hostname}/ or by MAC address with GET /addresses/search_mac/{mac}/.
How do I allocate IP addresses through Jentic with phpIPAM?
Search Jentic for 'find next free IP address in subnet' to find the first_free operation. Load the schema, provide your subnet ID, and execute to get an available IP. Then use the create address operation (POST /addresses/) to assign it with hostname and description. Jentic handles token authentication throughout.
Does phpIPAM support VLAN-to-subnet mapping?
Yes. VLANs are managed as a separate resource (GET /vlan/) and each subnet can be associated with a VLAN. Use GET /vlan/{id}/subnets/ to retrieve all subnets tagged with a specific VLAN ID. L2 domains provide an additional grouping layer for VLANs across network segments.
/addresses/
Create a new IP address assignment
/addresses/search/{ip}/
Search for an IP address across all subnets
/vlan/
List all VLANs