Skip to main content

Create Driver Review

Passengers can rate and review drivers after completing a trip.
curl -X POST "https://api.masareagles.com/api/trips/{tripId}/driver-review" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -d '{
    "driverId": "drv_xyz789",
    "passengerId": "psng_abc123",
    "rating": 5,
    "comment": "Excellent driver, very professional and punctual"
  }'

Endpoint

method
string
required
POST
url
string
required
/api/trips/{tripId}/driver-review
tripId
string
required
Trip identifier

Request Body

driverId
string
required
Driver identifier being reviewed
passengerId
string
required
Passenger identifier submitting the review
rating
integer
required
Rating from 1 to 5 stars
comment
string
Optional review comment

Response

success
boolean
Indicates if review was created successfully
message
string
Success or error message in Arabic
reviewId
string
Unique review identifier
rating
decimal
The submitted rating
averageRating
decimal
Driver’s updated average rating
totalReviews
integer
Driver’s total review count
{
  "success": true,
  "message": "تم إضافة التقييم بنجاح",
  "reviewId": "rev_abc123xyz",
  "rating": 5,
  "averageRating": 4.8,
  "totalReviews": 128
}

Create Passenger Review

Drivers can rate and review passengers after completing a trip.
curl -X POST "https://api.masareagles.com/api/trips/{tripId}/passenger-review" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -d '{
    "driverId": "drv_xyz789",
    "passengerId": "psng_abc123",
    "rating": 5,
    "comment": "Great passenger, on time and respectful"
  }'

Endpoint

method
string
required
POST
url
string
required
/api/trips/{tripId}/passenger-review
tripId
string
required
Trip identifier

Request Body

driverId
string
required
Driver identifier submitting the review
passengerId
string
required
Passenger identifier being reviewed
rating
integer
required
Rating from 1 to 5 stars
comment
string
Optional review comment

Response

success
boolean
Indicates if review was created successfully
message
string
Success or error message
reviewId
string
Unique review identifier
driverId
string
Driver who submitted the review
passengerId
string
Passenger who was reviewed
tripId
string
Associated trip identifier
rating
decimal
The submitted rating
averageRating
decimal
Passenger’s updated average rating
totalReviews
integer
Passenger’s total review count
{
  "success": true,
  "message": "تم إضافة التقييم بنجاح",
  "reviewId": "rev_def456",
  "driverId": "drv_xyz789",
  "passengerId": "psng_abc123",
  "tripId": "trip_ghi789",
  "rating": 5,
  "averageRating": 4.9,
  "totalReviews": 45
}

Create Company Review

Passengers can rate and review transportation companies after using their services.
curl -X POST "https://api.masareagles.com/api/trips/{tripId}/company-review" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -d '{
    "tripType": "CompanyTrip",
    "passengerId": "psng_abc123",
    "rating": 4,
    "comment": "Good service, comfortable vehicle"
  }'

Endpoint

method
string
required
POST
url
string
required
/api/trips/{tripId}/company-review
tripId
string
required
Trip identifier

Request Body

tripType
string
required
Trip type: “CompanyTrip” or “CompanyPublicTrip”
passengerId
string
required
Passenger identifier submitting the review
rating
integer
required
Rating from 1 to 5 stars
comment
string
Optional review comment

Response

success
boolean
Indicates if review was created successfully
message
string
Success or error message
reviewId
string
Unique review identifier
rating
decimal
The submitted rating
averageRating
decimal
Company’s updated average rating
totalReviews
integer
Company’s total review count
{
  "success": true,
  "message": "تم إضافة التقييم بنجاح",
  "reviewId": "rev_comp789",
  "rating": 4,
  "averageRating": 4.6,
  "totalReviews": 543
}

Get Driver Reviews

Retrieve all reviews for a specific driver with optional pagination.
curl -X GET "https://api.masareagles.com/api/drivers/{driverId}/reviews" \
  -H "Authorization: Bearer YOUR_TOKEN"

Endpoint

method
string
required
GET
url
string
required
/api/drivers/{driverId}/reviews
driverId
string
required
Driver identifier

Query Parameters

