|
4 | 4 |
|
5 | 5 | --- |
6 | 6 |
|
| 7 | +## [0.9.0] - In Progress (Due: 2025-11-04) - REST Passthrough Enhancements & Advanced Tool Management |
| 8 | + |
| 9 | +### Overview |
| 10 | + |
| 11 | +This release focuses on **REST API Passthrough Capabilities** and **Advanced Tool Management** with enhanced configurability for REST integrations: |
| 12 | + |
| 13 | +- **🔌 REST Passthrough API Fields** - Comprehensive REST tool configuration with query/header mapping, timeouts, and plugin chains |
| 14 | +- **🎯 Advanced Tool Configuration** - Fine-grained control over REST tool behavior and request customization |
| 15 | +- **🔒 Security & Validation** - Enhanced validation for REST endpoints with allowlists and configurable timeouts |
| 16 | + |
| 17 | +### Added |
| 18 | + |
| 19 | +#### **🔌 REST Passthrough Configuration** (#746, #1273) |
| 20 | +* **Query & Header Mapping** - Configure dynamic query parameter and header mappings for REST tools |
| 21 | +* **Path Templates** - Support for URL path templates with variable substitution |
| 22 | +* **Timeout Configuration** - Per-tool timeout settings (default: 20000ms for REST passthrough) |
| 23 | +* **Endpoint Exposure Control** - Toggle passthrough endpoint visibility with `expose_passthrough` flag |
| 24 | +* **Host Allowlists** - Configure allowed upstream hosts/schemes for enhanced security |
| 25 | +* **Plugin Chain Support** - Pre and post-request plugin chains for REST tools |
| 26 | +* **Base URL Extraction** - Automatic extraction of base URL and path template from tool URLs |
| 27 | +* **Admin UI Integration** - "Advanced: Add Passthrough" button in tool creation form with dynamic field generation |
| 28 | + |
| 29 | +#### **🛡️ REST Tool Validation** (#1273) |
| 30 | +* **URL Structure Validation** - Ensures base URLs have valid scheme and netloc |
| 31 | +* **Path Template Validation** - Enforces leading slash in path templates |
| 32 | +* **Timeout Validation** - Validates timeout values are positive integers |
| 33 | +* **Allowlist Validation** - Regex-based validation for allowed hosts/schemes |
| 34 | +* **Plugin Chain Validation** - Restricts plugins to known safe plugins (deny_filter, rate_limit, pii_filter, response_shape, regex_filter, resource_filter) |
| 35 | +* **Integration Type Enforcement** - REST-specific fields only allowed for `integration_type='REST'` |
| 36 | + |
| 37 | +### Changed |
| 38 | + |
| 39 | +#### **📊 Database Schema** (#1273) |
| 40 | +* **New Tool Columns** - Added 9 new columns to tools table via Alembic migration `8a2934be50c0`: |
| 41 | + - `base_url` - Base URL for REST passthrough |
| 42 | + - `path_template` - Path template for URL construction |
| 43 | + - `query_mapping` - JSON mapping for query parameters |
| 44 | + - `header_mapping` - JSON mapping for headers |
| 45 | + - `timeout_ms` - Request timeout in milliseconds |
| 46 | + - `expose_passthrough` - Boolean flag to enable/disable passthrough |
| 47 | + - `allowlist` - JSON array of allowed hosts/schemes |
| 48 | + - `plugin_chain_pre` - Pre-request plugin chain |
| 49 | + - `plugin_chain_post` - Post-request plugin chain |
| 50 | + |
| 51 | +#### **🔧 API Schemas** (#1273) |
| 52 | +* **ToolCreate Schema** - Enhanced with passthrough field validation and auto-extraction logic |
| 53 | +* **ToolUpdate Schema** - Updated with same validation logic for modifications |
| 54 | +* **ToolRead Schema** - Extended to expose passthrough configuration in API responses |
| 55 | + |
| 56 | +### Documentation |
| 57 | + |
| 58 | +* REST Passthrough API configuration guide (see `docs/docs/using/rest-passthrough.md`) |
| 59 | +* Updated tool configuration examples with passthrough fields |
| 60 | +* Admin UI usage documentation for advanced REST tool configuration |
| 61 | + |
| 62 | +### Issues Closed |
| 63 | + |
| 64 | +**REST Integration:** |
| 65 | +- Closes #746 - REST Passthrough API configuration fields |
| 66 | + |
| 67 | +--- |
| 68 | + |
7 | 69 | ## [0.8.0] - 2025-10-07 - Advanced OAuth, Plugin Ecosystem & MCP Registry |
8 | 70 |
|
9 | 71 | ### Overview |
|
0 commit comments