Every API here is available over the APIs.io API and to AI agents over MCP.
openapi: 3.2.0
info:
title: Elation Health Handouts API
version: '1.0'
description: 'Operations tagged Handouts across 3 of this provider''s published API definitions: elation-api-settings.json, elation-health-api-full-openapi.yaml, elation-practice-api.json. Each path carries the servers of the definition it was published in.'
servers:
- url: https://sandbox.elationemr.com/api/2.0
- description: Sandbox Server
url: https://sandbox.elationemr.com
- description: Production Server
url: https://api.app.elationemr.com
tags:
- name: Handouts
paths:
/handouts/:
get:
summary: Find Handouts
description: ''
operationId: find-hangouts
parameters:
- name: Authorization
in: header
description: Bearer token
required: true
schema:
type: string
- name: practice_created
in: query
schema:
type: array
items:
type: integer
format: int64
- name: tags
in: query
schema:
type: array
items:
type: string
- name: name
in: query
schema:
type: array
items:
type: string
responses:
'200':
description: '200'
content:
application/json:
examples:
Result:
value: "{\n \"count\": 1,\n \"next\": null,\n \"previous\": null,\n \"results\": [\n {\n \"id\": 140758845882533,\n \"name\": \"Anthrax VIS55\",\n \"type\": \"VIS\",\n \"received_date\": \"2022-06-10T08:32:27Z\",\n \"practice_created\": 140758831005700,\n \"created_date\": \"2022-06-10T08:32:28Z\",\n \"deleted_date\": null,\n \"tags\": [\n \"tag1\",\n \"tag2\"\n ],\n \"content\": {\n \"content_type\": \"file/jpeg\",\n \"original_filename\": \"english.txt\"\n },\n \"vis_barcode\": null\n }\n ]\n}"
schema:
type: object
properties:
count:
type: integer
example: 1
default: 0
next: {}
previous: {}
results:
type: array
items:
type: object
properties:
id:
type: integer
example: 140758845882533
default: 0
name:
type: string
example: Anthrax VIS55
type:
type: string
example: VIS
received_date:
type: string
example: '2022-06-10T08:32:27Z'
practice_created:
type: integer
example: 140758831005700
default: 0
created_date:
type: string
example: '2022-06-10T08:32:28Z'
deleted_date: {}
tags:
type: array
items:
type: string
example: tag1
content:
type: object
properties:
content_type:
type: string
example: file/jpeg
original_filename:
type: string
example: english.txt
vis_barcode: {}
'400':
description: '400'
content:
application/json:
examples:
Result:
value: '{}'
schema:
type: object
properties: {}
deprecated: false
x-readme:
code-samples:
- language: python
code: "import requests\nimport json\n\naccess_token = \"VFroUHsmrErlVI6nJ08Alwhri5RGCW\"\nauth_header = f\"Bearer {access_token}\"\n\nresp = requests.get(\"https://sandbox.elationemr.com/api/2.0/handouts/\",\n headers={'Authorization': auth_header})\n\nprint resp.status_code\nprint json.dumps(json.loads(resp.content), indent=2)"
samples-languages:
- python
tags:
- Handouts
security:
- sec0: []
post:
summary: Create Handout
description: ''
operationId: create-hangout
parameters:
- name: Authorization
in: header
description: Bearer token
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
type: object
required:
- name
- type
- practice_created
- content
properties:
name:
type: string
description: Hangout name
type:
type: string
description: Type of hangout. Is it dowload from patient or VIS fully-encoded text string
enum:
- (1
- '"Patient Resource")'
- (2
- '"VIS")'
tags:
type: array
description: Tags
items:
properties:
value:
type: string
description: The tag name
required:
- value
type: object
vis_barcode:
type: string
description: Should only be set if the type == VIS
practice_created:
type: integer
format: int64
content:
type: object
description: Contain file fields
required:
- base64_content
- content_type
- original_filename
properties:
base64_content:
type: string
description: File data in Base64 format
content_type:
type: string
description: Type of file content(e.g text, pdf)
original_filename:
type: string
description: The file name
responses:
'201':
description: '201'
content:
application/json:
examples:
Result:
value: "{\n \"id\": 140758845882533,\n \"name\": \"Anthrax VIS55\",\n \"type\": \"VIS\",\n \"received_date\": \"2022-06-10T08:32:27Z\",\n \"practice_created\": 140758831005700,\n \"created_date\": \"2022-06-10T08:32:28Z\",\n \"deleted_date\": null,\n \"tags\": [\n \"tag1\",\n \"tag2\"\n ],\n \"content\": {\n \t// field base64_content no represent in the responce for Find Handouts\n \"base64_content\": \"aW1wb3J0IHB5cGVyY2xpcApmcm9tIGJldGxlLmNsaWVudHMgaW1wb3J0IGFwaXYyX2NsaWVudAoKIyBydW4gYmVoYXZlIGJldGxlL2ZlYXR1cmVzL2FwaV8yMC9tZWRpY2F0aW9ucy5mZWF0dXJlCgpweXBlcmNsaXAuY29weShhcGl2Ml9jbGllbnQuYWNjZXNzX3Rva2VuKQ==\",\n \"content_type\": \"file/jpeg\",\n \"original_filename\": \"english.txt\"\n },\n \"vis_barcode\": null\n}"
schema:
type: object
properties:
id:
type: integer
example: 140758845882533
default: 0
name:
type: string
example: Anthrax VIS55
type:
type: string
example: VIS
received_date:
type: string
example: '2022-06-10T08:32:27Z'
practice_created:
type: integer
example: 140758831005700
default: 0
created_date:
type: string
example: '2022-06-10T08:32:28Z'
deleted_date: {}
tags:
type: array
items:
type: string
example: tag1
content:
type: object
properties:
base64_content:
type: string
example: aW1wb3J0IHB5cGVyY2xpcApmcm9tIGJldGxlLmNsaWVudHMgaW1wb3J0IGFwaXYyX2NsaWVudAoKIyBydW4gYmVoYXZlIGJldGxlL2ZlYXR1cmVzL2FwaV8yMC9tZWRpY2F0aW9ucy5mZWF0dXJlCgpweXBlcmNsaXAuY29weShhcGl2Ml9jbGllbnQuYWNjZXNzX3Rva2VuKQ==
content_type:
type: string
example: file/jpeg
original_filename:
type: string
example: english.txt
vis_barcode: {}
'400':
description: '400'
content:
application/json:
examples:
Result:
value: '{}'
schema:
type: object
properties: {}
'413':
description: '413'
content:
text/plain:
examples:
Result:
value: Payload Too Large
deprecated: false
x-readme:
code-samples:
- language: python
code: "import requests\nimport json\n\naccess_token = \"TyEPKw8fVGRKpCBa81ygwjCLXDNIAm\"\nauth_header = \"Bearer %s\" % (access_token)\n\ndata = {\n \"name\": \"Anthrax VIS55\",\n \"type\": 1,\n \"practice_created\": 140758831005700,\n \n \"tags\": [\n {\n \"value\": \"tag3\"\n }\n ],\n \"content\": {\n \"content_type\": \"file/jpeg\",\n \"original_filename\": \"english.txt\",\n \"base64_content\": \"aW1wb3J0IHB5cGVyY2xpcApmcm9tIGJldGxlLmNsaWVudHMgaW1wb3J0IGFwaXYyX2NsaWVudAoKIyBydW4gYmVoYXZlIGJldGxlL2ZlYXR1cmVzL2FwaV8yMC9tZWRpY2F0aW9ucy5mZWF0dXJlCgpweXBlcmNsaXAuY29weShhcGl2Ml9jbGllbnQuYWNjZXNzX3Rva2VuKQ==\"\n }\n}\n\nresp = requests.post(\"https://sandbox.elationemr.com/api/2.0/handouts/\",\n data=json.dumps(data),\n headers={'Authorization': auth_header,\n 'Content-type': 'application/json'})\n\nprint resp.status_code\nprint json.dumps(json.loads(resp.content), indent=2)"
samples-languages:
- python
tags:
- Handouts
security:
- sec0: []
servers:
- url: https://sandbox.elationemr.com/api/2.0
/handouts/{id}:
get:
summary: Get Handouts
description: ''
operationId: get-hangouts
parameters:
- name: id
in: path
description: Hangout id
schema:
type: integer
format: int64
required: true
- name: Authorization
in: header
description: Bearer token
required: true
schema:
type: string
responses:
'200':
description: '200'
content:
application/json:
examples:
Result:
value: "{\n \"id\": 140758845882533,\n \"name\": \"Anthrax VIS55\",\n \"type\": \"VIS\",\n \"received_date\": \"2022-06-10T08:32:27Z\",\n \"practice_created\": 140758831005700,\n \"created_date\": \"2022-06-10T08:32:28Z\",\n \"deleted_date\": null,\n \"tags\": [\n \"tag1\",\n \"tag2\"\n ],\n \"content\": {\n \t// field base64_content no represent in the responce for Find Handouts\n \"base64_content\": \"aW1wb3J0IHB5cGVyY2xpcApmcm9tIGJldGxlLmNsaWVudHMgaW1wb3J0IGFwaXYyX2NsaWVudAoKIyBydW4gYmVoYXZlIGJldGxlL2ZlYXR1cmVzL2FwaV8yMC9tZWRpY2F0aW9ucy5mZWF0dXJlCgpweXBlcmNsaXAuY29weShhcGl2Ml9jbGllbnQuYWNjZXNzX3Rva2VuKQ==\",\n \"content_type\": \"file/jpeg\",\n \"original_filename\": \"english.txt\"\n },\n \"vis_barcode\": null\n}"
schema:
type: object
properties:
id:
type: integer
example: 140758845882533
default: 0
name:
type: string
example: Anthrax VIS55
type:
type: string
example: VIS
received_date:
type: string
example: '2022-06-10T08:32:27Z'
practice_created:
type: integer
example: 140758831005700
default: 0
created_date:
type: string
example: '2022-06-10T08:32:28Z'
deleted_date: {}
tags:
type: array
items:
type: string
example: tag1
content:
type: object
properties:
base64_content:
type: string
example: aW1wb3J0IHB5cGVyY2xpcApmcm9tIGJldGxlLmNsaWVudHMgaW1wb3J0IGFwaXYyX2NsaWVudAoKIyBydW4gYmVoYXZlIGJldGxlL2ZlYXR1cmVzL2FwaV8yMC9tZWRpY2F0aW9ucy5mZWF0dXJlCgpweXBlcmNsaXAuY29weShhcGl2Ml9jbGllbnQuYWNjZXNzX3Rva2VuKQ==
content_type:
type: string
example: file/jpeg
original_filename:
type: string
example: english.txt
vis_barcode: {}
'400':
description: '400'
content:
application/json:
examples:
Result:
value: '{}'
schema:
type: object
properties: {}
deprecated: false
x-readme:
code-samples:
- language: python
code: "import requests\nimport json\n\naccess_token = \"VFroUHsmrErlVI6nJ08Alwhri5RGCW\"\nauth_header = f\"Bearer {access_token}\"\n\nresp = requests.get(\"https://sandbox.elationemr.com/api/2.0/handouts/140758547628421/\",\n headers={'Authorization': auth_header})\n\nprint resp.status_code\nprint json.dumps(json.loads(resp.content), indent=2)"
samples-languages:
- python
tags:
- Handouts
security:
- sec0: []
patch:
summary: Update Handout
description: ''
operationId: update-hangout-1
parameters:
- name: id
in: path
description: Hangout id
schema:
type: integer
format: int64
required: true
- name: Authorization
in: header
description: Bearer token
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: Hangout name
type:
type: string
description: Type of hangout. Is it dowload from patient or VIS fully-encoded text string
enum:
- (1
- '"Patient Resource")'
- (2
- '"VIS")'
tags:
type: array
description: Tags
items:
type: string
vis_barcode:
type: string
description: Should only be set if the type == VIS
practice_created:
type: integer
format: int64
content:
type: object
description: Contain file fields
properties: {}
responses:
'200':
description: '200'
content:
application/json:
examples:
Result:
value: "{\n \"id\": 140758845882533,\n \"name\": \"Anthrax VIS55\",\n \"type\": \"VIS\",\n \"received_date\": \"2022-06-10T08:32:27Z\",\n \"practice_created\": 140758831005700,\n \"created_date\": \"2022-06-10T08:32:28Z\",\n \"deleted_date\": null,\n \"tags\": [\n \"tag1\",\n \"tag2\"\n ],\n \"content\": {\n \t// field base64_content no represent in the responce for Find Handouts\n \"base64_content\": \"aW1wb3J0IHB5cGVyY2xpcApmcm9tIGJldGxlLmNsaWVudHMgaW1wb3J0IGFwaXYyX2NsaWVudAoKIyBydW4gYmVoYXZlIGJldGxlL2ZlYXR1cmVzL2FwaV8yMC9tZWRpY2F0aW9ucy5mZWF0dXJlCgpweXBlcmNsaXAuY29weShhcGl2Ml9jbGllbnQuYWNjZXNzX3Rva2VuKQ==\",\n \"content_type\": \"file/jpeg\",\n \"original_filename\": \"english.txt\"\n },\n \"vis_barcode\": null\n}"
schema:
type: object
properties:
id:
type: integer
example: 140758845882533
default: 0
name:
type: string
example: Anthrax VIS55
type:
type: string
example: VIS
received_date:
type: string
example: '2022-06-10T08:32:27Z'
practice_created:
type: integer
example: 140758831005700
default: 0
created_date:
type: string
example: '2022-06-10T08:32:28Z'
deleted_date: {}
tags:
type: array
items:
type: string
example: tag1
content:
type: object
properties:
base64_content:
type: string
example: aW1wb3J0IHB5cGVyY2xpcApmcm9tIGJldGxlLmNsaWVudHMgaW1wb3J0IGFwaXYyX2NsaWVudAoKIyBydW4gYmVoYXZlIGJldGxlL2ZlYXR1cmVzL2FwaV8yMC9tZWRpY2F0aW9ucy5mZWF0dXJlCgpweXBlcmNsaXAuY29weShhcGl2Ml9jbGllbnQuYWNjZXNzX3Rva2VuKQ==
content_type:
type: string
example: file/jpeg
original_filename:
type: string
example: english.txt
vis_barcode: {}
'400':
description: '400'
content:
application/json:
examples:
Result:
value: '{}'
schema:
type: object
properties: {}
'413':
description: '413'
content:
text/plain:
examples:
Result:
value: Payload Too Large
deprecated: false
x-readme:
code-samples:
- language: python
code: "import requests\nimport json\n\naccess_token = \"TyEPKw8fVGRKpCBa81ygwjCLXDNIAm\"\nauth_header = \"Bearer %s\" % (access_token)\n\ndata = {\n \"name\": \"Anthrax VIS55\",\n \"type\": 1,\n \"practice_created\": 140758831005700,\n \n \"tags\": [\n {\n \"value\": \"tag3\"\n }\n ],\n \"content\": {\n \"content_type\": \"file/jpeg\",\n \"original_filename\": \"english.txt\",\n \"base64_content\": \"aW1wb3J0IHB5cGVyY2xpcApmcm9tIGJldGxlLmNsaWVudHMgaW1wb3J0IGFwaXYyX2NsaWVudAoKIyBydW4gYmVoYXZlIGJldGxlL2ZlYXR1cmVzL2FwaV8yMC9tZWRpY2F0aW9ucy5mZWF0dXJlCgpweXBlcmNsaXAuY29weShhcGl2Ml9jbGllbnQuYWNjZXNzX3Rva2VuKQ==\"\n }\n}\n\nresp = requests.patch(\"https://sandbox.elationemr.com/api/2.0/handouts/10239344687\",\n data=json.dumps(data),\n headers={'Authorization': auth_header,\n 'Content-type': 'application/json'})\n\nprint resp.status_code\nprint json.dumps(json.loads(resp.content), indent=2)"
samples-languages:
- python
tags:
- Handouts
security:
- sec0: []
delete:
summary: Delete Handout
description: ''
operationId: delete-hangout
parameters:
- name: id
in: path
description: Hangout id
schema:
type: integer
format: int64
required: true
- name: Authorization
in: header
description: Bearer token
required: true
schema:
type: string
responses:
'204':
description: '204'
content:
application/json:
examples:
Result:
value: '{}'
schema:
type: object
properties: {}
'400':
description: '400'
content:
application/json:
examples:
Result:
value: '{}'
schema:
type: object
properties: {}
deprecated: false
x-readme:
code-samples:
- language: python
code: "import requests\nimport json\n\naccess_token = \"TyEPKw8fVGRKpCBa81ygwjCLXDNIAm\"\nauth_header = \"Bearer %s\" % (access_token)\n\nresp = requests.delete(\n \"https://sandbox.elationemr.com/api/2.0/handouts/10239344687/\",\n data=json.dumps(data),\n headers={'Authorization': auth_header, 'Content-type': 'application/json'})\n\nprint resp.status_code\nprint json.dumps(json.loads(resp.content), indent=2)"
samples-languages:
- python
tags:
- Handouts
security:
- sec0: []
servers:
- url: https://sandbox.elationemr.com/api/2.0
/handouts/{id}/:
put:
summary: Update Handout
description: ''
operationId: update-hangout
parameters:
- name: id
in: path
description: Hangout id
schema:
type: integer
format: int64
required: true
- name: Authorization
in: header
description: Bearer token
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
type: object
required:
- name
- type
- practice_created
- content
properties:
name:
type: string
description: Hangout name
type:
type: string
description: Type of hangout. Is it dowload from patient or VIS fully-encoded text string
enum:
- (1
- '"Patient Resource")'
- (2
- '"VIS")'
practice_created:
type: integer
format: int64
content:
type: object
description: Contain the file fields
required:
- base64_content
- content_type
- original_filename
properties:
base64_content:
type: string
description: File data in Base64 format
content_type:
type: string
description: Type of file content(e.g text, pdf)
original_filename:
type: string
description: The file name
tags:
type: array
description: Tags
items:
properties:
value:
type: string
description: The tag name
required:
- value
type: object
vis_barcode:
type: string
description: Should only be set if the type == VIS
responses:
'200':
description: '200'
content:
application/json:
examples:
Result:
value: "{\n \"id\": 140758845882533,\n \"name\": \"Anthrax VIS55\",\n \"type\": \"VIS\",\n \"received_date\": \"2022-06-10T08:32:27Z\",\n \"practice_created\": 140758831005700,\n \"created_date\": \"2022-06-10T08:32:28Z\",\n \"deleted_date\": null,\n \"tags\": [\n \"tag1\",\n \"tag2\"\n ],\n \"content\": {\n \t// field base64_content no represent in the responce for Find Handouts\n \"base64_content\": \"aW1wb3J0IHB5cGVyY2xpcApmcm9tIGJldGxlLmNsaWVudHMgaW1wb3J0IGFwaXYyX2NsaWVudAoKIyBydW4gYmVoYXZlIGJldGxlL2ZlYXR1cmVzL2FwaV8yMC9tZWRpY2F0aW9ucy5mZWF0dXJlCgpweXBlcmNsaXAuY29weShhcGl2Ml9jbGllbnQuYWNjZXNzX3Rva2VuKQ==\",\n \"content_type\": \"file/jpeg\",\n \"original_filename\": \"english.txt\"\n },\n \"vis_barcode\": null\n}"
schema:
type: object
properties:
id:
type: integer
example: 140758845882533
default: 0
name:
type: string
example: Anthrax VIS55
type:
type: string
example: VIS
received_date:
type: string
example: '2022-06-10T08:32:27Z'
practice_created:
type: integer
example: 140758831005700
default: 0
created_date:
type: string
example: '2022-06-10T08:32:28Z'
deleted_date: {}
tags:
type: array
items:
type: string
example: tag1
content:
type: object
properties:
base64_content:
type: string
example: aW1wb3J0IHB5cGVyY2xpcApmcm9tIGJldGxlLmNsaWVudHMgaW1wb3J0IGFwaXYyX2NsaWVudAoKIyBydW4gYmVoYXZlIGJldGxlL2ZlYXR1cmVzL2FwaV8yMC9tZWRpY2F0aW9ucy5mZWF0dXJlCgpweXBlcmNsaXAuY29weShhcGl2Ml9jbGllbnQuYWNjZXNzX3Rva2VuKQ==
content_type:
type: string
example: file/jpeg
original_filename:
type: string
example: english.txt
vis_barcode: {}
'400':
description: '400'
content:
application/json:
examples:
Result:
value: '{}'
schema:
type: object
properties: {}
'413':
description: '413'
content:
text/plain:
examples:
Result:
value: Payload Too Large
deprecated: false
x-readme:
code-samples:
- language: python
code: "import requests\nimport json\n\naccess_token = \"TyEPKw8fVGRKpCBa81ygwjCLXDNIAm\"\nauth_header = \"Bearer %s\" % (access_token)\n\ndata = {\n \"name\": \"Anthrax VIS55\",\n \"type\": 1,\n \"practice_created\": 140758831005700,\n \n \"tags\": [\n {\n \"value\": \"tag3\"\n }\n ],\n \"content\": {\n \"content_type\": \"file/jpeg\",\n \"original_filename\": \"english.txt\",\n \"base64_content\": \"aW1wb3J0IHB5cGVyY2xpcApmcm9tIGJldGxlLmNsaWVudHMgaW1wb3J0IGFwaXYyX2NsaWVudAoKIyBydW4gYmVoYXZlIGJldGxlL2ZlYXR1cmVzL2FwaV8yMC9tZWRpY2F0aW9ucy5mZWF0dXJlCgpweXBlcmNsaXAuY29weShhcGl2Ml9jbGllbnQuYWNjZXNzX3Rva2VuKQ==\"\n }\n}\n\nresp = requests.put(\"https://sandbox.elationemr.com/api/2.0/handouts/10239344687\",\n data=json.dumps(data),\n headers={'Authorization': auth_header,\n 'Content-type': 'application/json'})\n\nprint resp.status_code\nprint json.dumps(json.loads(resp.content), indent=2)"
samples-languages:
- python
tags:
- Handouts
security:
- sec0: []
servers:
- url: https://sandbox.elationemr.com/api/2.0
/api/2.0/handouts/:
get:
operationId: handouts_list
parameters:
- description: Number of results to return per page.
in: query
name: limit
required: false
schema:
type: integer
- description: Multiple values may be separated by commas.
explode: false
in: query
name: name
schema:
items:
type: string
type: array
style: form
- description: The initial index from which to return the results.
in: query
name: offset
required: false
schema:
type: integer
- description: Which field to use when ordering the results.
in: query
name: order_by
required: false
schema:
type: string
- description: Multiple values may be separated by commas.
explode: false
in: query
name: practice_created
schema:
items:
type: number
type: array
style: form
- description: Multiple values may be separated by commas.
explode: false
in: query
name: tags
schema:
items:
type: string
type: array
style: form
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedHandoutsSerializerNoBase64ContentList'
description: ''
security:
- oauth2: []
summary: List Handouts
tags:
- Handouts
x-el8-docs-category: Practice API
x-el8-docs-versions:
- '2.1'
- '2.0'
post:
description: Create a new handout.
operationId: handouts_create
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/Handout'
required: true
responses:
'201':
content:
application/json:
schema:
$ref: '#/components/schemas/Handout'
description: ''
security:
- oauth2: []
summary: Create Handout
tags:
- Handouts
x-el8-docs-category: Practice API
x-el8-docs-versions:
- '2.1'
- '2.0'
servers:
- description: Sandbox Server
url: https://sandbox.elationemr.com
- description: Production Server
url: https://api.app.elationemr.com
/api/2.0/handouts/{id}/:
delete:
description: Delete an existing handout.
operationId: handouts_destroy
parameters:
- in: path
name: id
required: true
schema:
format: int64
type: integer
responses:
'204':
description: No response body
security:
- oauth2: []
summary: Delete Handout
tags:
- Handouts
x-el8-docs-category: Practice API
x-el8-docs-versions:
- '2.1'
- '2.0'
get:
operationId: handouts_retrieve
parameters:
- in: path
name: id
required: true
schema:
format: int64
type: integer
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/Handout'
description: ''
security:
- oauth2: []
summary: Retrieve Handout
# --- truncated at 32 KB (39 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/elation-health/refs/heads/main/openapi/elation-health-handouts-api-openapi.yml