Hotels API
v1.0 • REST • JSON
Full CRUD management for hotel accounts. Create, retrieve, update, and delete hotel records with built-in pagination and role-based access control support.
Quick Reference
/api/hotels
200 OK
Get All Hotels
Retrieves a paginated list of all hotels in the system. Use the page
and limit query parameters to navigate large result sets.
The response envelope includes total count and page metadata.
| Parameter | Type | Default | Description |
|---|---|---|---|
page |
integer | 1 |
Page number, 1-based index |
limit |
integer | 10 |
Number of records per page |
/api/hotels/{id}
200 OK
Get Single Hotel
Fetch the full profile for a specific hotel using their numeric ID. Returns all hotel fields including assigned role names and account metadata.
| Parameter | Type | Required | Description |
|---|---|---|---|
id |
integer | Required | Unique hotel identifier |
/api/hotels/{id}
404 Not Found
Hotel Not Found
Returned when the requested hotel ID does not exist in the system. Use this example to test error-handling logic and build graceful fallback UI for missing hotel resources.
/api/hotels
201 Created
Create Hotel
Registers a new hotel with the provided details. On success, returns the newly created hotel object including the auto-generated ID, timestamp, and resolved role names.
| Field | Type | Required | Description |
|---|---|---|---|
name |
string | Required | Name |
description |
string | Optional | Description |
city |
string | Required | City |
country |
string | Required | Country |
starRating |
integer | Required | Star rating |
nightlyRate |
decimal | Required | Nightly rate |
availableRooms |
integer | Required | Available rooms |
amenities |
string | Required | Amenities |
/api/hotels/{id}
200 OK
Update Hotel
Fully replaces an existing hotel's data with the values in the request body. A successful update returns 200 OK with response body.
| Field | Type | Required | Description |
|---|---|---|---|
name |
string | Required | Name |
description |
string | Optional | Description |
city |
string | Required | City |
country |
string | Required | Country |
starRating |
integer | Required | Star rating |
nightlyRate |
decimal | Required | Nightly rate |
availableRooms |
integer | Required | Available rooms |
amenities |
string | Required | Amenities |
/api/hotels/{id}
204 No Content
Delete Hotel
Permanently removes a hotel from the system by their ID. This action is irreversible once deleted, the hotel record and all associated data cannot be recovered through the API.
| Parameter | Type | Required | Description |
|---|---|---|---|
id |
integer | Required | ID of the hotel to delete |