API Documentation

Integrate AI-powered security scanning into your applications with our comprehensive REST API.

Getting Started

The AI Cybershield API allows you to integrate our AI-powered security scanning capabilities into your applications. Our REST API is designed to be simple, secure, and scalable.

Base URL

https://ai-cs.tech/api

Authentication

Our API supports two authentication methods: JWT tokens for user-based operations and API tokens for browser extension integration.

JWT Authentication

// User Authentication
const response = await fetch('/api/auth/login', {
  method: 'POST',
  headers: {
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
    email: 'user@example.com',
    password: 'your-password'
  })
});

const data = await response.json();
const token = data.token; // Use this token for authenticated requests

Important

Some endpoints require email verification in addition to authentication. Make sure to verify your email before accessing these features.

API Endpoints

POST/api/auth/signup
Authentication

Create a new user account

Auth Required: None
POST/api/auth/login
Authentication

Authenticate user and get JWT token

Auth Required: None
POST/api/upload-files
File Operations

Upload files for security analysis

Auth Required: JWT Token + Email Verification
POST/api/start-scan
Scanning

Start security scan on uploaded files

Auth Required: JWT Token + Email Verification
GET/api/scan-status/[scanId]
Scanning

Get status of a running scan

Auth Required: JWT Token
GET/api/scan-results/[scanId]
Scanning

Get results of completed scan

Auth Required: JWT Token
POST/api/requests
Browser Extension

Submit captured requests from browser extension

Auth Required: API Token

File Upload Example

// File Upload for Scanning
const formData = new FormData();
formData.append('files', fileInput.files[0]);

const response = await fetch('/api/upload-files', {
  method: 'POST',
  headers: {
    'Authorization': `Bearer ${token}`
  },
  body: formData
});

const result = await response.json();

Security Scanning

Start Scan

// Start Security Scan
const response = await fetch('/api/start-scan', {
  method: 'POST',
  headers: {
    'Content-Type': 'application/json',
    'Authorization': `Bearer ${token}`
  },
  body: JSON.stringify({
    scanType: 'vulnerability',
    target: 'uploaded-files'
  })
});

const scanData = await response.json();
const scanId = scanData.scanId;

Check Status

// Check Scan Status
const response = await fetch(`/api/scan-status/${scanId}`, {
  headers: {
    'Authorization': `Bearer ${token}`
  }
});

const status = await response.json();
console.log(status.state); // 'running', 'completed', 'failed'

Rate Limits

100
Requests per hour
10
Concurrent scans
100MB
Max file size

Need Help?

If you need assistance with the API or have questions about implementation, our support team is here to help.