Review Management

Create and manage consultation reviews and ratings

POST
/reviews
Create Review
Create a new review for a consultation (only after completing a session)

Request Body

Request
{
  "entityType": "consultation_service",
  "entityId": "CON_123456",
  "rating": 5,
  "comment": "Excellent consultation! Very informative and professional."
}

Response

Response (200 OK)
{
  "data": {
    "reviewId": "rev_123456",
    "referenceId": "REV_123456",
    "entityType": "consultation_service",
    "entityId": "CON_123456",
    "rating": 5,
    "comment": "Excellent consultation!",
    "isActive": true,
    "createdAt": "2025-10-08T10:00:00Z"
  },
  "message": "Review created successfully",
  "success": true
}
GET
/reviews/by-entity
Get Reviews by Entity
Get all reviews for a specific consultation

Query Parameters

Query Parameters
entityType=consultation_service&entityId=CON_123456&page=1&limit=20

Response

Response (200 OK)
{
  "data": {
    "reviews": [
      {
        "id": "rev_123456",
        "referenceId": "REV_123456",
        "rating": 5,
        "comment": "Excellent consultation!",
        "reviewerName": "John Doe",
        "createdAt": "2025-10-08T10:00:00Z"
      }
    ],
    "averageRating": 4.8,
    "totalReviews": 25,
    "pagination": {
      "page": 1,
      "limit": 20,
      "total": 25
    }
  },
  "message": "Reviews retrieved successfully",
  "success": true
}
GET
/reviews/consultation/{id}/status
Check Review Status
Check if current user can review a specific consultation

Response

Response (200 OK)
{
  "data": {
    "canReview": true,
    "hasReviewed": false,
    "sessionCompleted": true,
    "consultationId": "CON_123456"
  },
  "message": "Review status retrieved",
  "success": true
}