Bulk Registration Orchestrator
API Contract
REST
/api/v1/bulk-registrations
7 endpoints
GET
/api/v1/bulk-registrations/api/v1/bulk-registrations
List all bulk registration batches
Public
Response Example
{
"data": [
{
"batch_id": "batch-0042",
"coordinator_id": "coord-119",
"total_items": 15,
"completed": 13,
"failed": 2,
"status": "partial",
"submitted_at": "2026-03-25T08:00:00Z"
}
],
"pagination": {
"page": 1,
"limit": 20,
"total": 7
}
}
GET
/api/v1/bulk-registrations/api/v1/bulk-registrations/:batch_id
Get bulk submission status and item details
Public
Response Example
{
"batch_id": "batch-0042",
"coordinator_id": "coord-119",
"status": "partial",
"total_items": 15,
"completed": 13,
"failed": 2,
"items": [
{
"item_id": "item-001",
"mentor_id": "mentor-482",
"activity_type": "peer_session",
"activity_date": "2026-03-24",
"status": "success",
"activity_id": "pa-011"
},
{
"item_id": "item-014",
"mentor_id": "mentor-590",
"activity_type": "workshop",
"activity_date": "2026-03-24",
"status": "failed",
"error": "Duplicate activity on this date"
}
],
"submitted_at": "2026-03-25T08:00:00Z",
"completed_at": "2026-03-25T08:02:14Z"
}
POST
/api/v1/bulk-registrations/api/v1/bulk-registrations
Submit a bulk proxy registration batch
Public
Request Example
{
"coordinator_id": "coord-119",
"items": [
{
"mentor_id": "mentor-482",
"activity_type": "peer_session",
"activity_date": "2026-03-25",
"duration_minutes": 60,
"notes": "Monday group session"
},
{
"mentor_id": "mentor-510",
"activity_type": "peer_session",
"activity_date": "2026-03-25",
"duration_minutes": 60,
"notes": "Monday group session"
}
]
}
Response Example
{
"batch_id": "batch-0043",
"coordinator_id": "coord-119",
"status": "processing",
"total_items": 2,
"submitted_at": "2026-03-26T10:00:00Z"
}
PUT
/api/v1/bulk-registrations/api/v1/bulk-registrations/:batch_id
Update batch metadata (e.g. cancel or re-label)
Public
Request Example
{
"status": "cancelled",
"cancellation_reason": "Incorrect mentor list uploaded"
}
Response Example
{
"batch_id": "batch-0043",
"status": "cancelled",
"updated_at": "2026-03-26T10:05:00Z"
}
DELETE
/api/v1/bulk-registrations/api/v1/bulk-registrations/:batch_id
Delete a bulk registration batch record
Public
Response Example
{
"success": true,
"deleted_batch_id": "batch-0043"
}
POST
/api/v1/bulk-registrations/api/v1/bulk-registrations/:batch_id/retry
Retry all failed items in a batch
Public
Response Example
{
"batch_id": "batch-0042",
"retried_items": 2,
"status": "processing",
"retry_started_at": "2026-03-26T10:10:00Z"
}
POST
/api/v1/bulk-registrations/api/v1/bulk-registrations/:batch_id/cancel
Cancel all pending items in a batch
Public
Response Example
{
"batch_id": "batch-0042",
"cancelled_items": 3,
"status": "cancelled",
"cancelled_at": "2026-03-26T10:15:00Z"
}