Scanii API

Anti-malware / API Key Intermediate HTTPS CORS
Varies by plan (check documentation)

Overview

Scanii is a cloud-based malware scanning API that accepts file uploads and returns a verdict on whether the file contains threats. It supports documents, images, archives, and executables, making it practical for user upload pipelines on web applications. Beginners can use it to prevent malicious files from being stored on their servers.

💡

Beginner Tip

Sign up at scanii.com for a free trial key. Authenticate using HTTP Basic Auth with your API key as the username and an empty string as the password — do not put the key in a header.

Available Data

Scanii data via REST API
JSON-formatted response data
Requires API key authentication

Example Response

JSON Response
{
  "url": "https://example.com",
  "safe": true,
  "threat_level": "none",
  "categories": [
    "clean"
  ],
  "scan_date": "2025-01-15T10:00:00Z"
}

Field Reference

id Unique identifier for this scan job; use it to retrieve results for async scans
status Scan status: pending for async processing, done when complete
findings List of threat names detected in the file; empty array means no threats found
content_type MIME type of the scanned file as detected by Scanii
content_length Size of the scanned file in bytes
creation_date ISO 8601 timestamp when the scan was created

Implementation Example

const url = "https://docs.scanii.com/";
// Replace headers or query params with the values required by this API.
const response = await fetch(url, {
  headers: {
  "X-API-Key": "YOUR_API_KEY"
  }
});
if (!response.ok) throw new Error(`Request failed: ${response.status}`);
const data = await response.json();
console.log(data);

What Can You Build?

Note: These code examples are AI-generated and unverified. Always refer to the official API documentation for accurate usage.

Common Errors & Troubleshooting

401 Unauthorized API credentials are missing or the Basic Auth format is incorrect
Use -u "YOUR_API_KEY:" in curl (note the colon with no password); in code, set username to your key and password to empty string
413 Payload Too Large The uploaded file exceeds the maximum allowed size for your plan
Check your plan limits at scanii.com; free tier supports files up to 20 MB
pending status in response Large files are processed asynchronously and are not immediately ready
Use the id from the initial response to poll GET /v2.1/files/{id} until the status changes from pending to done

Matrix Score Breakdown

🌐 Reachability 30/30
⚡ Speed 5/20
🔒 Security 15/15
🛠 Developer XP 17/20
✓ Reliability 10/15

Partially tested on Apr 5, 2026

Technical Specifications

Auth API Key
HTTPS REQUIRED
CORS YES
Category Anti-malware
Difficulty Intermediate
Verified: 2026-04-04

Similar APIs

View All →