# 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 Reports API version: 1.0.0 extends: openapi/elation-health-reports-api-openapi.yml actions: - target: $.info update: x-apievangelist-phrasing: method: generated generated: '2026-10-01' generator: build-phrasing.py label: Generated by API Evangelist operations: 17 - target: $.paths['/reports/{id}/'].get update: x-apievangelist-phrasing: intent: Look up a report (legacy endpoint) effect: read questions: - Can I pull a single lab or imaging report by id from the older unversioned reports path? - What does the legacy reports endpoint return for one report? instructions: - text: Fetch legacy report {id}. slots: id: path.id - text: Open report {id} using the original unversioned reports route. slots: id: path.id method: generated generated: '2026-09-26' - target: $.paths['/reports/{id}/'].delete update: x-apievangelist-phrasing: intent: Delete a report (legacy endpoint) effect: destructive questions: - Is there a way to remove a report from a chart through the old unversioned API? - Which legacy call deletes a report by its id? instructions: - text: Delete legacy report {id}. slots: id: path.id - text: Remove report {id} via the original reports endpoint. slots: id: path.id method: generated generated: '2026-09-26' - target: $.paths['/reports/{id}/'].patch update: x-apievangelist-phrasing: intent: Sign off on a report (legacy endpoint) effect: write questions: - How do I mark a lab report as signed by a physician on the legacy path? - What do I send to record who signed a report and when, using the old endpoint? instructions: - text: Sign legacy report {id} as user {signed_by} on {signed_date}. slots: id: path.id signed_by: requestBody.signed_by signed_date: requestBody.signed_date - text: Record physician {signed_by} as the signer of report {id} through the old sign call. slots: signed_by: requestBody.signed_by id: path.id method: generated generated: '2026-09-26' - target: $.paths['/reports/'].get update: x-apievangelist-phrasing: intent: Search reports by patient and date (legacy) effect: read questions: - Can I search the legacy reports list for one patient's results within a document date window? - Which old endpoint finds reports reported after a given date? instructions: - text: Find legacy reports for patient {patient} with a document date on or after {document_date__gte}. slots: patient: query.patient document_date__gte: query.document_date__gte - text: Search the original reports route for practice {practice} reported before {reported_date__lt}. slots: practice: query.practice reported_date__lt: query.reported_date__lt method: generated generated: '2026-09-26' - target: $.paths['/reports/'].post update: x-apievangelist-phrasing: intent: File a new report to a chart (legacy) effect: write questions: - What fields must I supply to file a lab result report with the legacy create call? - Can I attach grids of results and files when creating a report on the old endpoint? instructions: - text: Create a legacy {report_type} report for patient {patient} by physician {physician} at practice {practice}, document date {document_date}. slots: report_type: requestBody.report_type patient: requestBody.patient physician: requestBody.physician practice: requestBody.practice document_date: requestBody.document_date - text: File a report titled {custom_title} for patient {patient} charted on {chart_date} through the old reports route. slots: custom_title: requestBody.custom_title patient: requestBody.patient chart_date: requestBody.chart_date method: generated generated: '2026-09-26' - target: $.paths['/reports/{id}/printable'].get update: x-apievangelist-phrasing: intent: Download a report as a printable PDF (legacy) effect: read questions: - Can I get a PDF of a lab report to print from the legacy printable link? - Does the old printable report view let me choose a print header? instructions: - text: Download the legacy printable PDF for report {report_id}. slots: report_id: path.report_id - text: Print report {report} with print header {print_header} from the original printable route. slots: report: path.id print_header: query.print_header method: generated generated: '2026-10-01' - target: $.paths['/api/2.0/reports/'].get update: x-apievangelist-phrasing: intent: List reports with date filters and paging effect: read questions: - How do I list a patient's lab and imaging reports in Elation? - Can I sort v2.0 reports and page through them with limit and offset? - Which reports were reported within a given date range for my practice? instructions: - text: List v2.0 reports for patient {patient}, {limit} at a time. slots: patient: query.patient limit: query.limit - text: Show reports at practice {practice} reported between {reported_date__gte} and {reported_date__lte}, ordered by {order_by}. slots: practice: query.practice reported_date__gte: query.reported_date__gte reported_date__lte: query.reported_date__lte order_by: query.order_by method: generated generated: '2026-09-26' - target: $.paths['/api/2.0/reports/'].post update: x-apievangelist-phrasing: intent: Create a report in a patient chart effect: write questions: - What's required to add a new report to a patient's chart through API v2.0? - Can I flag a newly created report as urgent and tag it? instructions: - text: Create a {report_type} report for patient {patient} from physician {physician} at practice {practice}, dated {document_date}. slots: report_type: requestBody.report_type patient: requestBody.patient physician: requestBody.physician practice: requestBody.practice document_date: requestBody.document_date - text: Add a v2.0 report with requisition number {requisition_number} from vendor {vendor} for patient {patient}. slots: requisition_number: requestBody.requisition_number vendor: requestBody.vendor patient: requestBody.patient method: generated generated: '2026-09-26' - target: $.paths['/api/2.0/reports/{id}/'].get update: x-apievangelist-phrasing: intent: Get one report's details effect: read questions: - What does a single report record include in API v2.0? - Can I check whether a specific report has been signed yet? instructions: - text: Retrieve v2.0 report {id}. slots: id: path.id - text: Show me the details and signing status of report {id}. slots: id: path.id method: generated generated: '2026-09-26' - target: $.paths['/api/2.0/reports/{id}/'].put update: x-apievangelist-phrasing: intent: Replace a report's signing and urgency fields effect: write questions: - Which v2.0 call does a full PUT replacement of a report? - Can I overwrite a report's urgent flag and signer in one request? instructions: - text: Replace report {id} setting urgent to {is_urgent}, signer {signed_by} and signed date {signed_date}. slots: id: path.id is_urgent: requestBody.is_urgent signed_by: requestBody.signed_by signed_date: requestBody.signed_date - text: Do a full PUT update on report {id}. slots: id: path.id method: generated generated: '2026-09-26' - target: $.paths['/api/2.0/reports/{id}/'].delete update: x-apievangelist-phrasing: intent: Delete a report effect: destructive questions: - Can I delete a report that was filed to the wrong chart using API v2.0? - What happens when I remove a report through the current reports API? instructions: - text: Delete v2.0 report {id}. slots: id: path.id - text: Permanently take report {id} off the chart. slots: id: path.id method: generated generated: '2026-09-26' - target: $.paths['/api/2.0/reports/{id}/'].patch update: x-apievangelist-phrasing: intent: Mark a report urgent or signed effect: write questions: - Can I flag just one report as urgent without resending everything? - Is there a partial PATCH to sign a report in v2.0? instructions: - text: Flag report {id} as urgent. slots: id: path.id - text: Patch report {id} so it is signed by {signed_by} on {signed_date}. slots: id: path.id signed_by: requestBody.signed_by signed_date: requestBody.signed_date method: generated generated: '2026-09-26' - target: $.paths['/api/2.0/reports/{id}/delegates/'].post update: x-apievangelist-phrasing: intent: Delegate a report to a user or staff group effect: write questions: - How do I route a report to a colleague or staff group for review? - Can a report be delegated to both a user and a group at once? instructions: - text: Delegate report {id} to user {user}. slots: id: path.id user: requestBody.user - text: Assign staff group {group} as the delegate on report {id}. slots: group: requestBody.group id: path.id method: generated generated: '2026-09-26' - target: $.paths['/api/2.0/reports/{id}/delegates/'].delete update: x-apievangelist-phrasing: intent: Remove delegates from a report effect: destructive questions: - Can I take someone off as a delegate on a report? - Is removing report delegates a soft delete, and can I remove several at once? instructions: - text: Remove the delegates from report {id}. slots: id: path.id - text: Soft-delete the listed delegate ids on report {id}. slots: id: path.id method: generated generated: '2026-09-26' - target: $.paths['/api/2.0/reports/{id}/files/'].get update: x-apievangelist-phrasing: intent: List files attached to a report effect: read questions: - Which files are attached to a given report? - Where can I see the documents uploaded with a lab report? instructions: - text: List the files on report {id}. slots: id: path.id - text: Show every attachment for report {id}. slots: id: path.id method: generated generated: '2026-09-26' - target: $.paths['/api/2.0/reports/{id}/files/{file_id}/'].get update: x-apievangelist-phrasing: intent: Get one file attached to a report effect: read questions: - Can I fetch a single attachment from a report by its file id? - What metadata comes back for one report file? instructions: - text: Get file {file_id} from report {id}. slots: file_id: path.file_id id: path.id - text: Download attachment {file_id} on report {id}. slots: file_id: path.file_id id: path.id method: generated generated: '2026-09-26' - target: $.paths['/api/2.0/reports/{id}/printable/'].get update: x-apievangelist-phrasing: intent: Get a printable view of a report effect: read questions: - Is there a v2.0 endpoint that renders a report ready for printing? - Can I apply a custom print header when printing a report? instructions: - text: Get the v2.0 printable view of report {id}. slots: id: path.id - text: Render report {id} for printing using header {print_header}. slots: id: path.id print_header: query.print_header method: generated generated: '2026-09-26'