{"repo":"benzino77/clamav-rest-api","free":true,"listed":false,"github":"https://github.com/benzino77/clamav-rest-api","clone":"git clone https://github.com/benzino77/clamav-rest-api.git","description":"ClamAV REST API. Scan files using simple POST request.","language":"JavaScript","stars":205,"topics":["clamav","api-server","virus-scanning","rest-api","nodejs"],"license":"MIT","category":"api-integrations-sdks","readme_excerpt":"Overview This is a simple implementation of REST API for ClamAV virus scanner. You can use it to scan files uploaded by users, before they are saved or put into final destination, or to scan files on demand. Because clamav-rest-api is running in your environment, you do not need to pass your files to third party entities. Screencast The screen recording above is showing how to use clamav-rest-api synchronously and asynchronously 1 . There are three types of async callbacks available: WEBHOOK Call Call external HTTP endpoint on scan complete. REDIS pub/sub Publish scan result to a given REDIS channel on scan complete AWS SNS Publish scan result to a given SNS Topic which (like on the screencast and the screen below) can be passed to AWS Lambda function. [!NOTE] In all three cases the message body passed to a callback is a JSON object containing scan result and request id . GCP Cloud Run API can be used within GCP Cloud Run, but because of Google networking quotas, incoming request will be limited to only 32 MiB for HTTP/1 connections. To enable HTTP/2 connections without limits, please use Nginx as the main (ingress) container and API & ClamAV as sidecars Example Architecture: 1. GCP secret with Nginx default.conf value. It will provide HTTP2 and proxying requests to API (port 8080) 2. Main Nginx container uses port 8081 with mounted volume with secret 3. API container listens on port 8080 4. Default ClamAV container 5. Proper dependencies chain (ClamAV - API - finally Nginx) ","default_branch":null,"files":null,"tree":[],"storefront":"/r/benzino77","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/benzino77/clamav-rest-api/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}