Appointments API
v1.0 • REST • JSON
Full CRUD management for appointment accounts. Create, retrieve, update, and delete appointment records with built-in pagination and role-based access control support.
Quick Reference
/api/appointments
200 OK
Get All Appointments
Retrieves a paginated list of all appointments 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/appointments/{id}
200 OK
Get Single Appointment
Fetch the full profile for a specific appointment using their numeric ID. Returns all appointment fields including assigned role names and account metadata.
| Parameter | Type | Required | Description |
|---|---|---|---|
id |
integer | Required | Unique appointment identifier |
/api/appointments/{id}
404 Not Found
Appointment Not Found
Returned when the requested appointment ID does not exist in the system. Use this example to test error-handling logic and build graceful fallback UI for missing appointment resources.
{}
/api/appointments
201 Created
Create Appointment
Registers a new appointment with the provided details. On success, returns the newly created appointment object  including the auto-generated ID, timestamp, and resolved role names.
| Field | Type | Required | Description |
|---|---|---|---|
firstName |
string | Required | Appointment's given name |
lastName |
string | Required | Appointment'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 |
/api/appointments/{id}
200 OK
Update Appointment
Fully replaces an existing appointment's data with the values in the request body. A successful update returns 200 OK with response body.
| Field | Type | Required | Description |
|---|---|---|---|
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) |
/api/appointments/{id}
204 No Content
Delete Appointment
Permanently removes a appointment from the system by their ID. This action is irreversible  once deleted, the appointment record and all associated data cannot be recovered through the API.
| Parameter | Type | Required | Description |
|---|---|---|---|
id |
integer | Required | ID of the appointment to delete |
{}