Filtering
Filter and sort API results. Many endpoints support filtering via query parameters. bash GET /api/v1/vulnerabilities?severity=critical GET...
Last updated: January 14, 2026
Filtering & Sorting
Filter and sort API results.
Filtering
Many endpoints support filtering via query parameters.
Vulnerabilities
# Filter by severity
GET /api/v1/vulnerabilities?severity=critical
# Filter by status
GET /api/v1/vulnerabilities?status=open
# Filter by scanner
GET /api/v1/vulnerabilities?scanner_ids=slither,mythril
# Filter by category
GET /api/v1/vulnerabilities?categories=reentrancy,access_control
# Filter by minimum confidence score
GET /api/v1/vulnerabilities?min_confidence=0.8
# Combine multiple filters
GET /api/v1/vulnerabilities?severity=high&status=open&scanner_ids=slither
Available Filters
| Parameter | Type | Values |
|---|---|---|
severity |
string | critical, high, medium, low |
status |
string | open, acknowledged, fixed, false_positive |
scanner_ids |
string | Comma-separated scanner IDs |
categories |
string | Comma-separated category names |
min_confidence |
float | 0.0 to 1.0 |
contract_id |
UUID | Filter by specific contract |
Scans
# Filter by status
GET /api/v1/scans?status=completed
# Filter by contract
GET /api/v1/scans?contract_id=abc123
# Combine filters
GET /api/v1/scans?status=completed&contract_id=abc123
Available Filters
| Parameter | Type | Values |
|---|---|---|
status |
string | queued, running, completed, failed, cancelled |
contract_id |
UUID | Filter by specific contract |
project_id |
UUID | Filter by specific project |
Contracts
# Filter by language
GET /api/v1/contracts?language=solidity
# Filter by project
GET /api/v1/contracts?project_id=abc123
Available Filters
| Parameter | Type | Values |
|---|---|---|
language |
string | solidity, vyper, rust, move, cairo |
project_id |
UUID | Filter by specific project |
status |
string | pending, uploaded, analyzed |
Audit Logs
# Filter by action
GET /api/v1/audit-logs?action=scan.started
# Filter by resource type
GET /api/v1/audit-logs?resource_type=contract
# Filter by date range
GET /api/v1/audit-logs?from=2025-01-01&to=2025-01-31
Available Filters
| Parameter | Type | Description |
|---|---|---|
action |
string | Action type (e.g., scan.started) |
resource_type |
string | Resource type (e.g., contract, scan) |
from |
date | Start date (ISO 8601) |
to |
date | End date (ISO 8601) |
user_id |
UUID | Filter by user |
Sorting
Results are sorted by default (newest first for most endpoints).
Default Sort Order
| Endpoint | Default Sort |
|---|---|
GET /vulnerabilities |
detected_at DESC |
GET /scans |
created_at DESC |
GET /contracts |
created_at DESC |
GET /audit-logs |
created_at DESC |
The default sort order is optimized for cursor-based pagination.
Combining Filters with Pagination
Filters work with both pagination styles:
With Cursor Pagination
GET /api/v1/vulnerabilities?severity=high&status=open&first=50
GET /api/v1/vulnerabilities?severity=high&status=open&first=50&after=eyJ2IjoxLC...
With Offset Pagination
GET /api/v1/vulnerabilities?severity=high&status=open&skip=0&limit=50
GET /api/v1/vulnerabilities?severity=high&status=open&skip=50&limit=50
Filter Examples
Find Critical Open Vulnerabilities
curl -X GET "https://api.blocksecops.com/api/v1/vulnerabilities?severity=critical&status=open&first=100" \
-H "Authorization: Bearer YOUR_API_KEY"
Find Reentrancy Vulnerabilities from Slither
curl -X GET "https://api.blocksecops.com/api/v1/vulnerabilities?categories=reentrancy&scanner_ids=slither&first=50" \
-H "Authorization: Bearer YOUR_API_KEY"
Find High-Confidence Results Only
curl -X GET "https://api.blocksecops.com/api/v1/vulnerabilities?min_confidence=0.9&first=100" \
-H "Authorization: Bearer YOUR_API_KEY"
List Completed Scans for a Project
curl -X GET "https://api.blocksecops.com/api/v1/scans?project_id=abc123&status=completed&first=20" \
-H "Authorization: Bearer YOUR_API_KEY"