Welcome to the official documentation for the Smart Parking System. This system is built to optimize urban parking through efficient, location-based booking of parking spaces — with a cash-only payment model.
-
Download and Install App
- Available on Android (via Play Store or APK).
- iOS support is under development.
-
Create Account / Login
- Provide a valid email and phone number.
- Secure your account with a strong password.
-
View Nearby Parking Lots
- Map-based UI with location filtering.
- View real-time availability of parking spots.
-
Search and Filter
- Search by city, area, street.
- Filter based on security level, price per hour, etc.
-
Book a Spot
- Select a parking spot from the available list.
- Booking is recorded with status
PENDING. - System provides duration, cost, and cash payment instructions.
-
Cash Payment Process
- User pays to the on-site parking attendant.
- After payment, user confirms it in the app.
- Status updates to
CONFIRMEDand a receipt is generated.
-
Cancel or Modify Booking
- Allowed before confirmation.
-
View Booking History
- Complete log of past and current bookings.
- SUPER_ADMIN: System-wide access to manage users, parking lots, and reports.
- SPOT_ADMIN: Limited access to manage specific parking lots and view spot-level reports.
-
Manage Users
- View list of all users.
- Activate/deactivate accounts.
-
Manage Parking Lots
- Add/edit/delete lots.
- Assign regions, cities, areas, and streets.
- View capacity and spot status.
-
Spot Management
- Add/edit parking spots.
- Monitor availability and maintenance status.
-
Reports
- Booking frequency.
- Occupancy rates.
- User activity logs.
-
Notification Management
- Send alerts and messages to users.
Base URL:
https://api.smartparking.app/v1
POST /auth/login– LoginPOST /auth/refresh– Refresh Token
All protected endpoints require a Bearer token.
POST /users/register– RegisterGET /users/me– Get ProfilePATCH /users/me– Update Profile
GET /parking-lots– List AllGET /parking-lots/:id– Get DetailsPOST /parking-lots– Create (Admin only)PATCH /parking-lots/:id– UpdateDELETE /parking-lots/:id– Delete
GET /parking-lots/:id/spots– List by LotGET /spots/:id/status– Spot StatusPATCH /spots/:id– Update (Admin only)
-
POST /bookings– Create{ "parkingLotId": "uuid", "parkingSpotId": "uuid", "startTime": "ISO8601", "hours": 2, "paymentMethod": "CASH" } -
GET /bookings/me– List My Bookings -
PATCH /bookings/:id/confirm– Confirm Cash Payment -
DELETE /bookings/:id– Cancel Booking
GET /admin/reports– System ReportGET /admin/reports/occupancy– Occupancy by LotGET /admin/reports/users– User Activity
- All dates and times must be in ISO 8601 format.
- All UUIDs follow RFC4122 standards.
- Authentication tokens expire after 1 hour by default.
For bug reports, feature requests, or technical assistance:
- Email:
[email protected] - GitHub Issues: SmartParking Issues
© 2025 Smart Parking Corp. All Rights Reserved.