Releases: FReptar0/nutanix-api-client
Releases · FReptar0/nutanix-api-client
Release list
Release 1.0.1
v1.0.0
Nutanix API Client v1.0.0
Overview
Initial production release of the Nutanix API Integration System. A unified Python CLI application for automating Nutanix purchase order submissions with JWT authentication, XML transformation, and comprehensive error handling.
Features
- JWT Authentication: Automatic RS256 token generation with configurable expiration
- Smart XML Processing: Detects and adds SOAP envelope only when needed
- Robust API Communication: Retry logic, timeout handling, and detailed error reporting
- Mandatory Archiving: All processed files automatically archived (success/error paths)
- Environment-Aware: Separate UAT and production configurations
- CLI Interface: Simple commands for processing, validation, and cleanup
- Comprehensive Logging: Environment-specific log levels with file rotation
Installation
Prerequisites
- Python 3.7 or higher
- RSA private key for JWT signing
Setup Steps
- Download and extract the release
- Install dependencies:
pip install -r requirements.txt
- Create configuration:
cp config/config.example.yaml config/config.yaml
- Edit
config/config.yamlwith your actual credentials and paths - Validate setup:
python main.py validate
Usage
Process a single file
python main.py process --input /path/to/order.xmlWatch mode (continuous processing)
python main.py process --watchCleanup old archives
python main.py cleanup --older-than 30Configuration
See config/config.example.yaml for the configuration template. Update with:
- Your JWT credentials (issuer, customer_id)
- Path to your RSA private key
- Input/output/archive directory paths
- Environment (uat or production)
Documentation
- Full documentation: README.md
- Example XML structure:
examples/example_raw.xml
Security Notes
- Never commit
config.yamlor.pemfiles to version control - All sensitive files are excluded via
.gitignore - Use separate configurations for UAT and production environments
What's Changed
- Initial release with core functionality
- Modular package structure with
nutanix_clientpackage - Comprehensive error handling and logging
- CLI interface with multiple commands
Requirements
See requirements.txt for full dependency list:
- PyJWT (JWT token generation)
- cryptography (RSA signing)
- requests (API communication)
- PyYAML (configuration management)
Support
For issues or questions, please open an issue on GitHub.