virustotal2_GET(),
virustotal2_POST()) and deprecated functions
(add_comments()). The package now exclusively uses
VirusTotal API v3.0.Analysis Endpoint: Added
get_analysis() to retrieve analysis results by ID.
File Behaviour Endpoints: New functions for sandbox analysis:
get_file_behaviour_summary(): Summary of all behaviour
reportsget_file_behaviour_mitre_trees(): MITRE ATT&CK
technique mappingsget_file_behaviours(): All behaviour reports for a
fileSandbox Report Endpoints: Access individual sandbox artifacts:
get_behaviour_report(): JSON behaviour reportget_behaviour_html(): HTML report from sandboxget_behaviour_evtx(): Windows Event Log fileget_behaviour_pcap(): Network capture fileget_behaviour_memdump(): Memory dump fileUsers upgrading from versions that used v2.0 functions should ensure their code uses the equivalent v3.0 functions.
Structured Error Handling: New S3 error classes
(virustotal_error, virustotal_auth_error,
virustotal_validation_error,
virustotal_rate_limit_error) provide detailed error
information and better debugging.
S3 Response Classes: All API responses now
return structured S3 objects (virustotal_file_report,
virustotal_domain_report, etc.) with custom
print() and summary() methods for better user
experience.
Modern Rate Limiting: Replaced environment variable-based rate limiting with a sliding window implementation that properly manages the 4 requests/minute VirusTotal API limit.
Comprehensive Input Validation: Added robust
input validation using the checkmate package with
security-focused sanitization functions.
Enhanced Security Utilities: New security functions for safe file operations and input sanitization to prevent common security issues.
Updated CI/CD: Migrated from Travis CI/AppVeyor to GitHub Actions with comprehensive testing matrix (R oldrel-1, release, devel).
Modern Dependencies: Updated minimum R version
to 4.0.0, migrated from plyr to dplyr, added
modern packages (checkmate, jsonlite,
rlang).
Enhanced Documentation: Improved documentation with roxygen2 markdown support and comprehensive examples.
Test Coverage: Expanded test suite with proper mocking support and comprehensive error handling validation.
Improved Domain Processing: Enhanced domain cleaning logic that properly handles URLs with protocols, www prefixes, and paths.
Better Error Messages: More informative error messages with parameter context and suggested fixes.
Response Formatting: Rich response formatting with detection summaries, file metadata, and threat intelligence display.
virustotal_info() function for package
configuration diagnosticsget_rate_limit_status()file_report(),
scan_file(), rescan_file(),
url_report(), scan_url(),
domain_report(), ip_report()virustotal2_* function calls from
user-facing functionsip_report()base64enc for URL encoding support