Elation Health · OpenAPI Overlay 1.0.0
API Evangelist conversational phrasing for Elation Health Appointments API
24 actions
24 updates
phrasing
extends
openapi/elation-health-appointments-api-openapi.yml
Generated by API Evangelist
Written by API Evangelist tooling for Elation Health's API. It is a proposal applied on top of the contract, not a document Elation Health publishes.
What the actions change
x-apievangelist-phrasing
Targets 24 · first 16 shown; the file carries all of them
$.info
$.paths['/appointments/{id}/'].get
$.paths['/appointments/{id}/'].put
$.paths['/appointments/{id}/'].delete
$.paths['/appointments/{id}/'].patch
$.paths['/appointments/'].get
$.paths['/appointments/'].post
$.paths['/appointments/rooms'].get
$.paths['/appointments/id/'].put
$.paths['/appointments/id/'].patch
$.paths['/appointments/slots/'].options
$.paths['/appointments/ [WIP]'].get
$.paths['/appointments/ [WIP]'].post
$.paths['/appointments/{id}/ [WIP]'].put
$.paths['/appointments/{id}/ [WIP]'].patch
$.paths['/appointments/[WIP]'].post
OpenAPI Overlay
# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand.
overlay: 1.0.0
info:
title: API Evangelist conversational phrasing for Elation Health Appointments API
version: 1.0.0
extends: openapi/elation-health-appointments-api-openapi.yml
actions:
- target: $.info
update:
x-apievangelist-phrasing:
method: generated
generated: '2026-09-26'
generator: build-phrasing.py
label: Generated by API Evangelist
operations: 23
- target: $.paths['/appointments/{id}/'].get
update:
x-apievangelist-phrasing:
intent: Look up a calendar event (legacy endpoint)
effect: read
questions:
- How do I pull up one scheduled event by its id on the legacy appointments path?
- What does the original unversioned appointments endpoint return for a single event?
instructions:
- text: Fetch legacy calendar event {id}.
slots:
id: path.id
- text: Show me event {id} from the old appointments endpoint.
slots:
id: path.id
method: generated
generated: '2026-09-26'
- target: $.paths['/appointments/{id}/'].put
update:
x-apievangelist-phrasing:
intent: Replace a calendar event (legacy PUT)
effect: write
questions:
- Can I overwrite an entire event record through the legacy appointments PUT?
- Which legacy call does a full replacement of a scheduled event?
instructions:
- text: Replace event {id} in full via the legacy PUT endpoint.
slots:
id: path.id
- text: Overwrite every field of legacy event {id}.
slots:
id: path.id
method: generated
generated: '2026-09-26'
- target: $.paths['/appointments/{id}/'].delete
update:
x-apievangelist-phrasing:
intent: Delete a calendar event (legacy endpoint)
effect: destructive
questions:
- How do I remove a scheduled event using the legacy appointments API?
- Can I take an event off the calendar with the old unversioned endpoint?
instructions:
- text: Delete legacy event {id}.
slots:
id: path.id
- text: Remove event {id} from the calendar using the original endpoint.
slots:
id: path.id
method: generated
generated: '2026-09-26'
- target: $.paths['/appointments/{id}/'].patch
update:
x-apievangelist-phrasing:
intent: Patch a calendar event (legacy PATCH)
effect: write
questions:
- Can I change just part of an event with the legacy PATCH call?
- What legacy endpoint edits a few fields on an existing event?
instructions:
- text: Patch a few fields on legacy event {id}.
slots:
id: path.id
- text: Apply a partial edit to event {id} through the old PATCH route.
slots:
id: path.id
method: generated
generated: '2026-09-26'
- target: $.paths['/appointments/'].get
update:
x-apievangelist-phrasing:
intent: Find calendar events by slot type (legacy)
effect: read
questions:
- How can I search the calendar for events of one time slot type?
- Can I narrow the legacy event search to one physician and a date window?
instructions:
- text: Find {time_slot_type} events for physician {physician} between {from_date} and {to_date}.
slots:
time_slot_type: query.time_slot_type
physician: query.physician
from_date: query.from_date
to_date: query.to_date
- text: Search legacy calendar events with slot type {time_slot_type}.
slots:
time_slot_type: query.time_slot_type
method: generated
generated: '2026-09-26'
- target: $.paths['/appointments/'].post
update:
x-apievangelist-phrasing:
intent: Book a calendar event (legacy endpoint)
effect: write
questions:
- How do I schedule a patient event with a physician through the legacy appointments API?
- Which fields must I send to create an event on the old unversioned endpoint?
instructions:
- text: Schedule a legacy event for patient {patient} with physician {physician} at practice {practice} on {scheduled_date} for {reason}, slot type {time_slot_type}.
slots:
patient: requestBody.patient
physician: requestBody.physician
practice: requestBody.practice
scheduled_date: requestBody.scheduled_date
reason: requestBody.reason
time_slot_type: requestBody.time_slot_type
- text: Create an old-style {time_slot_type} event on {scheduled_date} for patient {patient}.
slots:
time_slot_type: requestBody.time_slot_type
scheduled_date: requestBody.scheduled_date
patient: requestBody.patient
method: generated
generated: '2026-09-26'
- target: $.paths['/appointments/rooms'].get
update:
x-apievangelist-phrasing:
intent: List appointment rooms for a practice
effect: read
questions:
- Which exam rooms can appointments be booked into at my practice?
- Can I see the rooms configured for scheduling?
instructions:
- text: List appointment rooms for practice {practice}.
slots:
practice: query.practice
- text: Show every bookable appointment room.
method: generated
generated: '2026-09-26'
- target: $.paths['/appointments/id/'].put
update:
x-apievangelist-phrasing:
intent: Replace an appointment slot
effect: write
questions:
- How do I fully replace an appointment slot record?
- Which call overwrites a whole appointment slot at once?
instructions:
- text: Replace appointment slot {id}.
slots:
id: path.id
- text: Overwrite slot {id} with new slot details.
slots:
id: path.id
method: generated
generated: '2026-09-26'
- target: $.paths['/appointments/id/'].patch
update:
x-apievangelist-phrasing:
intent: Assign a patient to an appointment slot
effect: write
questions:
- Can I put a patient into an open appointment slot?
- What does patching an appointment slot require?
instructions:
- text: Fill the appointment slot with patient {patient}.
slots:
patient: requestBody.patient
- text: Patch the open slot so it holds patient {patient}.
slots:
patient: requestBody.patient
method: generated
generated: '2026-09-26'
- target: $.paths['/appointments/slots/'].options
update:
x-apievangelist-phrasing:
intent: Create an appointment slot
effect: write
questions:
- How do I open a new appointment slot on the schedule?
- Can I add bookable slots through the slots endpoint?
instructions:
- text: Create a new appointment slot.
- text: Add an open slot to the schedule.
method: generated
generated: '2026-09-26'
- target: $.paths['/appointments/ [WIP]'].get
update:
x-apievangelist-phrasing:
intent: Find calendar events (WIP draft endpoint)
effect: read
questions:
- Is there a work-in-progress version of the event search?
- What does the WIP find-events endpoint filter on?
instructions:
- text: Run the WIP event search for slot type {time_slot_type}.
slots:
time_slot_type: query.time_slot_type
- text: Use the draft WIP finder to list {time_slot_type} events from {from_date}.
slots:
time_slot_type: query.time_slot_type
from_date: query.from_date
method: generated
generated: '2026-09-26'
- target: $.paths['/appointments/ [WIP]'].post
update:
x-apievangelist-phrasing:
intent: Book a calendar event (WIP draft endpoint)
effect: write
questions:
- Is there a WIP version of event creation I can test against?
- What does the work-in-progress create-event call need?
instructions:
- text: Create a WIP event for patient {patient} with physician {physician} on {scheduled_date}, slot type {time_slot_type}.
slots:
patient: requestBody.patient
physician: requestBody.physician
scheduled_date: requestBody.scheduled_date
time_slot_type: requestBody.time_slot_type
- text: Use the draft WIP endpoint to book {reason} at practice {practice}.
slots:
reason: requestBody.reason
practice: requestBody.practice
method: generated
generated: '2026-09-26'
- target: $.paths['/appointments/{id}/ [WIP]'].put
update:
x-apievangelist-phrasing:
intent: Replace an event (WIP draft PUT)
effect: write
questions:
- Can the WIP endpoint overwrite a whole event?
- Which WIP call replaces every field of an event?
instructions:
- text: Replace WIP event {id} with date {scheduled_date} and reason {reason}.
slots:
id: path.id
scheduled_date: requestBody.scheduled_date
reason: requestBody.reason
- text: Fully rewrite event {id} through the WIP PUT.
slots:
id: path.id
method: generated
generated: '2026-09-26'
- target: $.paths['/appointments/{id}/ [WIP]'].patch
update:
x-apievangelist-phrasing:
intent: Patch an event (WIP draft PATCH)
effect: write
questions:
- Can I move just the date of an event using the WIP PATCH?
- Does the WIP event PATCH accept a single changed field?
instructions:
- text: Reschedule WIP event {id} to {scheduled_date}.
slots:
id: path.id
scheduled_date: requestBody.scheduled_date
- text: Change the duration of event {id} to {duration} with the WIP PATCH.
slots:
id: path.id
duration: requestBody.duration
method: generated
generated: '2026-09-26'
- target: $.paths['/appointments/[WIP]'].post
update:
x-apievangelist-phrasing:
intent: Create an appointment with status (WIP)
effect: write
questions:
- Can I set an appointment's status and billing details when creating it in the WIP API?
- Which WIP endpoint creates an appointment with metadata attached?
instructions:
- text: Create a WIP appointment for patient {patient} with physician {physician} on {scheduled_date} with status {status}.
slots:
patient: requestBody.patient
physician: requestBody.physician
scheduled_date: requestBody.scheduled_date
status: requestBody.status
- text: Draft-create an appointment at practice {practice} for {reason} with metadata {metadata}.
slots:
practice: requestBody.practice
reason: requestBody.reason
metadata: requestBody.metadata
method: generated
generated: '2026-09-26'
- target: $.paths['/appointments/{id}/ [WIP]'].put
update:
x-apievangelist-phrasing:
intent: Replace an appointment (WIP PUT)
effect: write
questions:
- How do I replace an appointment including its billing details via the WIP API?
- Is there a WIP full-replace for appointments that includes status?
instructions:
- text: Replace WIP appointment {id} with status {status} and date {scheduled_date}.
slots:
id: path.id
status: requestBody.status
scheduled_date: requestBody.scheduled_date
- text: Rewrite appointment {id} including billing details {billing_details} via the WIP PUT.
slots:
id: path.id
billing_details: requestBody.billing_details
method: generated
generated: '2026-09-26'
- target: $.paths['/appointments/{id}/ [WIP]'].patch
update:
x-apievangelist-phrasing:
intent: Patch an appointment's status (WIP)
effect: write
questions:
- Can I change only an appointment's status with the WIP PATCH?
- What WIP call edits an appointment's metadata without resending the rest?
instructions:
- text: Set the status of WIP appointment {id} to {status}.
slots:
id: path.id
status: requestBody.status
- text: Patch metadata {metadata} onto appointment {id} through the WIP route.
slots:
id: path.id
metadata: requestBody.metadata
method: generated
generated: '2026-09-26'
- target: $.paths['/api/2.0/appointments/'].get
update:
x-apievangelist-phrasing:
intent: List appointments with filters
effect: read
questions:
- How do I list a patient's appointments in Elation?
- Can I filter appointments by physician, practice and a date range?
- Is the appointment list paginated with limit and offset?
instructions:
- text: List appointments for patient {patient} from {from_date} to {to_date}.
slots:
patient: query.patient
from_date: query.from_date
to_date: query.to_date
- text: Show physician {physician}'s appointments ordered by {order_by}.
slots:
physician: query.physician
order_by: query.order_by
method: generated
generated: '2026-09-26'
- target: $.paths['/api/2.0/appointments/'].post
update:
x-apievangelist-phrasing:
intent: Schedule a new appointment
effect: write
questions:
- What do I need to book a patient appointment through API v2?
- Can I create a telehealth appointment with a specific appointment type?
instructions:
- text: Book patient {patient} with physician {physician} at practice {practice} on {scheduled_date}.
slots:
patient: requestBody.patient
physician: requestBody.physician
practice: requestBody.practice
scheduled_date: requestBody.scheduled_date
- text: Create a telehealth appointment of type {appointment_type_id} for patient {patient} on {scheduled_date}.
slots:
appointment_type_id: requestBody.appointment_type_id
patient: requestBody.patient
scheduled_date: requestBody.scheduled_date
method: generated
generated: '2026-09-26'
- target: $.paths['/api/2.0/appointments/{id}/'].get
update:
x-apievangelist-phrasing:
intent: Get one appointment's details
effect: read
questions:
- How do I get the full details of one appointment?
- What does a single appointment record include in v2?
instructions:
- text: Get appointment {id}.
slots:
id: path.id
- text: Retrieve the v2 appointment record {id}.
slots:
id: path.id
method: generated
generated: '2026-09-26'
- target: $.paths['/api/2.0/appointments/{id}/'].put
update:
x-apievangelist-phrasing:
intent: Replace an appointment record
effect: write
questions:
- Can I replace an entire appointment record in v2?
- Which v2 call overwrites all appointment fields at once?
instructions:
- text: Replace appointment {id} with a new date {scheduled_date} for patient {patient}.
slots:
id: path.id
scheduled_date: requestBody.scheduled_date
patient: requestBody.patient
- text: Overwrite v2 appointment {id} in full.
slots:
id: path.id
method: generated
generated: '2026-09-26'
- target: $.paths['/api/2.0/appointments/{id}/'].delete
update:
x-apievangelist-phrasing:
intent: Delete an appointment
effect: destructive
questions:
- How do I delete an appointment in v2?
- Can a booked appointment be removed through the API?
instructions:
- text: Delete appointment {id}.
slots:
id: path.id
- text: Remove v2 appointment {id} from the schedule.
slots:
id: path.id
method: generated
generated: '2026-09-26'
- target: $.paths['/api/2.0/appointments/{id}/'].patch
update:
x-apievangelist-phrasing:
intent: Reschedule or edit part of an appointment
effect: write
questions:
- Can I reschedule an appointment by changing just its date?
- Where do I update only an appointment's status in v2?
instructions:
- text: Move appointment {id} to {scheduled_date}.
slots:
id: path.id
scheduled_date: requestBody.scheduled_date
- text: Set v2 appointment {id} status to {status}.
slots:
id: path.id
status: requestBody.status
method: generated
generated: '2026-09-26'
Work with this as data
Every overlay here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for openapi overlays
4 MCP tools reach this
find_overlaysBrowse and filter every overlay in the catalog.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
This overlay
curl "https://apis.io/api/v1/overlays/elation-health-appointments-api-phrasing-overlay"
All openapi overlays
curl "https://apis.io/api/v1/overlays?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.