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"
}

Additional Metadata

{
  "contract_summary": {
    "total_contracts": 410,
    "total_endpoints": 2416,
    "api_styles_used": [
      "rest"
    ]
  },
  "generated_at": "2026-03-26T06:55:53.316Z"
}