Proxy Audit Logger
API Contract
REST
/api/v1/proxy-audit-logs
6 endpoints
GET
/api/v1/proxy-audit-logs/api/v1/proxy-audit-logs
List audit log entries
Public
Response Example
{
"data": [
{
"id": "log-001",
"action": "proxy_created",
"coordinator_id": "coord-119",
"mentor_id": "mentor-482",
"activity_id": "pa-001",
"timestamp": "2026-03-20T09:00:00Z"
},
{
"id": "log-002",
"action": "bulk_submission",
"coordinator_id": "coord-119",
"batch_id": "batch-0042",
"mentor_ids": [
"mentor-482",
"mentor-510"
],
"timestamp": "2026-03-25T08:00:00Z"
}
],
"pagination": {
"page": 1,
"limit": 20,
"total": 310
}
}
GET
/api/v1/proxy-audit-logs/api/v1/proxy-audit-logs/:id
Get a specific audit log entry
Public
Response Example
{
"id": "log-001",
"action": "proxy_created",
"coordinator_id": "coord-119",
"mentor_id": "mentor-482",
"activity_id": "pa-001",
"changes": null,
"timestamp": "2026-03-20T09:00:00Z",
"ip_address": "192.168.1.42",
"user_agent": "EircodexApp/2.1 Android"
}
POST
/api/v1/proxy-audit-logs/api/v1/proxy-audit-logs
Create an audit log entry (internal/system use)
Public
Request Example
{
"action": "proxy_created",
"coordinator_id": "coord-119",
"mentor_id": "mentor-482",
"activity_id": "pa-005"
}
Response Example
{
"id": "log-099",
"action": "proxy_created",
"coordinator_id": "coord-119",
"mentor_id": "mentor-482",
"activity_id": "pa-005",
"timestamp": "2026-03-26T10:30:00Z"
}
PUT
/api/v1/proxy-audit-logs/api/v1/proxy-audit-logs/:id
Annotate an audit log entry (admin correction only)
Public
Request Example
{
"annotation": "Reviewed by compliance officer on 2026-03-26",
"reviewed_by": "admin-007"
}
Response Example
{
"id": "log-001",
"annotation": "Reviewed by compliance officer on 2026-03-26",
"reviewed_by": "admin-007",
"updated_at": "2026-03-26T11:00:00Z"
}
DELETE
/api/v1/proxy-audit-logs/api/v1/proxy-audit-logs/:id
Delete an audit log entry (admin/compliance only)
Public
Response Example
{
"success": true,
"deleted_id": "log-001"
}
GET
/api/v1/proxy-audit-logs/api/v1/proxy-audit-logs/by-coordinator/:coordinator_id
Get all audit logs for a coordinator
Public
Response Example
{
"data": [
{
"id": "log-001",
"action": "proxy_created",
"mentor_id": "mentor-482",
"activity_id": "pa-001",
"timestamp": "2026-03-20T09:00:00Z"
}
],
"pagination": {
"page": 1,
"limit": 20,
"total": 88
}
}