Get Appointment¶
Retrieve the details of a single appointment by its appointment ID.
Endpoint¶
Path Parameters¶
| Parameter | Type | Required | Description |
|---|---|---|---|
appointment_id |
integer | Yes | The unique identifier of the appointment |
Query Parameters¶
| Parameter | Type | Required | Description |
|---|---|---|---|
checkInCheckOutDetails |
boolean | No | When true, includes check-in/check-out location and coordinate details in the response |
Request¶
curl --location '{base_url}/apis/v1/appointment/2245423' \
--header 'Authorization: Bearer JWT_TOKEN'
Response¶
Success Response¶
Code: 200 OK
{
"code": 2000,
"message": "Success",
"data": {
"appointment_id": 2245423,
"doctor": {
"doctor_id": 239,
"first_name": "ADMIN",
"last_name": "",
"email": "t@spryhealth.care"
},
"patient": {
"patient_id": 538748,
"first_name": "Jane",
"last_name": "Doe"
},
"clinic": {
"clinic_id": 18,
"name": "Spry Main Clinic"
},
"type": "IN_CLINIC",
"category": [
{
"category_id": 14,
"name": "Evaluation"
}
],
"date_time": "2026-01-10T10:05:13",
"end_date_time": "2026-01-10T11:05:13",
"status": "CONFIRMED",
"payment_mode": "INSURANCE_PAY",
"spry_case_id": "SPRY_CASE_694937120fde6014d5956f69",
"tele_health_url": null,
"comments": "",
"appointment_notes": null,
"insurance_card": null,
"created_at": "2026-01-05T09:12:00",
"updated_at": null
}
}
Success Response — Cancelled Appointment¶
Code: 200 OK
{
"code": 2000,
"message": "Success",
"data": {
"appointment_id": 2245423,
"doctor": {
"doctor_id": 239,
"first_name": "ADMIN",
"last_name": "",
"email": "t@spryhealth.care"
},
"patient": {
"patient_id": 538748,
"first_name": "Jane",
"last_name": "Doe"
},
"clinic": {
"clinic_id": 18,
"name": "Spry Main Clinic"
},
"type": "IN_CLINIC",
"date_time": "2026-01-10T10:05:13",
"end_date_time": "2026-01-10T11:05:13",
"status": "CANCELLED",
"payment_mode": "SELF_PAY",
"spry_case_id": "SPRY_CASE_694937120fde6014d5956f69",
"cancellation_reason": "Patient Request",
"cancellation_reason_comment": "Patient called to reschedule",
"cancelled_at": "2026-01-08T14:30:00",
"cancellation_date": "2026-01-08T14:30:00",
"cancelled_appointment_dto": {
"cancellation_id": 8821,
"cancellation_reason": "Patient Request",
"cancellation_reason_comment": "Patient called to reschedule",
"cancellation_fee": 0.0,
"cancelled_at": "2026-01-08T14:30:00",
"cancellation_date": "2026-01-08T14:30:00",
"refund_applicable": true,
"refund_amount": 75.0
},
"created_at": "2026-01-05T09:12:00",
"updated_at": "2026-01-08T14:30:00"
}
}
Success Response — With checkInCheckOutDetails=true¶
Code: 200 OK
{
"code": 2000,
"message": "Success",
"data": {
"appointment_id": 2245423,
"doctor": {
"doctor_id": 239,
"first_name": "ADMIN",
"last_name": "",
"email": "t@spryhealth.care"
},
"patient": {
"patient_id": 538748,
"first_name": "Jane",
"last_name": "Doe"
},
"clinic": {
"clinic_id": 18,
"name": "Spry Main Clinic"
},
"type": "IN_CLINIC",
"status": "COMPLETED",
"payment_mode": "INSURANCE_PAY",
"date_time": "2026-01-10T10:05:13",
"end_date_time": "2026-01-10T11:05:13",
"checked_in_at_coordinates": {
"x": 12.9716,
"y": 77.5946
},
"checked_in_at_location": "Spry Main Clinic, Bangalore",
"checked_out_at_coordinates": {
"x": 12.9716,
"y": 77.5946
},
"checked_out_at_location": "Spry Main Clinic, Bangalore"
}
}
Response Fields¶
| Field | Type | Description |
|---|---|---|
appointment_id |
integer | Unique appointment identifier |
doctor |
object | Doctor assigned to the appointment |
patient |
object | Patient the appointment belongs to |
clinic |
object | Clinic where the appointment takes place |
type |
string | Appointment type (IN_CLINIC, TELEHEALTH) |
category |
array | Appointment category details |
date_time |
string | Appointment start time |
end_date_time |
string | Appointment end time |
status |
string | Appointment status (e.g. CONFIRMED, COMPLETED, CANCELLED) |
payment_mode |
string | Payment method (INSURANCE_PAY, SELF_PAY) |
spry_case_id |
string | Case the appointment is linked to, if any |
tele_health_url |
string/null | Telehealth session URL, if applicable |
comments |
string | Provider-facing notes or comments |
appointment_notes |
string/null | Additional notes attached to the appointment |
insurance_card |
object/null | Insurance card used for the appointment, if any |
created_at |
string | Timestamp the appointment was created |
updated_at |
string/null | Timestamp the appointment was last updated |
cancellation_reason |
string/null | Reason label for cancellation, present only when status is CANCELLED |
cancellation_reason_comment |
string/null | Additional comment provided at cancellation time |
cancelled_at |
string/null | Timestamp the appointment was cancelled |
cancellation_date |
string/null | Effective cancellation date |
cancelled_appointment_dto |
object/null | Full cancellation record, present only when status is CANCELLED (see Cancelled Appointment Object) |
checked_in_at_coordinates |
object | GPS coordinates at check-in (only when checkInCheckOutDetails=true) |
checked_in_at_location |
string | Location name at check-in (only when checkInCheckOutDetails=true) |
checked_out_at_coordinates |
object | GPS coordinates at check-out (only when checkInCheckOutDetails=true) |
checked_out_at_location |
string | Location name at check-out (only when checkInCheckOutDetails=true) |
Cancelled Appointment Object¶
| Field | Type | Description |
|---|---|---|
cancellation_id |
integer | Unique identifier of the cancellation record |
cancellation_reason |
string | Reason label for the cancellation |
cancellation_reason_comment |
string/null | Additional comment provided at cancellation time |
cancellation_fee |
number | Fee charged for the cancellation |
cancelled_at |
string | Timestamp the appointment was cancelled |
cancellation_date |
string | Effective cancellation date |
refund_applicable |
boolean | Whether a refund applies |
refund_amount |
number | Refund amount, if applicable |
Error Response¶
Code: 404 Not Found
Notes¶
- Omitting
checkInCheckOutDetails(or passingfalse) returns the standard appointment object without check-in/check-out fields. checked_in_at_coordinatesandchecked_out_at_coordinatesare only populated once the patient has been checked in/out at the appointment.cancellation_reason,cancellation_reason_comment,cancelled_at,cancellation_date, andcancelled_appointment_dtoare only populated whenstatusisCANCELLED; they arenullotherwise.
Related Endpoints¶
- List Appointments - Retrieve a paginated list of appointments
- Create Appointment - Create a new appointment
- Cancel Appointment - Cancel an existing appointment