Overview
The Drivers API provides comprehensive endpoints for managing driver profiles, registration workflows, document verification, and status management. All authenticated endpoints require a valid JWT token.Authentication
All endpoints exceptGet Driver by ID require authentication. Include the JWT token in the Authorization header:
List Drivers
Retrieve a paginated list of all drivers with search functionality. Admin only.Query Parameters
Page number for pagination
Number of items per page (max 100)
Search by phone number or full name
Include soft-deleted drivers in results
Response
List of driver summaries
Total number of drivers matching criteria
Current page number
Items per page
Total number of pages
Example Request
Example Response
Get Driver by ID
Retrieve detailed information about a specific driver including vehicles and verification status. Public endpoint.Path Parameters
Driver unique identifier
Query Parameters
Include soft-deleted driver data
Response
Driver unique identifier
Driver’s phone number
Driver’s full name
Driver’s date of birth
URL to profile picture
URL to identity document
URL to driving license
Phone verification status
Profile completion status
Registration completion status
Active status
Last login timestamp
Number of vehicles
List of driver’s vehicles
Average rating from reviews
Total number of reviews
Verification status:
Pending, Approved, Rejected, UnderReviewDefault currency for driver
Whether driver has a wallet
Soft delete status
Example Request
Get Driver Profile
Get comprehensive profile information for the authenticated driver including vehicles, verification progress, and currency settings.Response
Driver ID
Phone number
Full name
Date of birth (YYYY-MM-DD)
Profile picture URL
Identity document URL
Driving license URL
Phone verification status
Profile completion status
Active status
Number of vehicles
List of vehicles with details
Overall rating
Total reviews count
Current verification status
Profile completion progress (0-100)
Verification status for each profile field
Default currency ID
Display currency ID
Whether driver needs to select currency
Example Request
Complete/Update Driver Profile
Complete or update driver profile with personal information and document uploads. Supports multipart/form-data for file uploads.Request Body (Form Data)
Driver’s full name (2-100 characters)
Date of birth (driver must be 18-70 years old)
Identity document image (JPEG, PNG, PDF - max 10MB)
Driving license image (JPEG, PNG, PDF - max 10MB)
Set to true to delete existing identity document
Set to true to delete existing driving license
Response
Driver ID
Updated full name
Updated date of birth
URL to identity document
URL to driving license
Profile completion status
Success message
Current verification status
Profile completion progress percentage
Status of each profile field
Example Request
Update Driver Status
Update a driver’s active/inactive status. Accessible by admins and the driver themselves.Path Parameters
Driver unique identifier
Query Parameters
Set driver active status (true/false)
Example Request
Delete Driver
Soft delete a driver and all associated vehicles. Admin only.Path Parameters
Driver unique identifier
Response
Success message confirming deletion
Example Request
Example Response
Submit Profile for Review
Submit driver profile for admin review after completing all required fields.Example Request
Get Driver Wallet
Get wallet information for the authenticated driver.Example Request
Update Default Currency
Update the driver’s default currency for transactions.Request Body
Currency identifier (e.g., “SAR”, “USD”)
Example Request
Get Driver Company
Get the company associated with a driver.Path Parameters
Driver unique identifier
Example Request
Error Responses
All endpoints may return the following error responses:Error message in Arabic or English
Common Error Codes
400 Bad Request- Invalid request parameters or validation errors401 Unauthorized- Missing or invalid authentication token403 Forbidden- Insufficient permissions404 Not Found- Driver not found500 Internal Server Error- Server error