Gödel's Sieve
API Docs
API Reference

List Scans

Retrieve a paginated list of your security scans.

Retrieve Scans

GET /api/scans

Retrieves a paginated list of your security scans.

Query parameters

ParamTypeDefaultDescription
limitnumber20Max items to return
offsetnumber0Pagination offset
statusstringFilter by status: queued, pending, extracting, processing, completed, failed, error, unsupported
searchstringSubstring match on fileName

Example

curl -sS \
  -H 'X-API-Key: <YOUR_PAT>' \
  'https://api.sieve.godel-labs.ai/api/scans?limit=20&status=completed'

Response (200)

{
  "scans": [
    {
      "scanId": "2b2f7b8b-7f2c-4b2d-9a5f-5c0c4c3c9d4e",
      "fileName": "suspicious.pdf",
      "fileHash": "<sha256>",
      "status": "completed",
      "threatScore": 0.12,
      "severity": "low",
      "riskCategory": "safe",
      "confidence": 0.95,
      "securityIssuesCount": 0,
      "sensitiveDataCount": 1,
      "detectionClass": ["document"],
      "uploadedBy": "alice@example.com",
      "createdAt": "2026-02-14 12:34:56",
      "updatedAt": "2026-02-14 12:35:10"
    }
  ],
  "total": 1,
  "limit": 20,
  "offset": 0
}

Response fields

FieldTypeDescription
scanIdstringUnique scan identifier (UUID)
fileNamestringOriginal file name
fileHashstringSHA-256 hex digest of the original file
statusstringCurrent scan status (see status values below)
threatScorenumber | nullThreat probability score (0–1)
severitystring | nullSeverity level: low, medium, high, critical
riskCategorystring | nullRisk category: safe, suspicious, malicious
confidencenumber | nullModel confidence in the classification (0–1)
securityIssuesCountnumber | nullNumber of distinct security issues found
sensitiveDataCountnumber | nullNumber of sensitive data items detected
detectionClassstring[]List of detected content/threat classes
uploadedBystringEmail or name of the user who uploaded the file
createdAtstringISO-8601 timestamp when the scan was created
updatedAtstringISO-8601 timestamp of the last status update

Delete Scan

DELETE /api/scans/:scanId

Permanently deletes a scan record and its associated file from storage.

Example

curl -sS -X DELETE \
  -H 'X-API-Key: <YOUR_PAT>' \
  'https://api.sieve.godel-labs.ai/api/scans/2b2f7b8b-7f2c-4b2d-9a5f-5c0c4c3c9d4e'

Response (200)

{
  "success": true,
  "message": "Scan deleted successfully",
  "scanId": "2b2f7b8b-7f2c-4b2d-9a5f-5c0c4c3c9d4e"
}