Lot Availability API – Vendor Integration Guide
Note: The Bearer Token and the full Endpoint URL will be provided to you separately.
1. Overview
This API allows vendors to retrieve the latest lot availability and related occupancy details for a specific carpark.
The endpoint uses POST and requires a valid Bearer Token in the Authorization header.
2. Authentication
Header Format:
Authorization: Bearer <API_KEY>
3. Endpoint Details
HTTP Method: POST
Endpoint URL:
/api/pms/lot-availability
4. Request
Headers:
- Authorization (required): Bearer abc123xyz
- Content-Type (required): application/json
Request Body:
{
"carparkCode": "CP001"
}
5. Response
Success Response (200):
{
"request_date_time": "2025-02-27T10:15:30+08:00",
"total_lots": 500,
"total_parked": 380,
"season": 200,
"hourly": 180,
"lot_availability": 120
}
Response Field Description
| Field |
Type |
Description |
| request_date_time |
string |
Timestamp (ISO format) of when the request was processed. |
| total_lots |
number |
Total number of physical parking lots in the carpark. |
| total_parked |
number |
Total number of currently occupied lots. |
| season |
number |
Number of lots currently occupied by season holders. |
| hourly |
number |
Number of lots currently occupied by hourly parking. |
| lot_availability |
number |
Total available lots, calculated as total_lots - total_parked. |
6. Error Responses
401 - Missing Token:
{
"statusCode": 401,
"message": "Authorization header is missing",
"error": "Unauthorized",
"timestamp": "2025-11-28T04:18:14.863Z"
}
401 - Invalid Token:
{
"statusCode": 401,
"message": "Invalid API key",
"error": "Unauthorized",
"timestamp": "2025-11-28T04:23:22.765Z"
}
400 - Invalid Request:
{
"statusCode": 400,
"message": [
"carparkCode should not be empty"
],
"error": "Bad Request",
"timestamp": "2025-11-28T04:17:47.187Z"
}
404 - Carpark Not Found:
{
"statusCode": 500,
"message": "Error : Error: Configuration not found for Carpark: 111",
"error": "Internal Server Error",
"timestamp": "2025-11-28T04:16:47.147Z"
}