page
integer
Page number for pagination (default: 1)
pageSize
integer
Number of results per page (default: 20)

Response

success
boolean
Indicates if request succeeded
message
string
Result message
reviews
array
Array of review objects
totalReviews
integer
Total number of reviews
averageRating
decimal
Driver’s average rating
ratingDistribution
object
Breakdown of ratings by star count
page
integer
Current page number
pageSize
integer
Results per page
{
  "success": true,
  "message": "تم جلب التقييمات بنجاح",
  "reviews": [
    {
      "id": "rev_abc123",
      "tripId": "trip_xyz789",
      "passengerId": "psng_def456",
      "passengerName": "Sara Al-Mutairi",
      "passengerImage": "https://cdn.example.com/passengers/sara.jpg",
      "rating": 5,
      "comment": "Excellent driver, very professional and punctual",
      "createdAtUtc": "2026-03-09T14:30:00Z"
    },
    {
      "id": "rev_def456",
      "tripId": "trip_abc123",
      "passengerId": "psng_ghi789",
      "passengerName": "Ahmed Al-Salem",
      "passengerImage": "https://cdn.example.com/passengers/ahmed.jpg",
      "rating": 4,
      "comment": "Good trip, comfortable ride",
      "createdAtUtc": "2026-03-08T10:15:00Z"
    }
  ],
  "totalReviews": 128,
  "averageRating": 4.8,
  "ratingDistribution": {
    "fiveStars": 98,
    "fourStars": 22,
    "threeStars": 5,
    "twoStars": 2,
    "oneStar": 1
  },
  "page": 1,
  "pageSize": 10
}

Get Passenger Reviews

Retrieve all reviews for a specific passenger.
curl -X GET "https://api.masareagles.com/api/passengers/{passengerId}/reviews?page=1&pageSize=10" \
  -H "Authorization: Bearer YOUR_TOKEN"

Endpoint

method
string
required
GET
url
string
required
/api/passengers/{passengerId}/reviews
passengerId
string
required
Passenger identifier

Query Parameters

page
integer
Page number (default: 1)
pageSize
integer
Results per page (default: 20)

Response

Same structure as Get Driver Reviews, but with driver information instead of passenger information.

Get Company Reviews

Retrieve all reviews for a specific company.
curl -X GET "https://api.masareagles.com/api/companies/{companyId}/reviews?page=1&pageSize=20" \
  -H "Authorization: Bearer YOUR_TOKEN"

Endpoint

method
string
required
GET
url
string
required
/api/companies/{companyId}/reviews
companyId
string
required
Company identifier

Query Parameters

page
integer
Page number
pageSize
integer
Results per page

Response

reviews
array
Array of company review objects with passenger information
totalReviews
integer
Total review count
averageRating
decimal
Company’s average rating
ratingDistribution
object
Rating breakdown by star count
{
  "reviews": [
    {
      "id": "rev_comp123",
      "tripId": "comptrip_abc",
      "passengerId": "psng_xyz",
      "passengerName": "Fatima Al-Harbi",
      "rating": 5,
      "comment": "Excellent service, professional drivers",
      "createdAtUtc": "2026-03-09T16:20:00Z"
    }
  ],
  "totalReviews": 543,
  "averageRating": 4.6,
  "ratingDistribution": {
    "fiveStars": 412,
    "fourStars": 98,
    "threeStars": 23,
    "twoStars": 7,
    "oneStar": 3
  },
  "page": 1,
  "pageSize": 20
}

Delete Review

Delete a review (admin or review author only).
curl -X DELETE "https://api.masareagles.com/api/driver-reviews/{reviewId}" \
  -H "Authorization: Bearer YOUR_TOKEN"

Endpoints

  • /api/driver-reviews/{reviewId} - Delete driver review
  • /api/passenger-reviews/{reviewId} - Delete passenger review
  • /api/company-reviews/{reviewId} - Delete company review

Response

success
boolean
Indicates if deletion succeeded
message
string
Result message
{
  "success": true,
  "message": "تم حذف التقييم بنجاح"
}

Build docs developers (and LLMs) love