Bookings API

v1.0 • REST • JSON

Full CRUD management for booking accounts. Create, retrieve, update, and delete booking records with built-in pagination and role-based access control support.

GET POST PUT DELETE 5 Endpoints Auth Required
Base URL https://bogusapi.com/api/bookings
GET /api/bookings 200 OK

Get All Bookings

Retrieves a paginated list of all bookings in the system. Use the page and limit query parameters to navigate large result sets. The response envelope includes total count and page metadata.

Query Parameters
ParameterTypeDefaultDescription
page integer 1 Page number, 1-based index
limit integer 10 Number of records per page
Response: 200 OK
GET /api/bookings/{id} 200 OK

Get Single Booking

Fetch the full profile for a specific booking using their numeric ID. Returns all booking fields including assigned role names and account metadata.

Path Parameters
ParameterTypeRequiredDescription
id integer Required Unique booking identifier
Response: 200 OK
GET /api/bookings/{id} 404 Not Found

Booking Not Found

Returned when the requested booking ID does not exist in the system. Use this example to test error-handling logic and build graceful fallback UI for missing booking resources.

Response: 404 Not Found
{}
POST /api/bookings 201 Created

Create Booking

Registers a new booking with the provided details. On success, returns the newly created booking object — including the auto-generated ID, timestamp, and resolved role names.

Request Body
FieldTypeRequiredDescription
firstName string Required Booking's given name
lastName string Required Booking's family name
email string Required Unique email address
password string Required Plaintext password for the account
roleIds integer[] Optional IDs of roles to assign on creation
Body
Response: 201 Created
PUT /api/bookings/{id} 200 OK

Update Booking

Fully replaces an existing booking's data with the values in the request body. A successful update returns 200 OK with response body.

Request Body
FieldTypeRequiredDescription
firstName string Required Updated first name
lastName string Required Updated last name
email string Required Updated email address
roleIds integer[] Optional New role assignment (replaces existing)
Body
Response: 200 OK
DELETE /api/bookings/{id} 204 No Content

Delete Booking

Permanently removes a booking from the system by their ID. This action is irreversible — once deleted, the booking record and all associated data cannot be recovered through the API.

Path Parameters
ParameterTypeRequiredDescription
id integer Required ID of the booking to delete
Response: 204 No Content
{}