REST /api/v1/mentor-statuses 10 endpoints
GET /api/v1/mentor-statuses/api/v1/mentor-statuses

List all mentor statuses

Public

Response Example

{
  "data": [
    {
      "mentor_id": "mentor-001",
      "status": "active",
      "is_paused": false,
      "pause_start_date": null,
      "expected_return_date": null,
      "last_updated": "2026-03-20T10:00:00Z"
    },
    {
      "mentor_id": "mentor-042",
      "status": "paused",
      "is_paused": true,
      "pause_start_date": "2026-03-01T00:00:00Z",
      "expected_return_date": "2026-04-01T00:00:00Z",
      "last_updated": "2026-03-01T09:15:00Z"
    }
  ],
  "pagination": {
    "page": 1,
    "limit": 20,
    "total": 87
  }
}
GET /api/v1/mentor-statuses/api/v1/mentor-statuses/:mentorId

Get current status for a specific mentor

Public

Response Example

{
  "mentor_id": "mentor-042",
  "status": "paused",
  "is_paused": true,
  "pause_start_date": "2026-03-01T00:00:00Z",
  "expected_return_date": "2026-04-01T00:00:00Z",
  "pause_reason": "certification_expiry",
  "last_updated": "2026-03-01T09:15:00Z"
}
POST /api/v1/mentor-statuses/api/v1/mentor-statuses

Create a new mentor status record

Public

Request Example

{
  "mentor_id": "mentor-099",
  "status": "active",
  "is_paused": false
}

Response Example

{
  "mentor_id": "mentor-099",
  "status": "active",
  "is_paused": false,
  "pause_start_date": null,
  "expected_return_date": null,
  "last_updated": "2026-03-26T08:00:00Z"
}
PUT /api/v1/mentor-statuses/api/v1/mentor-statuses/:mentorId

Update mentor status and metadata

Public

Request Example

{
  "status": "paused",
  "is_paused": true,
  "pause_start_date": "2026-03-26T00:00:00Z",
  "expected_return_date": "2026-05-01T00:00:00Z",
  "pause_reason": "personal_leave",
  "metadata": {
    "initiated_by": "coordinator-007",
    "notes": "Mentor requested leave"
  }
}

Response Example

{
  "mentor_id": "mentor-042",
  "status": "paused",
  "is_paused": true,
  "pause_start_date": "2026-03-26T00:00:00Z",
  "expected_return_date": "2026-05-01T00:00:00Z",
  "last_updated": "2026-03-26T08:30:00Z"
}
DELETE /api/v1/mentor-statuses/api/v1/mentor-statuses/:mentorId

Delete a mentor status record

Public

Response Example

{
  "deleted": true,
  "mentor_id": "mentor-099"
}
GET /api/v1/mentor-statuses/api/v1/pause-records

List all pause records

Public

Response Example

{
  "data": [
    {
      "pause_record_id": "pause-rec-0018",
      "mentor_id": "mentor-042",
      "start_date": "2026-03-01T00:00:00Z",
      "expected_return_date": "2026-04-01T00:00:00Z",
      "end_date": null,
      "is_active": true,
      "reason": "certification_expiry"
    }
  ],
  "pagination": {
    "page": 1,
    "limit": 20,
    "total": 34
  }
}
GET /api/v1/mentor-statuses/api/v1/pause-records/:id

Get a specific pause record

Public

Response Example

{
  "pause_record_id": "pause-rec-0018",
  "mentor_id": "mentor-042",
  "start_date": "2026-03-01T00:00:00Z",
  "expected_return_date": "2026-04-01T00:00:00Z",
  "end_date": null,
  "is_active": true,
  "reason": "certification_expiry",
  "created_at": "2026-03-01T09:15:00Z"
}
POST /api/v1/mentor-statuses/api/v1/pause-records

Create a new pause record for a mentor

Public

Request Example

{
  "mentor_id": "mentor-042",
  "start_date": "2026-03-26T00:00:00Z",
  "expected_return_date": "2026-05-01T00:00:00Z",
  "reason": "personal_leave"
}

Response Example

{
  "pause_record_id": "pause-rec-0019",
  "mentor_id": "mentor-042",
  "start_date": "2026-03-26T00:00:00Z",
  "expected_return_date": "2026-05-01T00:00:00Z",
  "end_date": null,
  "is_active": true,
  "reason": "personal_leave",
  "created_at": "2026-03-26T08:30:00Z"
}
PUT /api/v1/mentor-statuses/api/v1/pause-records/:id

Close or update a pause record

Public

Request Example

{
  "end_date": "2026-04-15T00:00:00Z",
  "is_active": false
}

Response Example

{
  "pause_record_id": "pause-rec-0018",
  "mentor_id": "mentor-042",
  "start_date": "2026-03-01T00:00:00Z",
  "expected_return_date": "2026-04-01T00:00:00Z",
  "end_date": "2026-04-15T00:00:00Z",
  "is_active": false
}
DELETE /api/v1/mentor-statuses/api/v1/pause-records/:id

Delete a pause record

Public

Response Example

{
  "deleted": true,
  "pause_record_id": "pause-rec-0018"
}

Additional Metadata

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