athena's transcription partners offer an app that allows a provider to dictate to a patient’s chart. This integration enables transcribed text of the dictation to be automatically added to an athenaNet encounter or as a document attached to a patient’s chart in athenaNet.
Encounter Transcription
1. Partner leverages Appointments Subscription API to retrieve available appointments on a provider’s schedule
Partner sets subscription:
- eventname = CheckIn (case sensitive)
- EncounterID will be provided in the return.
CheckIn indicates a patient has arrived for their appointment and initiates an encounter in athenaNet.
Partner confirms subscription:
Partner uses the subscriptions to pull new/changed appointments since the last time the call was used.
- We recommend using a combination of periodic calls and calls triggered by provider action in the Partner’s App (depending on preference)
- Partner will need to specify the “departmentid” where the provider is seeing patients.
- Multiple ids can be specified separated by commas.
- Departmentids are obtained during implementation using the GET/departments call.
Partner can pull additional patient information when required:
GET/patients/{patientid}
In some cases, it may be desirable to retrieve all booked appointments, checked in or not:
Note: It is not possible for athena to process section-specific transcriptions until after a patient has checked in and an encounterID has been assigned.
2. Provider selects encounter to dictate
Partner uses the API to tell athenaNet to keep the encounter open until the transcription is received:
- athena adds encounter to Dictation Queue
Partner retrieves the encounter sections available for dictation for the encounter:
3. Provider dictates and partner transcribes the dictation
4. Partner uses API to POST section and field specific transcriptions to athena
Partner checks that the appointment is ready for dictation, repeat Step 2 if not:
Transcription text sent via API
- One call per field (E.g. encountersection=Reviewofsystems, field=examfreetext)
- Partner specifies total number of transcription post calls athena should expect, athena will close the encounter after that number is reached.
5. athena adds dictation text to the encounter
Free Standing Transcription
Transcription unassociated with an encounter.
Provider searches for and select the patient in partner App utilizing the API:
OR
Partner transcribes recording from partner
Partner posts transcription to the patient’s chart as a PDF document:
POST /patients/{patientid}/documents
Implementation
1. Partner uses API to pull Providers in the practice’s tablespace:
GET /providers
2. Partner uses API to pull Departments in the practice’s tablespace:
GET /departments
3. In some cases, partner uses API to pull Booked Appointments and Information on the Patients in those appointments.
Pull booked appointments – will need to call for each Department separately:
- Date range can must be specified in the call, shorter ranges will be faster.
Pull Patient information using “patientid” field from the response of GET /appointments/booked as an input to the call:
GET /patients/{patientid}
To determine encounterID, partner can monitor the GET/appointments/changed call and wait for the appointmentid to come up in the response, with its corresponding encounterid.
- Partner will need to determine a workflow in the case where this doesn’t return an encounterid by the end of the workday when the appointment is scheduled.
API Calls Used
Obtaining Appointment Information from athenaNet
- Subscribe to changed appointments subscription:
POST /appointments/changed/subscription
- Confirm subscription, including what events
GET/appointments/changed/subscription
- Pull changed appointments:
GET/appointments/changed
- Pull booked appointments:
GET /appointments/booked
Obtaining Patient Information from athenaNet
- Find a patient in athenaNet
GET/patients/bestmatch
- Search patient in athenaNet:
GET/patient/patientsearch
- Pull information on the patient:
GET/patients/{patientid}
Obtaining Provider Information from athenaNet
- Pull providers in a practice's tablespace:
GET /providers
Obtaining Department Information from athenaNet:
- Pull departments in a practice's tablespace:
GET/departments
- Posting Transcription to Encounter
POST/chart/encounter/{encounterid}/startexternaldictation
GET/chart/encounter/{encounterid}/dictationstatus
POST/chart/encounter/{encounterid}/externaldictationmessage
Posting Documents to Patient Chart
- Post PDF to patient chart:
POST /patients/{patientid}/documents
GET /appointments/changed Sample Response:
Patient Checked In for appointment:
"totalcount": 1, "appointments": [{ "date": "03\/23\/2016", "appointmentid": "666859", "departmentid": "1", "scheduledby": "dsmith", "startcheckin": "03\/23\/2016 15:44:08", "encounterid": "32827", "lastmodifiedby": "dsmith", "appointmenttype": "XRAY", "encounterstatus": "READYFORSTAFF", "stopcheckin": "03\/23\/2016 15:44:19", "providerid": "71", "scheduleddatetime": "03\/23\/2016 15:43:43", "templateappointmentid": "666859", "starttime": "15:30", "appointmentstatus": "2", "patientid": "6890", "duration": "15", "templateappointmenttypeid": "82", "appointmenttypeid": "502", "lastmodified": "03\/23\/2016 15:44:20", "patientappointmenttypename": "XRAY"}]