Elation Health Visit Notes API
Clinical encounter documentation
Documentation
Documentation
https://docs.elationhealth.com/reference/api-overview
Authentication
https://docs.elationhealth.com/reference/oauth
Clinical encounter documentation
openapi: 3.0.3
info:
title: Elation Health REST Allergies Visit Notes API
description: RESTful API for Elation's primary care EHR platform enabling management of patient profiles, visit notes, clinical documents, problems, allergies, immunizations, vitals, medications, lab orders, imaging orders, referrals, appointments, insurance, billing, pharmacy, messaging, and practice administration. Supports OAuth2 client credentials authentication with both sandbox and production environments.
version: '2.0'
contact:
name: Elation Health Developer Support
url: https://docs.elationhealth.com/reference/api-overview
termsOfService: https://www.elationhealth.com/
servers:
- url: https://app.elationemr.com/api/2.0
description: Production
- url: https://sandbox.elationemr.com/api/2.0
description: Sandbox
security:
- oauth2: []
tags:
- name: Visit Notes
description: Clinical encounter documentation
paths:
/visit_notes/:
get:
operationId: visit_notes_list
summary: List visit notes
description: Retrieve a paginated list of visit notes.
tags:
- Visit Notes
parameters:
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/offset'
- name: patient
in: query
schema:
type: integer
description: Filter by patient ID
- name: physician
in: query
schema:
type: integer
description: Filter by physician ID
responses:
'200':
description: Paginated list of visit notes
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedVisitNoteList'
post:
operationId: visit_notes_create
summary: Create a visit note
description: Create a new clinical visit note.
tags:
- Visit Notes
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/VisitNoteCreate'
responses:
'201':
description: Visit note created
content:
application/json:
schema:
$ref: '#/components/schemas/VisitNote'
/visit_notes/{id}/:
get:
operationId: visit_notes_retrieve
summary: Retrieve a visit note
description: Get details for a specific visit note.
tags:
- Visit Notes
parameters:
- $ref: '#/components/parameters/id'
responses:
'200':
description: Visit note details
content:
application/json:
schema:
$ref: '#/components/schemas/VisitNote'
put:
operationId: visit_notes_update
summary: Update a visit note
description: Replace all visit note fields with the provided values.
tags:
- Visit Notes
parameters:
- $ref: '#/components/parameters/id'
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/VisitNoteCreate'
responses:
'200':
description: Visit note updated
content:
application/json:
schema:
$ref: '#/components/schemas/VisitNote'
patch:
operationId: visit_notes_partial_update
summary: Partially update a visit note
description: Update one or more visit note fields.
tags:
- Visit Notes
parameters:
- $ref: '#/components/parameters/id'
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/VisitNoteCreate'
responses:
'200':
description: Visit note updated
content:
application/json:
schema:
$ref: '#/components/schemas/VisitNote'
delete:
operationId: visit_notes_destroy
summary: Delete a visit note
description: Soft-delete a visit note.
tags:
- Visit Notes
parameters:
- $ref: '#/components/parameters/id'
responses:
'204':
description: Visit note deleted
components:
schemas:
VisitNote:
allOf:
- $ref: '#/components/schemas/VisitNoteCreate'
- type: object
properties:
id:
type: integer
format: int64
readOnly: true
checklists:
type: object
description: PE and ROS checklist items
edits:
type: array
readOnly: true
items:
type: object
signatures:
type: array
readOnly: true
items:
type: object
signed_date:
type: string
format: date-time
nullable: true
signed_by:
type: integer
nullable: true
amendment_request:
type: object
nullable: true
created_date:
type: string
format: date-time
readOnly: true
last_modified:
type: string
format: date-time
readOnly: true
deleted_date:
type: string
format: date-time
nullable: true
readOnly: true
clinical_summary_link:
type: string
format: uri
readOnly: true
visit_summary_link:
type: string
format: uri
readOnly: true
VisitNoteCreate:
type: object
required:
- patient
- physician
- practice
- document_date
- chart_date
- template
properties:
patient:
type: integer
format: int64
description: Patient ID
physician:
type: integer
format: int64
description: Clinician ID
practice:
type: integer
format: int64
description: Practice ID
document_date:
type: string
format: date-time
description: Clinical service date
chart_date:
type: string
format: date-time
description: Date entry was recorded in chart
template:
type: string
enum:
- Simple
- SOAP
- Complete H&P
- Pre-Op
description: Document structure format
type:
type: string
maxLength: 50
description: Visit note classification
bullets:
type: array
description: Clinical bullet points organized by category
items:
type: object
properties:
category:
type: string
text:
type: string
maxLength: 500
confidential:
type: boolean
description: Privacy flag for sensitive content
tags:
type: array
items:
type: string
PaginatedVisitNoteList:
allOf:
- $ref: '#/components/schemas/PaginationMeta'
- type: object
properties:
results:
type: array
items:
$ref: '#/components/schemas/VisitNote'
PaginationMeta:
type: object
properties:
count:
type: integer
description: Total number of results
next:
type: string
nullable: true
description: URL for next page
previous:
type: string
nullable: true
description: URL for previous page
parameters:
offset:
name: offset
in: query
schema:
type: integer
default: 0
description: Pagination offset
id:
name: id
in: path
required: true
schema:
type: integer
description: Unique resource identifier
limit:
name: limit
in: query
schema:
type: integer
default: 25
description: Number of results to return
securitySchemes:
oauth2:
type: oauth2
flows:
clientCredentials:
tokenUrl: https://sandbox.elationemr.com/api/2.0/oauth2/token/
scopes:
apiv2: Full API access