Implemented:
GET /GET /health
Planned API routers are commented in backend/src/main.py and should be implemented before frontend work depends on them.
- Use JSON responses.
- Include stable IDs for all entities.
- Include
operating_modefor mode-sensitive resources. - Include
correlation_idon workflow-changing operations. - Validation failures return structured errors with machine-readable code and human-readable message.
- Autonomous execution endpoints must expose validation and risk results.
Dashboard:
GET /api/dashboard/readinessGET /api/dashboard/activity?limit=50GET /api/dashboard/metricsGET /api/dashboard/disaster-overview
Resources:
GET /api/inventoryPOST /api/inventoryPATCH /api/inventory/{batch_id}POST /api/inventory/{batch_id}/cancel
Requests and needs:
GET /api/requestsPOST /api/requestsPATCH /api/requests/{request_id}POST /api/requests/{request_id}/cancelGET /api/disasters/{disaster_id}/needsPOST /api/disasters/{disaster_id}/needs
Volunteers:
GET /api/volunteersPOST /api/volunteersPATCH /api/volunteers/{volunteer_id}PUT /api/volunteers/{volunteer_id}/availabilityPOST /api/volunteers/{volunteer_id}/cancel-task
Disasters:
GET /api/disastersPOST /api/disastersGET /api/disasters/{disaster_id}PATCH /api/disasters/{disaster_id}POST /api/disasters/{disaster_id}/resolvePOST /api/disasters/{disaster_id}/dispatch
Volunteer alerts:
GET /api/alertsGET /api/alerts/{alert_id}POST /api/alerts/{alert_id}/acceptPOST /api/alerts/{alert_id}/declinePOST /api/alerts/{alert_id}/timeout
Tasks and plans:
POST /api/tasks/generateGET /api/tasksGET /api/tasks/{task_id}PATCH /api/tasks/{task_id}/statusPOST /api/tasks/{task_id}/validatePOST /api/tasks/{task_id}/recoverGET /api/plans/currentPOST /api/plans/generate
Disruptions:
GET /api/disruptionsPOST /api/disruptions/injectGET /api/disruptions/{event_id}POST /api/disruptions/{event_id}/recover
Decisions:
GET /api/decisions/pendingGET /api/decisions/{decision_id}POST /api/decisions/{decision_id}/approvePOST /api/decisions/{decision_id}/rejectPOST /api/decisions/{decision_id}/hold
Audit:
GET /api/auditGET /api/audit/{correlation_id}
Evaluation:
POST /api/evaluations/runGET /api/evaluations/{run_id}GET /api/evaluations/latest
Settings/Policies:
GET /api/settings/policiesPUT /api/settings/policies
Volunteer alert response includes:
alert_iddisaster_iddisaster_locationapproximate_distanceurgencytask_categoryassistance_requiredexpires_atstatus
Accept request marks the volunteer eligible only. It must not directly assign final task.
Pending decision response must include:
decision_idoperating_moderisk_classificationtriggering_eventresponsible_agenttools_calledevidencevalidation_resultsrecommendationalternativesexpires_atstatus
RED decision behavior:
- API may record acknowledgement or manual-resolution notes.
- API must not expose an endpoint path that converts RED into autonomous execution.