Scans API
Maintained by: Aether365 Team Audience: Developers Scope: Scan API endpoints - triggering and listing scans
List Scans
Returns a paginated list of scans for the authenticated tenant.
GET /tenants/{tenantId}/scansQuery Parameters
| Parameter | Type | Description |
|---|---|---|
page | integer | Page number (default: 1) |
limit | integer | Results per page (default: 20, max: 100) |
status | string | Filter by status: in_progress, completed, failed |
scan_type | string | Filter by type: compliance, exposure |
Example Request
bash
curl https://api.aether365.io/tenants/t_abc123/scans \
-H "Authorization: Bearer <token>"Example Response
json
{
"success": true,
"data": [
{
"id": "scan_abc123",
"tenant_id": "t_abc123",
"scan_type": "compliance",
"status": "completed",
"started_at": "2026-04-09T00:00:00Z",
"completed_at": "2026-04-09T00:14:23Z",
"pass_count": 87,
"fail_count": 12,
"skip_count": 5,
"score": 87.9
}
],
"meta": {
"total": 24,
"page": 1,
"limit": 20
}
}Get Scan
Returns details of a single scan.
GET /scans/{scanId}Example Request
bash
curl https://api.aether365.io/scans/scan_abc123 \
-H "Authorization: Bearer <token>"Example Response
json
{
"success": true,
"data": {
"id": "scan_abc123",
"tenant_id": "t_abc123",
"scan_type": "compliance",
"status": "completed",
"started_at": "2026-04-09T00:00:00Z",
"completed_at": "2026-04-09T00:14:23Z",
"pass_count": 87,
"fail_count": 12,
"skip_count": 5,
"score": 87.9
}
}Trigger a Scan
Starts a scan immediately for the specified tenant.
POST /tenants/{tenantId}/scansRequest Body
json
{
"scan_type": "compliance"
}| Field | Type | Required | Values |
|---|---|---|---|
scan_type | string | Yes | compliance, exposure |
Example Request
bash
curl -X POST https://api.aether365.io/tenants/t_abc123/scans \
-H "Authorization: Bearer <token>" \
-H "Content-Type: application/json" \
-d '{"scan_type": "compliance"}'Example Response
json
{
"success": true,
"data": {
"id": "scan_xyz789",
"tenant_id": "t_abc123",
"scan_type": "compliance",
"status": "in_progress",
"started_at": "2026-04-09T10:32:00Z",
"completed_at": null,
"pass_count": null,
"fail_count": null,
"skip_count": null,
"score": null
}
}Errors
| Code | HTTP | Description |
|---|---|---|
SCAN_ALREADY_RUNNING | 409 | A scan of this type is already in progress for this tenant |
TENANT_NOT_CONNECTED | 400 | Microsoft consent has not been completed for this tenant |
SCAN_PLAN_LIMIT_REACHED | 429 | Scan quota exhausted for the current billing period |