Download the PHP package sherinbloemendaal/phpipam-client without Composer
On this page you can find all versions of the php package sherinbloemendaal/phpipam-client. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download sherinbloemendaal/phpipam-client
More information about sherinbloemendaal/phpipam-client
Files in sherinbloemendaal/phpipam-client
Package phpipam-client
Short Description A API Client for phpIPAM written in PHP
License MIT
Informations about the package phpipam-client
phpIPAM API Client
A modern, fully-typed PHP client library for the phpIPAM API. This library provides an object-oriented interface for managing IP addresses, subnets, VLANs, and other network resources through phpIPAM's REST API.
✨ Features
- 🔒 Secure connections with SSL and encryption support
- 🏗️ Object-oriented design with full type safety (PHP 8.1+)
- 🚀 Modern PHP practices with strict types and union types
- 📚 Comprehensive API coverage for all phpIPAM resources
- 🛡️ Exception handling with detailed error responses
- 🔄 Automatic object/ID conversion for seamless development
- 📖 Fluent interface for method chaining
📋 Requirements
- PHP 8.1 or higher
- ext-json extension
- ext-openssl extension (for encryption)
- Guzzle HTTP library
- phpIPAM server with API enabled
📦 Installation
Install via Composer:
🚀 Quick Start
Basic Connection
Working with Sections
Working with Subnets
Working with IP Addresses
🔐 Security Methods
The client supports three security methods:
SSL (Recommended)
Encryption
Both (Maximum Security)
🎯 Usage Patterns
Object-Oriented Approach (Recommended)
Use controller classes for type-safe, object-oriented API interaction:
Direct API Calls
For advanced use cases, call the API directly:
🗂️ Available Controllers
| Controller | Description | Key Methods |
|---|---|---|
| Section | Network sections | getAll(), getByName(), getAllSubnets() |
| Subnet | IP subnets | getUsage(), getAddresses(), getFirstFree() |
| Address | IP addresses | getSearchByIP(), postFirstFree(), getPing() |
| VLAN | Virtual LANs | getSubnets(), getSearch() |
| VRF | Virtual routing | getSubnets(), getSections() |
| Device | Network devices | getAddresses(), getSubnets() |
| L2Domain | Layer 2 domains | getVLANs() |
⚠️ Exception Handling
The library provides two exception types:
🔧 Advanced Configuration
Custom Connection Management
Working with Custom Fields
📚 API Reference
Core Methods
All controllers inherit these base methods:
getAll(): array- Get all objectsgetByID(int $id): static- Get object by IDpost(array $params): static- Create new objectpatch(array $params): bool- Update objectdelete(): bool- Delete object
Response Object
🤝 Contributing
Contributions are welcome! Please follow these guidelines:
- Code Style: Follow PSR-12 coding standards
- Type Safety: Use strict types and proper type declarations
- Testing: Add tests for new features
- Documentation: Update documentation for API changes
📄 License
This project is licensed under the MIT License - see the LICENSE file for details.
🔗 Related Links
🆘 Support
- Issues: GitHub Issues
- Documentation: API Documentation
- Community: phpIPAM Community
Made with ❤️ for the phpIPAM community