Records that the patient did not attend an appointment in your organization. The appointment must have already started and be PENDING or CONFIRMED. No invoice is created and no package session is used. The patient is notified only when notifyPatient is true, using your clinic's missed-appointment notification settings (email, WhatsApp, SMS); by default nothing is sent to the patient. Marking an appointment that is already a no-show returns it unchanged, so retries are safe. Completed and cancelled appointments cannot be marked. Requires an API key with the write scope.
Code samples
Node.js
const fetch = require('node-fetch');
async function callApi() {
const apiKey = 'YOUR_API_KEY';
const url = `https://account.lunahealth.app/api/appointments/{id}/no-show`;
const requestBody = {
// Add your request body data here
};
try {
const response = await fetch(url, {
method: 'POST',
headers: {
'Authorization': `Bearer ${apiKey}`,
'Content-Type': 'application/json'
},
body: JSON.stringify(requestBody)
});
if (!response.ok) {
throw new Error(`API error: ${response.status}`);
}
const data = await response.json();
console.log(data);
return data;
} catch (error) {
console.error('Error calling API:', error);
throw error;
}
}
callApi();
Python
import requests
def call_api():
api_key = 'YOUR_API_KEY'
url = 'https://account.lunahealth.app/api/appointments/{id}/no-show'
headers = {
'Authorization': f'Bearer {api_key}',
'Content-Type': 'application/json'
}
params = {
}
# Add your request body data here
request_body = {}
try:
response = requests.post(
url,
headers=headers,
params=params,
json=request_body
)
response.raise_for_status()
data = response.json()
print(data)
return data
except requests.exceptions.RequestException as e:
print(f'Error calling API: {e}')
raise
call_api()
Parameters
Name
In
Type
Required
Description
id
path
string
Yes
ID of the appointment the patient missed
Request body
Required
Request fields
Name
Type
Required
Description
notifyPatient
boolean
No
Send the patient a missed-appointment message through your clinic's notification settings. Defaults to false.
Example request
{
"notifyPatient": true
}
Responses
Status
Description
200
Successful response
400
Invalid input data
401
Authorization not provided
403
Insufficient access
500
Internal server error
200 — Successful response
Response fields
Name
Type
Required
Description
id
string
Yes
—
status
string
Yes
—
type
string
Yes
—
title
stringnull
Yes
—
description
stringnull
Yes
—
start_time
string
Yes
—
end_time
string
Yes
—
telemedicine
boolean
Yes
—
video_call_type
string
Yes
Video platform of an online appointment: LUNAHEALTH, ZOOM or GOOGLE_MEET. NONE for in-person appointments, and for online ones where the clinic sends its own link