- 
                Notifications
    
You must be signed in to change notification settings  - Fork 0
 
Open
Description
Missing Tools to Implement
Based on the Nutrient API documentation, the following tools are missing and should be added:
High Priority PDF Processing Tools
- split_pdf - Split PDF into multiple files
 - duplicate_pdf_pages - Duplicate specific pages
 - delete_pdf_pages - Delete specific pages
 - add_page - Add blank or content pages
 - set_page_label - Set page labels/numbering
 
Document Generation Tools
- pdf_generator - Generate PDFs from templates
 - pdf_creator - Create PDFs programmatically
 - pdf_writer - Write content to PDFs
 - url_to_pdf - Convert URLs to PDF
 
Form and Annotation Tools
- json_import - Import form data from JSON
 - xfdf_import - Import XFDF annotations
 - pdf_form_filling - Fill PDF forms
 - pdf_form_creator - Create interactive forms
 - pdf_annotations - Add/modify annotations
 
Conversion Tools
- pdf_converter - General PDF conversion
 - office_to_pdf - Convert Office documents (DOC, DOCX, XLS, XLSX, PPT, PPTX, RTF, ODT)
 - image_to_pdf - Convert images (JPG, PNG, TIFF, HEIC, WebP, SVG, GIF, TGA, EPS)
 - html_to_pdf - Convert HTML to PDF
 - pdf_to_image - Convert PDF to images
 - office_to_image - Convert Office documents to images
 - html_to_image - Convert HTML to images
 - pdf_to_office - Convert PDF to Office formats
 - image_to_office - Convert images to Office formats
 - html_to_office - Convert HTML to Office formats
 
Optimization and Archive Tools
- pdf_optimization - Optimize PDF file size
 - image_optimization - Optimize images in PDFs
 - pdf_linearization - Linearize PDFs for web viewing
 - pdf_to_pdf_a - Convert to PDF/A format
 - pdf_a_validation - Validate PDF/A compliance
 
Data Extraction Tools
- text_extraction - Extract text from documents
 - key_value_pair_extraction - Extract key-value pairs
 - image_to_text - OCR for images
 - table_extraction - Extract tables to Excel/XML/JSON/CSV
 
Security Tools
- pdf_security - Add/remove security settings
 - digital_signatures - Add digital signatures (already has basic support)
 
AI Tools
- ai_redaction - AI-powered redaction (mentioned in OpenAPI spec)
 
Implementation Guidelines
For each new tool, follow this pattern:
- 
Add method to
DirectAPIMixininsrc/nutrient_dws/api/direct.py:def tool_name( self, input_file: FileInput, output_path: Optional[str] = None, **tool_specific_params, ) -> Optional[bytes]: """Tool description.""" return self._process_file("api-tool-name", input_file, output_path, **options)
 - 
Add builder API support - tools should automatically work with builder pattern via
_process_file - 
Add comprehensive tests in
tests/unit/andtests/integration/ - 
Update documentation with examples and parameter descriptions
 - 
Follow existing patterns for:
- Error handling (AuthenticationError, APIError)
 - File handling (FileInput type)
 - Parameter validation
 - Type hints and docstrings
 
 
Tool Name Mapping
The Python method names should be snake_case versions of the API tool names:
- API: 
split-pdf→ Python:split_pdf - API: 
office-to-pdf→ Python:office_to_pdf - API: 
pdf-to-pdf-a→ Python:pdf_to_pdf_a 
Notes
- All tools should support the same file input types: 
str(path),bytes, or file-like objects - All tools should support optional 
output_pathparameter - Consider adding input format validation where appropriate
 - Some tools may need special handling for multiple file inputs/outputs
 - Refer to the OpenAPI spec for exact parameter names and types
 
Metadata
Metadata
Assignees
Labels
No labels